Commit Graph

659 Commits

Author SHA1 Message Date
Jay Pfaffman 657e5a8633 Suggest running discourse not script/discourse (#5089)
Having `discourse restore` offer copy/paste of backups is awesome, but doesn't work (rails won't load) if you call script/discourse.
2017-08-28 12:59:56 -04:00
Guo Xiang Tan 49ddc98b38 Merge pull request #5066 from davidtaylorhq/docker-lint-changes
Docker lint SINGLE_PLUGIN
2017-08-23 09:56:15 +09:00
David Taylor ed6e1c3825 Combine docker:lint and docker:test into one command 2017-08-22 13:47:29 +01:00
Neil Lalonde 3f8e535692 FEATURE: bbpress importer can import private messages 2017-08-21 16:39:57 -04:00
David Taylor 6e7488178f Add documentation to docker_test.rb 2017-08-19 11:10:17 +01:00
Guo Xiang Tan 8e8653a300 Fix conditions. 2017-08-18 12:46:21 +09:00
Guo Xiang Tan 8ecf383c55 Extract linter in `docker:test` Rake task into `docker:lint`. 2017-08-18 12:22:01 +09:00
Arpit Jalan 5ad94a7020 better bbcode parsing for phpbb bulk import script 2017-08-15 12:41:51 +05:30
Guo Xiang Tan 3f24ed2b3e Can't revert due to incompatibility of new site setting types.
Revert "Revert "FEATURE: Site settings defaults per locale""

This reverts commit 439fe8ba24.
2017-08-07 10:43:09 +09:00
Guo Xiang Tan 439fe8ba24 Revert "FEATURE: Site settings defaults per locale"
This reverts commit 468a8fcd20.
2017-08-07 10:31:50 +09:00
Arpit Jalan 2d909f7894 new phpBB PostgreSQL bulk import script 2017-08-03 21:21:58 +05:30
Erick Guan 468a8fcd20 FEATURE: Site settings defaults per locale
This change-set allows setting different defaults for different locales. 

It also:

- Adds extensive testing around site setting validation

- raises deprecation error if site setting has the default property based on env

- relocated site settings for dev and tests in the initializer

- deprecated client_setting in the site setting's loading process

- ensure it raises when a enum site setting being set

- default_locale is promoted to `required` category.

- fixes incorrect default setting and validation

- fixes ensure type check for site settings

- creates a benchmark for site setting

