repo v2.29 prerelease

253 views
Skip to first unread message

Mike Frysinger

unread,
Aug 23, 2022, 11:21:27 AM8/23/22
to Repo and Gerrit Discussion
I've created a new release, but not yet pushed it live.  Instead, people have to opt-in to it by passing --repo-rev=main when running `repo init`.  You can then run `repo selfupdate && repo version` to double check your local state.

So please bang on things and let us know how it goes.  Even "it works" is useful feedback as it means I'm not the only one running it :).
If things look good the rest of this week, I'll publish it next week.

There shouldn't be anything terribly interesting here.  Just a random assortment of bugfixes.

fbd5dd3a304e (LaMont Jones) manifest_xml: improve topdir accuracy.
3d27c71dd928 (Mike Frysinger) init: hide identify spam when reinitializing
488d54d4eea1 (Mike Frysinger) init: show a notice when reinitializing
5a5cfce1b2ef (Mike Frysinger) stage: add missing flush before project prompt
e6d4b8406078 (Mike Frysinger) upload: respect --yes with large upload confirmation
d75ca2eb9d83 (Mike Frysinger) launcher: make missing .repo/repo/repo an error
a010a9f4a061 (Mike Frysinger) launcher: initialize repo in a temp dir
8a54a7eac380 (Mike Frysinger) cherry-pick: tighten up output
63a5657ecfe1 (Mike Frysinger) git_command: fix input passing
07d21e6bde9b (Mike Frysinger) project: initialize new manifests in temp dirs
076d54652e00 (Mike Frysinger) init: change --depth default to 1 for manifest repo
790f4cea7aa9 (Mike Frysinger) add a few more docs to existing funcs
39cb17f7a31d (Mike Frysinger) init: use --current-branch by default
ad1b7bd2e2d4 (Mike Frysinger) start: do not swallow git output all the time
3c2d807905b5 (Mike Frysinger) pager: catch startup failures on Windows
7fa8eedd8ff9 (Mike Frysinger) upload: add --push-options tips & doc link
dede564c3dc6 (Mike Frysinger) project: simplify GetRemote a bit
ac76fd3e3a08 (William Escande) upload: Add ready flag to remove wip
a8c34d107512 (Evan Benn) commit-msg: Sync commit-msg from gerrit 3.6.1
5951e3043f8d (Mike Frysinger) sync: handle smartsync HTML responses better
48ea25c6a7f9 (LaMont Jones) sync: start clearing git settings that disabled pruning
355f4398d870 (Mike Frysinger) sync: rework --jobs to provide better defaults
bddc964d9340 (Mateus Azis) Fix the printed path of the ".repo" dir after a fresh init.

Nasser Grainawi

unread,
Aug 23, 2022, 5:47:16 PM8/23/22
to Mike Frysinger, Repo and Gerrit Discussion
On Tue, Aug 23, 2022 at 9:21 AM 'Mike Frysinger' via Repo and Gerrit Discussion <repo-d...@googlegroups.com> wrote:
I've created a new release, but not yet pushed it live.  Instead, people have to opt-in to it by passing --repo-rev=main when running `repo init`.  You can then run `repo selfupdate && repo version` to double check your local state.

So please bang on things and let us know how it goes.  Even "it works" is useful feedback as it means I'm not the only one running it :).
If things look good the rest of this week, I'll publish it next week.

There shouldn't be anything terribly interesting here.  Just a random assortment of bugfixes.

You have a couple non-bugfix default changes below (that are probably good changes) that may be more interesting to folks:

076d54652e00 (Mike Frysinger) init: change --depth default to 1 for manifest repo
--
--
To unsubscribe, email repo-discuss...@googlegroups.com
More info at http://groups.google.com/group/repo-discuss?hl=en

---
You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/repo-discuss/CAAbOScm9u7Yjizi89trFiAAcym4TEPZ%3D3Kg7ZPr7LMN7gi8yzw%40mail.gmail.com.

Erik ht

unread,
Sep 7, 2022, 12:57:53 AM9/7/22
to Repo and Gerrit Discussion
076d54652e00 (Mike Frysinger) init: change --depth default to 1 for manifest repo

This change will break a fair bit of automated CI jobs we have that traverse the manifest history to identify changed projects. I also believe a lot of developers actually like the manifest log.
It's not possible to add --manifest-depth=0 in the scripts to prepare for the change as that argument is unrecognized by older repo-versions.
I think we'll survive, most places pin the repo revision anyway, so we can toggle and add the argument in one shot.
Just a reminder to please be careful with breaking changes like this in future, both regarding upgrade path and how it's announced.

LaMont Jones

unread,
Sep 8, 2022, 6:32:58 PM9/8/22
to Erik ht, Repo and Gerrit Discussion
v2.29 breaks repo init in some circumstances. [bug]

I'm planning to create v2.29.2 tomorrow with these changes (and a release to stable early next week) to provide a recovery path for a potential data corruption issue that we've been seeing, where `repo sync` apparently leaves the project with missing commits.  I'll be creating the bug for that in an hour or two, with details, and switch the bug referenced in the CL to that bug.


