Is there any way around this? A lot of forums have users who signed up with email addresses they no longer have access to and they are using passwords with less than 10 characters.
You can change the minimum password length to 8 in site settings.
People who canāt use their password can have a login link or password reset link sent to them.
Yes, there is a site setting migratepassword allow insecure passwords
, just enable it.
Make sure to enable this AFTER the import, not during the import.
5 posts were split to a new topic: Accent characters missing
rank_mapping:
trust_level_1: 200
trust_level_2: 1000
trust_level_3: 3000
How does this work excactly? Do I need to create custom ranks in phpBB (where I can only set a different number of total posts as criteria) or does the importer check every user for the total number of posts and assigns the trust level in Discourse according to that?
Thank you!
# Rank to trust level mapping
#
# Map phpBB 3.x rank levels to trust level
# Users with rank at least 3000 will have TL3, etc.
trust_level = @settings.trust_level_for_posts(row[:user_posts], trust_level: trust_level)
So itās just mapping the number of posts they have created to various trust levels. My inclination would be to set everyone at TL1 and let them go through the Discourse levels from there; itās not that hard to get to TL2.
But at some point someone who was migrating to Discourse thought it was important to tweak the trust levels for their users and the programmer thought it was easier to code it than to argue with them.
Yes you are right. I would also prefer that. I just wanted to make sure that I understood the feature correctly.
Will not install ruby-bbcode-to-md, as if IMPORT=1
invalid.
mike@ubuntu:~/discourse/script/import_scripts$ IMPORT=1 bundle exec ruby phpbb3.rb phpbb3/settings.yml
Traceback (most recent call last):
40: from phpbb3.rb:13:in `<main>'
39: from phpbb3.rb:14:in `<module:ImportScripts>'
38: from phpbb3.rb:15:in `<module:PhpBB3>'
37: from phpbb3.rb:15:in `require_relative'
36: from /home/mike/discourse/script/import_scripts/phpbb3/support/settings.rb:5:in `<top (required)>'
35: from /home/mike/discourse/script/import_scripts/phpbb3/support/settings.rb:5:in `require_relative'
34: from /home/mike/discourse/script/import_scripts/base.rb:16:in `<top (required)>'
33: from /home/mike/discourse/script/import_scripts/base.rb:16:in `require_relative'
32: from /home/mike/discourse/config/environment.rb:7:in `<top (required)>'
31: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/railties-7.0.3.1/lib/rails/application.rb:372:in `initialize!'
30: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:60:in `run_initializers'
29: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/2.7.0/tsort.rb:205:in `tsort_each'
28: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/2.7.0/tsort.rb:226:in `tsort_each'
27: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/2.7.0/tsort.rb:347:in `each_strongly_connected_component'
26: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/2.7.0/tsort.rb:347:in `call'
25: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/2.7.0/tsort.rb:347:in `each'
24: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/2.7.0/tsort.rb:349:in `block in each_strongly_connected_component'
23: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/2.7.0/tsort.rb:431:in `each_strongly_connected_component_from'
22: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/2.7.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
21: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/2.7.0/tsort.rb:228:in `block in tsort_each'
20: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:61:in `block in run_initializers'
19: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:32:in `run'
18: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/railties-7.0.3.1/lib/rails/initializable.rb:32:in `instance_exec'
17: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/railties-7.0.3.1/lib/rails/application/finisher.rb:68:in `block in <module:Finisher>'
16: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/reloader.rb:88:in `prepare!'
15: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:106:in `run_callbacks'
14: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:595:in `invoke_before'
13: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:595:in `each'
12: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:595:in `block in invoke_before'
11: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:200:in `block in halting'
10: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:686:in `block in default_terminator'
9: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:686:in `catch'
8: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:687:in `block (2 levels) in default_terminator'
7: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:199:in `block (2 levels) in halting'
6: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:445:in `block in make_lambda'
5: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/activesupport-7.0.3.1/lib/active_support/callbacks.rb:445:in `instance_exec'
4: from /home/mike/discourse/config/initializers/002-freedom_patches.rb:9:in `block in <main>'
3: from /home/mike/discourse/config/initializers/002-freedom_patches.rb:9:in `each'
2: from /home/mike/discourse/config/initializers/002-freedom_patches.rb:11:in `block (2 levels) in <main>'
1: from /home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/zeitwerk-2.6.6/lib/zeitwerk/kernel.rb:31:in `require'
/home/mike/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/zeitwerk-2.6.6/lib/zeitwerk/loader/callbacks.rb:25:in `on_file_autoloaded': expected file /home/mike/discourse/lib/freedom_patches/copy_file.rb to define constant FreedomPatches::CopyFile, but didn't (Zeitwerk::NameError)
Just doing a shameless bumpā¦ Because Iāll have to do two new phpBB migrations soon (advocating for Discourse as much as I can ). There is no rush at all.
The migrations could even wait for a few months or a bit more but if you have any news about this info, that would be nice
Well, 2022 was optimisticā¦ Other tasks got bumped in front of my todo list, but things are clearing up, so something will happen in 2023. And hopefully sooner than later.
I just ran a phpBB import for what I think was a 3.3 forum. It seemed to work fine (except for the Solved plugin they were using and some [tex2]
tags that need to be replaced with some $$
, but I expected that not to work). Unless youāve got a huge forum (25K users and ~300K posts took 17 hours on not-too-fast hardware), you might just go ahead and give it a shot.
Sure, thanks for the info!
But Iām very curious about the changes made. Iād love to have a look at the code and see it at work since I donāt have a specific date to do my migrations
Hi, Iām new here so sorry for the stupid question:
What exactly should the site_name parameter in the settings.yml file contain? I donāt understand what is needed here. I got this error:
The phpBB3 import is starting...
/var/www/discourse/script/import_scripts/phpbb3/support/settings.rb:49:in `initialize': undefined method `[]' for nil:NilClass (NoMethodError)
@site_name = import_settings["site_name"]
^^^^^^^^^^^^^
from /var/www/discourse/script/import_scripts/phpbb3/support/settings.rb:11:in `new'
from /var/www/discourse/script/import_scripts/phpbb3/support/settings.rb:11:in `load'
from script/import_scripts/phpbb3.rb:20:in `<module:PhpBB3>'
from script/import_scripts/phpbb3.rb:16:in `<module:ImportScripts>'
from script/import_scripts/phpbb3.rb:15:in `<main>'
Iām trying to import just one forum (phpBB version 3.3.8). When I leave it blank or type something like āfirstā or ādomain.comā etc, I still get this error.
Thank you for your help and patience.
Set it to anything. Even an empty string.
Then youāre somehow setting in the wrong place or there is a typo, I would guess.
Thank you for your response. I recreated the settings.yml from scratch, copied the raw code from github and now it works like a charm
20 posts were split to a new topic: Migrating from phpbb (installed version history: 3.2.1 - 3.2.8) with a postgresql db
That turned out not to be true. Is the plan to re-tool them all into bulk_import-style scripts? Do you have a new estimate of what that timeline might look like?
Yes, thatās more or less the plan. Unfortunately I canāt say when it will be released as itās not the highest priority right now, but we plan to improve imports in the next 6-12 months. My hope is that there will be something usable by that time.
PR for another simple improvement. phpbb attachments have a text comment that is displayed below the attachment in a post.
i added support for that. it adds the comment in italics below the image in discourse.