https://bugzilla.redhat.com/show_bug.cgi?id=2445182
Bug ID: 2445182 Summary: Review Request: MooseFS - Distributed, scalable, fault tolerant file system Product: Fedora Version: rawhide Hardware: All OS: Linux Status: NEW Component: Package Review Severity: medium Assignee: nobody@fedoraproject.org Reporter: fedora@moosefs.com QA Contact: extras-qa@fedoraproject.org CC: package-review@lists.fedoraproject.org Target Milestone: --- Classification: Fedora
Spec URL: https://github.com/moosefs/moosefs/tree/875162b500b512179a77e88b073ffc1ec3f3... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.58.3-1.fc42.src.rpm
Description: MooseFS is an Open Source, easy to deploy and maintain, distributed, fault tolerant file system for POSIX compliant OSes. Fedora Account System Username: moosefs-dev
This is my first submission and I'm looking for a sponsor. I am part of the upstream development team.
This is the Koji build for this package: https://koji.fedoraproject.org/koji/taskinfo?taskID=143078224
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
Benson Muite benson_muite@emailplus.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |177841 (FE-NEEDSPONSOR) Assignee|nobody@fedoraproject.org |benson_muite@emailplus.org Flags| |fedora-review? CC| |benson_muite@emailplus.org
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=177841 [Bug 177841] Tracker: Review requests from new Fedora packagers who need a sponsor
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #1 from Benson Muite benson_muite@emailplus.org --- Spec url should be to the raw spec file, not a rendered directory listing.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
fedora@moosefs.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Comment|0 |updated
--- Comment #0 has been edited ---
Spec URL: https://github.com/moosefs/moosefs/blob/875162b500b512179a77e88b073ffc1ec3f3... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.58.3-1.fc42.src.rpm
Description: MooseFS is an Open Source, easy to deploy and maintain, distributed, fault tolerant file system for POSIX compliant OSes. Fedora Account System Username: moosefs-dev
This is my first submission and I'm looking for a sponsor. I am part of the upstream development team.
This is the Koji build for this package: https://koji.fedoraproject.org/koji/taskinfo?taskID=143078224
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #2 from fedora@moosefs.com --- (In reply to Benson Muite from comment #1)
Spec url should be to the raw spec file, not a rendered directory listing.
Thank you, I updated my initial post.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
Artur Frenszek-Iwicki fedora@svgames.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fedora@svgames.pl
--- Comment #3 from Artur Frenszek-Iwicki fedora@svgames.pl ---
Thank you, I updated my initial post.
That's still a bad link, as it goes to a syntax-highlighted HTML rendition of the spec. Please use "raw file" links.
# Turn off debug packages %global _enable_debug_package 0 %global debug_package %{nil}
Debuginfo packages are required, unless the information contained in them isn't very useful. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_debuginfo_packag...
Group: System Environment/Daemons BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
No longer used in Fedora. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_tags_and_section...
make %{?_smp_mflags}
You may want to use %make_build instead, which handles smp flags for you and enables verbose mode.
%install rm -rf $RPM_BUILD_ROOT
Don't. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_tags_and_section...
make install \ DESTDIR=$RPM_BUILD_ROOT
You may want to use %make_install instead, which handles DESTDIR for you.
%files master [...] %attr(755,root,root) %{_sbindir}/mfsmaster
You should probably use %{_bindir} here, since /sbin is now merged into /bin since Fedora 42. https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin Also, setting the file mode is most likely not needed. Executables get 0755 by default. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_file_permissions
# %%attr(755,root,root) %%{_sbindir}/mfsbdev - moved to EXTRA_FILES /sbin/mount.moosefs
This one file uses a literal path instead of the %{_bindir} macro.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #4 from fedora@moosefs.com --- (In reply to Artur Frenszek-Iwicki from comment #3)
Thank you, I updated my initial post.
That's still a bad link, as it goes to a syntax-highlighted HTML rendition of the spec. Please use "raw file" links.
OK, sorry, my mistake :)
# Turn off debug packages %global _enable_debug_package 0 %global debug_package %{nil}
Debuginfo packages are required, unless the information contained in them isn't very useful. https://docs.fedoraproject.org/en-US/packaging-guidelines/ #_debuginfo_packages
OK, I've removed the relevant lines.
Group: System Environment/Daemons BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
No longer used in Fedora. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_tags_and_section...
Gone.
make %{?_smp_mflags}
You may want to use %make_build instead, which handles smp flags for you and enables verbose mode.
OK
%install rm -rf $RPM_BUILD_ROOT
Don't. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_tags_and_section...
OK
make install \ DESTDIR=$RPM_BUILD_ROOT
You may want to use %make_install instead, which handles DESTDIR for you.
OK
%files master [...] %attr(755,root,root) %{_sbindir}/mfsmaster
You should probably use %{_bindir} here, since /sbin is now merged into /bin since Fedora 42. https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin
OK
Also, setting the file mode is most likely not needed. Executables get 0755 by default. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_file_permissions
It looks like not setting file modes doesn't work, at least according to lint:
moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsarchive 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsbdev 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfscopygoal 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsdiagtools 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfseattr 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsfacl 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsgetgoal 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsmount 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfspatadmin 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsquota 644 [... and so on]
So I'm leaving it there.
# %%attr(755,root,root) %%{_sbindir}/mfsbdev - moved to EXTRA_FILES /sbin/mount.moosefs
This one file uses a literal path instead of the %{_bindir} macro.
The "/sbin" was forced by configure. We handled that on configure level, now it can be overridden by a configure option and I'm using that option in Fedora spec, so I can use %{_bindir} here. But since this is a change in the source and we have a couple more changes in the pipeline, we will probably have to release MooseFS 4.58.4, so I can get the correct sources to build against. Should I close this request and open a new one later or just let it hang for now and upload new versions of everything when I have them ready (hopefully next week)?
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
Dominik 'Rathann' Mierzejewski dominik@greysector.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dominik@greysector.net
--- Comment #5 from Dominik 'Rathann' Mierzejewski dominik@greysector.net --- (In reply to fedora from comment #4) [...]
Also, setting the file mode is most likely not needed. Executables get 0755 by default. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_file_permissions
It looks like not setting file modes doesn't work, at least according to lint:
moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsarchive 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsbdev 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfscopygoal 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsdiagtools 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfseattr 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsfacl 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsgetgoal 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsmount 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfspatadmin 644 moosefs-client.x86_64: W: non-executable-in-bin /usr/bin/mfsquota 644 [... and so on]
So I'm leaving it there.
It works if you remove the %defattr stanza as well.
Should I close this request and open a new one later or just let it hang for now and upload new versions of everything when I have them ready (hopefully next week)?
Keep this open and hang on for now, there's no rush.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #6 from fedora@moosefs.com --- Updated info, for version 4.58.4:
Spec URL: https://raw.githubusercontent.com/moosefs/moosefs/11b915af2f7f1e128fbca15246... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.58.4-1.fc42.src.rpm Koji build: https://koji.fedoraproject.org/koji/taskinfo?taskID=143652279
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
fedora@moosefs.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Comment|0 |updated
--- Comment #0 has been edited ---
Edit:
New, corrected version of spec file for newer MooseFS release (4.58.4):
Updated info, for version 4.58.4:
Spec URL: https://raw.githubusercontent.com/moosefs/moosefs/11b915af2f7f1e128fbca15246... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.58.4-1.fc42.src.rpm Koji build: https://koji.fedoraproject.org/koji/taskinfo?taskID=143652279
************************************************************
Spec URL: https://github.com/moosefs/moosefs/blob/875162b500b512179a77e88b073ffc1ec3f3... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.58.3-1.fc42.src.rpm
Description: MooseFS is an Open Source, easy to deploy and maintain, distributed, fault tolerant file system for POSIX compliant OSes. Fedora Account System Username: moosefs-dev
This is my first submission and I'm looking for a sponsor. I am part of the upstream development team.
This is the Koji build for this package: https://koji.fedoraproject.org/koji/taskinfo?taskID=143078224
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #7 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/10257351 (failed)
Build log: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Please make sure the package builds successfully at least for Fedora Rawhide.
- If the build failed for unrelated reasons (e.g. temporary network unavailability), please ignore it. - If the build failed because of missing BuildRequires, please make sure they are listed in the "Depends On" field
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #8 from fedora@moosefs.com --- Spec URL: https://raw.githubusercontent.com/moosefs/moosefs/11b915af2f7f1e128fbca15246... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.58.4-1.fc42.src.rpm Koji build: https://koji.fedoraproject.org/koji/taskinfo?taskID=143652279
(For another try at Copr build, the last one was during some outage.)
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #9 from fedora@moosefs.com --- Hmm, I guess it doesn't work if links are identical. One more try:
[fedora-review-service-build]
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
Fedora Review Service fedora-review-bot@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |http://www.moosefs.com/
--- Comment #10 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/10288798 (succeeded)
Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Found issues:
- Unversioned so-files directly in %_libdir. Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_devel_packages - Using both %{buildroot} and $RPM_BUILD_ROOT Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_macros - License file licence.py is not marked as %license Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuideline... - Systemd service file(s) in moosefs-master, moosefs-metalogger, moosefs-chunkserver, moosefs-gui Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_scrip... - Documentation size is 1032472 bytes in 16 files. Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_documentation
Please know that there can be false-positives.
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #11 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/10288803 (succeeded)
Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Found issues:
- Unversioned so-files directly in %_libdir. Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_devel_packages - Using both %{buildroot} and $RPM_BUILD_ROOT Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_macros - License file licence.py is not marked as %license Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuideline... - Systemd service file(s) in moosefs-master, moosefs-metalogger, moosefs-chunkserver, moosefs-gui Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_scrip... - Documentation size is 1032472 bytes in 16 files. Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_documentation
Please know that there can be false-positives.
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #12 from Agata Kruszona-Zawadzka fedora@moosefs.com --- Another attempt at Copr build, with some errors (hopefully) fixed.
Spec URL: https://raw.githubusercontent.com/moosefs/moosefs/c87903f3bca1e6999d5ff75f35... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.58.4-1.fc42.src.rpm
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #13 from Artur Frenszek-Iwicki fedora@svgames.pl --- The "Group" tag is not used in Fedora and should be removed from all packages. https://docs.fedoraproject.org/en-US/packaging-guidelines/#_tags_and_section...
%package libmfsio-devel Requires: %{name}-libmfsio
This should be an archful, fully versioned dependency: "%{name}-libmfsio%{?_isa} = %{version}-%{release}". https://docs.fedoraproject.org/en-US/packaging-guidelines/#_requiring_base_p...
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #14 from Agata Kruszona-Zawadzka fedora@moosefs.com --- Thank you. One more try then :)
Spec URL: https://raw.githubusercontent.com/moosefs/moosefs/83142d515f6351208f068ea378... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.58.4-1.fc42.src.rpm
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #15 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/10304076 (succeeded)
Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Found issues:
- Unversioned so-files directly in %_libdir. Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_devel_packages - Using both %{buildroot} and $RPM_BUILD_ROOT Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_macros - License file licence.py is not marked as %license Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuideline... - Systemd service file(s) in moosefs-master, moosefs-metalogger, moosefs-chunkserver, moosefs-gui Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_scrip... - Documentation size is 1032472 bytes in 16 files. Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_documentation
Please know that there can be false-positives.
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #16 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/10304102 (succeeded)
Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Found issues:
- Unversioned so-files directly in %_libdir. Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_devel_packages - Using both %{buildroot} and $RPM_BUILD_ROOT Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_macros - License file licence.py is not marked as %license Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuideline... - Systemd service file(s) in moosefs-master, moosefs-metalogger, moosefs-chunkserver, moosefs-gui Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#_scrip... - Documentation size is 1032472 bytes in 16 files. Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_documentation
Please know that there can be false-positives.
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #17 from Benson Muite benson_muite@emailplus.org --- Consider using %autochangelog macro
Create a separate noarch package with NEWS, README and the GPL-2.0 license text and then have all the other packages require it.
Not blocking, but consider using primary, host or coordinator instead of master: https://www.acm.org/diversity-inclusion/words-matter https://blog.ongig.com/diversity-and-inclusion/master-slave-computer-term-bi...
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #18 from Agata Kruszona-Zawadzka fedora@moosefs.com --- OK on the docs package, it's done.
I'd rather not use %autochangelog, at least not until this spec is accepted/no more issues are found.
Master - this name was in MooseFS from its inception and the change would just confuse the users. We don't use slave anywhere. We have master leader and master follower in our Pro version :)
New spec and sources, with the additional docs package:
Spec URL: https://raw.githubusercontent.com/moosefs/moosefs/6176ae23170c5f728919d6d7d6... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.59.0-1.fc42.src.rpm
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #19 from Fedora Review Service fedora-review-bot@fedoraproject.org --- Copr build: https://copr.fedorainfracloud.org/coprs/build/10406171 (succeeded)
Review template: https://download.copr.fedorainfracloud.org/results/@fedora-review/fedora-rev...
Found issues:
- License file licence.py is not marked as %license Read more: https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuideline...
Please know that there can be false-positives.
--- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
If you want to trigger a new Copr build, add a comment containing new Spec and SRPM URLs or [fedora-review-service-build] string.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #20 from Agata Kruszona-Zawadzka fedora@moosefs.com --- Since the last spec posted was for an intermediate MooseFS version, not our latest release, I'm now posting spec and source links to our last released version, that is MooseFS 4.59.2. The content of the spec is the same, apart from MooseFS version.
I would be grateful to all the people that observed this thread and commented to let me know if they have any more issues with the spec. I would like to get to a point where the spec is acceptable, so I can start actively looking for a sponsor.
Spec URL: https://raw.githubusercontent.com/moosefs/moosefs/ac106b2ec8661ff00def725d04... SRPM URL: https://repository.moosefs.com/src/fedora/moosefs-4.59.2-1.fc42.src.rpm
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #21 from Artur Frenszek-Iwicki fedora@svgames.pl --- You have sub-packages depending on one another. These dependencies should *all* be versioned, e.g. "Requires: %{name}-cli = %{version}-%{release}" instead of just "Requires: %{name}-cli"; otherwise the user will be able to mix and match which versions they are using.
Similarly, while sub-packages are noarch, some are not. When depending on those, the dependency should be archful, e.g. "Requires: %{name}-libmfsio%{?_isa}" instead of just "Requires: %{name}-libmfsio"; otherwise it'll be possible for the user to mix e.g. an x86_64 client with an i686 library.
https://bugzilla.redhat.com/show_bug.cgi?id=2445182
--- Comment #22 from Agata Kruszona-Zawadzka fedora@moosefs.com --- libmfsio-devel depends on libmfsio and that dependency is arch'ed and versioned in the spec
client should depend on a specific version of libmfsio and that is an oversight, same with gui and cli
However, the last dependency we have is for the doc package, that was suggested here (we did not have it previously) and ALL modules are dependent from that one. What will happen, if the user wants to have two different modules (let's say a chunkserver and a client) installed on the same machine in different versions? This is allowed internally in MooseFS, our core components are compatible with older versions of clients, because remounting a client is ususally the biggest problem in any MooseFS instance. So scenarios with newer core components (master, chunkservers) and older clients, on the same machines, are common. Will the package manager allow to install the doc package in two different versions? If not, then we cannot add a dependency on version here.
package-review@lists.fedoraproject.org