Bug 2063778 - Please provide mercurial for EPEL-9
Summary: Please provide mercurial for EPEL-9
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: mercurial
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Mads Kiilerich
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 2088452 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-03-14 11:26 UTC by Stefan Bluhm
Modified: 2022-06-02 01:51 UTC (History)
7 users (show)

Fixed In Version: mercurial-6.1.2-3.el9
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-06-02 01:51:47 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Stefan Bluhm 2022-03-14 11:26:23 UTC
Hello,

Can you please provide mercurial for EPEL-9?

The rawhide build seems to work just fine:

$ fedpkg scratch-build --target epel9
Building mercurial-6.1-1.fc37 for epel9
Created task: 84158042
Task info: https://koji.fedoraproject.org/koji/taskinfo?taskID=84158042
Watching tasks (this may be safely interrupted)...
84158042 build (epel9, /rpms/mercurial.git:c7b18051f3f63755ff9c0d0e9ba1fc9d8a28d2d4): free
84158042 build (epel9, /rpms/mercurial.git:c7b18051f3f63755ff9c0d0e9ba1fc9d8a28d2d4): free -> open (buildvm-s390x-23.s390.fedoraproject.org)
  84158043 buildSRPMFromSCM (/rpms/mercurial.git:c7b18051f3f63755ff9c0d0e9ba1fc9d8a28d2d4): open (buildvm-x86-18.iad2.fedoraproject.org)
  84158058 buildArch (mercurial-6.1-1.el9.src.rpm, ppc64le): open (buildvm-ppc64le-09.iad2.fedoraproject.org)
  84158059 buildArch (mercurial-6.1-1.el9.src.rpm, s390x): open (buildvm-s390x-13.s390.fedoraproject.org)
  84158057 buildArch (mercurial-6.1-1.el9.src.rpm, aarch64): open (buildvm-a64-29.iad2.fedoraproject.org)
  84158060 buildArch (mercurial-6.1-1.el9.src.rpm, x86_64): open (buildvm-x86-18.iad2.fedoraproject.org)
  84158043 buildSRPMFromSCM (/rpms/mercurial.git:c7b18051f3f63755ff9c0d0e9ba1fc9d8a28d2d4): open (buildvm-x86-18.iad2.fedoraproject.org) -> closed
  0 free  5 open  1 done  0 failed
  84158059 buildArch (mercurial-6.1-1.el9.src.rpm, s390x): open (buildvm-s390x-13.s390.fedoraproject.org) -> closed
  0 free  4 open  2 done  0 failed
  84158060 buildArch (mercurial-6.1-1.el9.src.rpm, x86_64): open (buildvm-x86-18.iad2.fedoraproject.org) -> closed
  0 free  3 open  3 done  0 failed
84158042 build (epel9, /rpms/mercurial.git:c7b18051f3f63755ff9c0d0e9ba1fc9d8a28d2d4): open (buildvm-s390x-23.s390.fedoraproject.org) -> closed
  0 free  2 open  4 done  0 failed
  84158058 buildArch (mercurial-6.1-1.el9.src.rpm, ppc64le): open (buildvm-ppc64le-09.iad2.fedoraproject.org) -> closed
  0 free  1 open  5 done  0 failed
  84158057 buildArch (mercurial-6.1-1.el9.src.rpm, aarch64): open (buildvm-a64-29.iad2.fedoraproject.org) -> closed
  0 free  0 open  6 done  0 failed

84158042 build (epel9, /rpms/mercurial.git:c7b18051f3f63755ff9c0d0e9ba1fc9d8a28d2d4) completed successfully


Thank you very much,

Stefan

Comment 1 Mads Kiilerich 2022-03-14 11:33:23 UTC
I would assume that RHEL 9 & co already contains Mercurial?

https://docs.fedoraproject.org/en-US/epel/ says
EPEL packages are usually based on their Fedora counterparts and will never conflict with or replace packages in the base Enterprise Linux distributions.

I'm thus not sure it would be good or possible to "just" ship the fedora pacakge in EPEL.

Comment 2 Stefan Bluhm 2022-03-14 11:37:30 UTC
Yes, I agree not to include RHEL packages in EPEL as it is against the guidelines unless there is a modular exception.

I was not able to find Mercurial in RHEL9 Beta:

# dnf provides mercurial
Updating Subscription Management repositories.
Last metadata expiration check: 1:35:22 ago on Mon Mar 14 10:40:52 2022.
Error: No Matches found

Comment 3 Stefan Bluhm 2022-03-14 12:11:27 UTC
Closing as not required.
Blocked package 2063779 is available in CRB repo.

