Bit Versions Save

A build system for development of composable software.

v1.5.13

4 months ago

Bug Fixes

  • Fix loading ESM aspects on Windows

Changes

  • Introduce new Node templates from bitdev.node/node-env (#8234)
  • Introduce new Node templates from bitdev.react/react-env (#8233 #8235)
  • Update output suggestions in various commands (#8232 #8230)

Internal

  • Disable the ability to cancel object sync operations (#8239)
  • Keep aborted commands in command-history log (#8241)
  • Introduce a new API for workspaceHistory to get .bitmap diffs over time (#8237 #8236)

v1.5.9

4 months ago

New Features

  • Ability for bit build to --include-snap or --include-tag to also run tasks from release pipelines (#8224)
  • Support patterns for all commands, to better run control which components to operate on (#8188)
    • State filters $modified, $new, $deprecated, $deleted, $snappedOnMain, $softTagged and $codeModified
    • States with parameters ($env:teambit.react/react)
    • Filtering by a state and a pattern with the AND keyword ($modified AND **/ui/**)

Changes

  • Add more content to the App build and deploy contexts (#8227 #8221 #8209 #8226 #8216 #8222 #8229)
  • Upgrade nodejs to v20.10.0 (#8211 #8215 #8199 #8201)
  • By default .env files are not added to component artifacts (#8198)

Bug Fixes

  • Fix incorrect "compiling 0 components" message on bit watch (#8219)
  • Fix merge conflict advice for bit checkout (#8203)
  • Fix sidebar to handle missing status in cloud (#8196)
  • Fix an issue where lane merge tried writing multiple times to .bitmap (#8185)
  • Fix an issue where resolution prioritized workspace over .bitmap (#8206)

Internal

  • New fetch-retry mechanism for HTTP requests (#8228)
  • Add options to disable cors for graphql server (#8193)
  • ESM support for core aspects (#8194 #8195 #8208)
  • Bundle Bit CLI with pnpm (#8090 #8191)
  • Remove dead code (#8212 #8210 #8205 #8204 #8197)
  • Enable --compile flag for Bit Server command (#8218)
  • Ignore errors when copying lock file from capsule cache to local capsule (#8202)
  • Simplify get-diverge-data (#8213)
  • Add data whether a file is a dev-file in the missing-packages issue (#8223)

v1.4.0

5 months ago

New features

  • Ability to link to specific line in file and composition files (#8175 #8157)
  • Templates that implement an app or an env can trigger install when used by bit create (#8160)
  • Ability to filter components on bit scope fork (#8187)

Changes

  • Support ESM for Bit Apps (#8189)
    • Watch and compile component changes in the workspace by adding --watch
    • Persist URL and timestamp post app deployment
    • Better error handling for loading plugins.
  • Version history graph show tags, lane heads and more (#8178)
  • Specify depth to search deps for bit why (#8163)

Performance

  • Avoid traversing unrelated snaps (#8174)
  • Introduce fetch queues to avoid slow fetch queries blocking the scope (#8167)
  • Avoid running compile/install if no component ended up written to the file system (#8186)

Bug fixes

  • Various UI fixes (#8190)
  • Fix an issue where during rename scope-name wasn't set correctly in targetId (#8183)
  • Do not trigger missing-files error in bit status when the file exists in the same component with a different extension (#8182)
  • Better handle of restoring configs and data when aborting a lane merge (#8179)
  • When running diff between lanes, ensure common snaps are imported (#8166)
  • Do not install envs configured in generator if they are in the workspace (#8159)

Internal

  • Save metadata when backing up .bitmap files (#8165)
  • Support ESM for core Bit aspects (#8181 #8170 #8180 #8156)
  • Remove dead code and dependencies (#8184 #8164)
  • Update pnpm (#8161)
  • Update Bit request headers for easy debugging (#8173 #8162)

v1.3.24

5 months ago

New Features

  • New bit why command to shows all components that depend on the specified package or component (#7959)

Changes

  • Auto install envs that are configure in workspace.jsonc list of generators, so you don't need to add it as a dependency (#8151)
  • Update templates available on bit templates (#8152)

Bug fixes

  • Ensure compile adds component links to node_modules and updates package.json correctly (#8153)
  • Fix HMR when editing component *docs.mdx files (#8144)
  • Fix an issue where creation of config files caused confusion for IDE language services (#8155)
  • Various CLI output fixes to improve DX (#8149, #8154, #8139)
  • Various UI fixes (#8145, #8141, #8095)

Internal

  • Eject components from the repository (#8150, #8143)
  • Update dependencies (#8137, #8140)
  • Make the compilation during watch configurable (#8148)
  • Config class to return extensions from ConsumerComponent instance (#8147)
  • Disable limit when fetching component data (#8142)

v1.3.21

5 months ago

New Features

  • Ability to filter components by environment on bit import (#8047)
  • Support require.resolve for automated dependency detection (#8118 #8128 #8116)

Changes

  • Support maintaining components with the same name but of different scope in the same workspace (#8000 #8070 #8065)
  • Update config files on various workflows to keep IDE language tools in sync with Bit Components (#8042)
  • Update "core" templates (#8135 #8103)

Performance

  • Improve HMR for bit start by updating dev server managed paths (#8067 #8062)
  • Get faster bit status results by setting --ignore-circular-dependencies (#8083)

Bug Fixes

  • Various UI fixes (#8088 #8075 #8059 #8117 #8130 #8122 #8094 #8123)
  • Various CLI output fixes (#8056 #8055 #8111 #8121)
  • Gracefully handle invalid aspects or configs set for old components (#8054)
  • Fix an issue where too many internal node_modules directories were generated (#8072)
  • Fix an issue where on bit list --json not all component IDs where string (#8078)
  • Fix an issue where aspect wasn't set with - in component.jsonc when using bit aspect unset (#8060)
  • Fix an issue where aspects wasn't able to load if configured both in root workspace.jsonc and in dependency policy (#8068)
  • Fix issues of linking generated package.json file (#8043 #8049 #8101)
  • Fix an issue where too much information was saved for node application artifacts (#8063)
  • Fix an issue where peerDependencies of core envs weren't read from the correct object (#8038)
  • Fix an issue where a component that was removed from a lane got re-added (#8115)

Internal

  • Always use core aspects as links from node_modules, do not install them (#8093)
  • Eject un-needed components (#8071 #8045 #8044)
  • Update various dependencies (#8046 #8086 #8084 #8081 #8104)
  • Ability to get bit version via API (#8085)
  • Better object cleanup during bit reset --never-exported (#8100)
  • Config package manager to support dry-run installation (#8051)
  • Fix several E2E tests (#8074 #8058)
  • Better handling of symlinks from node_modules to BVM install location (#7696)
  • Improve loading lane data (#8079 #8064 #8092)
  • Support setting component's env with a prop on the template instance (#8091)
  • Improve linking of core aspects for bvm >= 1.0.0 (#8102)

v1.3.19

5 months ago

New Features

  • Ability to filter components by environment on bit import (#8047)
  • Support require.resolve for automated dependency detection (#8118 #8128 #8116)

Changes

  • Support maintaining components with the same name but of different scope in the same workspace (#8000 #8070 #8065)
  • Update config files on various workflows to keep IDE language tools in sync with Bit Components (#8042)
  • Update "core" templates (#8103)

Performance

  • Improve HMR for bit start by updating dev server managed paths (#8067 #8062)
  • Get faster bit status results by setting --ignore-circular-dependencies (#8083)

Bug Fixes

  • Various UI fixes (#8088 #8075 #8059 #8117 #8130 #8122 #8094 #8123)
  • Various CLI output fixes (#8056 #8055 #8111 #8121)
  • Gracefully handle invalid aspects or configs set for old components (#8054)
  • Fix an issue where too many internal node_modules directories were generated (#8072)
  • Fix an issue where on bit list --json not all component IDs where string (#8078)
  • Fix an issue where aspect wasn't set with - in component.jsonc when using bit aspect unset (#8060)
  • Fix an issue where aspects wasn't able to load if configured both in root workspace.jsonc and in dependency policy (#8068)
  • Fix issues of linking generated package.json file (#8043 #8049 #8101)
  • Fix an issue where too much information was saved for node application artifacts (#8063)
  • Fix an issue where peerDependencies of core envs weren't read from the correct object (#8038)
  • Fix an issue where a component that was removed from a lane got re-added (#8115)

Internal

  • Always use core aspects as links from node_modules, do not install them (#8093)
  • Eject un-needed components (#8071 #8045 #8044)
  • Update various dependencies (#8046 #8086 #8084 #8081 #8104)
  • Ability to get bit version via API (#8085)
  • Better object cleanup during bit reset --never-exported (#8100)
  • Config package manager to support dry-run installation (#8051)
  • Fix several E2E tests (#8074 #8058)
  • Better handling of symlinks from node_modules to BVM install location (#7696)
  • Improve loading lane data (#8079 #8064 #8092)
  • Support setting component's env with a prop on the template instance (#8091)
  • Improve linking of core aspects for bvm >= 1.0.0 (#8102)

v1.2.7

6 months ago

Performance

  • Faster bit install in a workspace with PNPM, for macOS, when pnpm-lock file is present (#8037, #8033, #8025)

Bug Fixes

  • Fix an issue where build is successful but docs are still not rendered (#8036)
  • Fix links to docs in bit status output (#7947)
  • Improve outputs for bit update (#8034)
  • Fix an issue where workspace configuration wasn't refreshed when workspace.jsonc changed (#8027)
  • Fix install output to print the dependency chain to a package that failed to be fetched (#8026)
  • Fix --eject flag for bit export (#8016)

Internal

  • Remove jsx-to-string (#8035, #8039)
  • Remove legacy code about adding individual files for bit add (#8023)
  • Remove the unused --from-lane flag of bit remove (#8015)
  • Support dynamic hash length (#8006)
  • Load ui from pre-bundle when start on bare scope (#8028)

v1.2.0

6 months ago

IMPORTANT UPGRADE NOTE

This changes .bitmap contents. Once you run a command with this version in any workspace, the contents of .bitmap will change.
The update is backwards compatible - if some team members use older release of Bit, they can still operate in the workspace.
Please make sure to commit the .bitmap changes.

New Features

  • Experimental - Support having multiple components with the same name but different scope in the same workspace (bit config set allow-same-name true) (#7897)
  • Experimental - Support linking of peer-dependencies for bit link --target with the new --peer option (#7990)

Changes

  • Add a warning when tagging on main without --build (#7991)
  • Prints an output to the terminal with link to remote build task, if relevant (#8002)
  • Add outdir to tsconfig to better handle it for ws-config write (#7987)

Bug Fixes

  • Fix an issue where lane gets exported after lane rename (#8007)
  • Fix file-history to be compared against parent, not previous snap (#8008)
  • Fix an issue where extensions generated in old Bit version got duplicated (#7992)
  • Fix an issue where defaultScope was missing in .bitmap entries (#8005)

Internal

  • During tag or snap, clear status-cache when a component is modified (#8003)
  • Support ignorePackageManifest option to the pnpm package manager aspect (#8001)
  • Support extracting schema for react components without props (#7996)
  • Replace ShowDoctorError with BitError (#7995)
  • Support caching of the lock file only for scope aspects capsules (#7994)

v1.1.0

6 months ago

New Features

  • Select internal files or dirs to avoid tracking by adding a .bitignore file within component directory (#7967)
  • Test all local components with new bit test --unmodified option (#7847)
  • Ability to only update lock-file with bit install --lockfile-only, without re-installing node_modules directory (#7926)

Changes

  • bit update updates components according to their compatible versions from workspace.jsonc or from package.json (#7809)
  • Improve automated API reference, including custom highlighting, re-export of types and support links to external packages (#7977 #7981 #7976 #7975 #7966 #7969 #7965 #7951 #7914)
  • Allow envs to register multiple app types (#7970)

Performance

  • Improve loading speed of component overview by lazy load monaco editor (#7921)

Bug Fixes

  • Fix out-of-memory error during bit install peers resolution (#7986)
  • Fixed an issue with list returned deleted components (#7929)
  • Various UI fixes (#7935 #7934 #7913 #7922 #7932)
  • Various CLI output fixes (#7941 #7937 #7979 #7980 #7952 #7978)
  • Fix an issue where a component without a build output caused odd merge issues (#7953)

Internal

  • Add new empty state integration slot to component docs overview (#7963)
  • Update dependencies (#7930 #7931 #7962)
  • Move components to be dependencies (#7982)
  • Use latest main aspect location when searching for aspects to load (#7956)
  • Remove legacy js-doc parser when extracting doc description (#7943)
  • Work toward allowing multiple components with same name, but of different scopes (#7960)
  • Move the check for missing-dist from onLoad slot to status and snap/tag only (#7974)
  • Improve ArtifactDefinition API by deprecating the confusing props: directories, rootDir and dirPrefix (#7973)
  • Remove legacy sass loader syntax (~) (#7925)
  • Support exporting only the head tag, not all history (#7954)
  • Remove currentLaneId from cache when running in a workspace (#7944)

v1.0.0

7 months ago

Breaking changes between 1.0.0 and previous versions

These are the major changes coming to version 1.0.0 and how to adapt them to your workflow.

  • Default registry for dependency resolution changed for teams using bit.cloud. Starting from version 1.0.0, dependencies will be resolved from node-registry.bit.cloud instead of node.bit.cloud. You will need to delete your lockfile for this to take effect. node.bit.cloud is still supported, but we recommend migrating to node-registry.bit.cloud.
  • Remote builds turned "on" by default. This change comes to integrate your workspaces with RippleCI. We urge you to take a look at this flow.
    • If your automation flow uses bit tag --soft and bit tag --persist combo, it is still supported and you do not need to make any changes.
    • If you run your tag or snap fully from your local, you will need to add the --build flag to your syntax, or set bit config set force_local_build true for Bit's local config.

Please read more about these changes in Bit's announcement post for RippleCI on our blog.

Changes

  • Set remote build to true to build on Ripple (#7859)
  • Set new registry by default (node-registry.bit.cloud) (#7870)
  • Skip validating any component issues for components marked to be deleted (#7896)
  • Remove versions from lockfile of envs from the current workspace (#7888)
  • update command to support multiple, comma-separated patterns (#7881)
  • Removed teambit.workspace/variants from base workspace.jsonc template (#7879)
  • Removed outdated video from tests blank state screen (#7893)

Performance

  • Update pnpm to a newest version that leverages worker threads (#7875)

Bug Fixes

  • Re-render bit start when component ID changes, to update according to the current workspace state (#7895)
  • Prefer versions in .bitmap to be tags, if possible (#7891)
  • Fix issues causing Yarn to fail when configured for bit install (#7887)
  • Fix an issue where packages containing hard links failed to extract (#7882)
  • Fix links in the component tree where namespace and name are identical (#7861)
  • Fix an issue where forked components ported "rename" information from the original component (#7867)
  • Improve examples in update's --help output (#7803)
  • Fix links to docs from .bitmap (#7869)
  • Fix cases where bit start was not open on default browser (#7899)
  • Fix a case where previous env was set for a forked component (#7918)
  • Fix an issue where generated package.json was in a broken state (#7919)
  • Add more descriptive error when there is no scope available on tag (#7912)
  • Improve error message when a component template was not found (#7886)
  • Stop the checkout if some components failed (#7904)
  • Fix issue where a Vue workspace failed to generate (#7894)

Internal

  • Reduce the amount of paths ws-config write targets to write config files (#7865)
  • Write to fs-cache gracefully (#7883)
  • Preserve pnpm stack-trace when re-throwing errors from Bit (#7889)
  • Allow passing metadata from the previous build to the deploy pipeline (#7874)
  • Update dependencies (#7878)
  • Add additional metadata for API transformer and schemas (#7472)
  • Use forked @teambit/chokidar and switch back to FsEvents (#7915)
  • Fix a case where yarn's peerDeps were not set as deps for Bit (#7909)
  • Remove @types/webpack-dev-server (#7911)
  • Update @babel/preset-react and @babel/preset-typesscript (#7908)
  • Replace deprecated babel plugins with new ones + minor deps updates (#7905)