Skip to content

Releases: teambit/bit

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

v1.7.41

09 Jul 13:57
Compare
Choose a tag to compare

Features

  • Automatically install peerDependencies (#8954)
  • Quick search in component dev-server (bit start) - Mac: CMD+K, Windows/Linux: CTRL+K (#8964)

Improvements

  • Add generators to a new workspace during initialization (example: bit init --generator frontend.module-federation/envs/mf-react-env) (#8963)
  • Use dedicated SCSS and SASS parsers for better static code analysis and dependency detection (#8973)
  • Automated API Reference supports @link and alias for object binding nodes (#8969)
  • bit status warns about components that use deleted envs (#9009)
  • bit merge to support component patterns (#8990)
  • Various UI and CLI message and tooltip updates (#8962, #8959, #8974, #8975, #8967)
  • Change the recommended node version to be >=20.0.0 (#8966)

Performance

  • Speed up rendering the component graph on workspace (bit start) (#8978)
  • Update component loading flow to improve performance (#8970)
  • Improve command bootstrap performance by making it unnecessary to add apps to workspace.jsonc (#8965)
  • Improved strategy for determining if a snap is a part of a lane (#8961)

Bug Fixes

  • Fix an issue where the proxy agent didn't get the correct configuration (#8972)
  • Fix an issue where during bit install, components that compiled to ESM didn't have type:module in package.json (#9006)
  • Fix an issue where bit delete allowed deleting components from main, when on a lane (#9003)
  • Fix an issue where files that were removed from a component in a lane caused diverged lanes (#8976)
  • Fix an issue where when a component was merged to lane in a different lane, it wasn't available when using --head (#8960)

Internal

v1.7.17

16 Jun 10:26
Compare
Choose a tag to compare

Performance

  • Improve bit install performance when Bit cache is warm (#8939)

Bug Fixes

  • Fix an issue where username/password auth settings from npmrc weren't passed correctly to pnpm (#8950)
  • Fix an issue where building version history graph caused stack overflow (#8944)
  • Fix an issue where times were printed to console during command execution (#8935)
  • Fix an issue where after bit create an error about not finding tsconfig appeared (#8931)

Internal

  • Bit now updates objects in local scope when .bitmap file was modified externally (by Git, for example) (#8941)
  • Update dependencies (#8946, #8933, #8936)
  • Update legacy aspect compilation (#8940, #8938)

v1.7.3

02 Jun 13:41
Compare
Choose a tag to compare

New Features

  • bit completion command to support autocomplete for component names, commands, sub-commands and flags (currently supported macos/linux) - bit completion >> ~/.zshrc (#8888, #8898)
  • Ability to open component in the browser with bit show COMPONENT-NAME --browser (#8910)
  • env.jsonc supports extends option, to allow inheriting from another env.jsonc (#8896)
  • bit status warns if you have components depending on deprecated components another code-smell (#8854, #8882, #8891, #8892)
  • Ability to keep LICENSE.md file as part of a components (#8909)
  • Easy way to import and keep dependencies more up-to-date with --dependencies-head option for bit import (#8920)
  • Checkout to an ancestor-x revision of a component with head~x (bit checkout head~2 COMPONENT) (#8870)
  • Set a workspace name on initialization with bit init --name NAME (#8919)

Changes

  • Upgrade to PNPM 9 (#8770, #8901, #8867, #8913, #8878, #8904, #8879, #8877, #8916)
  • Add time when log is printed to the console (#8929)
  • Make bit status output cleaner when there are many warnings and add --warnings option to see verbose output (#8899)
  • Default to defaultScope from workspace.jsonc for the bit scope fork command (#8885)
  • Add a -r alias for --auto-merge-resolve (#8862)
  • Auto generate local scope when needed (#8923)
  • Improve outputs from bit lane merge around updating dependencies in workspace.jsonc (#8886)

Performance

  • Improve performance of dependency installation and resolution (#8925, #8926, #8921)

Bug Fixes

  • Show a descriptive error when running bit-scope commands outside a workspace (#8884)
  • Fix an issue where bit checkout didn't respect --auto-merge-resolve flag when finding workspace.jsonc conflicts (#8930)
  • Fix various issues with component comparison (#8874, #8865, #8869, #8864, #8858)
  • Fix an issue where loading consumer-components failed when cache issues found (#8927)
  • Fix an issue where bit eject-conf changed the env-version of a component (#8912)
  • Fix an issue where deps for generators weren't installed correctly (#8906)
  • Fix an issue where bit diff didn't import missing objects (#8861)
  • Fix several inconsistencies around updating dependencies (#8903, #8883, #8872)

Internal

  • Improve setting up a local dev-environment for Bit (#8928, #8922, #8905)
  • Improve preview entries (#8911, #8691)
  • Improve handling cache and memory store (#8902, #8780)
  • Update version hash calculation (#8887)
  • Add ability for some commands to skip the loadAspects step (#8849)
  • Improve support for ESM in core aspects (#8890, #8895)
  • Commit back generated CLI Reference (#8863)
  • Removed unused code paths (#8876, #8875, #8873)
  • Move core implementations to external components (#8860, #8914)
  • Vulnerability fixes (#8857, #8853, #8908)
  • Fix flaky tests (#8893)

v1.6.157

06 May 08:27
Compare
Choose a tag to compare

New Features

  • Introduce bit unset-peer to support undoing `bit set-peer (#8843)
  • Introduce bit unuse to remove a configured aspect from workspace.jsonc (#8848)

Changes

  • bit status to show all soft-tagged components in a dedicated category (#8835)
  • Add a new component-issue "Import From Directory" suggesting to import from specific files (instead from ./) (#8806)
  • Support .gitignore file in the component root-dir to avoid adding specific files to a specific component (#8847)
  • Support --range flag for bit remove and bit deprecate to affect a range of versions (#8844)
  • Support a new flag bit switch ... --head to checkout to the head of a main or lane head once switched (#8851)
  • Support doing a lane merge in a new lane with bit merge move sub command (#8834)

Bug Fixes

  • Support aliases on exported nodes in schema extractor (#8838)
  • Fix an issue where it was not possible to import org.scope/** while in a lane (#8836)
  • Ensure aspects replaces properly in workspace.jsonc during bit scope rename (#8842)
  • Block from creating a component with the same name as the template name (#8831)
  • Block removal of new aspects that are used by other components (#8830)
  • Fix an issue where bit remove didn't remove envs from workspace.jsonc (#8829)
  • Fix an issue where bit checkout didn't reset component.json if exists locally (#8826)
  • API Reference overview section design fixes (#8832)

Internal

  • Remove dependencies (#8852, #8850, #8845)
  • Skip tests at tagging in the peer dependencies e2e test (#8855)
  • Refactor, remove tsconfig-writer (#8846)
  • Introduce a new flag bit sign --save-locally to make debugging easier (#8828)
  • Shorter capsule dir name (#8827)

v1.6.145

24 Apr 15:14
Compare
Choose a tag to compare

New Features

  • Introduce a new command bit lane eject to remove the component from lane and install the component as a dependency (#8819, #8820)

Changes

  • Add scope name validations when creating a new lane (#8811)

Bug Fixes

  • Fix preview fixes introduced by moving to @pnpm/node-fetch (#8808, #8822)
  • Fix an issue where there is more than one terminal spinner with the same name (#8824)
  • Fix an issue where lane merge added a package with the same name to workspace.jsonc (#8817)
  • Fix an issue when an env was renamed, the generator entry for it in workspace.jsonc remained (#8813)
  • Avoid replacing end-of-line character on Windows, keep them as got them from Prettier. (#8810)
  • Fix an issue where component compare didn't show previous version (#8809)