Re: Releasing package updates in multiple Fedora releases

2023-06-28 Thread Sérgio Basto
Hi, 

A little late for the party , I decide publish my helper_scripts on a
github repo, maybe all this will be supersede by Packit 

https://github.com/sergiomb2/herlper_scripts

Usage :

fedpkg clone foo-package

cd foo-packge 

~/bin/update_from_bugzilla.sh id_bug stage_number 
 
echo "stage 0: rpmdev-bumpspec"
echo "stage 1: scratch-build"
echo "stage 2: rfpkg new-sources && fedpkg ci -c && git show"
echo "stage 3: fedpkg push && fedpkg build on rawhide"
echo "stage 4: build all branches"
echo "stage 5: bodhi updates all branches"


On Mon, 2023-06-19 at 13:58 +0200, Sandro wrote:
> On 19-06-2023 12:51, Miroslav Suchý wrote:
> > > Sounds like these tools are worth mentioning in the docs, seeing
> > > how 
> > > many people face the same challenge.
> > 
> > We (I am part of Packit team) plan to do more noise about it later.
> > Especially this feature - we have finished it in January and asked
> > few 
> > people to try it. We have done several rounds of fix-and-try-
> > again.  
> > Today, we have one outstanding issue "manually re-trigger event"
> > and I 
> > believe that once implemented, it will be ready for wide audience.
> > If 
> > you are brave and ready for bleeding edge, you can try it now.
> 
> I didn't realize Packit is still very new. So new, it's still warm,
> like 
> the blood dripping off its edge... ;)
> 
> I'll certainly try it out and provide feedback should I have any. 
> Thanks, Miro!
> 
> -- Sandro
> ___
> devel mailing list -- devel@lists.fedoraproject.org
> To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
> Do not reply to spam, report it:
> https://pagure.io/fedora-infrastructure/new_issue

-- 
Sérgio M. B.
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-21 Thread Adam Williamson
On Tue, 2023-06-20 at 21:01 -0600, Orion Poplawski wrote:
> 
> You're addition of git pull is a good thing.

It's based on unfortunate experience. :D Using ; not && (as some others
suggested) is bad, though, I'll have to change that (would save me some
panicked ctrl-c'ing). I'm just somehow used to using ; in handcrafted
loops so I do it automatically...
-- 
Adam Williamson (he/him/his)
Fedora QA
Fedora Chat: @adamwill:fedora.im | Mastodon: @ad...@fosstodon.org
https://www.happyassassin.net



___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-20 Thread Orion Poplawski

On 6/18/23 04:28, Adam Williamson wrote:

On Sun, 2023-06-18 at 09:16 +, Mattia Verga via devel wrote:

For the 99% of packages I maintain I usually perform the same workflow
when updating them:

1. Update spec and source in Rawhide
2. commit and push
3. fedpkg build
4. fedpkg switch-branch f*
5. git merge rawhide
6. push and fedpkg build

And repeat 4-5-6 for every f*/epel* branches where I want to push the
update.

This is quite boring and time wasting... is there a more efficient way
to use my packaging time? Do you think fedpkg can be enhanced to have a
single command which makes 4-5-6 to all specified branches?


I have this in my command history:

for i in f37 f38 rawhide; do fedpkg switch-branch $i; git pull; git merge 
rawhide; fedpkg push; fedpkg build --nowait; done


Similar:

In my .bashrc:

fpbr() { for rel in $*; do fedpkg switch-branch $rel; git merge rawhide 
&& git push && fedpkg build --nowait; done; }


You're addition of git pull is a good thing.

--
Orion Poplawski
he/him/his  - surely the least important thing about me
IT Systems Manager 720-772-5637
NWRA, Boulder/CoRA Office FAX: 303-415-9702
3380 Mitchell Lane   or...@nwra.com
Boulder, CO 80301 https://www.nwra.com/



smime.p7s
Description: S/MIME Cryptographic Signature
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Sandro

