File git-repo.changes of Package git-repo
-------------------------------------------------------------------
Wed Jun 25 13:01:50 UTC 2025 - Benoît Monin <benoit.monin@gmx.fr>
- Update to version 2.56:
* sync: Share final error handling logic between sync modes
* sync: Share manifest list update logic between sync modes
* sync: Share self-update logic between sync modes
* sync: clarify job flags when using interleaved
* sync: Implement --interleaved sync worker
* sync: Add orchestration logic for --interleaved
* upload: fix FileNotFoundError when no superproject
* sync: Add scaffolding for interleaved sync
-------------------------------------------------------------------
Fri Jun 13 17:37:23 UTC 2025 - Benoît Monin <benoit.monin@gmx.fr>
- Update to version 2.55.2:
* info: fix mismatched format args and wrong symbol name
* hooks: add internal check for external hook API
* git_superproject: Replace walrus operator
* upload: Add rev to rootRepo push option
* info: print superproject revision
* subcmds: delete redundant dest= settings
* upload: Add superproject identifier as push option
* manifest: generalize --json as --format=<format>
* run_tests: only allow help2man skipping in CI
* update-manpages: include in unittests
* flake8: Ignore .venv directory
* man: regenerate man pages
* manifest: Remove redundant re-raise of BaseExceptions
* Fallback to full sync when depth enabled fetch of a sha1 fails
-------------------------------------------------------------------
Tue May 27 18:54:58 UTC 2025 - Benoît Monin <benoit.monin@gmx.fr>
- Update to version 2.54:
* project: use --netrc-optional instead of --netrc
* launcher: switch command quoting to shlex.quote
* sync: Warn about excessive job counts
* run_tests: fix running when cwd is not the root
* run_tests: enable Python 3.8 CI coverage
* Fix EROFS error when root fs is mounted read-only
* pager: drop unused global vars
* launcher: change RunError to subprocess.CalledProcessError
* launcher: change collections.namedtuple to typing.NamedTuple
* tox: sync black settings with run_tests
* black: update to v25
* run_tests: move test filtering to pytest markers
* run_tests: move CQ test skips here
* run_tests: run all tests all the time
* launcher: change RunResult to subprocess.CompletedProcess
* Sync: Fix full submodule sync while shallow specified
* sync: Refresh index before updating repo
* gc: Add tags to remote pack list
* Activate submodules
* Use 'gitfile' in submodule checkouts
* Update internal filesystem layout for submodules
* Revert "sync: skip network half on repo upgrade"
* docs: smart-sync: split out & expand details
* run_tests: update to python 3.11 & pytest 8.3.4
* git_config: prefer XDG config location
* sync: Recover from errors during read-tree
* gc: Add repack option
* gc: extract deletion from Execute method
* sync: Handle KeyboardInterrupt during checkout
* sync: skip network half on repo upgrade
* gc: Introduce new command to remove old projects
* sync: Delete symlinks relative to client topdir
* Add smoke test for subcmd forall
* Remove gitc support from repo
* branches: Escape percent signs in branch names
* sync: Do not fail to sync a manifest with no projects
* Fix event log command event hierarchy.
* Make repo installation work without .git
* sync: fix connection error on macOS
* upload: Return correct tuple values in _ProcessResults
* worktree: Do not try to fix relative paths
* forall: Fix returning results early
* Use full name of the revision when checking dest-branch
* Add REPO_SKIP_SELF_UPDATE check in sync
* manifest: add optional base check on remove and extend
* [event_log] Stop leaking semaphore resources
* progress: always show done message
* subcmds: reduce multiprocessing serialization overhead
* sync: reduce multiprocessing serialization overhead
* Fix incremental syncs for prjs with submodules
* sync: Always use WORKER_BATCH_SIZE
* project: Handle git sso auth failures as repo exit
* superproject: Remove notice about beta
* project: run fetch --refetch on unable to not parse commit
* Disable git terminal prompt during fetch/clone
* init: add --manifest-upstream-branch
* man: regenerate man pages
* project: Copy and link files even with local branches
* sync: include TARGET_RELEASE when constructing smart sync target.
* color: fix have_fg not re assign to true
* tox.ini: Make the lint and format environments run black for all code
* tox.ini, constraints.txt: Lock the version of black to <24
* project: run fetch --refetch onacould not parse commit
* Add a `--rebase` option to sync command
* sync: Fix git command for aborting rebase being called incorrectly.
* project: ignore more curl failure modes
* logging: Fix log formatting with colored output
* upload: add a --topic option for setting topic explicitly
* sync: Abort rebase in progress if force-checkout is set
* ssh: Set git protocol version 2 on SSH ControlMaster
* upload: drop check for uncommitted local changes
* git: raise hard version to 1.9.1
* release: update-hooks: helper for automatically syncing hooks
* gitc: delete a few more dead references
* man: regenerate man pages
* Remove platform_utils.realpath
* Fix drive mounted directory on Windows
* git_command: unify soft/hard versions with requirements.json
- increase the required version of python3-pytest to 8.3.4
- increase the required version of git to 1.9.1
-------------------------------------------------------------------
Mon Apr 15 20:09:30 UTC 2024 - Björn Bidar <bjorn.bidar@thaodan.de>
- Update to version 2.45:
* project: Check if dotgit exists w/out symlink check
* git: raise soft version to 2.7.4
* git: raise hard version to 1.7.9
* docs: release: add recent git/python/ssh/debian info
* main: Stringify project name in error_info
-------------------------------------------------------------------
Sat Mar 16 09:01:39 UTC 2024 - sebix@sebix.at
- Update to version 2.44:
* ssh: Print details if running the command fails
* upload: Fix patchset description destination
* sync: Fix sorting for nested projects
* sync: introduce --force-checkout
* upload: Add support for setting patchset description
* sync: Introduce git checkout levels
* git_command: Return None from GetEventTargetPath() if set to empty string
* trace: Save trace2 sid in REPO_TRACE file
* subcmds: sync: Remove deprecated _AUTO_GC
* launcher: Set shebang to python3
* sync: ensure RepoChangedException propagated
* stop passing project to UpdateManifestError
* project: Rename if deletion fails
* Clean up remaining `repo sync` log spam.
* docs: fix some grammar typos
* project: Check references during sync
* tests: setup user identity for tests
* manifest_xml: fix url normalization for inits and remotes
* git_trace2: Add socket timeout
* manifest_xml: do not allow / before : in scp-like syntax
* repo: Drop reexec of python3 from check_python_version()
* repo: Remove Python 2 compatibility code
* repo: Remove a Python 2 related comment
* Don't log spam `repo sync` by default
* tox: Remove pylint timeout
* Update commit-msg hook
* sync: Fix partial sync false positive
* repo: add repo main script's directory to PYTHONPATH.
* info: Handle undefined mergeBranch
* manifest_xml: support nested submanifests
* repo_logging: Ensure error details are printed
* repo: Use the worktree when checking the repo rev.
* git_superproject: tell git that superproject is bare
* Correctly handle schema-less URIs for remote fetch URL
* main: Log ManifestParseError exception messages
* repo: Remove unreachable code.
* cleanup: Update codebase to expect Python 3.6
-------------------------------------------------------------------
Mon Feb 19 10:20:34 UTC 2024 - sebix@sebix.at
- Update to version 2.39:
* sync: PersistentTransport call parent init
* sync: TeeStringIO write should return int
* sync: Fix tracking of broken links
* project: Speculative fix for project corruption
* cleanup: convert exceptions to OSError
* cleanup: delete redundant "r" open mode
* cleanup: use new dict & set generator styles
* manifest_xml: Fix empty project list when DOCTYPE is present
* cleanup: leverage yield from in more places
* git_config: GetBoolean should return bool
* project: using --depth results in error when including submanifests
* repo: drop Python 2 compat logic
* delete Python 2 (object) compat
* tests: Set HOME to a temporary directory when running tests.
* tests: added python 3.12
* github: add python 3.11 to test-ci.yml
* github: pin ubuntu to 20.04 to make py36 work
* python-support: update with current status & guidelines
* hooks: drop support for Python 2
* main: drop Python 2 check
* Update logger.warn to logger.warning
* git_command: read1 needs a size in py3.6
* git_command: lru_cache needs maxsize for py36 & 37
* sync: Fix print statement in _PostRepoFetch
* git_command: Augment underlying git errors with suggestions
* project: Invoke realpath on dotgit for symmetry with gitdir to ensure a short relpath.
* Reset info logs back to print in sync
* Track expected git errors in logs
* tests: Fix tox error in py36 use virtualenv<20.22.0
* Use non-deprecated API for obtaining UTC time
* main: Use repo logger
* project: Use repo logger
* subcmds: Use repo logger
* github: add PR closer
* tests: test_subcmds_sync.py: fix for py3.6 & 3.7
* tests: test_git_superproject.py: fix py3.6 & 3.7
* start: Use repo logger
* project: Use IsId instead of ID_RE.match
* project: Optimise GetCommitRevisionId when revisionId is set
* manifest_xml: use a set instead of (sorted) list in projectsDiff
* Log ErrorEvent for failing GitCommands
* logging: Use log.formatter for coloring logs
* sync: Preserve errors on KeyboardInterrupt
* fix black formatting of standalone programs
* sync: Use repo logger within sync
* project: Preserve stderr on upload
* tox.ini: add isort as dependency
* isort: format codebase
* tweak stdlib imports to follow Google style guide
* upload: Suggest full sync if hooks fail with partially synced tree
* sync: Ignore repo project when checking partial syncs
* upload: fix error handling
* docs: Document .repo_localsyncstate.json
* gitc: drop support
* tox: enable python 3.11 testing
* flake8: exclude venv and .tox folder
* Raise RepoExitError in place of sys.exit
* sync: Warn if partial sync state is detected
* main: Pass path to python binary as arg0 when restarting repo
* Raise repo exit errors in place of sys.exit
* Prefix error events with RepoErrorEvent:
* Refactor errors for sync command
* Update errors to extend BaseRepoError
* [repo logging] Add logging module
* sync: Track last completed fetch/checkout
-------------------------------------------------------------------
Sun Jul 16 09:50:59 UTC 2023 - Sebastian Wagner <sebix@sebix.at>
- Only execute pytest, not black and flake8 tests. We do not care about formatting
- On Leap 15.4 and 15.5 skip a test that fails there, but not on Tumbleweed
-------------------------------------------------------------------
Sun Jul 16 09:13:35 UTC 2023 - sebix@sebix.at
- Update to version 2.35:
* main: Fix exitcode logging
* sync: Track new/existing project count
* manifest: enable remove-project using path
* update links from monorail to issuetracker
* sync: Handle case when output isn't connected to a terminal
* sync: Update sync progress even when _sync_dict is empty
* sync: Handle race condition when reading active jobs
* pager: set $LESS only when missing
* Add envar to replace shallow clones with partial
* sync: Show number of running fetch jobs
* upload: use f-string
* project: Include tags option during fetch retry
* Parse OpenSSH versions with no SSH_EXTRAVERSION
* sync: Show elapsed time for the longest syncing project
* [git_trace2] Add logs for critical cmds
* [trace2] Add absolute time on trace2 exit events
* SUBMITTING_PATCHES: update with commit queue details
* sync: Fix how sync times for shared projects are recorded
* manifest: add support for revision in include
* sync: Display total elapsed fetch time
* [SyncAnalysisState] Preserve synctime µs
* tests: do not allow underscores in cli options
* upload: Add `--no-follow-tags` by default to git push
* run_tests: Check flake8
* Update abandon to support multiple branches
* run_tests: Always check black and check it last
* Format codebase with black and check formatting in CQ
* Make black with line length 80 repo's code style
* docs: update Focal Python version
* upload: Skip upload if merge branch doesn't match project revision and dest_branch.
* tests: Change docstring for CopyLinkTestCase
* tests: Rework run_tests to use pytest directly and add vpython3 file
* sync: Remove unused variable
* Handle KeyboardInterrupt during repo sync
* Update sync progress
* project: clean up error message
* Update bug tracking links
* git_superproject: Log actual error fmt instead of the entire error message.
* sync: Silence 'not found in manifest' message
* Enable use of REPO_CONFIG_DIR to customize .repoconfig location
* init: Silence the "rm -r .repo and try again" message if quiet
* Fix flake8 warnings for some files
* update_manpages.py: treat regex as raw string
* Use 'backslashreplace' for decode
* Use print with flush=True instead of stdout.flush
* pylint: remove unused imports
* update-manpages: clean up symlink in checkout
* upload: Allow user to configure unusual commit threshold
* repo_trace: Avoid race conditions with trace_file updating.
* github: enable flake8 postsubmit testing
* Use --negotiation-tip in superproject fetches.
* tests: clean up repo_trace._TRACE_FILE patching
* wrapper: switch to functools.lru_cache
* tests: drop old unittest.main logic
* sync: fix manifest sync-j handling
* sync: Fix undefined variable in _FetchOne
* sync: finish marking REPO_AUTO_GC=1 as deprecated.
* test_manifest_config_properties: use assertEqual
* sync: cleanup output when not doing GC
* Revert "sync: save any cruft after calling git gc."
* sync: mark REPO_AUTO_GC=1 as deprecated.
* Fix ManifestProject.partial_clone_exclude property.
* release-process: update to use ./release/sign-tag.py
* wrapper.py: Replacing load_module() with exec_module()
* Fixed wrapper related warnings in tests
* test_capture: allow both Unix and Windows line sep
* test_bad_path_name_checks: allow Windows path sep
* test: Fix char encoding issues on windows
* test: fix path seperator errors on windows
* tox: Allow passing positional arguments
* trace: make test timeout after 2min
* tox: Make all tests timeout after 5min
* Update GH Action test-ci.yml dependencies
* tox: enable python 3.10 testing
* Resolved DeprecationWarning for currentThread()
* Set repo version to 2.30 (current)
* Extract env building into a testable helper.
* Do not set ALT object dirs when said path resolves to the same dir.
* tests: Fix update-manpages test.
* subcmds: display correct path multitree messages
* update-manpages: explicitly strip color codes
* repo_trace: drop notification of trace file name.
* repo_trace: adjust formatting, update man page.
* upload: track projects by path, rather than name
* trace: restore Progress indicator.
* sync: REPO_AUTO_GC=1 to restore old behavior.
* Fix TRACE_FILE renaming.
* sync: no garbage collection by default
* Improve always-on-trace
* GitcInit: fix gitc-init failure
* sync: clear preciousObjects when set in error.
* Set tracing to always on and save to .repo/TRACE_FILE.
* tests: Make the tests pass for Python < 3.8
* init: add --manifest-depth for shallow manifest clone
* Revert "init: change --depth default to 1 for manifest repo"
* sync: uninitialized variable on mirror sync failure
* sync: do not require python 3.9
* sync: only use --cruft when git supports it.
* project: Add a missing call to _CopyAndLinkFiles
* manifest: allow extend-project to override dest-branch and upstream
* sync: use namedtuples for internal return values
* sync: incorporate review feedback.
* diffmanifests: Handle Missing Projects in Repo Workspace
* update-manpages: force use of active interp
* sync: save any cruft after calling git gc.
* Revert "project: initialize new manifests in temp dirs"
* sync: Correctly sync multi manifest workspaces
-------------------------------------------------------------------
Tue Aug 23 18:45:06 UTC 2022 - sebix+novell.com@sebix.at
- Update to version 2.29:
* manifest_xml: improve topdir accuracy.
* init: hide identify spam when reinitializing
* init: show a notice when reinitializing
* stage: add missing flush before project prompt
* upload: respect --yes with large upload confirmation
* launcher: make missing .repo/repo/repo an error
* launcher: initialize repo in a temp dir
* cherry-pick: tighten up output
* git_command: fix input passing
* project: initialize new manifests in temp dirs
* init: change --depth default to 1 for manifest repo
* add a few more docs to existing funcs
* init: use --current-branch by default
* start: do not swallow git output all the time
* pager: catch startup failures on Windows
* upload: add --push-options tips & doc link
* project: simplify GetRemote a bit
* upload: Add ready flag to remove wip
* commit-msg: Sync commit-msg from gerrit 3.6.1
* sync: handle smartsync HTML responses better
* sync: start clearing git settings that disabled pruning
* sync: rework --jobs to provide better defaults
* Fix the printed path of the ".repo" dir after a fresh init.
* Omit local_manifest groups from superproject override.
* status, diff: display correct path for multi-manifest
* project: simplify if-statement
* upload: add ‘--ignore-untracked-files’ option
* man: regenerate
* Fix Projects.shareable_dirs
* Only sync superproject if it will be used.
-------------------------------------------------------------------
Fri May 27 06:29:59 UTC 2022 - sebix+novell.com@sebix.at
- Update to version 2.26:
* sync: add multi-manifest support
* project: initial separation of shared project objects
* upload: move label validation to core function
* tests: switch to tempfile.TemporaryDirectory
* project: fix --use-superproject logic for init.
-------------------------------------------------------------------
Sun May 22 18:43:53 UTC 2022 - sebix+novell.com@sebix.at
- Update to version 2.25:
* manifest: add submanifest.default_groups attribute
* project: Do not exit early on --standalone-manifest.
* project: Add missing imports
-------------------------------------------------------------------
Thu Apr 21 17:19:48 UTC 2022 - sebix+novell.com@sebix.at
- Update to version 2.24:
* progress: optimize progress bar updates a bit
* Override the manifest for the entire command
* sync: refactor use of self.manifest
* Stop passing optparse.Values to git_superproject
* ManifestProject: add manifest_platform
* forall: fix multi-manifest variables.
* git_superproject: only print beta notice once.
-------------------------------------------------------------------
Mon Apr 18 08:37:38 UTC 2022 - sebix+novell.com@sebix.at
- Update to version 2.23:
* manifest_xml: use Superproject to hold XML content
* sync: respect `sync-c` manifest option
* manifest_xml: Add Load and Unload methods
* Fix sub manifest handling
* init: add multi-manifest support
* Move manifest config logic into ManifestProject
* project: add ManifestProject.Sync()
* project: Isolate ManifestProject from RepoProject
* manifest_file must be an absolute path
* trace: allow writing traces to a socket
* manifest_xml: group for submanifest projects
-------------------------------------------------------------------
Fri Feb 25 20:18:03 UTC 2022 - sebix+novell.com@sebix.at
- Update to version 2.22:
* Add multi-manifest support with <submanifest> element
* Move local-manifest check to manifest_xml.py
* project.py: pass --recurse-submodules={value}
-------------------------------------------------------------------
Fri Feb 04 11:15:47 UTC 2022 - sebix+novell.com@sebix.at
- remove obsolete patch fix-python-readlink.patch
- Update to version 2.21:
* project: mark gc.log as safe to discard when migrating .git/
* init: add an option --enable-git-lfs-filter
* init: make bad --repo-rev settings more clear
* project: Ignore failure to remove the sample hooks
* branches: Fix "not in" handling
* project: store objects in project-objects directly
* project: move --reference handling to project-objects
* test_project: use os.readlink instead of Path.readlink
-------------------------------------------------------------------
Tue Jan 11 10:42:42 UTC 2022 - Sebastian Wagner <sebix+novell.com@sebix.at>
- add fix-python-readlink.patch, fixing the project for python < 3.9.
-------------------------------------------------------------------
Tue Jan 11 09:49:42 UTC 2022 - sebix+novell.com@sebix.at
- Update to version 2.20:
* project: prune sample hooks
* project: drop support for symlinking internal .git files
* project: abort a bit earlier before migrating .git/
* Revert "sync: dropped "NOTICE: --use-superproject is in beta ..." message."
* project: stop symlinking info dir under .git/
* project: stop symlinking description file under .git/
* project: stop symlinking svn under .git/
* project: clean up now unused code
* sync: dropped "NOTICE: --use-superproject is in beta ..." message.
* sync: With --mirror option, don't display no-use-superproject... message.
-------------------------------------------------------------------
Mon Jan 10 22:23:54 UTC 2022 - sebix+novell.com@sebix.at
- Update to version 2.19:
* project: migrate worktree .git/ dirs to symlinks
* init, sync: fixed flake8 warnings.
* superproject: Inherit --no-use-superproject with --mirror option.
* sync: Handle tag ref in "upstream" field
* project: init hooks in objdir only
* sync: link the internal-fs-layout doc into checkouts
* git-review: add config file
* SUBMITTING_PATCHES: link to commit message style docs
* man: refresh pages
* help: fix grammar in help text
-------------------------------------------------------------------
Thu Jan 6 09:10:45 UTC 2022 - Sebastian Wagner <sebix+novell.com@sebix.at>
- initial package for version 2.19.