Releases: teambit/bit
Releases · teambit/bit
v1.10.0
Improvements
- Support semantic version ranges for components by adding a new
componentRangePrefix
property to dependency resolver inworkspace.jsonc
to define semver prefix (#9681, #9691) - Allow dependencies to be installed from https/git urls (#9680)
bit import ... --write-deps
to write the dependencies of imported components toworkspace.jsonc
orpackage.json
(#9682)
Bug Fixes
- Fix an issue where
+
sign was saved to component'spackage.json
instead of actual resolved version (#9685) - Fix an issue where preview content height was nto calculated correctly (#9684)
Internal
v1.9.124
Improvements
- Add test coverage report to test results (in supporting versions of the testers) (#9657)
- Add support for
+
policy inenv.jsonc
for version to be resolved from the workspace (#9641) bit install --add-missing-deps
supports skipping unavailable packages with the--skip-unavailable
flag (#9667) (#9667)
Performance
Bug Fixes
- Fix an issue where Bit mis-fired
componentNotFound
issue (#9671) - Fix an issue where an API type wasn't named correctly in API Reference (#9673)
- Fix an issue where in some cases component size wasn't calculated (#9659)
- Fix an issue where
bit env replace
failed when env wasn't loaded (#9632)
Internal
v1.9.100
Improvements
- Improve API Reference and documentation (#9569)
- Improved handling of internal and external type references
- Better handling of inferred array types, generic types, and Promise types
- Fixed type reference resolution for internal components
- Added support for displaying examples in function documentation
- Better code block extraction and formatting in JSDoc comments
- Improved rendering of tuple types
- Added external link icons for external type references
- Added prompt support to
bit create
command for interactive templates (#9610) bit snap
natively supports publishing to privately hosted package registries (#9606)- Introduce
--json
option tobit test
andbit check-types
commands to get results in JSON format (#9615, #9614) - Improve various CLI outputs with more descriptive errors and messages (#9612, #9607, #9583, #9617, #9581)
Performance
- Dramatically reduce file system I/O to improve command execution time (#9604, #9590, #9591, #9598, #9596, #9589, #9586, #9568, #9588, #9578, #9577, #9572)
Bug Fixes
- Fix an issue where if a component had
-preview
in it's name, it caused component-preview-chunk to have incorrect name (#9622) - Fix an issue where
bit install
didn't do proper validation on package name format (#9582) - Fix an issue where when
env.jsonc
was modified, dependency cache wasn't cleaned (#9564) - Fix an issue where SSR wasn't working on
bit start
in workspace nor on a Scope (#9585) - Fix an issue where
bit install
failed duringpnpm prune
(#9573) - Fix an issue where a default
viewport
property was set on all compositions (#9571) - Fix an issue where not all component IDs were available in the workspace dependency graph (#9565)
Internal
- Update dependencies (#9594, #9593, #9592, #9527, #9528)
- Refactoring (#9619, #9579, #9584, #9587)
- Introduce "--limit" flag to limit the number of versions shown in the graph (#9603)
getSchemas
API to always returnSchema[]
(#9605)- Replace incorrect uses of the term "localScope" with "workspace" (#9621)
- New API for debugging filesystem reads during commands (#9599)
- Add
config-conflict
data to theapi/lanes/check-conflicts
route (#9602)
v1.9.75
Improvements
- Allow setting up per-workspace with
--local
optionbit config set user.token xxx --local
, or--local-track
to have config inworkspace.jsonc
(#9557, #9555) - Support VScode extension to produce a visual workspace graph for components (#9547, #9545)
- Allow for better control over component's
package.json
when runningbit compile
(#9530) - Enable auto-formatting components before snap/tag with
workspace.jsonc
config (#9497)"teambit.defender/formatter": { "formatOnPreSnap": true }
- Simplify getting
diff
from a version it's parent with--parent
. Instead ofbit diff foo 0.0.1 0.0.2
you canbit diff foo 0.0.2 --parent
(#9498) - Improve various CLI/UI outputs and errors for better DX (#9507, #9502, #9506)
- Support syntax highlighting for
.cjs
and/mjs
(#9492)
Bug Fixes
- Fix an issue where
bit login
didn't validate the token when it announced user is "logged in" (#9562) - Fix an issue where sometimes in workspace UI you can't compare past version with current changes (#9549)
- Fix an issue where component data got mutated fix, avoid mutating scope aspects when loading a component from the workspace (#9551)
- Fix an issue where
bit install
picked up unrelatedpackage.json
and installed dependencies from them (#9554) - Fix an issue where active component wasn't picked up correctly when URL had several query params (#9550)
- Fix an issue where getting out-of-memory during
bit snap
due to high number of concurrentadd-dependencies-graph
(#9475) - Fix an issue where
artifacts
directory got into the generated component package (#9532) - Fix an issue where
bit start
HMR failed (#9534) - Fix an issue where running
bit checkout reset --all
to write removed components failed on a lane (#9533) - Fix an issue where
bit watch
didn't re-compile modified components (#9523) - Fix an issue where API-reference didn't pick up on exported types (#9512)
- Fix an issue where config-writer throws an error about
failed generating config files
after deletingnode_modules
(#9508) - Fix an issue where
bit server-forever
failed on Windows (#9499) - Fix and issue where plugin resolution path was incorrect and led to "file not found" errors (#9561)
Internal
- Update dependencies (#9483, #9539, #9522, #9525, #9521, #9526, #9485, #9486, #9490, #9520, #9535)
- Remove dependencies (#9484, #9536, #9538, #9519, #9501, #9518)
- Move to node 22.14.0 (#9548)
- Update component's envs for better suited compilation (#9503, #9529)
- Remove some internal circular components (#9537)
- Support no-op env, and env with no dev-services (#9504)
- Move
NpmCiRegistry
class from the repo to e2e-helper component (#9558) - Refactoring (#9517, #9495, #9496, #9487)
v1.9.44
Improvements
- Support maintaining multiple versions/branches on main-lane (#9362, #9345)
- Add Harmony templates to default
workspace.jsonc
(#9449) - Allow checking out components where on a lane to quickly edit components (#9440)
- Improve
bit import
fallback strategy when importing components in a lane to try and get the component from its original scope (#9428) - Improve various CLI/UI outputs and errors for better DX (#9421, #9420, #9458, #9472, #9419, #9343, #9408, #9392, #9377, #9358, #9355, #9347, #9354)
- Add sandbox mode for component preview in scope (#9366)
Bug Fixes
- Fix many edge cases for the
env.jsonc
ability toextend
and use externalenv.jsonc
files as dependencies (#9257) - Fix an issue when running
tag --build
may not update build status correctly (#9477) - Fix an issue where navigating in API reference had incorrect routes from failed to serialize of some node signatures (#9474)
- Fix an issue where component in a lane didn't get updates from the env, when the env in main (#9432)
- Fix an issue where sometimes Bit assumes a component is new (#9411)
- Fix an issue where during merge Bit may throw a "version not found" error (#9414)
- Fix an issue where after
bit checkout
user needed to runbit import
(#9409) - Fix an issue where after snap/tag some data on apps is not available (#9406)
- Fix an issue where some commands may fail when user decided not to send analytics (#9382)
- Fix an issue where env-url wasn't generated correctly when component modified in a lane (#9341)
- Fix an issue where sometimes
bit install -a
didn't work for new components (#9333)
Internal
- Better handling of internal scope cache (#9435, #9434, #9399)
- Improve handling of complex workspaces with various envs that compiled to multiple targets (ESM, CJS, etc) (#9400, #9415, #9402, #9397)
- Optimize
preview
entry point and handle different files (#9348, #9426) - Set preview sandbox policy via API slot (#9454)
- Use pre-bundle in build (#9351)
- Ensure a single instance of
@teambit/base-ui.graph.tree.collapsable-tree-node
(#9391) - Better handling of open ports (#9381)
- Update dependencies (#9334, #8900, #9335, #9338, #9361, #9367, #9376, #9412, #9371, #9401, #9370, #9353, #9473, #9398, #9452, #9386, #9461, #9471, #9465, #9467, #9464, #9466, #9462, #9459, #9457, #9445, #9450, #9448, #9444, #9446, #9443, #9447, #9442, #9453, #9433)
- Removed dependencies(#9342, #9369, #9210, #9456, #9455, #9375, #9416, #9423, #9422, #9418)
- Refactor legacy code to modern components (#9384, #9478, #9344, #9352, #9356, #9359, #9373)
- Remove unused code (#9437, #9439)
- Add missing exports to cli esm.mjs (#9385)
- Update env for core aspects (doctor, host-initializer) to the correct env (#9387)
- Fix circular between constant and global-config legacy components (#9470)
- Make the teambit.scope/objects component a core-aspect (#9441)
- Remove occurrences of v8 cache, which is not used anymore (#9390)
- Keep per-component lockfile (#9427, #9388, #9214, #9396, #9339)
v1.8.127
Improvements
bit compile
andbit watch
can generate types with--generate-types
flag (#9308, #9314, #9301)- Support syntax highlighting for
.vue
files (#9282) - Support passing arguments to app dev server on
bit run
with--args
option (eg--args="--a=1 --b=2"
) (#9216) - Component patterns support more complex selector on various commands (unlimited
AND
, multiple states and more) (#9235) bit stash
supports stashing new components with--include-new
(#9273)- New experimental commands:
- UI, CLI, error messages, outputs and various Dev-Ex improvements (#9297, #9217, #9311, #9275, #9260, #9293, #9283, #9245, #9291, #9238, #9302, #9288, #9248, #9294, #9284, #9241, #9316, #9250)
Bug Fixes
- Make sure component history does not contain redundant information (#9281)
- Fix an issue where dependencies marked as missing were not possible to be removed (#9265)
- Fix an issue where components marked as
local-only
where still printed in thesnapped
orpending
inbit status
(#9266) - Fix an issue where fork information is not available before trying to extract it (#9229)
- Fix an issue where in API-schema generation where functions weren't serialized correctly (#9258)
- Ignore cases
bit deps-set
used to self-apply or remove "self" as a dependency (#9237) - Fix an issue where duplications occurred on a components auto-generated
package.json
(#9240) - Fix an issue where during switching lanes with
bit switch
command, redundant components were re-written (#9318) - Fix an issue where during
bit import
env configuration was removed fromcomponent.json
(#9319) - Fix an issue where
bit install
crashed when it failed to delete unwanted items innode_modules
(#9224) - Fix an issue where
bit start
failed when the same env with several version was used in a workspace (#9244) - Fix an issue where
ComponentNotFound
error was thrown on new components in various cases (#9317) - Fix an issue where
.DS_Store
was added to components (#9313) - Fix an issue where renamed components were not deleted upon lane merge (#9307)
- Fix an issue where deleted components weren't reintroduced back into .bitmap after
bit reset
(#9300) - Fix an issue where
bit start
spinners abstracted errors (#9287) - Fix an error where outdated local index caused Bit to fail communicating with remote server (#9242)
Internal
- Update dependencies (#9299, #9227, #9310, #9298, #9222, #9315, #9246, #9220, #9243, #9259, #9270)
- Bit-Server improvements for IDE plugin (#9320, #9253, #9252, #9236, #9268, #9321, #9309, #9296, #9289, #9255, #9254, #9247, #9225, #9330, #9295, #9303, #9276, #9280, #9328)
- Refactor old code and cleanups (#9324, #9326, #9325, #9323, #9322, #9306, #9261, #9286)
- Avoid watching local-scope files on Windows (#9226)
- Improve merge between workspace/scope config and global Bit config (#9231, #9223)
- Ensure
package.json
is available in capsules root directory (#9329) - Improve error handling for aspect loading (#9263)
v1.8.68
Improvements
- Sort component IDs in
bit export
output, and introduce--verbose
option to show which versions exported (#9219) - Add additional examples to
bit env set --help
(#9212) - Automated API reference now shows complete signature of every API node including docs (#9206)
- Improve CSS/SASS/SCSS dependency detection to support
import ... as ...
and more (#9205) bit dependents
support--json
option to get easily parse output by another process (#9204)bit build | snap | tag
supports--skip-tasks
to skip any task from the build pipeline (#9196)bit test
exit with non-zero code when tester fails due to coverage (#9218)- Following commands and flags are no longer marked as experimental: (#9200)
bit fork --ast
bit scope fork --ast
bit rename --ast
bit scope rename --ast
- use AST to transform component instead of regular expressionsbit recover
- recover component(s) soft-deleted from the workspace, or a remote scopebit stash
- stash modified componentsbit mini-status
- light and fast variation ofbit status
bit dependencies --tree
- render dependencies as a tree, similar tonpm ls
.bit lane rename
- change the lane-name locallybit watch --check-types
- show errors/warnings for types duringbit watch
Bug Fixes
- Fix an issue where if compilers did side-effects during build pipeline on
package.json
, these changes would not be in the generatedpackage.json
(#9207) - Fix an issue where the component-preview-template from the env was not included for core-environments (#9215)
- Fix an issue where Bit tried to fetch local aspects from remote (#9208)
Internal
- Fix many linting issues (#9209)
- Remove
component.jsonc
files from some core components (#9211) - Update envs for core aspects (#9201)
- Update dependencies (#9199, #9195, #9184, #9180, #9182)
- Make the process of loading components and apps more robust (#9198, #9194)
- Improve Scope garbage collect (#9193, #9192, #9190, #9189)
- Add more APIs for VScode plugin to proxy for additional Bit commands (#9183)
v1.8.52
Improvements
- Improve various CLI outputs to improve dev-experience (#9175, #9171, #9167, #9114, #9161, #9131, #9132, #9170, #9096)
- Show dependents of a Lane in the component-drawer of the workspace and scope (#9151, #9154, #9152)
Performance
- Reduce memory usage during peer dependencies resolution (#9156)
Bug Fixes
- Fix an issue where modified components were rendered with opacity in the Bit dev-server (#9136)
- Fix an issue where user-bar and compositions got re-rendered on route change in the Bit dev-server (#9137)
- Fix an issue where
bit env replace
didn't work well when multiple versions of the same env is used for various components (#9174) - Fix an issue where link to line-of-code didn't scroll to selected line (#9160)
- Fix an issue where automated API-reference had a missing API in tagged exports (#9162)
- Fix an issue where Vite-generated previews didn't work well on windows (#9143)
- Fix an issue where
onLoad
event wasn't triggered on webpack compilation errors (#9109) - Fix an issue where after
bit new
an error about "missing tsconfig" appears (#9092)
Internal
- Additional APIs for the VScode-Bit-plugin (#9178, #9172, #9169, #9144, #9139, #9120, #9090, #9155, #9153, #9106, #9105, #9099, #9101, #9125, #9104, #9087, #9094, #9088)
- Various fixes for "env loading" process (#9165, #9128, #9130, #9134, #9138, #9111)
- Update dependencies (#9147, #9110, #9150, #9103, #9121, #9135, #9098)
- Remove
--lane-history
from being a feature flag, as it is now the default (#9095) - Introduce more strategies to avoid fast-forward on
bit snap
ortag
(#9159) - Add some documentation for
teambit.workspace/workspace-config-files
aspect (#9116) - Prepare the
onlyOverview
mode for component-docs (#9124, #9141, #9119, #9166) - Store generator service data for envs in their model (#9089)
- Fix types issues in config mutator (#9177)
- Add add webpack alias
@teambit/base-react.navigation.link
to ensure a single instance (#9113) - Gracefully handle missing compositions (#9093)
- Improve backwards compatibility for legacy Jest testers (#9115)
- Support HMR for legacy-react-apps when using "port-forwarding" (#9091)
- Support define the env type by a type member as well as name (#9085)
v1.8.20
New Features
- Introduce Local Only Component workspace feature (#9059, #9057)
- Mark any number of components as Local Only with the new
bit local-only set <component>
command - Local Only components allow you to avoid tagging/releasing specific components, even if they are modified, or their dependencies are modified.
- Scenario 1 - I have an app in the workspace, which I want to be able to
bit run
, but I don't want to trigger it's build, as I am focused only on the components, while the app itself will be built and released from a different workflow. - Scenario 2 - I want to have a small component in my workspace as a basic "consumer" for my other components, and I don't want it published, as it is a testing environment for me and not a reuseable asset.
- Mark any number of components as Local Only with the new
Improvements
- Jest upgraded from 26 to 29 for all core environments (#9015, #9052)
- Only relevant for teams who either directly use, or customize the following:
teambit.react/react
,teambit.harmony/node
,teambit.react/react-native
.
- Only relevant for teams who either directly use, or customize the following:
- Support
--update-snapshot
option forbit test
- Requires updating your env, or
@teambit/defender.jest-tester
and@teambit/vite.vitest-tester
plugins if you have a custom env (#9025)
- Requires updating your env, or
- Quick search (
cmd+k
) now supports opening links in new tabs and few more UX updates (#9054) - Workspace starter (
bit new
) now supports creating custom envs and new components that use the new custom envs (#9036) - Add tooltip with full filename in file tree (#9066)
- Add environments when initializing a workspace with
bit init --generator [envs]
option (#9064) - Add deprecation warning for teams using the Eslint/Prettier aspects directly and not through the designated plugins (#9050)
- Introduce
--force-ours
and--force-theirs
options forbit switch
to override files in the workspace instead of trying to merge (#9048) bit list
command marks deleted components, and also sorted alphabetically (#9042, #9041)
Performance
- Support SSR for the Bit UI during
bit start
(#8915) - Avoid adding apps to
workspace.jsonc
duringbit create
, as this is no longer needed (and impacts command load time) (#9061, #9037)
Bug Fixes
- Fix an issue where
bit create
for a component with existing name but different scope failed (#9082) - Fix an issue where
bit doctor
command exited upon any check failure (#9072) - Fix an issue where if a package is duplicate in runtime and dev and
bit deps remove --dev
was used, dependency wasn't removed (#9070) - Fix an issue where short-hash version was written to
.bitmap
instead of long-hash (#9067) - Fix an issue where tagging a pre-release allows for an illegal version name (#9063)
- Fix several issues in generating automated API References (#9062, #9060)
- Fix an issue where dependency version was not saved correctly (#9039)
- Fix an issue where
bit show
listed incorrect version whenbit deps set
was used (#9035) - Fix and issue where dependency installation on
bit switch --main
fails when app is configured inworkspace.jsonc
but not in.bitmap
(#9038)
Internal
v1.7.48
Improvements
- Block running the
build
process when component issue is detected, and print the issue (unless manually approved) (#9031)
Bug Fixes
- Fix an issue where Bit removed
types
entry inpackage.json
that an env defined (#9034) - Fix an issue where CSS/SCSS parsing silently fails and not returning list of dependencies (#9033)
- Fix an issue where imports with a pattern that returned an empty list resulted in stopping the entire import process (#9027)
- Fix an issue where API Reference tab wasn't able to render method schema for functions that return jsx (#9019)
- Fix OOM when
ArtifactStorageError
throws (#9014)