On 6/25/24 09:38, Brian May wrote:
But like it or not mistakes can happen. e.g. somebody applies a security update to the project. And uploads it to Debian. But forgets to do a git push to salsa.
You can only call it "forgetting" to do a git push if you introduce a
policy that contributions to git-maintained packages have to be made
through git.
Simon Richter writes ("Re: Summary of the current state of the tag2upload discussion"):[...]
You can only call it "forgetting" to do a git push if you introduce a policy that contributions to git-maintained packages have to be made through git.
In fact, tag2upload avoids this *even for NMUs made outside git* !
But, with wide tag2upload adoption, things are even better:
If everyone is using tag2upload[1], we simply avoid the problem,
by avoiding the mistake. This is because git-debpush's default
behaviour is to push your *branch* as well as just the *tag*.
So the original mistake, of forgetting to push to salsa, is simply
avoided, because it's not something human needs to remember to do.
On Tue, 2024-06-25 at 11:00 +0100, Ian Jackson wrote:
Simon Richter writes ("Re: Summary of the current state of the tag2upload discussion"):
You can only call it "forgetting" to do a git push if you introduce a policy that contributions to git-maintained packages have to be made through git.
In fact, tag2upload avoids this *even for NMUs made outside git* ![...]
But, with wide tag2upload adoption, things are even better:
If everyone is using tag2upload[1], we simply avoid the problem,
by avoiding the mistake. This is because git-debpush's default
behaviour is to push your *branch* as well as just the *tag*.
So the original mistake, of forgetting to push to salsa, is simply
avoided, because it's not something human needs to remember to do.
As far as I understand this requires:
1. Either one canonical repository on Salsa for each package to which everyone (including non-team members for NMUs) have full access or alternatively having some tag2upload-related service having full
access.
2. In case of multiple repositories, all of them to be in sync.
What will tag2upload enforce here? Or is there some alternative
solution that works in the context of NMUs and Git repositories hosted
on Salsa?
- if the NMU author has access to the main git repo of the package on
Salsa they can make a commit and tag there (normal team-like
maintenance)
- else the NMU author would have to fork the main git repo of the
package on Salsa to their own Salsa namespace and create a commit and
tag there. The NMUer would then create a pull request to the main repo
and the maintainer approving this pull request would (quite cleanly)
accept the NMU
There is no way to push a tag without having some kind of repo to push
it to and you can't push just a tag without also pushing the code that
you are tagging. So there is no technical way of uploading a package
via t2u without also pushing the source to some kind of git repo (that
is readable and is being monitored by t2u).
Hi,
On 7/1/24 04:55, Aigars Mahinovs wrote:
- if the NMU author has access to the main git repo of the package on
Salsa they can make a commit and tag there (normal team-like
maintenance)
If we create a method with a low technical barrier for NMUing, we also need to have a discussion about procedural expectations for that at some point.
Like, if someone makes an NMU that solves a problem, but creates maintenance issues down the line, is it acceptable to back that out immediately?
In a pure git workflow, it is understood that if you are not usually
involved with the project, you'd send a pull request rather than merge directly, but since we're all somehow "involved" with Debian, I'd expect the barrier for just committing changes to other people's packages to be
somewhat lower -- which may be good or bad.
On Sun, 30 Jun 2024 at 20:49, Ansgar 🙀 <[email protected]> wrote:
On Tue, 2024-06-25 at 11:00 +0100, Ian Jackson wrote:
Simon Richter writes ("Re: Summary of the current state of the tag2upload discussion"):
You can only call it "forgetting" to do a git push if you introduce a policy that contributions to git-maintained packages have to be made through git.
In fact, tag2upload avoids this *even for NMUs made outside git* ![...]
But, with wide tag2upload adoption, things are even better:
If everyone is using tag2upload[1], we simply avoid the problem,
by avoiding the mistake. This is because git-debpush's default behaviour is to push your *branch* as well as just the *tag*.
So the original mistake, of forgetting to push to salsa, is simply avoided, because it's not something human needs to remember to do.
As far as I understand this requires:
1. Either one canonical repository on Salsa for each package to which everyone (including non-team members for NMUs) have full access or alternatively having some tag2upload-related service having full
access.
2. In case of multiple repositories, all of them to be in sync.
What will tag2upload enforce here? Or is there some alternative
solution that works in the context of NMUs and Git repositories hosted
on Salsa?
There are two interesting options here:
1. There is a non-git NMU on a package that is normally managed via git and t2u
2. There is a git-based NMU on a package that is normally managed via
git and t2u
- if the NMU author has access to the main git repo of the package on
Salsa they can make a commit and tag there (normal team-like
maintenance)
- else the NMU author would have to fork the main git repo of the
package on Salsa to their own Salsa namespace and create a commit and
tag there. The NMUer would then create a pull request to the main repo
and the maintainer approving this pull request would (quite cleanly)
accept the NMU
As you can see the git repos do not *have to* be in sync, but the
Debian process of accepting a NMU already provides the path to getting
to eventual sync.
There is no way to push a tag without having some kind of repo to push
it to and you can't push just a tag without also pushing the code that
you are tagging. So there is no technical way of uploading a package
via t2u without also pushing the source to some kind of git repo (that
is readable and is being monitored by t2u).
| Sysop: | Keyop |
|---|---|
| Location: | Huddersfield, West Yorkshire, UK |
| Users: | 715 |
| Nodes: | 16 (2 / 14) |
| Uptime: | 18:04:29 |
| Calls: | 12,103 |
| Calls today: | 3 |
| Files: | 15,004 |
| Messages: | 6,518,079 |