Releases: your-tools/tsrc
v3.0.1
v3.0.0
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
v2.7.0
- 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 runinita second
time if the previous call failed. Bug report by @cgestes.tsrc init: do not assume the default branch of the manifest ismaster. Note thatmasteris 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
- Allow to use
python -m tsrcin addition to justtsrc - Documentation updates
- Bump
mypy
v2.5.0
Highlights
- Bump minimum supported version to Python 3.7.
- Introduce
ignore_submodulesrepository option - Patch by Thomas Hiscock. - When
-jis not used, try getting the defaultjobsvalue from the
TSRC_PARALLEL_JOBSenvironment 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
v2.4.0
Highlights
-
All of
tsrccommands can now be run in parallel. Try for instancetsrc sync -j auto. -
tsrc foreachnow 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- Usetsrc --versioninstead. -
The 'parallel' feature caused the output of some commands like
foreachorlogto change slightly. Hopefully
tsrcoutput is now more consistent.
Bug fixes
-
Fix crash when running
tsrcwithout 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
tsrcimports consistent - Fix error when calling
reprontsrcErrors.
v2.3.1
Bug fixes and small improvements
- Fix #268:
tsrc apply-manifestnow 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
copierto simplify maintenance of tools configuration
v2.3.0
Repo selection
- Added -r (regex) and -i (inverse regex) params for filtering repos. Patch by @xzr
Add support for submodules
tsrccallsgit clonewith--recurse-submoduleswhen adding missing repositoriestsrccallsgit submodule update --init --recursivewhen updating repositories
Misc
- Remove codecov usage
- Rename default branch to
main.