Hi!
I can tell that some packages are and some aren't, and that's as far as I can get.
Also, I'm trying to understand how rpmautospec would help me. I grasp that the idea is to avoid manually updating the changelog and release value. But what I don't understand is how that actually improves my workflow other than dispensing w/ some minor editing. Usually, I need to run rust2rpm also, and that will tend to lay down plenty of changes, which I have to evaluate anyway. Or there's some other special handling that the spec file requires on an update.
So, another question might be, who uses rpmautospec to their considerable benefit and how?
Thanks,
- mulhern
I use rpmautospec because it allows me to merge PR’s and cherry-pick changes to older stable branches without constantly having to resolve trivial conflicts in release numbers and changelog entries. This saves only a few seconds at a time, but it really adds up over a large number of packages.
Not having to repeat the same message in rpmdev-bumpspec and git commit is an additional small benefit.
In exchange, I have less fine-grained control of my changelog entries, and my changelogs probably end up a little noisier than those of packagers who more carefully curate them for end-users.
If you only package Rust, your workflow of rewriting the spec file with rust2rpm on every change is (great for Rust, as far as i can tell, but) a significant outlier from most of the Fedora packaging ecosystem.
Examining https://src.fedoraproject.org/repo/rpm-specs-latest.tar.xz shows 4045 packages that use %autorelease, %autochangelog, or (in most cases) both, out of 24397 total. That’s 16.5% overall—not a majority but certainly a significant fraction.
– Ben Beasley (FAS music)
On Thu, Jan 26, 2023, at 12:38 PM, Anne Mulhern wrote:
Hi!
I can tell that some packages are and some aren't, and that's as far as I can get.
Also, I'm trying to understand how rpmautospec would help me. I grasp that the idea is to avoid manually updating the changelog and release value. But what I don't understand is how that actually improves my workflow other than dispensing w/ some minor editing. Usually, I need to run rust2rpm also, and that will tend to lay down plenty of changes, which I have to evaluate anyway. Or there's some other special handling that the spec file requires on an update.
So, another question might be, who uses rpmautospec to their considerable benefit and how?
Thanks,
- mulhern
packaging mailing list -- packaging@lists.fedoraproject.org To unsubscribe send an email to packaging-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproject.... Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
Anne Mulhern amulhern@redhat.com writes:
Hi! I can tell that some packages are and some aren't, and that's as far as I can get.
Well, you can grab the spec tarball and have a grep to find exactly which packages are using them, which would give you the statistics you're looking for. That tarball is at https://src.fedoraproject.org/repo/rpm-specs-latest.tar.xz or you can use the fedora-getspecs script from https://pagure.io/fedora-misc-package-utilities/
Also, I'm trying to understand how rpmautospec would help me. I grasp that the idea is to avoid manually updating the changelog and release value. But what I don't understand is how that actually improves my workflow other than dispensing w/ some minor editing.
Maybe it does, maybe it doesn't. I don't find that it helps me much but I will say that it makes accepting pull requests a good bit easier since they are less likely to conflict. Honestly I'd just suggest that you try it out and see how it works. Even if you do commit and push, you can always undo it later.
- J<
On Thu, Jan 26, 2023 at 6:38 PM Anne Mulhern amulhern@redhat.com wrote:
Hi!
I can tell that some packages are and some aren't, and that's as far as I can get.
Also, I'm trying to understand how rpmautospec would help me. I grasp that the idea is to avoid manually updating the changelog and release value. But what I don't understand is how that actually improves my workflow other than dispensing w/ some minor editing.
In my experience, using rpmautospec reduces the number of manual steps that are required when updating a package. For example, when using rust2rpm, you no longer need to make sure to preserve old changelog entries, or keep Release number in sync, as they are now both filled automatically. You also no longer need to paste a description of the change in two places (i.e. the changelog entry *and* the commit message), but just once.
Doing this "minor editing" and manually adding changelog entries without rpmautospec might not be a problem if you're only maintaining a dozen packages, but it is a massive time sink when you're responsible for thousands of packages (like me).
Usually, I need to run rust2rpm also, and that will tend to lay down plenty of changes, which I have to evaluate anyway. Or there's some other special handling that the spec file requires on an update.
So, another question might be, who uses rpmautospec to their considerable benefit and how?
I use it (and rust2rpm has defaulted to it for a while) because even if it saves only a little bit of manual work, doing that manual work is error-prone, and the time you spend on it is quite significant - especially when you're maintaining lots of packages.
Fabio
packaging@lists.fedoraproject.org