https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Bug ID: 1257410 Summary: Review Request: abcMIDI - ABC to/from MIDI conversion utilities Product: Fedora Version: rawhide Component: Package Review Severity: medium Priority: medium Assignee: nobody@fedoraproject.org Reporter: i@cicku.me QA Contact: extras-qa@fedoraproject.org CC: package-review@lists.fedoraproject.org
Spec URL: http://cicku.me/abcMIDI.spec SRPM URL: http://cicku.me/abcMIDI-2015.08.25-1.fc24.src.rpm Description: AbcMIDI is a set contains multiple converter and manipulation programs for ABC music notation and MIDI files. These programs were developed by James Allwright in the early 1990s and has been supported by Seymour Shlien since 2003. The program contains many features, such as expansion of guitar chords, drum accompaniment, and support for microtones. Fedora Account System Username: cicku
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Christopher Meng i@cicku.me changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |code@oleastre.be
--- Comment #1 from Christopher Meng i@cicku.me --- *** Bug 715127 has been marked as a duplicate of this bug. ***
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #2 from Olivier Samyn code@oleastre.be --- For info, I lost interest in trying to become a package maintainer, but since then I maintained a copr project trying to track the abcMIDI evolution.
Here is the copr project: https://copr.fedoraproject.org/coprs/oleastre/abcMIDI/
And my spec file, derived from the old one that existed before the package got orphaned:
https://oleastre.be/git/?p=fedora-packages.git;a=blob_plain;f=abcMIDI/abcMID...
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Lyude thatslyude@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |thatslyude@gmail.com
--- Comment #3 from Lyude thatslyude@gmail.com --- I've done manual review on all of the parts which needed it, cheers!
Package Review ==============
Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed
Issues: =======
None!
===== MUST items =====
C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs.
Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "GPL (v2 or later)", "Unknown or generated". 20 files have unknown license. Detailed output of licensecheck in /home/lyudess/Projects/abcMIDI-rpm/1257410-abcMIDI/licensecheck.txt [x]: %build honors applicable compiler flags or justifies otherwise. [x]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [x]: Sources contain only permissible code or content. [-]: Package contains desktop file if it is a GUI application. [-]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: Package consistently uses macros (instead of hard-coded directory names).
If there is no preference for the case used in the name, you should use the name "abcmidi" as opposed to "abcMIDI". If it is usually referred to as abcMIDI, then consider this a pass. [?]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [x]: Package is not known to require an ExcludeArch tag. [-]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 501760 bytes in 7 files. [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %license. [x]: Package requires other packages for directories it uses. [x]: Package must own all directories that it creates. [x]: Package does not own files or directories owned by other packages. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Dist tag is present. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Packages must not store files under /srv, /opt or /usr/local
===== SHOULD items =====
Generic: [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [x]: Final provides and requires are sane (see attachments). [x]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [-]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: Package should compile and build into binary rpms on all supported architectures.
This is an old program, so failing this one shouldn't be a blocker [!]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: SourceX is a working URL. [x]: Spec use %global instead of %define unless justified.
===== EXTRA items =====
Generic: [x]: Rpmlint is run on debuginfo package(s). Note: No rpmlint messages. [!]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Package should not use obsolete m4 macros [x]: Spec file according to URL is the same as in SRPM.
Rpmlint ------- Checking: abcMIDI-2015.08.25-1.fc22.x86_64.rpm abcMIDI-2015.08.25-1.fc22.src.rpm abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/AUTHORS abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/abcguide.txt abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/readme.txt abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/history.txt abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/yapshelp.txt abcMIDI.src: W: strange-permission abcMIDI-2015-08-25.zip 640 2 packages and 0 specfiles checked; 0 errors, 8 warnings.
Rpmlint (debuginfo) ------------------- Checking: abcMIDI-debuginfo-2015.08.25-1.fc22.x86_64.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings.
These files need to be formatted with Unix line endings, not DOS
Rpmlint (installed packages) ---------------------------- abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/AUTHORS abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/abcguide.txt abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/readme.txt abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/history.txt abcMIDI.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/abcMIDI/yapshelp.txt 2 packages and 0 specfiles checked; 0 errors, 6 warnings.
Requires -------- abcMIDI (rpmlib, GLIBC filtered): libc.so.6()(64bit) libm.so.6()(64bit) rtld(GNU_HASH)
Provides -------- abcMIDI: abcMIDI abcMIDI(x86-64) abcmidi abcmidi(x86-64)
Source checksums ---------------- http://ifdo.pugmarks.com/~seymour/runabc/abcMIDI-2015-08-25.zip : CHECKSUM(SHA256) this package : 614d8e7bac0d9092e08b69ec79066fe202e0dd5dd79a2d99b16e88dcda9f7c31 CHECKSUM(SHA256) upstream package : 614d8e7bac0d9092e08b69ec79066fe202e0dd5dd79a2d99b16e88dcda9f7c31
Generated by fedora-review 0.6.0 (3c5c9d7) last change: 2015-05-20 Command line :/usr/bin/fedora-review -b 1257410
Ran this on F22 instead of rawhide by accident, but I've run another fedora-review using a rawhide buildroot and everything checks out. Buildroot used: fedora-22-x86_64
Active plugins: Generic, Shell-api, C/C++ Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Christopher Meng i@cicku.me changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED
--- Comment #4 from Christopher Meng i@cicku.me --- Spec URL: http://cicku.me/abcMIDI.spec SRPM URL: http://cicku.me/abcMIDI-2015.08.31-1.fc24.src.rpm
@Lyude, if you decide to take the review, please change the 'status' of this bug to ASSIGNED and take 'Assigned to',
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Christopher Meng i@cicku.me changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |NEW
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Stephen Chandler Paul cpaul@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |cpaul@redhat.com Assignee|nobody@fedoraproject.org |thatslyude@gmail.com
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Stephen Chandler Paul cpaul@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED
--- Comment #5 from Stephen Chandler Paul cpaul@redhat.com --- Whoops, sorry about this, just noticed I didn't ever actually change the status of this bug!
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #6 from Christopher Meng i@cicku.me --- Hi, any progress on this? My server might be closed since tomorrow for at least a week.
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #7 from Lyude thatslyude@gmail.com --- (In reply to Christopher Meng from comment #6)
Hi, any progress on this? My server might be closed since tomorrow for at least a week.
Hi, I'm not sure if you're talking to me but I already did the review for this package, you can find it in the comments of this bugzilla. Is there something else I'm supposed to do that I'm missing here?
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #8 from Christopher Meng i@cicku.me --- Please, read carefully:
http://fedoraproject.org/wiki/Package_Review_Process#Definitions_for_fedora-...
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Lyude thatslyude@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags| |fedora-review?
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #9 from Lyude thatslyude@gmail.com --- Okay, I've set it to "?" since that's all my permissions here will let me do. Sorry about all of this, it's a learning experience!
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #10 from Christopher Meng i@cicku.me --- (In reply to Lyude from comment #9)
Okay, I've set it to "?" since that's all my permissions here will let me do. Sorry about all of this, it's a learning experience!
Well.
Only + will approve the package.
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Stephen Chandler Paul cpaul@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags|fedora-review? |
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Stephen Chandler Paul cpaul@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags| |fedora-review?
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Jens Lody fedora@jenslody.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fedora@jenslody.de
--- Comment #11 from Jens Lody fedora@jenslody.de --- Minor issues: strange permission of source-file (640) latest version is now 2015.10.08 decription: "AbcMIDI is a set which contains [...]" set of what ? "[...]These programs were developed [...] and has been supported [...]" Shouldn't it be: "[...] and have been supported (plural)"
The explicit Provides looks strange to me: Provides: abcmidi = %{version}-%{release} Provides: abcmidi%{?_isa} = %{version}-%{release} can the pakage be arch-dependent and arch-independent the same time ?
There are several warnings in the build-log, most likely harmless, but they might lead to issues: e.g. parseabc.c:322:12: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] parseabc.c:1062:1: warning: type of 'maxsize' defaults to 'int' [-Wimplicit-int] parseabc.c:1749:24: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'char **' [-Wformat=] parseabc.c:1851:1: warning: implicit declaration of function 'appendfield' [-Wimplicit-function-declaration] parseabc.c:1316:6: warning: 'parsed' may be used uninitialized in this function [-Wmaybe-uninitialized] toabc.c:1491:8: warning: iteration 7u invokes undefined behavior [-Waggressive-loop-optimizations]
apart of this, everythings looks fine
Package Review ==============
Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed
Issues: ======= - Package does not use a name that already exists. Note: A package with this name already exists. Please check https://admin.fedoraproject.org/pkgdb/acls/name/abcMIDI See:
https://fedoraproject.org/wiki/Packaging/NamingGuidelines#Conflicting_Packag...
===== MUST items =====
C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs.
Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "GPL (v2 or later)", "Unknown or generated". 20 files have unknown license. Detailed output of licensecheck in /home/jens/1257410-abcMIDI/licensecheck.txt [x]: %build honors applicable compiler flags or justifies otherwise. [-]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [x]: Sources contain only permissible code or content. [-]: Package contains desktop file if it is a GUI application. [-]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: Package consistently uses macros (instead of hard-coded directory names). [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [x]: Package is not known to require an ExcludeArch tag. [-]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 501760 bytes in 7 files. [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %license. [x]: Package requires other packages for directories it uses. [x]: Package must own all directories that it creates. [x]: Package does not own files or directories owned by other packages. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Dist tag is present. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Packages must not store files under /srv, /opt or /usr/local
===== SHOULD items =====
Generic: [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [x]: Final provides and requires are sane (see attachments). [x]: Package functions as described. [!]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [-]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: Package should compile and build into binary rpms on all supported architectures. [-]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: SourceX is a working URL. [x]: Spec use %global instead of %define unless justified.
===== EXTRA items =====
Generic: [x]: Rpmlint is run on debuginfo package(s). Note: No rpmlint messages. [x]: Rpmlint is run on all installed packages. Note: No rpmlint messages. [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Package should not use obsolete m4 macros [x]: Spec file according to URL is the same as in SRPM.
Rpmlint ------- Checking: abcMIDI-2015.08.31-1.fc24.x86_64.rpm abcMIDI-2015.08.31-1.fc24.src.rpm abcMIDI.x86_64: W: spelling-error %description -l en_US microtones -> micro tones, micro-tones, microphones abcMIDI.src: W: spelling-error %description -l en_US microtones -> micro tones, micro-tones, microphones abcMIDI.src: W: strange-permission abcMIDI-2015-08-31.zip 640 2 packages and 0 specfiles checked; 0 errors, 3 warnings.
Rpmlint (debuginfo) ------------------- Checking: abcMIDI-debuginfo-2015.08.31-1.fc24.x86_64.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings.
Rpmlint (installed packages) ---------------------------- sh: /usr/bin/python: Datei oder Verzeichnis nicht gefunden 2 packages and 0 specfiles checked; 0 errors, 0 warnings.
Requires -------- abcMIDI (rpmlib, GLIBC filtered): libc.so.6()(64bit) libm.so.6()(64bit) rtld(GNU_HASH)
Provides -------- abcMIDI: abcMIDI abcMIDI(x86-64) abcmidi abcmidi(x86-64)
Source checksums ---------------- http://ifdo.pugmarks.com/~seymour/runabc/abcMIDI-2015-08-31.zip : CHECKSUM(SHA256) this package : 7160ec1a0aa04ff163841a67adff77a34a042d309ce65d3f3f1c87970a238432 CHECKSUM(SHA256) upstream package : 7160ec1a0aa04ff163841a67adff77a34a042d309ce65d3f3f1c87970a238432
Generated by fedora-review 0.6.0 (3c5c9d7) last change: 2015-05-20 Command line :/usr/bin/fedora-review -b 1257410 -m fedora-rawhide-x86_64 Buildroot used: fedora-rawhide-x86_64 Active plugins: Generic, Shell-api, C/C++ Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Jens Lody fedora@jenslody.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Assignee|thatslyude@gmail.com |fedora@jenslody.de
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #12 from Michael Schwendt (Fedora Packager Sponsors Group) bugs.michael@gmx.net ---
Provides: abcmidi = %{version}-%{release} Provides: abcmidi%{?_isa} = %{version}-%{release} can the pakage be arch-dependent and arch-independent the same time ?
Yes and no. ;-)
First of all, those two Provides are automatic for every binary package you build. They are automatic for every package %name and subpackage %name. See e.g.
$ rpm -q --provides glibc|grep ^glibc glibc = 2.21-8.fc22 glibc(x86-64) = 2.21-8.fc22
or any other binary package.
Secondly, the first Provides does not really mean the package is fully arch-independent. It is not a "noarch" build. The build is not published in the repos of any arch either. Only in multiarch repos, there's a slight chance that somebody may depend on this "thing" without specifying arch.
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #13 from Jens Lody fedora@jenslody.de --- I see that it in fact happens this way, but I think the guidelines are a little bit unclear in this case:
From https://fedoraproject.org/wiki/Packaging:Guidelines#Renaming.2FReplacing_Exi... :
"Examples of packages that should explicitly provide only arch-specific Provides: include native code libraries or plug-ins and their associated -devel packages. Packages that should explicitly provide only arch-independent Provides: include most stand-alone programs (in addition to all noarch packages). Even though these programs may themselves be arch-specific, clients that run them should not care about their arch in most cases. A package that explicitly provides, for example, both a native code library as well as an interpreted language interface to that library should have both arch-specific (for clients of the native code library) and arch-independent (for clients of the interpreted language interface) Provides:."
abcmidi only installs stand-alone programs as far as I see.
By the way after installing the package I get:
[jens@localhost ~]$ rpm -q --provides abcmidi package abcmidi is not installed [jens@localhost ~]$ rpm -q --provides abcMIDI abcMIDI = 2015.08.31-1.fc22 abcMIDI(x86-64) = 2015.08.31-1.fc22 abcmidi = 2015.08.31-1.fc22 abcmidi(x86-64) = 2015.08.31-1.fc22
That looks like something does not work correctly or am I missing something ?
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #14 from Michael Schwendt (Fedora Packager Sponsors Group) bugs.michael@gmx.net --- The Renaming/Replacing packages guidelines do not apply here at all. This is a new package request, not a rename of an existing package.
When renaming a package, the Obsoletes tag is not arch-specific and causes removal of packages of *any* arch, and the explicit Provides is what the package resolver may look at to decide whether to pull in the renamed package or not. When renaming a package, that's an opportunity to keep only the more strict dependencies, i.e. arch-specific ones instead of based on %name (*if* nothing else depends on the old %name), and have a package updater pull in only the new package for the arch that's really needed. However, the pair of Obsoletes/Provides is supposed to be temporary/short-lived anyway (with explicit dependencies switching to use the new names if necessary).
[...]
Those explicit Provides don't add much value. Only due to the mixed case of the "abcMIDI" name of the physical package, the lower-case "abcmidi" Provides can help when searching packages using a tool that isn't case-insensitive.
Also notice:
https://fedoraproject.org/wiki/Packaging:NamingGuidelines#General_Naming and https://fedoraproject.org/wiki/Packaging:NamingGuidelines#Case_Sensitivity
Lower-case naming is preferred, but the guidelines are afraid of making it mandatory, because it might annoy a few project upstreams, who are fond of their mixed-cased names.
The mixed-case spelling is not used everywhere. It's /usr/bin/abc2midi not /usr/bin/abc2MIDI, and the home page refers to the "ABC" standard while using a lower-case "abc" everywhere else. Maybe there's a preference for "abcMIDI" as the project name, but I don't think it's a big deal, since the tools have lower-case names.
$ rpm -q --provides abcmidi package abcmidi is not installed
"rpm -q --provides" queries physical packages. In this case, "abcmidi" is not a package name, but a package capability (here used as a virtual package name). You would need to query via "rpm -q --whatprovides abcmidi":
$ rpm -q --provides ldconfig package ldconfig is not installed $ rpm -q --whatprovides ldconfig glibc-2.21-8.fc22.x86_64
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #15 from Jens Lody fedora@jenslody.de --- Thanks for clarification ! I totally overread, that this part of the guidelines is only valid for renaming/replacing packages. I was too much focused on the explicit provides, and I did not find any other place in the docs where it is explained when to provide what, at least nothing about when to use arch-(in-)dependant provides.
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
--- Comment #16 from Christopher Meng i@cicku.me --- (In reply to Jens Lody from comment #11)
Minor issues: strange permission of source-file (640) latest version is now 2015.10.08
I tend to left this bug here because the reviewer is somehow questionable, and upstream releases rapidly. The source TBH is a mess. Upstream even don't know how to correct write makefile.
decription: "AbcMIDI is a set which contains [...]" set of what ?
Set of programs, will be corrected.
"[...]These programs were developed [...] and has been supported [...]" Shouldn't it be: "[...] and have been supported (plural)"
Will be corrected later, too.
The explicit Provides looks strange to me: Provides: abcmidi = %{version}-%{release} Provides: abcmidi%{?_isa} = %{version}-%{release} can the pakage be arch-dependent and arch-independent the same time ?
Because you don't understand them. Michael had explained well.
There are several warnings in the build-log, most likely harmless, but they might lead to issues: e.g. parseabc.c:322:12: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] parseabc.c:1062:1: warning: type of 'maxsize' defaults to 'int' [-Wimplicit-int] parseabc.c:1749:24: warning: format '%s' expects argument of type 'char *', but argument 3 has type 'char **' [-Wformat=] parseabc.c:1851:1: warning: implicit declaration of function 'appendfield' [-Wimplicit-function-declaration] parseabc.c:1316:6: warning: 'parsed' may be used uninitialized in this function [-Wmaybe-uninitialized]
I treat all warnings as normal things, sorry but that's my style, I'm only a user from downstream, if it works, then just put it there.
toabc.c:1491:8: warning: iteration 7u invokes undefined behavior [-Waggressive-loop-optimizations]
fast-math and other flags or just higher optimization levels will cause this issue, I singled this because I've met this for several times. I may repack the cflags.
apart of this, everythings looks fine
Thank you.
I will upload a new version of RPM soon, but please wait for a few days, to wait for the reviewer get sponsored first.
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Jens Lody fedora@jenslody.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|fedora@jenslody.de | Assignee|fedora@jenslody.de |nobody@fedoraproject.org
https://bugzilla.redhat.com/show_bug.cgi?id=1257410
Michael Schwendt bugs.michael@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |NEW Flags|fedora-review? |
--- Comment #17 from Michael Schwendt bugs.michael@gmx.net --- User "cpaul" does not exist in FAS.
package-review@lists.fedoraproject.org