Comment 4 Mads Kiilerich 2022-05-19 13:53:53 UTC
*** Bug 2088452 has been marked as a duplicate of this bug. ***

Comment 5 Konstantin Pavlov 2022-05-19 14:02:01 UTC
RHEL9 does not contain mercurial package, as per both release notes: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html/package_manifest/repositories and per actual repositories search on a machine with those repositories enabled.

Please consider reopening this bug and actually providing mercurial package via EPEL 9.

Many thanks!

Comment 6 Mads Kiilerich 2022-05-19 14:47:46 UTC
Can someone confirm?

Stefan, you withdrew your request. Can you say more about why?

Comment 7 Stefan Bluhm 2022-05-19 14:58:05 UTC
@Mads Killerich,

I believe I closed it as I didn't require it anymore. I wanted it to build python-setuptools_scm which already is in the CRB repo as I found out later.

So I didn't check/follow up on its existance.

Comment 8 Stefan Bluhm 2022-05-19 15:01:47 UTC
There also does not seem to be a mercurial 9 branch:
https://git.centos.org/rpms/mercurial/branches?branchname=

This would be the source, right?

Comment 9 Mads Kiilerich 2022-05-19 17:16:21 UTC
I don't know. I'm not familiar with modern EPEL.

I spent some time reading up on EPEL packaging. It is apparently non-trivial ... or just not explicitly documented. It should apparently just be "fedpkg request-branch epel9" ... but that fails and talks about https://pagure.io tokens. Too many unknowns and lack of clear documentation.

I will be happy to co-maintain with a packager with EPEL experience.

Comment 10 Stefan Bluhm 2022-05-20 04:52:15 UTC
You are doing it right. Just that your credentials expired.
Set a token up at https://pagure.io/settings#nav-api-tab

Then you can put that key via
fedpkg set-pagure-token
(although I am not sure on this part and can't verify it on my setup as my tokens work).
you can also try to log in via
kinit username
But I think you only need that later on when building and submitting the package.

Comment 11 Mads Kiilerich 2022-05-20 07:25:35 UTC
My setup works just fine for fedora packaging - including kinit.

Yesterday, pagure.io failed.
And what is the role of pagure.io, compared to src.fedoraproject.org ?
What permissions do the token need ... and why?
That is not clearly documented.

Are you an EPEL packager? Will you comaintain?

Comment 12 Stefan Bluhm 2022-05-20 07:29:28 UTC
I don't really want to co-maintain as I already more packages than I can handle.
But you can add me if you like. So I can request the branch and also push to testing.
fas: sbluhm

Comment 13 Stefan Bluhm 2022-05-21 15:27:32 UTC
I just noticed that I am set as collaborator so I have requested the epel9 branch:
https://pagure.io/releng/fedora-scm-requests/issue/44521

not sure if collaborator is sufficient for that of if it needs to be admin or maintainer. If not, maybe you can copy the ticket or add me to one of those other roles.

Comment 14 Stefan Bluhm 2022-05-23 17:55:00 UTC
epel9 branch has been created.

Build now fails due to the rust changes, it seems. Lots of dependencies are now missing:

$ fedpkg build
Building mercurial-6.1.2-2.el9 for epel9-candidate
Created task: 87413861
Task info: https://koji.fedoraproject.org/koji/taskinfo?taskID=87413861
Watching tasks (this may be safely interrupted)...
87413861 build (epel9-candidate, /rpms/mercurial.git:739a392e82e4fc2453ce05ea2937fde25a8b8e46): free
87413861 build (epel9-candidate, /rpms/mercurial.git:739a392e82e4fc2453ce05ea2937fde25a8b8e46): free -> open (buildvm-s390x-20.s390.fedoraproject.org)
  87413877 buildSRPMFromSCM (/rpms/mercurial.git:739a392e82e4fc2453ce05ea2937fde25a8b8e46): open (buildvm-ppc64le-08.iad2.fedoraproject.org)
  87413902 buildArch (mercurial-6.1.2-2.el9.src.rpm, s390x): open (buildvm-s390x-33.s390.fedoraproject.org)
  87413900 buildArch (mercurial-6.1.2-2.el9.src.rpm, aarch64): open (buildvm-a64-20.iad2.fedoraproject.org)
  87413901 buildArch (mercurial-6.1.2-2.el9.src.rpm, ppc64le): open (buildvm-ppc64le-20.iad2.fedoraproject.org)
  87413903 buildArch (mercurial-6.1.2-2.el9.src.rpm, x86_64): open (buildvm-x86-20.iad2.fedoraproject.org)
  87413877 buildSRPMFromSCM (/rpms/mercurial.git:739a392e82e4fc2453ce05ea2937fde25a8b8e46): open (buildvm-ppc64le-08.iad2.fedoraproject.org) -> closed
  0 free  5 open  1 done  0 failed
87413861 build (epel9-candidate, /rpms/mercurial.git:739a392e82e4fc2453ce05ea2937fde25a8b8e46): open (buildvm-s390x-20.s390.fedoraproject.org) -> FAILED: BuildError: error building package (arch aarch64), mock exited with status 30; see root.log for more information
  0 free  4 open  1 done  1 failed
  87413902 buildArch (mercurial-6.1.2-2.el9.src.rpm, s390x): open (buildvm-s390x-33.s390.fedoraproject.org) -> FAILED: BuildError: error building package (arch s390x), mock exited with status 30; see root.log for more information
  0 free  3 open  1 done  2 failed
  87413900 buildArch (mercurial-6.1.2-2.el9.src.rpm, aarch64): open (buildvm-a64-20.iad2.fedoraproject.org) -> FAILED: BuildError: error building package (arch aarch64), mock exited with status 30; see root.log for more information
  0 free  2 open  1 done  3 failed
  87413901 buildArch (mercurial-6.1.2-2.el9.src.rpm, ppc64le): open (buildvm-ppc64le-20.iad2.fedoraproject.org) -> FAILED: BuildError: error building package (arch ppc64le), mock exited with status 30; see root.log for more information
  0 free  1 open  1 done  4 failed
  87413903 buildArch (mercurial-6.1.2-2.el9.src.rpm, x86_64): open (buildvm-x86-20.iad2.fedoraproject.org) -> FAILED: BuildError: error building package (arch x86_64), mock exited with status 30; see root.log for more information
  0 free  0 open  1 done  5 failed

87413861 build (epel9-candidate, /rpms/mercurial.git:739a392e82e4fc2453ce05ea2937fde25a8b8e46) failed



I will try to build and publish an earlier commit.

Comment 15 Stefan Bluhm 2022-05-24 06:11:36 UTC
Wasn't able to publish an earlier commit anymore without messing up the git history. So I have made some changes to the SPEC file to disable Rust.

Can you check this PR to see if this is in your interest?
https://src.fedoraproject.org/rpms/mercurial/pull-request/17

Comment 16 Fedora Update System 2022-05-24 11:54:14 UTC
FEDORA-EPEL-2022-e644087cc8 has been submitted as an update to Fedora EPEL 9. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-e644087cc8

Comment 17 Fedora Update System 2022-05-25 02:08:19 UTC
FEDORA-EPEL-2022-e644087cc8 has been pushed to the Fedora EPEL 9 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2022-e644087cc8

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 18 Mads Kiilerich 2022-05-25 10:56:17 UTC
Stefan, thanks for showing and doing the epel9 build. I realize it is simple when done right ;-)