- sets reasonable defaults for Chinese
2017-08-02 12:24:19 -04:00
Quangbuu Le bac21d317b Bulk import likes from vBulletin thanks (#5014) 2017-08-01 10:01:45 +02:00
Mohammad AlTawil 7836b064f4 [FIX] invalid byte sequence in UTF-8 (#5003)
Invalid encoding fixed prior to empty check
2017-07-31 15:34:11 -04:00
Quangbuu Le 0daa177805 Enhance bulk import scripts (#5010)
* Enhance bulk import scripts

* Fix: restore running statement of BulkImport::VBulletin
2017-07-31 10:56:57 +02:00
Guo Xiang Tan 5012d46cbd Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
Sam 68d09e8315 noturbo bench added 2017-07-26 12:41:19 -04:00
Sam 9d774a951a Update libv8 and benchmark 2017-07-26 10:59:41 -04:00
Gerhard Schlager 32ef30cff9
phpBB3 importer: Permalink for first post of each topic was missing 2017-07-25 23:29:56 +02:00
Gerhard Schlager 5be52fa821
phpBB3 importer: Use permalink normalization for category links 2017-07-25 21:14:46 +02:00
Arpit Jalan d89d279416 Update UserEmail primary key sequence when performing bulk import. 2017-07-25 19:15:22 +05:30
Quangbuu Le d6d123a268 Add charset preference when bulk importing vBulletin 2017-07-25 07:25:28 +07:00
Sam Saffron 045a2abcec FEATURE: remove the timecop gem
We should only have one way of mocking time, misuse of timecop
was causing build stability issues
2017-07-24 12:11:10 -04:00
Quangbuu Le 5bba959cd5 FIX: vBulletin bulk importer: emails and stats 2017-07-24 19:49:22 +07:00
Régis Hanol 57d6a5dc9c FIX: vBulletin bulk importer 2017-07-24 14:22:00 +02:00
Arpit Jalan ed5d322196 FIX: handle existing users in imports 2017-07-24 16:22:56 +05:30
Guo Xiang Tan d38b55e0c8 Merge pull request #4959 from farmdawgnation/minor-mbox-import-fix
Add a nil check on the connection before attempting to exec it
2017-07-21 09:45:15 +09:00
Leo McArdle d0b027d88d FEATURE: phase 1 of supporting multiple email addresses 2017-07-20 11:22:27 +09:00
Sam 7c7f22565c correct bench code 2017-07-18 12:31:32 -04:00
Sam Saffron d0c5205a52 Feature: Change markdown engine to markdown it
This commit removes the old evilstreak markdownjs engine.

- Adds specs to WhiteLister and changes it to stop using globals
    (Fixes large memory leak)
- Fixes edge cases around bbcode handling
- Removes mdtest which is no longer valid (to be replaced with
    CommonMark)
- Updates MiniRacer to correct minor unmanaged memory leak
- Fixes plugin specs
2017-07-17 11:41:34 -04:00
Sam 79a084dd58 Revert "remove old markdown engine work-in-progress"
This reverts commit ee470b5317.
2017-07-12 18:10:51 -04:00
Sam Saffron ee470b5317 remove old markdown engine work-in-progress 2017-07-12 17:44:40 -04:00
Guo Xiang Tan 6af40a6ade Remove unused `discourse_imgur` plugin. 2017-07-10 11:15:22 +09:00
Matt Farmer 5b11391588 Add a nil check on the connection before attempting to exec it 2017-07-07 11:11:43 -04:00
Jay Pfaffman 1c9cab0908 mybb: disable outgoing mail 2017-06-30 16:28:14 -07:00
Jay Pfaffman a7d89d2a8a mybb: add permalink support 2017-06-30 14:11:49 -07:00
Sam 234694b50f Feature: CommonMark support
This adds the markdown.it engine to Discourse.
https://github.com/markdown-it/markdown-it

As the migration is going to take a while the new engine is default
disabled. To enable it you must change the hidden site setting:
enable_experimental_markdown_it.

This commit is a squash of many other commits, it also includes some
improvements to autospec (ability to run plugins), and a dev dependency
on the og gem for html normalization.
2017-06-23 12:01:33 -04:00
Melroy Neil Dsouza 420abce549 Optimize import script - vanilla_mysql.rb
Use WHERE id > last_id instead of OFFSET because OFFSET causes performance issues
2017-06-19 10:30:55 +05:30
Guo Xiang Tan d82dbd565b FIX: Remove dependency on `rest-client`. 2017-06-16 09:42:41 +09:00
Régis Hanol 4e8e9c2d2f FIX: ensure we never collide ids in the JIVE API importer 2017-06-06 16:13:07 +02:00
Régis Hanol b93a4e369d add support for importing content by id in JIVE API importer 2017-06-03 21:49:30 +02:00
Arpit Jalan 22b488704e FIX: add discourse-narrative-bot locales path 2017-05-30 14:23:05 +05:30
Gerhard Schlager 8299e7e8c3
Add new, experimental version of mbox importer 2017-05-29 20:59:18 +02:00
lead4good 0d36fb0c2b bbpress import script: Adding support for anonymous users 2017-05-25 13:15:50 +02:00
Robin Ward cdbe027c1c Refactor `FileHelper` to use keyword arguments. 2017-05-24 13:54:26 -04:00
Robin Ward 29755be139 Remove bundle-audit, it is not updated frequently enough 2017-05-18 12:31:19 -04:00
Régis Hanol 2826f98bb9 update JIVE API importer 2017-05-16 10:22:44 +02:00
Robin Ward e7827ee715 Add `bundle-audit` to our test script 2017-05-15 13:34:30 -04:00
Régis Hanol 9641d2413d REFACTOR: upload workflow creation into UploadCreator
- Automatically convert large-ish PNG/BMP to JPEG
- Updated fast_image to latest version
2017-05-11 00:16:57 +02:00
Robin Ward 71414f7ba2 We don't need to log downloading avatars that are too large 2017-05-09 14:46:42 -04:00
Régis Hanol 8048aeac22 FIX: BBCode converter in bulk importers 2017-05-03 16:56:52 +02:00
Régis Hanol 4b9cc1ad17 import likes & bookmarks in JIVE API importer 2017-05-03 16:00:23 +02:00
Guo Xiang Tan 5404fb31f8 Merge pull request #4810 from yjukaku/fix-minor-bench-script-bugs
Fix bench script
2017-04-27 10:41:57 +08:00
Régis Hanol e155cb6db1 FIX: JIVE API Importer
- Added the 'hierarchical=false' query parameter to retrieve comments (replies) chronologically
- Calling 'create_post' (singular) wasn't updating the LookupContainer and thus we couldn't populate the 'reply_to_post_number' column
2017-04-26 15:36:35 +02:00
Gerhard Schlager 8d9b5ed70a
phpBB3 importer: Disable file size validators during import 2017-04-26 01:05:36 +02:00
Régis Hanol 4b92835460 remove customer specific conditions in vBulletin importer 2017-04-24 23:05:25 +02:00
Régis Hanol 0dffa2d135 vBulletin bulk importer 2017-04-24 23:00:49 +02:00
Régis Hanol 58951e232f base bulk importer 2017-04-24 23:00:41 +02:00
Régis Hanol 29ddb3a611 update JIVE API importer 2017-04-24 22:03:12 +02:00
Yousuf Jukaku a940f727cb fix bench script silent minor bugs 2017-04-14 12:58:35 -04:00
Régis Hanol ff6a98183f WIP: JIVE importer using the API 2017-04-12 22:30:36 +02:00
michael@discoursehosting.com 17b5303449 Convert nested quotes 2017-04-02 20:38:23 +00:00
michael@discoursehosting.com 6168bcb4c4 Someone broke/disabled? the php check 2017-04-02 20:35:43 +00:00
michael@discoursehosting.com 7e27559f3e We need to get rid of the ignore_quotes thing as well 2017-04-02 20:33:48 +00:00
michael@discoursehosting.com 60be3e0d38 Get rid of the weird and broken message graph 2017-04-02 20:31:06 +00:00
michael@discoursehosting.com 7d09af141e Apparently need to save 2017-04-02 20:28:16 +00:00
michael@discoursehosting.com a72f56c3a7 Add migratepassword plugin hash 2017-04-02 20:27:57 +00:00
michael@discoursehosting.com 332d655a1d Use html_for_upload instead of broken v8 stuff 2017-04-02 20:25:08 +00:00
michael@discoursehosting.com e788ac3351 Add permalinks creator for PrettyURL plugin 2017-04-02 20:23:03 +00:00
Robin Ward 14410b71fb Convert server side paths to use `/u/` 2017-03-30 10:23:24 -04:00
Neil Lalonde 36ae27fa43 Merge pull request #4724 from mcwumbly/socialcast-import-tags-categories
FEATURE: Socialcast Importer: Set category and tags based on group
2017-03-16 12:39:31 -04:00
Régis Hanol 41c850f31d fix pull_translation script 2017-02-27 22:48:50 +01:00
Arpit Jalan 5a48cea395 FIX: correct path for LocaleFileWalker 2017-02-28 01:42:55 +05:30
David McClure ed627c8233 FEATURE: Socialcast Importer: Set category and tags based on group 2017-02-26 04:54:07 -08:00
Gerhard Schlager 1fb5dac1bc
phpBB3 importer: Fix the link regex
Thanks to Leo Davidson for the improved regex.
https://meta.discourse.org/t/importing-from-phpbb3/30810/153
2017-02-05 17:13:31 +01:00
Gerhard Schlager 14a0dff469
phpBB3 importer: Fix import of anonymous users 2017-02-05 15:26:50 +01:00
Gerhard Schlager b79eef32e7
phpBB3 importer: Make it harder to set wrong table prefix 2017-02-05 14:13:25 +01:00
Gerhard Schlager 5569afc48b
phpBB3 importer: Don't ignore users that belong to non-existent group 2017-02-05 14:13:25 +01:00
Régis Hanol 0d250c3935 50% faster vBulletin 4 importer 2017-02-01 14:33:09 +01:00
Sam 614b041272 Merge pull request #4664 from ryantm/remap-regex
DO NOT MERGE WITHOUT @samsaffron review: Revert "Revert "FEATURE: make discourse remap optionally do regex_rep…
2017-01-31 11:12:37 -05:00
Jay Pfaffman 3a5c0c5605 add env variables for vBulletin import script 2017-01-31 10:31:18 +05:30
Ryan Mulligan 6c2f66124f regex remapping: update usage and add help description.
Here is a shell session showing what the new documenation looks like:

vagrant@discourse:~/vagrant$ bundle exec ruby ./script/discourse remap
ERROR: "discourse remap" was called with no arguments
Usage: "discourse remap [--global,--regex] FROM TO"

vagrant@discourse:~/vagrant$ bundle exec ruby ./script/discourse help remap
Usage:
  discourse remap [--global,--regex] FROM TO

Options:
      [--global], [--no-global]
      [--regex], [--no-regex]
  v, [--verbose=VERBOSE]

Description:
  Replace a string sequence FROM with TO across all tables.

  With --global option, the remapping is run on ***ALL*** databases. Instead of just running on the current database, run on every database on this machine. This option is useful for multi-site setups.

  With --regex option, use PostgreSQL function regexp_replace to do the remapping. Enabling this interprets FROM as a PostgreSQL regular expression. TO can contain references to captures in the FROM match. See the "Regular Expression
  Details" section and "regexp_replace" documentation in the PostgreSQL manual for more details.

  Examples:

  discourse remap talk.foo.com talk.bar.com # renaming a Discourse domain name

  discourse remap --regex "[/?color(=[^]]*)*]" "" # removing "color" bbcodes
2017-01-30 14:27:45 -08:00
Robin Ward 4ed46a45ed FIX: In the case of a blank name, use a SHA1 2017-01-19 14:31:50 -05:00
Ryan Mulligan e63faffdb2 Revert "Revert "FEATURE: make discourse remap optionally do regex_replace (#4367)""
This reverts commit 277e7383f3.
2017-01-19 09:33:49 -08:00
Robin Ward 8d4cff642e FIX: Use the username scrubber when generating the emails 2017-01-18 14:23:23 -05:00
Robin Ward 775b70227d FIX: Better standardizing on username 2017-01-18 13:22:45 -05:00
Robin Ward f1c242f61d A generic JSON importer that can be used for simple imports 2017-01-18 13:22:45 -05:00
Jay Pfaffman ffbaf374c8 use .presence rather than DIY checking 2017-01-11 12:55:25 -08:00
Jay Pfaffman e307bbccf9 Merge branch 'master' of github.com:discourse/discourse into bbpress-missing-display-name 2017-01-11 11:28:38 -08:00
Jay Pfaffman c5d6bfe7e2 bbpress: Use nicename if display_name is missing 2017-01-11 11:26:55 -08:00
Rafael dos Santos Silva 3a3a464a32 Merge pull request #4642 from miromichalicka/master
Add support for import from Drupal 6
2017-01-11 12:56:52 -02:00
Arpit Jalan 6506c0d900 use table prefix in bbpress import script 2017-01-10 16:07:13 +05:30
Miroslav Michalicka a313ddf8e3 Fix typos 2017-01-08 10:16:32 +01:00
Miroslav Michalicka bde42e397c Migration script from Drupal 6 2017-01-08 10:07:46 +01:00
Mohamad Abras bc621a704e fix close topics vb4 importer 2016-12-15 14:20:05 +02:00
Arpit Jalan 59523aef9d more improvements to vBulletin import script 2016-12-05 17:44:18 +05:30
Mohamad Abras f68194cf8e fix nil for vb4 importer 2016-12-05 04:16:59 +02:00
Mohamad Abras 52749c0121 imporoving vb4 importer 2016-12-04 00:02:47 +02:00
Rafael dos Santos Silva 5d91c8ca69 Merge pull request #4530 from pfaffman/mylittleforum-importer
new importer: my little forum
2016-11-02 12:40:58 -02:00
Sam 383b57a350 improve test 2016-11-02 22:19:16 +11:00
Sam 7e43e73df6 FIX: properly reset all contexts after forking
Fixes hang on backup
2016-11-02 13:34:20 +11:00
Jay Pfaffman 10f82a9a8e new importer: my little forum 2016-11-01 12:17:36 -07:00
Dmitry Demenchuk f687bfb7e2 Allow to process imported content. (add additional callbacks) 2016-10-26 16:51:34 +01:00
Régis Hanol 095170d6df Merge pull request #4493 from pfaffman/mbox-email-to-username
MBOX: replace email address with @username
2016-10-12 22:45:31 +02:00
Jay Pfaffman 4ccd224c26 Add link to HOWTO 2016-10-12 13:29:19 -07:00
Jay Pfaffman df3ac5e2e9 MBOX: replace email address with @username 2016-10-12 13:18:34 -07:00
Sam 47733d4f94 Merge pull request #4480 from vinkas0/import/fluxbb
FluxBB import script
2016-10-10 16:38:53 +11:00
Jay Pfaffman 40814aa66d no replace_email_addresses in this branch 2016-10-07 09:41:30 -07:00
Jay Pfaffman 1886f021e2 mbox: Improve error checking and reporting 2016-10-07 09:38:54 -07:00
Vinoth Kannan 743ddf50a9 fluxbb.rb: skip admin & mod groups 2016-10-07 13:56:10 +05:30
Vinoth Kannan ae8088ab99 fluxbb.rb: optional table prefix env variable added 2016-10-07 10:29:56 +05:30
Vinoth Kannan 470529d4c8 fluxbb.rb: importing groups & members 2016-10-06 21:08:40 +05:30
Vinoth Kannan 7bf75f8828 fluxbb.rb: move configuration to ENV 2016-10-06 20:09:40 +05:30
Vinoth Kannan 119746aaa0 new: FluxBB import script file added 2016-10-06 20:00:39 +05:30
Régis Hanol 3d7558c3b7 Merge pull request #4453 from pfaffman/mbox-config-from-env
mbox: move configuration to ENV, add default user level
2016-10-03 22:02:45 +02:00
Jay Pfaffman bae5400042 All config can be done via environment variables 2016-09-30 14:24:58 -07:00
Jay Pfaffman 84de8e92e1 Rexexp.escape LISTNAME 2016-09-28 08:40:31 -07:00
Régis Hanol 11fdb8f038 Merge pull request #4465 from pfaffman/bbpress-env-config
bbpress.rb: move configuration to ENV
2016-09-28 11:20:41 +02:00
Jay Pfaffman 1c0e5ce523 bbpress.rb: move configuration to ENV 2016-09-26 15:03:42 -07:00
Jay Pfaffman 6e603c85a8 mbox: sort input files by title, sort messages by date 2016-09-26 12:18:11 -07:00
Sam 262297965f Merge pull request #4442 from pfaffman/kunena3-improvements
KUNENA3 importer: parameterize database and fields, link to attachments
2016-09-23 10:36:45 +10:00
Régis Hanol 30fbb91294 Merge pull request #4449 from pfaffman/importer-base-progress
importer/base.rb: improve progress reporting
2016-09-22 11:01:48 +02:00
Jared Reisinger 75e22086a9 Don't look for external facts when benchmarking
When running `scripts/bench.rb` via the discourse/discourse_bench docker
container, Facter throws an EACCES error attempting to load external
puppet facts.  Since the benchmark script ends up ignoring everything
except for seven specific keys, we can just avoid loading any external
fact logic entirely. can just
2016-09-21 13:15:58 -07:00
Jay Pfaffman 99860910fc mbox: move configuration to ENV, add default user level 2016-09-21 12:01:57 -07:00
Jay Pfaffman 30f2081c1b importer/base.rb: improve progress reporting 2016-09-20 11:27:45 -07:00
Jay Pfaffman 152e5b9b7e parameterize database and fields, link to attachments 2016-09-15 15:24:06 -07:00
Arpit Jalan 92e716a1fd fix vbulletin import script 2016-09-14 08:15:48 +05:30
Arpit Jalan ed0b355e15 generalize permalink URL in GetSatisfaction import script 2016-09-08 15:01:40 +05:30
Arpit Jalan bade41db42 improve GetSatisfaction import script 2016-09-08 14:57:20 +05:30
timur aeae63a56a Change reverse.each
Change on reverse_each because reverse_each loops in reverse order (no
intermediate array created).
2016-09-07 14:57:31 +08:00
Arpit Jalan 87e84756f0 improve Ning import script 2016-09-05 15:27:03 +05:30
Arpit Jalan cdc1d7e46c Merge pull request #4413 from Mogztter/fix-optional-attachments
FIX: Nabble importer, attachments can be not found
2016-09-05 00:05:40 +05:30
Hanwen (Steinway) Wu 371f4f4be7 Fix SQLite datetime issues
The raw datetime string from raw emails doesn't conform to SQLite standard. Therefore it can't be sorted. This fix will make it conforming and sort-able by SQLite.
2016-08-26 12:47:03 -04:00
Neil Lalonde d5fc4e1e84 Merge pull request #4388 from gschlager/transifex
Always use --force when pulling translations from Transifex
2016-08-24 14:57:55 -04:00
Guillaume Grossetie 4ba99bcc04 FIX: Attachments can be not found 2016-08-23 19:58:46 +02:00
Guillaume Grossetie 566ecae0db FIX: Update Nabble importer to use Email.Receiver new API
Email.Receiver API changed in 3083657358
2016-08-22 14:04:01 +02:00
David McClure f7f8226b4c Add Socialcast importer 2016-08-20 17:25:19 -07:00
m.b 2fde6944e3 Add missing fat arrow in bbcode_to_md method rescue block
Related to https://meta.discourse.org/t/undefined-local-variable-or-method-e-during-phpbb3-migration/48861
2016-08-19 13:18:27 +02:00
Robin Ward 72d7c055f4 Lots of ugprades to the Disqus importer script 2016-08-17 15:10:46 -04:00
Gerhard Schlager 71421df72a
Always use --force when pulling translations from Transifex
Also, this makes it possible to pull only selected languages which is
handy during development and for adding a new language.
2016-08-12 22:12:03 +02:00
Robin Ward 277e7383f3 Revert "FEATURE: make discourse remap optionally do regex_replace (#4367)"
This reverts commit f8dda198bd, reversing
changes made to 01ced67ab3.
2016-08-08 17:05:22 -04:00
Robin Ward f8dda198bd FEATURE: make discourse remap optionally do regex_replace (#4367)
This adds a --regex option to discourse remap to use the regexp_replace
feature in PostgreSQL. Example usage:

discourse remap --regex "\[\/?color(=[^\]]*)*]" ""

removes all the "color" bbcodes.

Also, this commit fixes the --global option, which did not work because
of how Thor processes the options.
2016-08-08 14:30:02 -04:00
Guo Xiang Tan 02d63d5bc6 FIX: Backup script with custom filename needs to include version number. 2016-08-08 09:33:50 +08:00
Sam 31c0ce3dac Revert "FEATURE: make discourse remap optionally do regex_replace" 2016-08-02 08:38:15 +10:00
Neil Lalonde 7109442ef0 Stop using Transifex workaround, but keep the code just in case 2016-07-27 17:55:28 -04:00
Gerhard Schlager 37a78752e9 phpBB3 importer: fixes for internal links and guest users (#4350)
* phpBB3 importer: ignore query parameters in internal links

* phpBB3 importer: Don't fail if guest usernames differ only by case

* phpBB3 importer: Import username as name for guest users
2016-07-27 22:57:33 +02:00
Gerhard Schlager fccc0c93c5 Store the original username during import (#4349) 2016-07-27 22:30:15 +02:00
Régis Hanol 56d2626187 support 'read_restricted' categories in importers 2016-07-27 18:38:23 +02:00
Gerhard Schlager 3d76ad623c
Workaround for Transifex YML issues 2016-07-27 18:02:57 +02:00
Ryan Mulligan 2a257190e7 FEATURE: make discourse remap optionally do regex_replace (#4116)
This adds a --regex option to discourse remap to use the regexp_replace
feature in PostgreSQL. Example usage:

discourse remap --regex "\[\/?color(=[^\]]*)*]" ""

removes all the "color" bbcodes.

Also, this commit fixes the --global option, which did not work because
of how Thor processes the options.
2016-07-22 10:08:41 +02:00