Change log
List of changes for each released npm package version.
TOC
Top-level Github
- [chore] Strictify modules (Flow)
- [chore] Inline
keyMirror.js
module to remove fbjs
package dependency
- [minor] Identify strings with updated
hash_key
in categorizeNewStrings.js
- [chore] Update copyright headers to 'Meta Platforms, Inc.'
- [chore] Upgrade to Flow v0.158.0
- [fix] Add missing dependencies for
@babel/preset-react
- [build] Add test to ensure published versions are in sync
- [feat] Add example of fbt common to the demo-app. See
<fbt common={true}>...</fbt>
.
- [chore] Upgrade to Flow v0.141.0
- [chore] Use GitHub Actions for Continuous Integration
- [chore] Upgrade to Flow v0.137.0
- [chore] Adding @noflow annotations
- [chore] Upgrade to Flow v0.127.0
- [fix] Relax required version patterns of npm dependencies
- Sync
babelTypeShims.js
to GitHub. It was previously missing due to internal config issues.
- Upgrade to Flow v0.123.0
- [doc] Add Fbt Common Strings documentation
- Upgrade to Flow v0.120.1
- refactor: Remove String.prototype.* methods from FbtResult flow-types
- refactor: Breakup
moduleMap
from babelPresets
- Add
yarn clean-test
script to clean, rebuild and test this whole project
- Run Flow checks and all Jest tests in Travis by default
- Upgrade to Flow v0.115.0
- Remove the String.prototype methods (that aren't used internally) from libdefs
- Upgrade to Flow v0.113.0
- Make demo-app rely on the local versions of our published npm modules.
That'll avoid us from having to update
package.json
for every package update.
- Fix demo-app breakage
- Require node v10.4.0+ because for fb-tiger-hash (we need BigInt!)
- [Experimental] Add support for Flow type checks.
- Run
yarn flow:check
to check them.
- NOTE: our Flow types are still in their infancy, so lots of errors are expected.
- Run
yarn flow:watch
to recheck types upon changing JS files.
- Prepare directory structure for Lerna
- Enable testing packages from top-level in GitHub
fbt versions
<summary>
Unreleased changes that have landed in main. Click to see more.
</summary>
1.0.2
- [fix] Introduced
onMissingParameterError
error listener for reporting when substituteTokens
encounters a missing parameter, instead of throwing if __DEV__
was truthy
- [fix] When a parameter value is
undefined
, render empty string instead of the string "undefiend"
(i.e. match behavior for when parameter value is null
)
1.0.1:
- [chore] Make it compatible with React 18 (and any
>=0.12.0
).
1.0.0:
- [feat] Major release to maintain compatibility with `babel-plugin-fbt@1.0.0`
- [feat] Expose the
fbs
API to output plain-text translatable strings.
- [feat] Expose
extraOptions
to FbtHooks.getFbtResult
- [chore] Throw an exception if we detect duplicate token names when using the low-level
fbt._()
API (See 9bb6890 / D33476399)
0.17.1:
- [fix] Fix React dependency in intlList.js
- [feat] [Experimental] Add sanity check to ensure that each pattern string token is mapped to a single substitution value.
- [chore] Add
.npmignore
config (avoid exporting some build, debug & test files)
0.17.0:
- [feat] Add user's regional local in
IntlViewerContext
- [feat] Improve resilience of detection of fbt parameters inside translated string patterns and improve error message format.
- [chore] Update babel-plugin-fbt-runtime dependency version to
^0.10.x
- [chore] Update babel-plugin-fbt dependency version to
^0.21.x
- [fix] Ensure that
fbs()
really returns FbtPureStringResult
objects
- [fix] Force fbs:plural to only show plain text custom UI values.
- [feat] Convert babel-plugin-fbt raw JSFBT payload to runtime friendly version and add fbt._implicitParam() client-side method
0.16.6:
- [feat] Add a new
FbtTranslations.getRegisteredTranslations
function
- [feat] Add a new
FbtTranslations.mergeTranslations
function
0.16.5:
- [chore] Update babel-plugin-fbt dependency version to
^0.20.x
0.16.4:
- [chore] Update babel-plugin-fbt dependency version to
^0.19.x
0.16.3:
- [chore] Update babel-plugin-fbt dependency version to
^0.18.x
0.16.2:
- [chore] Update babel-plugin-fbt dependency version to
^0.17.x
- [fix] Don't strip punctuation that isn't redundant with token punctuation
0.16.1:
- [fix] Updated peer dependencies, and devEngines dependencies.
- [fix] Improved Flow typing of
intlList
0.16.0:
- [major] Merge two
GenderConst
entries that had the same value to avoid confusion.
I.e. MIXED_SINGULAR
and MIXED_PLURAL
will both be referred as MIXED_UNKNOWN
and it'll keep the same value (MIXED_UNKNOWN=5
).
- [feat] Add Babel
presets
as a CLI option for collectFBT.js
- [feat] Add ES6 imports/exports support for shared enums. See related doc.
0.15.0:
- [feat] Add ability to provide your own ViewerContext dynamically. See related doc.
- [fix] Render optional catch binding syntax to ES5 to fix IE11 bug
- [feat] Convert
fbt.isFbtInstance()
to a predicate function for Flow
- [fix] Avoid generating unnecessary empty strings in fbt result contents
- [chore] Log type of leaf reached during table access failure
- [fix] Fix FlowFixMes in FbtTable.access
- [feat] Improve feature detection of
Object.defineProperty()
for IE11
0.14.0:
- [fix] Add NumberFormatConfig flow definition
- [fix] Use
invariant
module in fbt runtime and list it as dependency
- [refactor] Introduce
FbtTable
and related types around payload access
0.13.0:
- [fix] FbtInit.getTranslatedInput was setting the wrong default.
0.12.1:
- [fix] Patch fix for FbtHooks.getTranslatedInput (from 0.13.0)
0.12.0:
- [feat] FbtHooks.getTranslatedInput for ReactNative translation retrieval
0.11.0:
- [feat] Expose FbtResult in fbt
- [feat] Enable overriding result returned from fbt via
getFbtResult
in FbtHooks
- [feat] Provide onStringMethodUsed hook for IFbtErrorListener
- [feat] Remove Banzai & FbtLogger, provide hooks in their place.
- [refactor] Abstract away string serialization error handling.
- [refactor] Move FbtContentItem and $NestedFbtContentItems to libdefs
- [refactor] Flow type strict substituteTokens.js
- Fix version in header comments
0.10.6:
- More accurate peer dependencies
0.10.5:
0.10.4:
- Improve repository link in package.json
0.10.3:
- [bug] Fix IntlNumberType.get(...) to work with short locales #85
- Allow fbt:enum value prop to be a string literal
- Fix intlList 'react' import issue #62
0.10.2:
- 04df822 Updated package version references
0.10.0:
- 9acb1cd Make fbt translation payload getter customizable
babel-plugin-fbt versions
<summary>
Unreleased changes that have landed in main. Click to see more.
</summary>
- Add unit tests for fbs.enum() and <fbs:enum>
babel-plugin-fbt-runtime versions
<summary>
Unreleased changes that have landed in main. Click to see more.
</summary>
fb-tiger-hash versions
<summary>
Unreleased changes that have landed in main. Click to see more.
</summary>
1.0.0:
- [feat]! Major release to maintain compatibility with `babel-plugin-fbt@1.0.0`
- [chore] Improve
.npmignore
config (avoid exporting some build, debug & test files)
0.2.0-rc1-beta:
- [refactor] Add flow types
- [refactor]! Replace
hashPhrases()
function by getFbtHash()
0.1.6:
- Strip yarn files in .npmignore
0.1.5:
- Add Typescript declarations and move source files to their own folder
0.1.4:
- Add description in NPM package
0.1.3:
- package.json: improve repository link and set more accurate dependency versions
0.1.0:
- First commit. A native JavaScript implementation of the Tiger hash Algorithm.
<summary>
Unreleased changes that have landed in main. Click to see more.
</summary>
1.0.0:
0.0.4-beta:
- [chore] Improve
.npmignore
config (avoid exporting some build, debug & test files)
- [chore] Update peer dependency for
babel-plugin-fbt@^0.21.x
0.0.3:
- Update peer dependency on babel-plugin-fbt
- Pass
{enum: true}
to '@babel/plugin-syntax-flow'
0.0.2:
- Require Babel plugins directly
0.0.1:
- First commit. A default Babel transform to use for fbt collection.
@fbtjs/babel-plugin-standalone versions
- 0.0.1:
- First commit. The standalone browser-friendly version of
babel-plugin-fbt
.
fb-babel-plugin-utils versions
<summary>
Unreleased changes that have landed in main. Click to see more.
</summary>
0.13.0:
- [chore] Add
.npmignore
config (avoid exporting some build, debug & test files)
- See
0.13.0-beta for
more info
0.13.0-beta:
- [feat] Allow test data to specify
filter
status which decides whether a test will be run
- [fix] Fixed display of error message for
assertSourceAstEqual()
0.12.0:
- [refactor!] Remove SyntaxPlugins
- [chore] Remove SyntaxPluginsConfig
0.11.1:
- [chore] Adding @noflow annotations
0.11.0:
- [feat] Add ability to test against Jest code snapshots
- [fix] Add missing
json-diff
npm dependency
0.10.1:
- [fix] Relax required version patterns of npm dependencies
0.10.0:
- Feat: expose utility function
generateFormattedCodeFromAST()
to convert a BabelNode
to a source code string
- Minor: clarify error messages when unit tests fail due to Babel AST node differences.
- Minor: normalize source code before using it in unit tests' code comparisons
0.9.1:
- Add READMEs and improve repository link in package.json
0.9.0:
gulp-rewrite-flowtyped-modules versions
<summary>
Unreleased changes that have landed in main. Click to see more.
</summary>
0.0.10:
- [chore] Improve
.npmignore
config (avoid exporting some build, debug & test files)
0.0.9:
gulp-strip-docblock-pragmas versions
<summary>
Unreleased changes that have landed in main. Click to see more.
</summary>
0.0.4:
- [chore] Improve
.npmignore
config (avoid exporting some build, debug & test files)
0.0.3:
react-native-fbt versions
<summary>
Unreleased changes that have landed in main. Click to see more.
</summary>
- [chore] Improve `.npmignore` config (avoid exporting some build, debug & test files)
- 0.0.1:
- New React Native package that enables the FBT library for both iOS and Android
fbt-rn-android-native versions [Deprecated]
0.0.2:
- Updated Readme.md file with a link to a demo app showing how to use the module
0.0.1: