427cf295d9
DEV: Always require %{count} in French pluralized strings
2019-05-13 09:36:05 +02:00
6d44be5142
FIX: Catch InvalidPluralizationData exception in fallback locales
...
It shouldn't raise an exception when a pluralized string in a fallback locale is only partially translated.
2019-05-13 09:36:05 +02:00
a3e4f43a4d
DEV: Remove patch for I18n.exists?
...
It was merged upstream a long time ago
2019-05-13 09:36:05 +02:00
73015521e2
FIX: Correctly calculate fallback locale list
...
* English shouldn't fallback to any other locale
* Calculate fallback for default locale if it isn't English (useful for en_US)
* Reuse the fallback locale list when outputting translations to JavaScript
2019-05-13 09:36:05 +02:00
30990006a9
DEV: enable frozen string literal on all files
...
This reduces chances of errors where consumers of strings mutate inputs
and reduces memory usage of the app.
Test suite passes now, but there may be some stuff left, so we will run
a few sites on a branch prior to merging
2019-05-13 09:31:32 +08:00
84c56e16f9
REFACTOR: Use keyword argument for fallback_to_english flag
2019-02-19 15:28:47 +01:00
7c4d4331bc
FEATURE: Better handling of quotation marks in site text search
...
It also matches 3 dots with the ellipsis symbol.
2018-11-12 13:26:41 +01:00
e2770bc1c4
FIX: async reload of locales could result in missing translations
2018-10-01 17:14:36 +02:00
3dea48f1d9
Resetting miniracer context results in segfault
2018-09-07 00:19:23 +02:00
f13c34aaed
Adds a check for invalid message formats to rake i18n:check
2018-09-06 17:27:17 +02:00
3c09026fe4
Minor improvements to rake i18n:check
2018-09-06 16:54:30 +02:00
0d8c72d8c4
DEV: Add rake task to check locale files for errors
2018-09-05 00:47:39 +02:00
b8fc699164
FIX: Detect {{foo}} as interpolation key
2018-09-05 00:47:39 +02:00
297e8aaf2e
FIX: Escape regex pattern variable before using it
2018-08-31 03:02:24 +05:30
ad5082d969
Make rubocop happy again.
2018-06-07 13:28:18 +08:00
eb52c5469e
FEATURE: Allow plugins to register a new locale
2018-01-25 14:57:41 +01:00
ce060e2b86
FIX: Server didn't use default_locale as fallback locale
2018-01-25 14:57:41 +01:00
23b787e0a6
Require dependency otherwise it causes Sidekiq to lock up in development.
2017-09-25 13:48:59 +08:00
5012d46cbd
Add rubocop to our build. ( #5004 )
2017-07-28 10:20:09 +09:00
45f4ce379e
Fix broken specs.
2017-07-11 13:16:48 +09:00
b605d5d61b
FIX: Translation should return overrides first before attempting to fallback.
...
https://meta.discourse.org/t/errors-after-migrating-to-a-new-version-1-9-0-beta3/65709/14?u=tgxworld
2017-07-11 12:51:12 +09:00
52e654b3ac
FIX: Translation fallback was not using fallback's translation override.
...
https://meta.discourse.org/t/discobot-falling-back-to-site-locale-is-not-using-customized-copies/65140
2017-07-03 14:52:27 +09:00
b5ec241716
FIX: Validate interpolation keys used in translation overrides.
...
https://meta.discourse.org/t/discobot-translation-missing-error/64429/6?u=tgxworld
2017-06-16 08:54:48 +09:00
ecdae9f863
FIX: i18n integrity specs
...
FIX: check all .yml files in the project for integrity
FIX: ensure localized yamls are compatible with english
2017-02-24 11:35:33 +01:00
a2c04be718
FIX: eradicate I18n fallback issues 💣
...
FIX: client's translation overrides were not working when the current locale was missing a key
FIX: ExtraLocalesController.show was not properly handling multiple translations
FIX: JsLocaleHelper#output_locale was not properly handling multiple translations
FIX: ExtraLocalesController.show's spec which was randomly failing
FIX: JsLocaleHelper#output_locale was muting cached translations hashes
REFACTOR: move 'enableVerboseLocalization' to the 'localization' initializer
REFACTOR: remove unused I18n.js methods (getFallbacks, localize, parseDate, toTime, strftime, toCurrency, toPercentage)
REFACTOR: remove all I18n.pluralizationRules and instead use MessageFormat's pluralization rules
TEST: add tests for localization initializer
TEST: add tests for I18n.js
2017-02-24 11:31:21 +01:00
2e875d3cca
FIX: Use fallback locales when searching for translations
2016-02-22 22:48:55 +01:00
556cd1e3f8
FIX: Do not override existing translations.
2015-12-31 23:20:19 +08:00
6c9f646e34
Use string interpolation instead.
2015-12-30 08:50:03 +08:00
e89f29cca7
FIX: Pluralization error when overriding translations.
2015-12-29 10:31:23 +08:00
d1ebb9d0b5
FIX: I18n Fallbacks were not applying correctly
2015-12-23 12:09:18 -05:00
5e93140f85
FEATURE: Can override any translation via an admin interface
2015-11-27 11:35:19 -05:00
f5b34d5f53
FEATURE: Admin interface for editing email templates
2015-11-19 16:39:34 -05:00
e168c5fde3
PERF: Much more performant, multisite aware I18n overrides
2015-11-19 16:36:59 -05:00
7737ea89b1
FIX: Missing fallback logic
2015-11-19 12:35:51 -05:00
7f4ca91e06
FIX: I18n overrides should be multisite aware
2015-11-18 16:05:53 -05:00
810a069cfd
FIX: Couldn't migrate database from nothing due to I18n
...
Since I18n has a DB backend now, I've introduced a helper we can use to
skip overrides in certain situations. Otherwise migration from empty
databases was broken.
2015-11-14 16:12:09 -05:00
060ce9bf2a
FEATURE: Overwrite server side I18n keys with API
2015-11-13 16:35:02 -05:00
3720783c1b
Refactor to our own Discourse I18n backend
...
This removes some monkey patches and makes testing easier.
It will also support database backed I18n changes.
2015-11-13 16:35:02 -05:00