Xin Li

unread,
Sep 9, 2022, 7:50:54 PM9/9/22
to LaMont Jones, Erik ht, Repo and Gerrit Discussion
Hi,

I've tagged and released v2.29.2 with the following two new changes (compared to earlier v2.29.1):

891e8f7 (LaMont Jones) sync: save any cruft after calling git gc.
af8fb13 (LaMont Jones) Revert "project: initialize new manifests in temp dirs"

Among all changes since v2.28.  If everything looks good, we plan to promote these to the stable track next week.

Cheers,

LaMont Jones

unread,
Sep 12, 2022, 1:07:32 PM9/12/22
to Xin Li, Erik ht, Repo and Gerrit Discussion
tl;dr: After installing v2.29.2 (or later), and verifying that there is no pre-existing corruption via repo forall -c git fsck --connectivity-only --no-dangling, if you get "missing commit" errors when syncing or rebasing, the missing objects should be available from {project_path}/.git/objects/.repo/pack.bak.

Details: backups are created of any objects that are scheduled for expiring (default 2 weeks), rather than those that were deleted by this garbage collection run (see help for git gc --cruft).  As such, the recovery activity must copy the backed up packs, rather than moving them, since the bug is likely to remove the objects (without any further backup) at the next gc.

LaMont Jones

unread,
Sep 15, 2022, 2:18:36 PM9/15/22
to Xin Li, Erik ht, Repo and Gerrit Discussion
This is a heads-up that we will be promoting v2.29.2 to stable on Monday, in the absence of bugs that indicate that we should not.

Xin Li

unread,
Sep 28, 2022, 5:05:07 PM9/28/22
to Repo and Gerrit Discussion
Hi,

I have tagged and released v2.29.3 with the following changes (compared to earlier v2.29.2):

acc4c85 (LaMont Jones) sync: only use --cruft when git supports it.
a39af3d (Peter Kjellerstedt) project: Add a missing call to _CopyAndLinkFiles
4cdfdb7 (Erik Elmeke) manifest: allow extend-project to override dest-branch and upstream
1eddca8 (LaMont Jones) sync: use namedtuples for internal return values
aefa4d3 (LaMont Jones) sync: incorporate review feedback.
4ba29c4 (Shashank Devaraj) diffmanifests: Handle Missing Projects in Repo Workspace
45ef901 (Mike Frysinger) update-manpages: force use of active interp

LaMont Jones

unread,
Sep 28, 2022, 6:40:43 PM9/28/22
to Xin Li, Repo and Gerrit Discussion
For those experiencing the "missing commits" issue, the state of the workspace may have information useful in debugging the issue if git 2.37.0 or later is installed, and either:
  • The workspace was created using v2.29.2 or later (and used only with v2.29.2 or later), or
  • After updating repo to v2.29.2 or later (such as repo init --repo-rev=v2.29.3), repo forall -c git gc && repo forall -c git fsck --connectivity-only --no-dangling does not report missing commits.
The changes in v2.29.2 (and 3) will help determine whether `git gc` is a necessary element in the commits going missing.

Peter Kjellerstedt

unread,
Oct 25, 2022, 2:36:45 PM10/25/22
to Xin Li, Repo and Gerrit Discussion

v2.29.3 has still not been promoted to stable. Is there anything holding it back?

 

//Peter

 

--

--
To unsubscribe, email repo-discuss...@googlegroups.com
More info at http://groups.google.com/group/repo-discuss?hl=en

---
You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss...@googlegroups.com.

Xin Li

unread,
Oct 25, 2022, 4:38:22 PM10/25/22
to Peter Kjellerstedt, Repo and Gerrit Discussion
On Tue, Oct 25, 2022 at 11:36 AM Peter Kjellerstedt <peter.kje...@axis.com> wrote:

v2.29.3 has still not been promoted to stable. Is there anything holding it back?


It's on stable track now.

Xin Li

unread,
Oct 25, 2022, 7:59:18 PM10/25/22
to Repo and Gerrit Discussion
Hi,
I've tagged and released v2.29.4 and pushed to stable (since this is a relatively critical fix for the stable branch), which will avoid Python 3.9 syntax for NamedTuple:

78dcd37 (LaMont Jones) sync: do not require python 3.9

Cheers,

Xin Li

unread,
Oct 27, 2022, 7:59:54 PM10/27/22
to Repo and Gerrit Discussion
Hi,

I've tagged and released v2.29.5 and pushed to stable to address two recently discovered issues that affects the recent release:

b750b48 (LaMont Jones) init: add --manifest-depth for shallow manifest clone
6c8b894 (LaMont Jones) Revert "init: change --depth default to 1 for manifest repo"
b6cfa09 (LaMont Jones) sync: uninitialized variable on mirror sync failure

Cheers,
Reply all
Reply to author
Forward
0 new messages