* [gentoo-dev] Current portage will now truncate your repo's git history to 1 @ 2022-12-15 19:22 Florian Schmaus 2022-12-15 19:56 ` [gentoo-dev] " Florian Schmaus ` (2 more replies) 0 siblings, 3 replies; 13+ messages in thread From: Florian Schmaus @ 2022-12-15 19:22 UTC (permalink / raw To: gentoo-dev This is a public service announcement that the recently stabilized portage version will truncate you repo's git history to 1. While this is a good thing for the majority of Gentoo users, it affects developers that develop in a git known to portage (like me). If I understand the portage maintainers vision correctly, then future portage will assume full control over its configured repositories and potentially perform destructive operations on them, for example "git clean" [1]. I personally would prefer portage simply adjusting its behavior based on the owner of the repository. That is, if it's the 'portage' user then assume full control, and if it is a different user, then fall back to a preserving, conservative mode of operation. Unfortunately, for me, this idea was received skeptically at best in a recent discussion in #gentoo-portage. So this is a heads up for fellow developers using a similar workflow like me, that they are probably required to change their workflow to use PORTDIR_OVERLAY and multiple repositories on their system: a system-wide, managed by portage, and a dev repository (in your HOME), scoped in via PORTDIR_OVERLAY. As everyone knows, there is nothing better than to change the workflow that has served you well over multiple years. But apparently the PORTDIR_OVERLAY approach works well for others, so I am confident that I (and others) will be able to make the transition with a minimal amount of ranting. ;) - Flow 1: https://github.com/gentoo/portage/pull/939 ^ permalink raw reply [flat|nested] 13+ messages in thread
* [gentoo-dev] Re: Current portage will now truncate your repo's git history to 1 2022-12-15 19:22 [gentoo-dev] Current portage will now truncate your repo's git history to 1 Florian Schmaus @ 2022-12-15 19:56 ` Florian Schmaus 2022-12-15 20:10 ` [gentoo-dev] " Toralf Förster 2022-12-17 5:42 ` [gentoo-dev] " Sam James 2 siblings, 0 replies; 13+ messages in thread From: Florian Schmaus @ 2022-12-15 19:56 UTC (permalink / raw To: gentoo-dev On 15/12/2022 20.22, Florian Schmaus wrote: > As everyone knows, there is nothing better than to change the workflow > that has served you well over multiple years. But apparently the > PORTDIR_OVERLAY approach works well for others, so I am confident that I > (and others) will be able to make the transition with a minimal amount > of ranting. ;) As it was pointed out that some consider my wording here inappropriate and/or rude, I want to apologize to everyone who was offended by the prior paragraph. I had https://xkcd.com/1172/ in mind when writing it. I was also criticized for not providing a rationale for the behavior change in portage. The motivation is driven by the noble goal to make portage more user friendly and robust. Which I fully support. Just like I support shallow clones per default. I just believe portage should do a better job figuring out if it potentially messes with a "user-owned" repository and adjust its behavior accordingly. In a similar spirit I submitted https://github.com/gentoo/portage/pull/960 - Flow ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Current portage will now truncate your repo's git history to 1 2022-12-15 19:22 [gentoo-dev] Current portage will now truncate your repo's git history to 1 Florian Schmaus 2022-12-15 19:56 ` [gentoo-dev] " Florian Schmaus @ 2022-12-15 20:10 ` Toralf Förster 2022-12-15 20:40 ` Florian Schmaus 2022-12-17 5:42 ` [gentoo-dev] " Sam James 2 siblings, 1 reply; 13+ messages in thread From: Toralf Förster @ 2022-12-15 20:10 UTC (permalink / raw To: gentoo-dev [-- Attachment #1.1: Type: text/plain, Size: 751 bytes --] On 12/15/22 20:22, Florian Schmaus wrote: > o use PORTDIR_OVERLAY and multiple repositories on their system: a > system-wide, managed by portage, and a dev repository (in your HOME), > scoped in via PORTDIR_OVERLAY. Isn't this covered by /etc/portage/repos.conf/* eg here's my config: cat /etc/portage/repos.conf/all.conf [DEFAULT] main-repo = gentoo [gentoo] location = /var/db/repos/gentoo auto-sync = yes sync-type = git sync-uri = https://github.com/gentoo-mirror/gentoo.git #sync-git-verify-commit-signature = true priority = 10 [local] location = /var/db/repos/local auto-sync = no priority = 99 [tgro] location = /var/db/repos/tgro auto-sync = no priority = 90 -- Toralf PGP 23217DA7 9B888F45 [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 840 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Current portage will now truncate your repo's git history to 1 2022-12-15 20:10 ` [gentoo-dev] " Toralf Förster @ 2022-12-15 20:40 ` Florian Schmaus 2022-12-16 1:08 ` [gentoo-dev] " Duncan 0 siblings, 1 reply; 13+ messages in thread From: Florian Schmaus @ 2022-12-15 20:40 UTC (permalink / raw To: gentoo-dev On 15/12/2022 21.10, Toralf Förster wrote: > On 12/15/22 20:22, Florian Schmaus wrote: >> o use PORTDIR_OVERLAY and multiple repositories on their system: a >> system-wide, managed by portage, and a dev repository (in your HOME), >> scoped in via PORTDIR_OVERLAY. > > Isn't this covered by /etc/portage/repos.conf/* Absolutely, but this requires a manual intervention from the user. And, of course, you can totally opt-out from portage managing (syncing) the repository, but then you have to take care of syncing yourself. The point is that with the new portage release, portage's behavior changes. And I would argue that portage should not, in its effort to become more user friendly, disregard ebuild-developer friendliness. Assuming it is achievable with a reasonable amount of additional code complexity. - Flow ^ permalink raw reply [flat|nested] 13+ messages in thread
* [gentoo-dev] Re: Current portage will now truncate your repo's git history to 1 2022-12-15 20:40 ` Florian Schmaus @ 2022-12-16 1:08 ` Duncan 2022-12-17 4:01 ` Brian Evans 0 siblings, 1 reply; 13+ messages in thread From: Duncan @ 2022-12-16 1:08 UTC (permalink / raw To: gentoo-dev Florian Schmaus posted on Thu, 15 Dec 2022 21:40:19 +0100 as excerpted: > On 15/12/2022 21.10, Toralf Förster wrote: >> On 12/15/22 20:22, Florian Schmaus wrote: >>> o use PORTDIR_OVERLAY and multiple repositories on their system: a >>> system-wide, managed by portage, and a dev repository (in your HOME), >>> scoped in via PORTDIR_OVERLAY. >> >> Isn't this covered by /etc/portage/repos.conf/* > > Absolutely, but this requires a manual intervention from the user. And, > of course, you can totally opt-out from portage managing (syncing) the > repository, but then you have to take care of syncing yourself. > > The point is that with the new portage release, portage's behavior > changes. And I would argue that portage should not, in its effort to > become more user friendly, disregard ebuild-developer friendliness. > Assuming it is achievable with a reasonable amount of additional code > complexity. This bit me too, and making things worse, the truncate killed the git history that presumably had the answer I needed to fix it up. =:^( Fortunately I had a bit of a clue due to preemptively following the portage changelog where I had seen a hint, so I was able to dig it up again without the git log help that's definitely now my first instinct. Long story short and for the record, manual intervention indeed and I wish it had at least come with a news item, but here's the magic that fixed it for me. I had one of these previously, IIRC clone depth, but both are now needed. I put these in the [DEFAULT] section here because I run several overlays and I "want" access to proper git logs and history by default. (FWIW "want" is the polite, cooled down, version; the situation was considerably more sweary when I lost that history and instinctively I tried to look in the git history for why, but of course it was GONE!) repos.conf, [DEFAULT] (or [gentoo]) section: clone-depth = 0 sync-depth = 0 -- Duncan - List replies preferred. No HTML msgs. "Every nonfree program has a lord, a master -- and if you use the program, he is your master." Richard Stallman ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Re: Current portage will now truncate your repo's git history to 1 2022-12-16 1:08 ` [gentoo-dev] " Duncan @ 2022-12-17 4:01 ` Brian Evans 2022-12-18 1:52 ` John Helmert III 0 siblings, 1 reply; 13+ messages in thread From: Brian Evans @ 2022-12-17 4:01 UTC (permalink / raw To: gentoo-dev [-- Attachment #1.1: Type: text/plain, Size: 1646 bytes --] On 12/15/22 20:08, Duncan wrote: > Florian Schmaus posted on Thu, 15 Dec 2022 21:40:19 +0100 as excerpted: > >> On 15/12/2022 21.10, Toralf Förster wrote: >>> On 12/15/22 20:22, Florian Schmaus wrote: >>>> o use PORTDIR_OVERLAY and multiple repositories on their system: a >>>> system-wide, managed by portage, and a dev repository (in your HOME), >>>> scoped in via PORTDIR_OVERLAY. >>> >>> Isn't this covered by /etc/portage/repos.conf/* >> >> Absolutely, but this requires a manual intervention from the user. And, >> of course, you can totally opt-out from portage managing (syncing) the >> repository, but then you have to take care of syncing yourself. >> >> The point is that with the new portage release, portage's behavior >> changes. And I would argue that portage should not, in its effort to >> become more user friendly, disregard ebuild-developer friendliness. >> Assuming it is achievable with a reasonable amount of additional code >> complexity. > > This bit me too, and making things worse, the truncate killed the git > history that presumably had the answer I needed to fix it up. > =:^( Fortunately I had a bit of a clue due to preemptively following the > portage changelog where I had seen a hint, so I was able to dig it up > again without the git log help that's definitely now my first instinct. > Thankfully, if anyone does accidentally gets shallowed, just executing 'git fetch --unshallow' will revert the default '--depth 1' I really don't care for that 'git clean' patch. If that makes it in without a way to opt-out, it will be patched out for me personally. Brian [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 840 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Re: Current portage will now truncate your repo's git history to 1 2022-12-17 4:01 ` Brian Evans @ 2022-12-18 1:52 ` John Helmert III 0 siblings, 0 replies; 13+ messages in thread From: John Helmert III @ 2022-12-18 1:52 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 2375 bytes --] On Fri, Dec 16, 2022 at 11:01:13PM -0500, Brian Evans wrote: > On 12/15/22 20:08, Duncan wrote: > > Florian Schmaus posted on Thu, 15 Dec 2022 21:40:19 +0100 as excerpted: > > > >> On 15/12/2022 21.10, Toralf Förster wrote: > >>> On 12/15/22 20:22, Florian Schmaus wrote: > >>>> o use PORTDIR_OVERLAY and multiple repositories on their system: a > >>>> system-wide, managed by portage, and a dev repository (in your HOME), > >>>> scoped in via PORTDIR_OVERLAY. > >>> > >>> Isn't this covered by /etc/portage/repos.conf/* > >> > >> Absolutely, but this requires a manual intervention from the user. And, > >> of course, you can totally opt-out from portage managing (syncing) the > >> repository, but then you have to take care of syncing yourself. > >> > >> The point is that with the new portage release, portage's behavior > >> changes. And I would argue that portage should not, in its effort to > >> become more user friendly, disregard ebuild-developer friendliness. > >> Assuming it is achievable with a reasonable amount of additional code > >> complexity. > > > > This bit me too, and making things worse, the truncate killed the git > > history that presumably had the answer I needed to fix it up. > > =:^( Fortunately I had a bit of a clue due to preemptively following the > > portage changelog where I had seen a hint, so I was able to dig it up > > again without the git log help that's definitely now my first instinct. > > > > Thankfully, if anyone does accidentally gets shallowed, just executing > 'git fetch --unshallow' will revert the default '--depth 1' > > I really don't care for that 'git clean' patch. If that makes it in > without a way to opt-out, it will be patched out for me personally. > > Brian By "that 'git clean'" patch, do you mean [1]? Why are you speaking as if you're talking about a 3rd party and not people that are also on the gentoo-dev mailing list? It seems like the more productive thing to do would be to at least offer substantive criticism about a specific PR, maybe even in the PR itself. While I'm at it: you used to be reachable on IRC, but you never migrated away from Freenode. Why? It seems like every few days someone is looking for you only to be surprised that you're not in Gentoo's IRC community anymore. [1] https://github.com/gentoo/portage/pull/939 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 228 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Current portage will now truncate your repo's git history to 1 2022-12-15 19:22 [gentoo-dev] Current portage will now truncate your repo's git history to 1 Florian Schmaus 2022-12-15 19:56 ` [gentoo-dev] " Florian Schmaus 2022-12-15 20:10 ` [gentoo-dev] " Toralf Förster @ 2022-12-17 5:42 ` Sam James 2022-12-17 6:14 ` Michael ` (3 more replies) 2 siblings, 4 replies; 13+ messages in thread From: Sam James @ 2022-12-17 5:42 UTC (permalink / raw To: gentoo-dev; +Cc: dev-portage [-- Attachment #1: Type: text/plain, Size: 3328 bytes --] > On 15 Dec 2022, at 19:22, Florian Schmaus <flow@gentoo.org> wrote: > > This is a public service announcement that the recently stabilized portage version will truncate you repo's git history to 1. I wish you'd shown us in #gentoo-portage before sending this, as it's a bit misleading / alarmist. We were actively all speaking at the time. Not only to reconsider the phrasing and include some important details, but also to mention the rationale, which I describe below. If you felt the Portage team should've written a news item for it, you were (and still are) free to say so, and we'd do it. > > While this is a good thing for the majority of Gentoo users, it affects developers that develop in a git known to portage (like me). If I understand the portage maintainers vision correctly, then future portage will assume full control over its configured repositories and potentially perform destructive operations on them, for example "git clean" [1]. > ... only for repositories of sync-type=git & auto-sync=yes. The rationale for this is that most people who use sync-type=git are doing so because they want a quicker sync (to complete), a more reliable one (no Manifest race condition issues), and to get changes from Gentoo faster. Whenever Portage is syncing something, our view was that we should prioritise successful completion of syncs, especially given it may be performed unattended. If git is pulling from a CDN, Portage may on one sync receive state X, but on a subsequent sync receive state X-1. This can cause an odd state where git wants to resolve conflicts and manual intervention is required. This situation was often worse with sync-depth=1 and would lead to orphaned files, hence the 'git clean' PR referenced. The motivation behind the sync depth part was because of disk space growing unbounded otherwise. > I personally would prefer portage simply adjusting its behavior based on the owner of the repository. That is, if it's the 'portage' user then assume full control, and if it is a different user, then fall back to a preserving, conservative mode of operation. Unfortunately, for me, this idea was received skeptically at best in a recent discussion in #gentoo-portage. This wouldn't work for Prefix and also FEATURES="-usersync". -- Now, looking forward in a constructive manner, I think we can make both camps happy here with an option to indicate If Portage can assume the repository will be touched by something other than Portage. I propose a configuration option called 'volatile' (thanks Arsen for the name suggestion) which indicates that the repository may be changed outside of Portage by any time, and hence no destructive operations should be carried out. If the option is on, it also prohibits some optimisations which require assuming the integrity of the repository. I have a draft of these changes at https://github.com/gentoo/portage/pull/961. (https://github.com/gentoo/portage/pull/961.patch if want to view as a raw patch series.0 I am undecided on whether volatile should be default on or not. In the PR as it is, it defaults to off, which would require a news item. I may just turn it on given the tone of this thread, as none of it has been very encouraging for further work on Portage. [-- Attachment #2: Message signed with OpenPGP --] [-- Type: application/pgp-signature, Size: 358 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Current portage will now truncate your repo's git history to 1 2022-12-17 5:42 ` [gentoo-dev] " Sam James @ 2022-12-17 6:14 ` Michael 2022-12-17 6:25 ` Sam James ` (2 subsequent siblings) 3 siblings, 0 replies; 13+ messages in thread From: Michael @ 2022-12-17 6:14 UTC (permalink / raw To: gentoo-dev > The motivation behind the sync depth part was because of > disk space growing unbounded otherwise. I recently did `git config --local fetch.prune true` to the repos I don't develop (user mode). And that seems to help with the uncontrollable growth. # grep prune /usr/portage/.git/config -B1 [fetch] prune = true Michael ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Current portage will now truncate your repo's git history to 1 2022-12-17 5:42 ` [gentoo-dev] " Sam James 2022-12-17 6:14 ` Michael @ 2022-12-17 6:25 ` Sam James 2022-12-18 2:09 ` John Helmert III 2022-12-18 10:19 ` Florian Schmaus 3 siblings, 0 replies; 13+ messages in thread From: Sam James @ 2022-12-17 6:25 UTC (permalink / raw To: gentoo-dev; +Cc: dev-portage [-- Attachment #1: Type: text/plain, Size: 184 bytes --] > On 17 Dec 2022, at 05:42, Sam James <sam@gentoo.org> wrote: >> > ... only for repositories of sync-type=git & auto-sync=yes. Sorry, of course, the auto sync part doesn't matter. [-- Attachment #2: Message signed with OpenPGP --] [-- Type: application/pgp-signature, Size: 358 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Current portage will now truncate your repo's git history to 1 2022-12-17 5:42 ` [gentoo-dev] " Sam James 2022-12-17 6:14 ` Michael 2022-12-17 6:25 ` Sam James @ 2022-12-18 2:09 ` John Helmert III 2022-12-18 10:19 ` Florian Schmaus 3 siblings, 0 replies; 13+ messages in thread From: John Helmert III @ 2022-12-18 2:09 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 3867 bytes --] On Sat, Dec 17, 2022 at 05:42:43AM +0000, Sam James wrote: > > > > On 15 Dec 2022, at 19:22, Florian Schmaus <flow@gentoo.org> wrote: > > > > This is a public service announcement that the recently stabilized portage version will truncate you repo's git history to 1. > > I wish you'd shown us in #gentoo-portage before sending this, as it's a bit misleading / alarmist. We were actively all speaking > at the time. > > Not only to reconsider the phrasing and include some important details, but also to mention the rationale, which I describe > below. > > If you felt the Portage team should've written a news item for it, you were (and still are) free to say so, and we'd > do it. > > > > > While this is a good thing for the majority of Gentoo users, it affects developers that develop in a git known to portage (like me). If I understand the portage maintainers vision correctly, then future portage will assume full control over its configured repositories and potentially perform destructive operations on them, for example "git clean" [1]. > > > ... only for repositories of sync-type=git & auto-sync=yes. > > The rationale for this is that most people who use sync-type=git are doing so because they want > a quicker sync (to complete), a more reliable one (no Manifest race condition issues), and to > get changes from Gentoo faster. > > Whenever Portage is syncing something, our view was that we should prioritise successful > completion of syncs, especially given it may be performed unattended. > > If git is pulling from a CDN, Portage may on one sync receive state X, but > on a subsequent sync receive state X-1. This can cause an odd state > where git wants to resolve conflicts and manual intervention is required. > > This situation was often worse with sync-depth=1 and would lead > to orphaned files, hence the 'git clean' PR referenced. > > The motivation behind the sync depth part was because of > disk space growing unbounded otherwise. Just to make this more abundantly explicit: it repeatedly happened to me (but others, too) that on a system using git to sync a shallow ::gentoo clone, during unattended syncs, the repository attempted a merge with the upstream, yielding a repo in a merging state, with a huge list of dirtied files in the working tree, plus untracked files. > > I personally would prefer portage simply adjusting its behavior based on the owner of the repository. That is, if it's the 'portage' user then assume full control, and if it is a different user, then fall back to a preserving, conservative mode of operation. Unfortunately, for me, this idea was received skeptically at best in a recent discussion in #gentoo-portage. > > This wouldn't work for Prefix and also FEATURES="-usersync". > > -- > > Now, looking forward in a constructive manner, I think we can > make both camps happy here with an option to indicate > If Portage can assume the repository will be touched by something > other than Portage. > > I propose a configuration option called 'volatile' (thanks > Arsen for the name suggestion) which indicates that the > repository may be changed outside of Portage by any time, > and hence no destructive operations should be carried out. > > If the option is on, it also prohibits some optimisations > which require assuming the integrity of the repository. > > I have a draft of these changes at https://github.com/gentoo/portage/pull/961. > > (https://github.com/gentoo/portage/pull/961.patch if want to view as a raw patch series.0 > > I am undecided on whether volatile should be default on or not. In the PR > as it is, it defaults to off, which would require a news item. I may just turn it > on given the tone of this thread, as none of it has been very encouraging > for further work on Portage. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 228 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Current portage will now truncate your repo's git history to 1 2022-12-17 5:42 ` [gentoo-dev] " Sam James ` (2 preceding siblings ...) 2022-12-18 2:09 ` John Helmert III @ 2022-12-18 10:19 ` Florian Schmaus 2022-12-18 11:42 ` Sam James 3 siblings, 1 reply; 13+ messages in thread From: Florian Schmaus @ 2022-12-18 10:19 UTC (permalink / raw To: gentoo-dev On 17.12.22 06:42, Sam James wrote: >> On 15 Dec 2022, at 19:22, Florian Schmaus <flow@gentoo.org> wrote: >> I personally would prefer portage simply adjusting its behavior based on the owner of the repository. That is, if it's the 'portage' user then assume full control, and if it is a different user, then fall back to a preserving, conservative mode of operation. Unfortunately, for me, this idea was received skeptically at best in a recent discussion in #gentoo-portage. > > This wouldn't work for Prefix and also FEATURES="-usersync". Simply do not apply the approach on Prefix. That should be fine. I am not sure how usersync being disabled (or enabled) plays a role here, though. I believe something like this would make everyone happy: if volatile_explicitly_configured: volatile = explicitly_configured_volatile_value else if prefix volatile = false else if Path(repo_dir).user != (root|portage) # Or, if uid >= 1000 volatile = true else volatile = false Assuming that the "if target repo is not shallow, then no shallow clone (unless explicitly requested)" check is only applied if volatile=true, then you even have the desired effect that users get their repo automatically converted to shallow ones. Which makes you happy. And the above logic would make me happy, since the "if Path(repo_dir).uid >= 1000" branch would be taken for me. That sounds like a win/win to me. - Flow ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [gentoo-dev] Current portage will now truncate your repo's git history to 1 2022-12-18 10:19 ` Florian Schmaus @ 2022-12-18 11:42 ` Sam James 0 siblings, 0 replies; 13+ messages in thread From: Sam James @ 2022-12-18 11:42 UTC (permalink / raw To: gentoo-dev [-- Attachment #1: Type: text/plain, Size: 1765 bytes --] > On 18 Dec 2022, at 10:19, Florian Schmaus <flow@gentoo.org> wrote: > > On 17.12.22 06:42, Sam James wrote: >>> On 15 Dec 2022, at 19:22, Florian Schmaus <flow@gentoo.org> wrote: >>> I personally would prefer portage simply adjusting its behavior based on the owner of the repository. That is, if it's the 'portage' user then assume full control, and if it is a different user, then fall back to a preserving, conservative mode of operation. Unfortunately, for me, this idea was received skeptically at best in a recent discussion in #gentoo-portage. >> This wouldn't work for Prefix and also FEATURES="-usersync". > > Simply do not apply the approach on Prefix. That should be fine. I am not sure how usersync being disabled (or enabled) plays a role here, though. > The owner of the repository and its permissions will be affected by the permissions used by Portage to sync. > I believe something like this would make everyone happy: > > if volatile_explicitly_configured: > volatile = explicitly_configured_volatile_value > else if prefix > volatile = false > else if Path(repo_dir).user != (root|portage) # Or, if uid >= 1000 > volatile = true > else > volatile = false > > Assuming that the "if target repo is not shallow, then no shallow clone (unless explicitly requested)" check is only applied if volatile=true, then you even have the desired effect that users get their repo automatically converted to shallow ones. Which makes you happy. And the above logic would make me happy, since the "if Path(repo_dir).uid >= 1000" branch would be taken for me. > Feel free to suggest that on the PR, it sounds like a decent compromise, if a bit automagic - but it wouldn't be the first or last case of that in Portage. [-- Attachment #2: Message signed with OpenPGP --] [-- Type: application/pgp-signature, Size: 358 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2022-12-18 11:43 UTC | newest] Thread overview: 13+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-12-15 19:22 [gentoo-dev] Current portage will now truncate your repo's git history to 1 Florian Schmaus 2022-12-15 19:56 ` [gentoo-dev] " Florian Schmaus 2022-12-15 20:10 ` [gentoo-dev] " Toralf Förster 2022-12-15 20:40 ` Florian Schmaus 2022-12-16 1:08 ` [gentoo-dev] " Duncan 2022-12-17 4:01 ` Brian Evans 2022-12-18 1:52 ` John Helmert III 2022-12-17 5:42 ` [gentoo-dev] " Sam James 2022-12-17 6:14 ` Michael 2022-12-17 6:25 ` Sam James 2022-12-18 2:09 ` John Helmert III 2022-12-18 10:19 ` Florian Schmaus 2022-12-18 11:42 ` Sam James
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox