Bit v14.0.0 Release Notes
Release Date: 2019-02-04 // about 5 years ago-
Summary
π Bitβs v14 is released side-by-side with the release of the v2 for bit.dev, Bitβs component community hub. New features for bit.dev v2 are announced in Bitβs Blog.
With over 65 new features, changes and bug fixes, v14 is Bitβs largest and richest release to date. V14 is focused on increased stability, agility and performance. It is is fully backwards compatible, and provides a faster and smoother workflow with improved compatibility throughout the ecosystem.
Here are some of v14's highlights:
- Improved performance for tracking, versioning and exporting components by up to 700%.
- π Dozens of bug fixes (~70% of open issues).
- π New commands
watch
andeject
. - π Dynamic namespaces support.
- π Improved VueJS support.
- π Improved CSS support.
- π Auto generated documentation for React.
π New
- π New
bit watch
command for building components upon file modifications. - π New
bit eject
for removing local components and installing them as packages by an NPM client - π Support dynamic namespaces (replaced the namespace/name format with a dynamic name that can have multiple slashes to indicate a hierarchical namespace).
- π Support components with binary files (or non-supported extensions) as the only files.
- π Support ids with wildcards (e.g.
bit tag "utils/*"
) for the following commands:tag
,untag
,remove
,untrack
,checkout
,merge
,diff
andexport
. - π Support mix syntax of typescript and javascript inside .ts file
- β Added react docs parsing to extract the description of the properties correctly.
- π Support flow types in react doc generation.
- π Support Vue files with typescript.
- π Support configuring Git executable path.
- π Support the new jsx syntax changes by Babel.
- π Support print multiple external (build / test) errors.
- π Support adding the project
package.json
file to a component. - π Support
import ~
from a local (authored) file to an imported sass component. - β Add programmatic API for add multiple components.
- π¦ Set the only dist file as main file in package.json (in case there is only one).
- π Allow removing a component when it is invalid.
π Changes
- π Improved performance for tracking, versioning and exporting components by up to 700%.
- π CSS parser replaced for better import syntax support.
- π Improve auto-tag mechanism to tag not only the dependents but also the dependents of the dependents and so on.
- π Changed
--include-unmodified
to--all
. - π Replace caporal package with commander for security reasons.
- π Better error when a component was tagged without its dependencies.
- π Make bit version command faster and support both
bit -v
andbit -V
to get bit version. - β‘οΈ Update tty-table, flow-coverage-report and mocha-appveyor-reporter for security reasons.
- π Improve exception handling for old clients connecting to a newer server.
- Shorten the generated component ID to the minimum possible.
- β Return status code 1 when bit test has failing tests.
- β Suppress an exception of directory-is-empty when adding multiple components and some of them are empty, show a warning instead.
- π Improve "missing a main file" error when adding multiple components to print the problematic components.
- π Improve performance by caching objects after loading them.
- π Fix ci-update command with component version number.
- π Fix
bit status
to not throw an exception for invalid components. - π Change
--conf
onbit import
to be a path to the config dir. - π Replace the deprecated typescript-eslint-parser with @typescript-eslint/typescript-estree
π Bug fixes
- π Fix link files generated to a package when it should point to an internal file of the package.
- π Fix parsing React docs to show the
@example
tag. - π Fix running
bit link
from an inner directory for author. - π Fix ampersand and minus signs causing parse error in css files.
- π Fix
bit add
to add the correct letter case even when--main
or--test
flags entered with incorrect case. - π Fix errors when component files require each other using module path.
- π Fix dev-dependency that requires prod-dependency to include the dependency in the flattenedDevDependencies array.
- β‘οΈ Do not delete isolated environment when running ci-update with keep flag and it throws exception.
- π Fix import of components with circular dependencies.
- π Fix link content generation for authored components on bit install.
- π Fix bug with bit show when the remote component has config file.
- π Fix context for testers during ci-update.
- π Fix missing context in getDynamicPackageDependencies.
- π Fix bug with bit show when scope path provided.
- π Fix errors "JavaScript heap out of memory" and "Error: EMFILE: too many open files" when exporting a huge number of components.
- π Fix error "link-generation: failed finding .. in the dependencies array" when a dependency has a devDependency installed as a component.
- π Improve the stability of
bit export --eject
and provide some kind of rollback in case of failure. - π Fix bit-remove to delete authored component files when removing an authored component from an inner directory.