Skip to content

Releases: your-tools/tsrc

v3.0.1

26 Dec 15:25
Compare
Choose a tag to compare

Fix some incorrect URLs in the project's metadata and some other places.

v3.0.0

26 Dec 14:43
Compare
Choose a tag to compare

Breaking: correct branch on sync

If any of the repositories is not on the configured branch, but it is
clean then the branch is changed to the configured one and then the
repository is updated. Otherwise that repository will not be not updated.

Previously, tsrc sync would print an error and not checkout the branch.

To have tsrc sync behave like this, use the new --no-correct-branch flag.

Breaking: add --singular-remote argument to tsrc sync too

In tsrc 2.7 you could use -r in tsrc init to only use one
remote. But you had no way to pass the same option to tsrc sync.

In this version, you can use -r or --singular-remote for both
tsrc init and tsrc sync

Unfortunately , this means you must now use -i, --include <regex>
instead of of -r <regex> when selecting repositories based on a regex.

Implemented by:

  • Albert De La Fuente Vigliotti
  • Greg Dubicki
  • Dimitri Merejkowsky

Original issue reportedy by Maxime RΓ©ty

Other changes

  • When running git commands, don't capture standard error along side standard out - fixes
    #381, reported by Patrick Decat.
  • Bump minimum supported version to Python 3.8.
  • Add support for Python 3.12.
  • Bump ruamel.yaml, dparse.
  • Don't hide cloning errors when running in parallel.
  • Doc improvements (patches by Henry Chang).

v2.7.1

30 May 17:36
Compare
Choose a tag to compare

In addition to preserving the order repos are listed in the manifest,
tsrc now makes sure repos included via groups are processed before
the other repos. See #356 for details. Thanks to @raabf for the bug report
and code review !

v2.7.0

14 May 15:20
Compare
Choose a tag to compare
  • Show which git commands are run by default.
  • tsrc init: fix order of operations - clone the local manifest before
    writing the workspace configuration. Fixes #344, where users could not run init a second
    time if the previous call failed. Bug report by @cgestes.
  • tsrc init: do not assume the default branch of the manifest is master. Note that master is still hard-coded in a few places. See #347 for details.
  • When using -j 1, do not sort repositories by lexical order of destination, but preserve
    the order in which they were specified in the manifest. Suggested by @raabf.

v2.6.0

27 Mar 12:42
Compare
Choose a tag to compare
  • Allow to use python -m tsrc in addition to just tsrc
  • Documentation updates
  • Bump mypy

v2.5.0

22 Dec 20:34
Compare
Choose a tag to compare

Highlights

  • Bump minimum supported version to Python 3.7.
  • Introduce ignore_submodules repository option - Patch by Thomas Hiscock.
  • When -j is not used, try getting the default jobs value from the
    TSRC_PARALLEL_JOBS environment variable. Patch by Marcin Jaworski.

Other

  • Bump mkdocs from 1.2.2 to 1.2.3
  • Bump pygit2
  • Bump linters (flake8, mypy, black)
  • Remove dependency on attr

v2.4.1

05 Nov 09:26
Compare
Choose a tag to compare
  • Ad more guides in the documentation
  • Display absolute paths when performing file system operations
  • tsrc sync now uses parallel jobs by default. Use -j1 to force
    sequential processing. Patch by @gdubicki

v2.4.0

22 Aug 12:48
Compare
Choose a tag to compare

Highlights

  • All of tsrc commands can now be run in parallel. Try for instance tsrc sync -j auto.

  • tsrc foreach now sets a bunch of environment variables. This allows
    developers to add new behaviors to tsrc without having to change its source code. See
    the relevant guide for more information.

  • Augment documentation with more use cases and examples (still a work in progress)

Breaking changes

  • Remove tsrc version - Use tsrc --version instead.

  • The 'parallel' feature caused the output of some commands like
    foreach or log to change slightly. Hopefully
    tsrc output is now more consistent.

Bug fixes

  • Fix crash when running tsrc without any arguments

  • Fix crash when trying to clone repositories in some rare corner cases
    (like the destination existing but not being a directory)

Internal changes

  • Make all tsrc imports consistent
  • Fix error when calling repr on tsrc Errors.

v2.3.1

28 Jun 11:35
Compare
Choose a tag to compare

Bug fixes and small improvements

  • Fix #268: tsrc apply-manifest now performs file system operation
  • Always display workspace path at the beginning of any action
  • Skip "performing file system operations" message if there is no
    work to be done

Internal changes

  • Bump linters and formatters (black, mypy, isort ...)
  • Use copier to simplify maintenance of tools configuration

v2.3.0

31 May 16:06
Compare
Choose a tag to compare

Repo selection

  • Added -r (regex) and -i (inverse regex) params for filtering repos. Patch by @xzr

Add support for submodules

  • tsrc calls git clone with --recurse-submodules when adding missing repositories
  • tsrc calls git submodule update --init --recursive when updating repositories

Misc

  • Remove codecov usage
  • Rename default branch to main.