On 19-06-2023 12:51, Miroslav Suchý wrote:
Sounds like these tools are worth mentioning in the docs, seeing how 
many people face the same challenge.


We (I am part of Packit team) plan to do more noise about it later. 
Especially this feature - we have finished it in January and asked few 
people to try it. We have done several rounds of fix-and-try-again.  
Today, we have one outstanding issue "manually re-trigger event" and I 
believe that once implemented, it will be ready for wide audience. If 
you are brave and ready for bleeding edge, you can try it now.


I didn't realize Packit is still very new. So new, it's still warm, like 
the blood dripping off its edge... ;)


I'll certainly try it out and provide feedback should I have any. 
Thanks, Miro!


-- Sandro
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Ankur Sinha
On Mon, Jun 19, 2023 13:02:45 +0200, Vít Ondruch wrote:
> 
> Dne 19. 06. 23 v 11:55 Ankur Sinha napsal(a):
> 
> > 
> > We're discussing a different topic now.
> 
> 
> Sorry but we don't. The thread started with: "For the 99% of packages I
> maintain I usually perform the same workflow
> when updating them". I don't see that percentage could be in line with the
> update policy.
> 

It really depends on what these packages are (and had I assumed that was
hyperbole anyway). It sure wouldn't apply to 99% of my (or the
neuro-sig) packages, but would to quite a few.

To re-iterate: everyone should remember to check what impact their
package builds/updates have on other packages before building/pushing
(even for rawhide).

> > The thread was "these steps are
> > repetitive, how do folks automate them", and we're now discussing
> > "maintainers should remember to check the impact of update before
> > pushing them".
> 
> 
> Being maintainer of ~200 packages, I certainly don't suffer the
> repetitiveness, because there is rarely need to update the stable releases,
> following the update policy.

Again, it really depends on your packages. You maintain lots of core
libraries where API/ABI bumps etc. do not/should not be pushed to stable
releases. For the neuro-sig, we do have quite a few python packages that
have frequent minor/patch releases and we do push these as updates to
stable branches also after doing impact checks. So, I do use my script
for these.

-- 
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) | 
https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London


signature.asc
Description: PGP signature
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Vít Ondruch


Dne 19. 06. 23 v 11:55 Ankur Sinha napsal(a):

On Mon, Jun 19, 2023 11:22:35 +0200, Vít Ondruch wrote:

Right, not pushing to all branches is in line with official guidelines:

https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/#stable-releases

It's more nuanced than "don't push updates to all branches" though:

".. we should avoid major updates of packages within a stable
release. Updates should aim to fix bugs, and not introduce features,
particularly when those features would materially affect the user or
developer experience. The update rate for any given release should drop
off over time, approaching zero near release end-of-life; since updates
are primarily bugfixes, fewer and fewer should be needed over time."

So minor/patch version updates, especially for things like Python
packages that have frequent minor/patch releases is perfectly fine.


Especially I don't like my packages being FTBFS due to other packagers
pushing their updates everywhere. If there was at least included
mass-prebuild step in the initial list to ensure there is no breakage in
dependent packages.

This is part of the "vetting the update before pushing" step. We have
tools that package maintainers can/should use to see what packages
depend on a particular one before updating it (fedrq is one I believe,
but folks have their own dnf based scripts/commands).

I've also filed an RFE to the-new-hotness to add dependency information
to the "new package version is available" bug report some time ago,
which would help ensure maintainers are aware of the update's impact:

https://github.com/fedora-infra/the-new-hotness/issues/545

We're discussing a different topic now.



Sorry but we don't. The thread started with: "For the 99% of packages I 
maintain I usually perform the same workflow
when updating them". I don't see that percentage could be in line with 
the update policy.




The thread was "these steps are
repetitive, how do folks automate them", and we're now discussing
"maintainers should remember to check the impact of update before
pushing them".



Being maintainer of ~200 packages, I certainly don't suffer the 
repetitiveness, because there is rarely need to update the stable 
releases, following the update policy.



Vít



OpenPGP_signature
Description: OpenPGP digital signature
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Miroslav Suchý

Dne 19. 06. 23 v 11:30 Sandro napsal(a):

2) Even better is Packit

https://packit.dev/

   You have many ways to use it. My favorite way is to use pull-from-upstream

https://packit.dev/posts/pull-from-upstream/

   You just make sure you have record in https://release-monitoring.org/ and then put .packit.yaml in Fedora's 
dist-git. And when upstream has a new release you will receive a pull request to src.fedoraproject.org for all 
configure branches. And when it merges it (can) build in Koji and submit Bodhi update for you.


   With Packit you can use full automation or only some steps. And combine it as you like it. If you do not like 
triggereing by release monitoring, you can initiate it from command line. It is up to you.


Sounds like these tools are worth mentioning in the docs, seeing how many 
people face the same challenge.


We (I am part of Packit team) plan to do more noise about it later. Especially this feature - we have finished it in 
January and asked few people to try it. We have done several rounds of fix-and-try-again.  Today, we have one 
outstanding issue "manually re-trigger event" and I believe that once implemented, it will be ready for wide audience. 
If you are brave and ready for bleeding edge, you can try it now.


--
Miroslav Suchy, RHCA
Red Hat, Manager, Packit and CPT, #brno, #fedora-buildsys
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Ankur Sinha
On Mon, Jun 19, 2023 08:28:23 +0200, Vitaly Zaitsev via devel wrote:
> On 18/06/2023 17:42, Ankur Sinha wrote:
> > I threw all the commands into a script with some optional arguments:
> 
> Maybe this script can be added to fedora-packager?

Sure, if folks find it useful enough. In the meantime, I added bits to
run `fedrq` before each branch is worked upon to inform the user what
packages would be affected:

https://github.com/sanjayankur31/100_dotfiles/blob/main/bin/fedpkg-sync-build-all-branches.sh#L30

-- 
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) | 
https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London


signature.asc
Description: PGP signature
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Ankur Sinha
On Mon, Jun 19, 2023 11:22:35 +0200, Vít Ondruch wrote:
> Right, not pushing to all branches is in line with official guidelines:
> 
> https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/#stable-releases

It's more nuanced than "don't push updates to all branches" though:

".. we should avoid major updates of packages within a stable
release. Updates should aim to fix bugs, and not introduce features,
particularly when those features would materially affect the user or
developer experience. The update rate for any given release should drop
off over time, approaching zero near release end-of-life; since updates
are primarily bugfixes, fewer and fewer should be needed over time."

So minor/patch version updates, especially for things like Python
packages that have frequent minor/patch releases is perfectly fine.

> Especially I don't like my packages being FTBFS due to other packagers
> pushing their updates everywhere. If there was at least included
> mass-prebuild step in the initial list to ensure there is no breakage in
> dependent packages.

This is part of the "vetting the update before pushing" step. We have
tools that package maintainers can/should use to see what packages
depend on a particular one before updating it (fedrq is one I believe,
but folks have their own dnf based scripts/commands).

I've also filed an RFE to the-new-hotness to add dependency information
to the "new package version is available" bug report some time ago,
which would help ensure maintainers are aware of the update's impact:

https://github.com/fedora-infra/the-new-hotness/issues/545

We're discussing a different topic now. The thread was "these steps are
repetitive, how do folks automate them", and we're now discussing
"maintainers should remember to check the impact of update before
pushing them".

-- 
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) | 
https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London


signature.asc
Description: PGP signature
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Sandro

On 19-06-2023 11:04, Miroslav Suchý wrote:

Dne 18. 06. 23 v 11:16 Mattia Verga via devel napsal(a):

This is quite boring and time wasting... is there a more efficient way
to use my packaging time? Do you think fedpkg can be enhanced to have a
single command which makes 4-5-6 to all specified branches?


I know several ways:

1) Tito

   https://github.com/rpm-software-management/tito

   This requires upstream modification.  Namely .tito/releasers.conf

https://github.com/rpm-software-management/tito/blob/master/.tito/releasers.conf

   Then you can (e.g. in the Tito git repo itself) run:

   tito release fedora

   or

   tito release copr

   and it will build the package in Fedora's Koji for all configured 
versions. Or in Copr. As you configure it.


2) Even better is Packit

   https://packit.dev/

   You have many ways to use it. My favorite way is to use 
pull-from-upstream


   https://packit.dev/posts/pull-from-upstream/

   You just make sure you have record in https://release-monitoring.org/ 
and then put .packit.yaml in Fedora's dist-git. And when upstream has a 
new release you will receive a pull request to src.fedoraproject.org for 
all configure branches. And when it merges it (can) build in Koji and 
submit Bodhi update for you.


   With Packit you can use full automation or only some steps. And 
combine it as you like it. If you do not like triggereing by release 
monitoring, you can initiate it from command line. It is up to you.


Sounds like these tools are worth mentioning in the docs, seeing how 
many people face the same challenge.


-- Sandro
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Ankur Sinha
On Mon, Jun 19, 2023 11:04:16 +0200, Miroslav Suchý wrote:
> 
> 2) Even better is Packit
> 
>   https://packit.dev/
> 
>   You have many ways to use it. My favorite way is to use pull-from-upstream
> 
>   https://packit.dev/posts/pull-from-upstream/
> 
>   You just make sure you have record in https://release-monitoring.org/ and
> then put .packit.yaml in Fedora's dist-git. And when upstream has a new
> release you will receive a pull request to src.fedoraproject.org for all
> configure branches. And when it merges it (can) build in Koji and submit
> Bodhi update for you.
> 
>   With Packit you can use full automation or only some steps. And combine it
> as you like it. If you do not like triggereing by release monitoring, you
> can initiate it from command line. It is up to you.
> 

This is awesome! I've been meaning to try Packit for a while now. Will
try it asap.

-- 
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) | 
https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London


signature.asc
Description: PGP signature
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Vít Ondruch

Right, not pushing to all branches is in line with official guidelines:

https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/#stable-releases

Especially I don't like my packages being FTBFS due to other packagers 
pushing their updates everywhere. If there was at least included 
mass-prebuild step in the initial list to ensure there is no breakage in 
dependent packages.



Vít


Dne 19. 06. 23 v 9:22 Richard W.M. Jones napsal(a):

On Sun, Jun 18, 2023 at 09:16:28AM +, Mattia Verga via devel wrote:

For the 99% of packages I maintain I usually perform the same workflow
when updating them:

1. Update spec and source in Rawhide
2. commit and push
3. fedpkg build
4. fedpkg switch-branch f*
5. git merge rawhide
6. push and fedpkg build

And repeat 4-5-6 for every f*/epel* branches where I want to push the
update.

This is quite boring and time wasting... is there a more efficient way
to use my packaging time? Do you think fedpkg can be enhanced to have a
single command which makes 4-5-6 to all specified branches?

So one alternative is *not* to push the change to all branches.

Unless it's really necessary, such as fixing an essential bug, I tend
to leave older Fedora branches on a stable release, to reduce churn
for users.  eg:

$ cd fedora/libnbd
$ for f in f* rawhide ; do (cd $f && fedpkg verrel); done
Using libnbd.spec
libnbd-1.0.2-1.fc29
Using libnbd.spec
libnbd-1.2.2-1.fc30
Using libnbd.spec
libnbd-1.4.1-1.fc31
Using libnbd.spec
libnbd-1.6.2-1.fc32
Using libnbd.spec
libnbd-1.6.5-1.fc33
Using libnbd.spec
libnbd-1.8.6-1.fc34
Using libnbd.spec
libnbd-1.10.5-1.fc35
Using libnbd.spec
libnbd-1.12.7-1.fc36
Using libnbd.spec
libnbd-1.14.2-1.fc37
Using libnbd.spec
libnbd-1.16.1-1.fc38
Using libnbd.spec
libnbd-1.16.1-2.fc39

(Also note 'fedpkg clone -B' option to use a separate subdirectory for
each branch, much more intuitive IMHO.)

Rich.



OpenPGP_signature
Description: OpenPGP digital signature
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Ankur Sinha
On Mon, Jun 19, 2023 08:46:47 -, Michael J Gruber wrote:
> > On Sun, Jun 18, 2023 at 09:16:28AM +, Mattia Verga via devel wrote:
> > 
> > So one alternative is *not* to push the change to all branches.
> > 
> > Unless it's really necessary, such as fixing an essential bug, I tend
> > to leave older Fedora branches on a stable release, to reduce churn
> 
> Exactly. Blindly pushing to all active releases is never a good idea.
> Now, I'm not saying people here do that, but those shortcuts make it
> too easy to do it in a rash ...
> 
> In particular: Most proposals do it in the wrong order (old to new)
> and some without error catching. You may end up with newer builds in
> older releases - without an update yet, granted, but still.


I think folks here on the list understand that each update needs to be
vetted. Once it has been vetted and we know it can go to rawhide + other
releases, it's nice to be able to do it quickly and move on to other
packages. So shortcuts + automation is always welcome in cases where we
know it's doing the right thing.

-- 
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) | 
https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London


signature.asc
Description: PGP signature
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Richard W.M. Jones
On Mon, Jun 19, 2023 at 08:46:47AM -, Michael J Gruber wrote:
> > On Sun, Jun 18, 2023 at 09:16:28AM +, Mattia Verga via devel wrote:
> > (Also note 'fedpkg clone -B' option to use a separate subdirectory for
> > each branch, much more intuitive IMHO.)
>
> That creates a bunch of unrelated git repos. Maybe we should teach
> fedpkg to use current git's method for that, which is
> worktrees. That way you share not only the object store ("one fetch
> rules them all") but also config such as remote definitions (for
> forks) etc. The main worktree could be a main/rawhide checkout.

I actually thought it worked like this but I checked now and you're
right that it is creating multiple git repos.  In practice it's not a
huge problem, but worktrees would be better.

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
Fedora Windows cross-compiler. Compile Windows programs, test, and
build Windows installers. Over 100 libraries supported.
http://fedoraproject.org/wiki/MinGW
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Miroslav Suchý

Dne 18. 06. 23 v 11:16 Mattia Verga via devel napsal(a):

This is quite boring and time wasting... is there a more efficient way
to use my packaging time? Do you think fedpkg can be enhanced to have a
single command which makes 4-5-6 to all specified branches?


I know several ways:

1) Tito

  https://github.com/rpm-software-management/tito

  This requires upstream modification.  Namely .tito/releasers.conf

https://github.com/rpm-software-management/tito/blob/master/.tito/releasers.conf

  Then you can (e.g. in the Tito git repo itself) run:

  tito release fedora

  or

  tito release copr

  and it will build the package in Fedora's Koji for all configured versions. 
Or in Copr. As you configure it.

2) Even better is Packit

  https://packit.dev/

  You have many ways to use it. My favorite way is to use pull-from-upstream

  https://packit.dev/posts/pull-from-upstream/

  You just make sure you have record in https://release-monitoring.org/ and then put .packit.yaml in Fedora's dist-git. 
And when upstream has a new release you will receive a pull request to src.fedoraproject.org for all configure branches. 
And when it merges it (can) build in Koji and submit Bodhi update for you.


  With Packit you can use full automation or only some steps. And combine it as you like it. If you do not like 
triggereing by release monitoring, you can initiate it from command line. It is up to you.


Miroslav


--
Miroslav Suchy, RHCA
Red Hat, Manager, Packit and CPT, #brno, #fedora-buildsys
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Michael J Gruber
> On Sun, Jun 18, 2023 at 09:16:28AM +, Mattia Verga via devel wrote:
> 
> So one alternative is *not* to push the change to all branches.
> 
> Unless it's really necessary, such as fixing an essential bug, I tend
> to leave older Fedora branches on a stable release, to reduce churn

Exactly. Blindly pushing to all active releases is never a good idea. Now, I'm 
not saying people here do that, but those shortcuts make it too easy to do it 
in a rash ...

In particular: Most proposals do it in the wrong order (old to new) and some 
without error catching. You may end up with newer builds in older releases - 
without an update yet, granted, but still.

> ...
> 
> (Also note 'fedpkg clone -B' option to use a separate subdirectory for
> each branch, much more intuitive IMHO.)

That creates a bunch of unrelated git repos. Maybe we should teach fedpkg to 
use current git's method for that, which is worktrees. That way you share not 
only the object store ("one fetch rules them all") but also config such as 
remote definitions (for forks) etc. The main worktree could be a main/rawhide 
checkout.

Michael
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Richard W.M. Jones
On Sun, Jun 18, 2023 at 09:16:28AM +, Mattia Verga via devel wrote:
> For the 99% of packages I maintain I usually perform the same workflow 
> when updating them:
> 
> 1. Update spec and source in Rawhide
> 2. commit and push
> 3. fedpkg build
> 4. fedpkg switch-branch f*
> 5. git merge rawhide
> 6. push and fedpkg build
> 
> And repeat 4-5-6 for every f*/epel* branches where I want to push the 
> update.
> 
> This is quite boring and time wasting... is there a more efficient way 
> to use my packaging time? Do you think fedpkg can be enhanced to have a 
> single command which makes 4-5-6 to all specified branches?

So one alternative is *not* to push the change to all branches.

Unless it's really necessary, such as fixing an essential bug, I tend
to leave older Fedora branches on a stable release, to reduce churn
for users.  eg:

$ cd fedora/libnbd
$ for f in f* rawhide ; do (cd $f && fedpkg verrel); done
Using libnbd.spec
libnbd-1.0.2-1.fc29
Using libnbd.spec
libnbd-1.2.2-1.fc30
Using libnbd.spec
libnbd-1.4.1-1.fc31
Using libnbd.spec
libnbd-1.6.2-1.fc32
Using libnbd.spec
libnbd-1.6.5-1.fc33
Using libnbd.spec
libnbd-1.8.6-1.fc34
Using libnbd.spec
libnbd-1.10.5-1.fc35
Using libnbd.spec
libnbd-1.12.7-1.fc36
Using libnbd.spec
libnbd-1.14.2-1.fc37
Using libnbd.spec
libnbd-1.16.1-1.fc38
Using libnbd.spec
libnbd-1.16.1-2.fc39

(Also note 'fedpkg clone -B' option to use a separate subdirectory for
each branch, much more intuitive IMHO.)

Rich.

-- 
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
nbdkit - Flexible, fast NBD server with plugins
https://gitlab.com/nbdkit/nbdkit
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Vitaly Zaitsev via devel

On 19/06/2023 08:36, Mattia Verga via devel wrote:

I only need to find how to pass branch names to the alias, instead of
hardcoding them. From a quick search I need to create a function in
.bashrc rather than an alias.


Add to ~/.bashrc:

function fpr {
for i in f$(rpm -E %fedora) f$(($(rpm -E %fedora) - 1)) rawhide; do
fedpkg switch-branch $i
if [[ "$i" != "rawhide" ]]; then
git merge rawhide
fi
fedpkg push
fedpkg build --nowait
done
}

Usage:

cd ~/foo-bar
fpr