Some user experience feedback that someone who really knows perhaps can use to make future me self-supported:

The big headline I was missing on most https://docs.fedoraproject.org/en-US/epel/ pages is that epel *really* is just like ordinary Fedora release branches, using exactly the same tools and process. 

This experience is confusing:
$ fedpkg request-branch epel9
Could not execute request_branch: The following error occurred while creating a new issue in Pagure: Invalid or expired token. Please visit https://pagure.io/settings#nav-api-tab to get or renew your API token.

The use of pagure.io (not under fp.o) for "something" is surprising for me.

It is not clear what the token will be used for.

It is very hard to find documentation of what permissions the token need. Now, when I know what to look for, I find https://docs.fedoraproject.org/en-US/package-maintainers/Package_Review_Process/ ... but it is still not very clear. At least, the error message should say what permission is needed for the token.

https://docs.fedoraproject.org/en-US/epel/fedora-package-in-epel/ links "standard procedure" to https://docs.fedoraproject.org/en-US/package-maintainers/Package_Maintenance_Guide/ ... but that doesn't mention request-branch at all. I guess https://docs.fedoraproject.org/en-US/package-maintainers/New_Package_Process_for_Existing_Contributors/ would be better.

https://docs.fedoraproject.org/en-US/epel/epel-packaging-examples/ is really confusing, showing up prominently, but not being clear that it (apparently) is a very rare special case that generally can be ignored.

Comment 19 Stefan Bluhm 2022-05-25 19:12:07 UTC
yeah, I got told once how to do it. I noted it down and am following the process.
For pagure, I just grant all access.
Every now and then a token expires somewhere and I somehow manage to refresh it all the time.

Comment 20 Fedora Update System 2022-06-02 01:51:47 UTC
FEDORA-EPEL-2022-e644087cc8 has been pushed to the Fedora EPEL 9 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.