Skip to content

Releases: teambit/bit

v1.10.0

29 Apr 13:11
Compare
Choose a tag to compare

Improvements

  • Support semantic version ranges for components by adding a new componentRangePrefix property to dependency resolver in workspace.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 to workspace.jsonc or package.json (#9682)

Bug Fixes

  • Fix an issue where + sign was saved to component's package.json instead of actual resolved version (#9685)
  • Fix an issue where preview content height was nto calculated correctly (#9684)

Internal

  • Improve file watcher (#9686, #9683, #9678)
  • Improve error logging for plugin loading issues (#9687)
  • Change format of logging schema commands (#9675)
  • Support saving flattened-dependencies as string[] instead of Object[] (#9679)
  • Propagate runtime preview errors (#9676)
  • Update dependencies (#9677)

v1.9.124

15 Apr 18:54
Compare
Choose a tag to compare

Improvements

  • Add test coverage report to test results (in supporting versions of the testers) (#9657)
  • Add support for + policy in env.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

17 Mar 13:13
Compare
Choose a tag to compare

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 to bit test and bit 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

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 during pnpm 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 return Schema[] (#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 the api/lanes/check-conflicts route (#9602)

v1.9.75

19 Feb 11:36
Compare
Choose a tag to compare

Improvements

  • Allow setting up per-workspace with --local option bit config set user.token xxx --local, or --local-track to have config in workspace.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 running bit 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 of bit diff foo 0.0.1 0.0.2 you can bit 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 unrelated package.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 concurrent add-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 deleting node_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

v1.9.44

20 Jan 14:35
Compare
Choose a tag to compare

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 to extend and use external env.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 run bit 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

v1.8.127

26 Nov 15:48
Compare
Choose a tag to compare

Improvements

  • bit compile and bit 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:
    • Introduce a bit lane history-diff command to see the the history of all components on a given lane (#9285)
    • Introduce a new bit blame command to show a per-line information on when it was last modified and by whom (#9271, #9272)
  • 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 the snapped or pending in bit 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 from component.json (#9319)
  • Fix an issue where bit install crashed when it failed to delete unwanted items in node_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

v1.8.68

29 Sep 13:11
Compare
Choose a tag to compare

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 expressions
    • bit recover - recover component(s) soft-deleted from the workspace, or a remote scope
    • bit stash - stash modified components
    • bit mini-status - light and fast variation of bit status
    • bit dependencies --tree - render dependencies as a tree, similar to npm ls.
    • bit lane rename - change the lane-name locally
    • bit watch --check-types - show errors/warnings for types during bit 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 generated package.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

08 Sep 13:23
Compare
Choose a tag to compare

Improvements

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

v1.8.20

04 Aug 15:02
Compare
Choose a tag to compare

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.

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.
  • Support --update-snapshot option for bit test
    • Requires updating your env, or @teambit/defender.jest-tester and @teambit/vite.vitest-tester plugins if you have a custom env (#9025)
  • 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 for bit 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 during bit 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 when bit deps set was used (#9035)
  • Fix and issue where dependency installation on bit switch --main fails when app is configured in workspace.jsonc but not in .bitmap (#9038)

Internal

v1.7.48

16 Jul 12:10
Compare
Choose a tag to compare

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 in package.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)

Internal