--
Sincerely,
  Vitaly Zaitsev (vit...@easycoding.org)
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Mattia Verga via devel
Il 19/06/23 08:26, Vitaly Zaitsev via devel ha scritto:
> On 18/06/2023 14:51, Sandro wrote:
>> Aren't you missing the 'git push' (or 'fedpkg push')? IIRC, your 'fpb'
>> alias would fail since no changes have been pushed to dist-git for koji
>> to base a build on.
> Good catch. Thanks:
>
> alias fpm="fedpkg switch-branch f38 && git merge rawhide && fedpkg
> switch-branch f37 && git merge rawhide && fedpkg switch-branch rawhide
> && git push"
>
> --
> Sincerely,
> Vitaly Zaitsev (vit...@easycoding.org)

Nice, thanks.

I only need to find how to pass branch names to the alias, instead of 
hardcoding them. From a quick search I need to create a function in 
.bashrc rather than an alias.

Mattia

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Vitaly Zaitsev via devel

On 18/06/2023 17:42, Ankur Sinha wrote:

I threw all the commands into a script with some optional arguments:


Maybe this script can be added to fedora-packager?

--
Sincerely,
  Vitaly Zaitsev (vit...@easycoding.org)
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-19 Thread Vitaly Zaitsev via devel

On 18/06/2023 14:51, Sandro wrote:
Aren't you missing the 'git push' (or 'fedpkg push')? IIRC, your 'fpb' 
alias would fail since no changes have been pushed to dist-git for koji 
to base a build on.


Good catch. Thanks:

alias fpm="fedpkg switch-branch f38 && git merge rawhide && fedpkg 
switch-branch f37 && git merge rawhide && fedpkg switch-branch rawhide 
&& git push"


--
Sincerely,
  Vitaly Zaitsev (vit...@easycoding.org)
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-18 Thread Elliott Sales de Andrade
On Sun, Jun 18, 2023 at 5:17 AM Mattia Verga via devel
 wrote:
>
> For the 99% of packages I maintain I usually perform the same workflow
> when updating them:
>
> 1. Update spec and source in Rawhide
> 2. commit and push
> 3. fedpkg build
> 4. fedpkg switch-branch f*
> 5. git merge rawhide
> 6. push and fedpkg build
>
> And repeat 4-5-6 for every f*/epel* branches where I want to push the
> update.
>

With fbrnch, you can run `fbrnch parallel --all-fedora`, which will do
steps 2.5 (i.e., the push part) through 6 for all Fedora branches (in
parallel), and wait for all builds to finish, then produce updates for
all of them except rawhide.

> This is quite boring and time wasting... is there a more efficient way
> to use my packaging time? Do you think fedpkg can be enhanced to have a
> single command which makes 4-5-6 to all specified branches?
>
> Mattia
>
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-18 Thread Ankur Sinha
On Sun, Jun 18, 2023 14:51:01 +0200, Sandro wrote:
> On 18-06-2023 14:16, Vitaly Zaitsev via devel wrote:
> > On 18/06/2023 11:16, Mattia Verga via devel wrote:
> > > This is quite boring and time wasting... is there a more efficient way
> > > to use my packaging time? Do you think fedpkg can be enhanced to have a
> > > single command which makes 4-5-6 to all specified branches?

I threw all the commands into a script with some optional arguments:

https://github.com/sanjayankur31/100_dotfiles/blob/main/bin/fedpkg-sync-build-all-branches.sh

I did think that a fedpkg subcommand would would be very useful, but I
haven't found the cycles to look into it.

-- 
Thanks,
Regards,
Ankur Sinha "FranciscoD" (He / Him / His) | 
https://fedoraproject.org/wiki/User:Ankursinha
Time zone: Europe/London


signature.asc
Description: PGP signature
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-18 Thread Sandro

On 18-06-2023 14:16, Vitaly Zaitsev via devel wrote:

On 18/06/2023 11:16, Mattia Verga via devel wrote:

This is quite boring and time wasting... is there a more efficient way
to use my packaging time? Do you think fedpkg can be enhanced to have a
single command which makes 4-5-6 to all specified branches?


Add to your ~/.bashrc the following:

alias fpm="fedpkg switch-branch f38 && git merge rawhide && fedpkg 
switch-branch f37 && git merge rawhide && fedpkg switch-branch rawhide"
alias fpb="fedpkg switch-branch rawhide && fedpkg build --nowait && 
fedpkg switch-branch f38 && fedpkg build --nowait && fedpkg 
switch-branch f37 && fedpkg build --nowait && fedpkg switch-branch rawhide"


Aren't you missing the 'git push' (or 'fedpkg push')? IIRC, your 'fpb' 
alias would fail since no changes have been pushed to dist-git for koji 
to base a build on.



Usage:
cd ~/foo-bar
fpm
fpb

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-18 Thread Vitaly Zaitsev via devel

On 18/06/2023 11:16, Mattia Verga via devel wrote:

This is quite boring and time wasting... is there a more efficient way
to use my packaging time? Do you think fedpkg can be enhanced to have a
single command which makes 4-5-6 to all specified branches?


Add to your ~/.bashrc the following:

alias fpm="fedpkg switch-branch f38 && git merge rawhide && fedpkg 
switch-branch f37 && git merge rawhide && fedpkg switch-branch rawhide"
alias fpb="fedpkg switch-branch rawhide && fedpkg build --nowait && 
fedpkg switch-branch f38 && fedpkg build --nowait && fedpkg 
switch-branch f37 && fedpkg build --nowait && fedpkg switch-branch rawhide"


Usage:
cd ~/foo-bar
fpm
fpb

--
Sincerely,
  Vitaly Zaitsev (vit...@easycoding.org)
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-18 Thread Adam Williamson
On Sun, 2023-06-18 at 09:16 +, Mattia Verga via devel wrote:
> For the 99% of packages I maintain I usually perform the same workflow 
> when updating them:
> 
> 1. Update spec and source in Rawhide
> 2. commit and push
> 3. fedpkg build
> 4. fedpkg switch-branch f*
> 5. git merge rawhide
> 6. push and fedpkg build
> 
> And repeat 4-5-6 for every f*/epel* branches where I want to push the 
> update.
> 
> This is quite boring and time wasting... is there a more efficient way 
> to use my packaging time? Do you think fedpkg can be enhanced to have a 
> single command which makes 4-5-6 to all specified branches?

I have this in my command history:

for i in f37 f38 rawhide; do fedpkg switch-branch $i; git pull; git merge 
rawhide; fedpkg push; fedpkg build --nowait; done
-- 
Adam Williamson (he/him/his)
Fedora QA
Fedora Chat: @adamwill:fedora.im | Mastodon: @ad...@fosstodon.org
https://www.happyassassin.net



___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Re: Releasing package updates in multiple Fedora releases

2023-06-18 Thread Sandro

On 18-06-2023 11:16, Mattia Verga via devel wrote:

And repeat 4-5-6 for every f*/epel* branches where I want to push the
update.


That drill sounds familiar. ;)

If you look at he output of 'fedpkg build --help', there seems to be an 
option to submit koji builds for multiple targets at once.


I think I may have tinkered with it once. But I didn't get it to work 
and fell back to looping through all branches manually. However, if that 
works, it would at least simplify the build step and updates could be 
submitted in Bodhi.


Other than that, there's only scripting and/or submitting an RFE for fedpkg.

-- Sandro
___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue


Releasing package updates in multiple Fedora releases

2023-06-18 Thread Mattia Verga via devel
For the 99% of packages I maintain I usually perform the same workflow 
when updating them:

1. Update spec and source in Rawhide
2. commit and push
3. fedpkg build
4. fedpkg switch-branch f*
5. git merge rawhide
6. push and fedpkg build

And repeat 4-5-6 for every f*/epel* branches where I want to push the 
update.

This is quite boring and time wasting... is there a more efficient way 
to use my packaging time? Do you think fedpkg can be enhanced to have a 
single command which makes 4-5-6 to all specified branches?

Mattia

___
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@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/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue