Skip to content

Release v3#78

Merged
bearfriend merged 90 commits into
masterfrom
dgleckler/v3
Mar 5, 2026
Merged

Release v3#78
bearfriend merged 90 commits into
masterfrom
dgleckler/v3

Conversation

@bearfriend
Copy link
Copy Markdown
Owner

@bearfriend bearfriend commented Mar 5, 2026

v3 Changes

  • BREAKING CHANGE: Always throws on error. The --throw-errors option has been removed.
  • BREAKING CHANGE: The locales option now takes an array when used in config files
  • New format subcommand rewrites messages to a standard format
  • Issue types renamed:
    • case -> option
    • nest -> nest-source and nest-ideal
    • duplicate-keys -> duplicate
    • plural-key -> category
    • categories -> category-missing
    • source-error -> source
  • New issue types
    • option-missing

@bearfriend bearfriend merged commit 22c1d32 into master Mar 5, 2026
1 check passed
@bearfriend bearfriend deleted the dgleckler/v3 branch March 5, 2026 18:20
bearfriend added a commit that referenced this pull request Mar 5, 2026
## Summary

- BREAKING CHANGE: Always throws on error. The `--throw-errors` option has been removed.
- BREAKING CHANGE: The `locales` option now takes an array when used in config files
- New `format` subcommand rewrites messages to a standard format
- Issue types renamed:
  - `case` -> `option`
  - `nest` -> `nest-source` and `nest-ideal`
  - `duplicate-keys` -> `duplicate`
  - `plural-key` -> `category`
  - `categories` -> `category-missing`
  - `source-error` -> `source`
- New issue types
  - `option-missing`

## Change Log

* Add format

* Cleanup terminology, grammar, etc.

* Throw on error

* Add trim and collapse; Move translator-output to print-missing subcommand

* Fix output order

* Add trim and collapse options

* Add format tests

* Fix lint and tests

* Add more format tests and improvements to make them pass

* "string" -> "message"

* Use @formatjs/icu-messageformat-parser in the validator

* Use Intl.PluralRules in validate

* Add utils

* Add nested category tests

* Use tabs for indentation

* Prevent exit code when errors are ignored

* Tidy error names and messages

* Build required cldr data; cldr to devDependencies

* Move find-config to utils

* Add build script

* Locales config as array

* Prevent double build on install

* Cleanup

* Rework duplicate error

* Lots of stuff

* Handle fr-on data

* Add starting locale-data file

* Fix build path

* Fix locale data

* Fix localesMap check

* Clean up logging

* Add "near: ..." to parse errors

* Fix async looping issues

* Fix escaping and quoting; Enable hash expansion

* Actually fix escaping + cleanup

* Improve arg finding

* Final escaping fix (hopefully)

* Improve argument correction

* Add arg correction option

* Indicate path glob support

* Fix escaped arg regex

* Improve argument correction

* 3.0.0-beta.0

* 3.0.0-beta.1

* Indent multiline templates beyond their keys

* Add apostophe character to delimiters

* Handle apostophes with pure cldr data

* Add haw quote test

* 3.0.0-beta.2

* Fix case match argument correction

* 3.0.0-beta.3

* Escape quotes as necessary

* 3.0.0-beta.4

* Unescape quotes before formatting

* 3.0.0-beta.5

* Export structureRegEx and formatMessage

* Improve structureRegEx to handle escapes better (but not perfectly)

* Fix indentation when not using -n

* 3.0.0-beta.6

* 3.0.0-beta.7

* Fix unicode regex

* Fix file writing

* Sort . above everything else

* Fix exit code

* Do not hoist with trim enabled

* 3.0.0-beta.8

* Add Thai and Vietnamese as default locales

* Fix writes more

* Fix print-missing

* 3.0.0-beta.9

* Fix source quotes

* 3.0.0-beta.10

* Fix hash replacements

* 3.0.0-beta.11

* Fix sorting comma handling

* 3.0.0-beta.12

* Handle comments properly when checking comma for sort

* 3.0.0-beta.13

* Convert English source "=1" cases to "one" if only basic plural differences from "other" are found

* 3.0.0-beta.14

* Fix erroneous =1 swapping

* 3.0.0-beta.15

* Fix argument checking in additional plural categories

* 3.0.0-beta.16

* Improve apostrophe tests

* Fix apostrophe recognition/escaping

* Fic double backslash value parsing

* 3.0.0-beta.17

* Update README

* Remove rebase artifact
bearfriend added a commit that referenced this pull request Mar 5, 2026
## Summary

- BREAKING CHANGE: Always throws on error. The `--throw-errors` option has been removed.
- BREAKING CHANGE: The `locales` option now takes an array when used in config files
- New `format` subcommand rewrites messages to a standard format
- Issue types renamed:
  - `case` -> `option`
  - `nest` -> `nest-source` and `nest-ideal`
  - `duplicate-keys` -> `duplicate`
  - `plural-key` -> `category`
  - `categories` -> `category-missing`
  - `source-error` -> `source`
- New issue types
  - `option-missing`

## Change Log

* Add format

* Cleanup terminology, grammar, etc.

* Throw on error

* Add trim and collapse; Move translator-output to print-missing subcommand

* Fix output order

* Add trim and collapse options

* Add format tests

* Fix lint and tests

* Add more format tests and improvements to make them pass

* "string" -> "message"

* Use @formatjs/icu-messageformat-parser in the validator

* Use Intl.PluralRules in validate

* Add utils

* Add nested category tests

* Use tabs for indentation

* Prevent exit code when errors are ignored

* Tidy error names and messages

* Build required cldr data; cldr to devDependencies

* Move find-config to utils

* Add build script

* Locales config as array

* Prevent double build on install

* Cleanup

* Rework duplicate error

* Lots of stuff

* Handle fr-on data

* Add starting locale-data file

* Fix build path

* Fix locale data

* Fix localesMap check

* Clean up logging

* Add "near: ..." to parse errors

* Fix async looping issues

* Fix escaping and quoting; Enable hash expansion

* Actually fix escaping + cleanup

* Improve arg finding

* Final escaping fix (hopefully)

* Improve argument correction

* Add arg correction option

* Indicate path glob support

* Fix escaped arg regex

* Improve argument correction

* 3.0.0-beta.0

* 3.0.0-beta.1

* Indent multiline templates beyond their keys

* Add apostophe character to delimiters

* Handle apostophes with pure cldr data

* Add haw quote test

* 3.0.0-beta.2

* Fix case match argument correction

* 3.0.0-beta.3

* Escape quotes as necessary

* 3.0.0-beta.4

* Unescape quotes before formatting

* 3.0.0-beta.5

* Export structureRegEx and formatMessage

* Improve structureRegEx to handle escapes better (but not perfectly)

* Fix indentation when not using -n

* 3.0.0-beta.6

* 3.0.0-beta.7

* Fix unicode regex

* Fix file writing

* Sort . above everything else

* Fix exit code

* Do not hoist with trim enabled

* 3.0.0-beta.8

* Add Thai and Vietnamese as default locales

* Fix writes more

* Fix print-missing

* 3.0.0-beta.9

* Fix source quotes

* 3.0.0-beta.10

* Fix hash replacements

* 3.0.0-beta.11

* Fix sorting comma handling

* 3.0.0-beta.12

* Handle comments properly when checking comma for sort

* 3.0.0-beta.13

* Convert English source "=1" cases to "one" if only basic plural differences from "other" are found

* 3.0.0-beta.14

* Fix erroneous =1 swapping

* 3.0.0-beta.15

* Fix argument checking in additional plural categories

* 3.0.0-beta.16

* Improve apostrophe tests

* Fix apostrophe recognition/escaping

* Fic double backslash value parsing

* 3.0.0-beta.17

* Update README

* Remove rebase artifact
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant