Spec URL: https://gitlab.com/Yestheone/mustach/-/raw/rpm-packaging/packaging/rpm/mustach.spec SRPM URL: http://repo.data.kit.edu/files/mustach-1.2.4-1.fc37.src.rpm Description: Tiny tool for processing JSON files with Mustache templates. Fedora Account System Username: marcvs
Title corrected.
I tried building it in koji, but that failed. The copr builds (where dependencies are available) worked: https://copr.fedorainfracloud.org/coprs/marcvs/mustach/build/5211198/
Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated Issues: ======= - Package installs properly. Note: Installation errors (see attachment) See: https://docs.fedoraproject.org/en-US/packaging-guidelines/ One of the unnecessary manual Requires is unsatisfied. See the next point below to fix this. - There are automatic requirements generators for C/C++ dynamic linking. Remove all of the unnecessary manual Requires. See: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_explicit_requires %package lib-json-c […] Requires: pkgconfig(json-c) %package lib-cjson […] Requires: pkgconfig(cjson) %package lib-jansson […] Requires: pkgconfig(jansson) - The appropriate pkgconfig(…) Provides are automatically genereated when you install .pc files. Remove all of the manual pkgconfig(…) Provides: %package lib-json-c […] Provides: pkgconfig(libmustach-json-c) %package lib-json-c-devel […] Provides: pkgconfig(libmustach-json-c) %package lib-cjson […] Provides: pkgconfig(libmustach-cjson) %package lib-cjson-devel […] Provides: pkgconfig(libmustach-cjson) %package lib-jansson […] Provides: pkgconfig(libmustach-jansson) %package lib-jansson-devel […] Provides: pkgconfig(libmustach-jansson) - ldconfig not called in %post and %postun for Fedora 28 and later. Note: /sbin/ldconfig called in mustach-lib-core, mustach-lib-json-c, mustach-lib-cjson, mustach-lib-jansson See: https://fedoraproject.org/wiki/Changes/Removing_ldconfig_scriptlets See also: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_shared_libraries Remove all of the %post and %postun scriptlets. These would only be needed in EPEL7, and the correct form there would be e.g. “%ldconfig_scriptlets lib-core” - Dist tag is present. OK: fedora-review still does not understand rpmautospec. - It’s correct to have a manual dependency from the -devel subpackages on the -lib subpackages, but it must be fully versioned and archful: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_requiring_base_package Change: %package lib-json-c-devel […] Requires: %{name}-lib-json-c = %{version} to %package lib-json-c-devel […] Requires: %{name}-lib-json-c%{?_isa} = %{version}-%{release} Some people would even recommend this, in case you add an Epoch in the future: %package lib-json-c-devel […] Requires: %{name}-lib-json-c%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} - We should simplify this a bit, using the standard macros (https://docs.fedoraproject.org/en-US/packaging-guidelines/#_parallel_make) and respecting the distro-wide compiler flags (https://docs.fedoraproject.org/en-US/packaging-guidelines/#_compiler_flags): %global mustach_conf tool=jsonc libs=split jsonc=yes cjson=yes jansson=yes %global mustach_env PREFIX=%{_prefix} DESTDIR=%{buildroot} BINDIR=%{_bindir} LIBDIR=%{_libdir} INCLUDEDIR=%{_includedir} MANDIR=%{_mandir} PKGDIR=%{pkgdir} %global mustach_flags CFLAGS="-O2 -g" %global mustach_make %{mustach_flags} %__make %{?_smp_mflags} %mustach_conf %mustach_env […] %build %mustach_make %install %mustach_make install Try this instead: %global mustach_conf tool=jsonc libs=split jsonc=yes cjson=yes jansson=yes […] %build %set_build_flags %make_build %{mustach_conf} %install %make_install %{mustach_conf} \ PREFIX=%{_prefix} \ BINDIR=%{_bindir} \ LIBDIR=%{_libdir} \ INCLUDEDIR=%{_includedir} \ MANDIR=%{_mandir} \ PKGDIR=%{pkgdir} - This is unnecessary, and should be removed everywhere it appears: %defattr(-,root,root) See: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_file_permissions - If you are using %{autorelease}, it’s best to use %{autochangelog} too. See: https://docs.pagure.org/Fedora-Infra.rpmautospec/opting-in.html#opting-into-using-rpmautospec Do this instead of writing a manual changelog: %changelog %autochangelog - To reduce unnecessary macro indirection, consider simplifying this: %global site https://gitlab.com/jobol/mustach […] Url: %{site} Source: %{site}/-/archive/%{version}/%{name}-%{version}.tar.bz2 to this: Url: https://gitlab.com/jobol/mustach Source: %{url}/-/archive/%{version}/%{name}-%{version}.tar.bz2 - This is a comment, so it has no effect, but since it’s an exotic tag that isn’t used in Fedora, I suggest just removing the comment to make it less confusing: #Hexsha: None - There is no C++ code in mustach. Replace this: BuildRequires: gcc-c++ with this: BuildRequires: gcc - You must not assume the compression format for man pages. See: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_manpages Change this: %{_mandir}/man1/mustach.1.gz To this: %{_mandir}/man1/mustach.1* - You should not glob over the shared library / SONAME version when listing shared libraries. See: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_listing_shared_library_files If you define: %global so_version 1 (perhaps near the top of the spec file) then you can change %files lib-core %{_libdir}/libmustach-core.so.* to %files lib-core %{_libdir}/libmustach-core.so.%{so_version}{,.*} and so on for the other three -lib subpackages. - Nothing owns %{_includedir}/mustach. See: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_file_and_directory_ownership In %files lib-core-devel, add: %dir %{_includedir}/mustach - The three other -lib-*-devel subpackages all should depend on lib-core-devel (because the headers include mustach-wrap.h) and on the devel packages for their respective json libraries (because the headers include the json library headers). For lib-json-c, add: Requires: %{name}-lib-core-devel%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: pkgconfig(json-c) or Requires: %{name}-lib-core-devel%{?_isa} = %{version}-%{release} Requires: pkgconfig(json-c) and so on for the other two subpackages. - The -n option is unnecessary here: %setup -q -n %{name}-%{version} You can write: %setup -q or: %autosetup - The descriptions for lib-cjson, lib-cjson-devel, lib-jansson, and lib-jansson-devel subpackages are copy-pasted from lib-json-c and lib-json-c-devel subpackages without replacing “json-c”; please fix them. - You must include the license text file, properly packaged. See: https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuidelines/#_license_text Add %license LICENSE.txt to all of the following: %files %files lib-core %files lib-json-c %files lib-cjson %files lib-jansson You can omit it from: %files lib-core-devel %files lib-json-c-devel %files lib-cjson-devel %files lib-jansson-devel because each of these depends on at least one library package that includes the license file. - You should package these somewhere: %doc AUTHORS %doc CHANGELOG.md %doc README.md Maybe the lib-core-devel subpackage would be a good place for them. - You can and should build and run the basic tests. %check %make_build basic-tests %{mustach_conf} If you would like to run the spec tests too, you will need to change: Source: %{url}/-/archive/%{version}/%{name}-%{version}.tar.bz2 to Source0: %{url}/-/archive/%{version}/%{name}-%{version}.tar.bz2 # The Makefile does not clone a particular commit or tag for testing, so this # should be the latest commit: %global spec_commit 5d3b58ea35ae309c40d7a8111bfedc4c5bcd43a6 Source1: https://github.com/mustache/spec/archive/%{spec_commit}/spec-%{spec_commit}.tar.gz and then you will need something like %prep %autosetup # Put the mustache specs in the right place for the spec-tests, and patch the # Makefile to do nothing instead of trying to git-clone them. %setup -q -T -D -b 1 -n %{name}-%{version} mv ../spec-%{spec_commit} test-specs/spec sed -r -i 's/\bgit\b/:/' Makefile and then you can do %check %make_build test %{mustach_conf} …which is great. There’s no reason not to run as many tests as you can, in my opinion. - The Makefile installs files without preserving their timestamps. See: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_timestamps This could be fixed with a sed-patch in %prep, like: sed -r -i 's/\tinstall /&-p /' Makefile However, I’ve offered a PR upstream to make this easier: # Allow overriding the “install” command in Makefile # https://gitlab.com/jobol/mustach/-/merge_requests/29 Patch: https://gitlab.com/jobol/mustach/-/merge_requests/29.patch After adding the above patch and ensuring we have %autosetup -p1 we can just do %make_install %{mustach_conf} \ INSTALL='install -p' \ PREFIX=%{_prefix} \ BINDIR=%{_bindir} \ LIBDIR=%{_libdir} \ INCLUDEDIR=%{_includedir} \ MANDIR=%{_mandir} \ PKGDIR=%{pkgdir} ===== MUST items ===== C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: If your application is a C or C++ application you must list a BuildRequires against gcc, gcc-c++ or clang. [x]: Header files in -devel subpackage, if present. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs. [x]: Development (unversioned) .so files in -devel subpackage, if present. 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. [!]: 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]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "Unknown or generated", "ISC License", "*No copyright* ISC License", "*No copyright* Apache License 2.0". 45 files have unknown license. Detailed output of licensecheck in /home/reviewer/2163447-mustach/licensecheck.txt While test6/test-custom-write.c is Apache-2.0, it does not contribute to the binary RPMs. [!]: License file installed when any subpackage combination is installed. [!]: Package requires other packages for directories it uses. Note: No known owner of /usr/include/mustach [!]: Package must own all directories that it creates. Note: Directories without known owners: /usr/include/mustach [!]: %build honors applicable compiler flags or justifies otherwise. [x]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. (but %autochangelog should normally be used with %autrelease) [x]: Sources contain only permissible code or content. [!]: Each %files section contains %defattr if rpm < 4.4 Note: %defattr present but not needed [-]: Package contains desktop file if it is a GUI application. [x]: 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. [!]: Requires correct, justified where necessary. Unnecessary and not-always-correct manual Requires are present. [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. [!]: Package complies to the Packaging Guidelines See Issues section. [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: Package does not own files or directories owned by other packages. [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]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package must not depend on deprecated() packages. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package does not use a name that already exists. [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]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 0 bytes in 0 files. [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. [!]: Final provides and requires are sane (see attachments). There are some issues, noted in Issues. [!]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in mustach- lib-core , mustach-lib-core-devel , mustach-lib-json-c , mustach-lib- json-c-devel , mustach-lib-cjson , mustach-lib-cjson-devel , mustach- lib-jansson , mustach-lib-jansson-devel [?]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [x]: Scriptlets must be sane, if used. Scriptlets are sane but obsolete. [-]: Sources are verified with gpgverify first in %prep if upstream publishes signatures. Note: gpgverify is not used. [x]: Package should compile and build into binary rpms on all supported architectures. [!]: %check is present and all tests pass. [!]: Packages should try to preserve timestamps of original installed files. [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]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: The placement of pkgconfig(.pc) files are correct. [x]: Sources can be downloaded from URI in Source: tag [x]: SourceX is a working URL. [x]: Spec use %global instead of %define unless justified. ===== EXTRA items ===== Generic: [!]: Rpmlint is run on all installed packages. Note: Mock build failed See: https://docs.fedoraproject.org/en-US/packaging- guidelines/#_use_rpmlint [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Spec file according to URL is the same as in SRPM. Installation errors ------------------- INFO: mock.py version 3.5 starting (python version = 3.11.1, NVR = mock-3.5-1.fc37)... Start(bootstrap): init plugins INFO: selinux enabled Finish(bootstrap): init plugins Start: init plugins INFO: selinux enabled Finish: init plugins INFO: Signal handler active Start: run Start(bootstrap): chroot init INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata INFO: enabled HW Info plugin Mock Version: 3.5 INFO: Mock Version: 3.5 Finish(bootstrap): chroot init Start: chroot init INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin Mock Version: 3.5 INFO: Mock Version: 3.5 Finish: chroot init INFO: installing package(s): /builddir/mustach-lib-json-c-devel-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-core-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-core-devel-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-cjson-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-json-c-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-core-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-json-c-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-cjson-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-cjson-devel-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-debugsource-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-jansson-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-jansson-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-jansson-devel-1.2.4-1.fc38.x86_64.rpm ERROR: Command failed: # /usr/bin/systemd-nspawn -q -M d3cf83e0343d431a8b20c0a7306a9ecd -D /var/lib/mock/fedora-rawhide-x86_64-bootstrap/root -a --capability=cap_ipc_lock --bind=/tmp/mock-resolv.a2gn4isy:/etc/resolv.conf --console=pipe --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOME=/var/lib/mock/fedora-rawhide-x86_64/root/installation-homedir --setenv=HOSTNAME=mock --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin --setenv=PROMPT_COMMAND=printf "\033]0;<mock-chroot>\007" --setenv=PS1=<mock-chroot> \s-\v\$ --setenv=LANG=C.UTF-8 --setenv=LC_MESSAGES=C.UTF-8 --resolv-conf=off /usr/bin/dnf --installroot /var/lib/mock/fedora-rawhide-x86_64/root/ --releasever 38 --setopt=deltarpm=False --allowerasing --disableplugin=local --disableplugin=spacewalk --disableplugin=versionlock install /builddir/mustach-lib-json-c-devel-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-core-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-core-devel-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-cjson-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-json-c-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-core-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-json-c-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-cjson-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-cjson-devel-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-debugsource-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-jansson-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-jansson-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-jansson-devel-1.2.4-1.fc38.x86_64.rpm --setopt=tsflags=nocontexts Rpmlint ------- Checking: mustach-1.2.4-1.fc38.x86_64.rpm mustach-lib-core-1.2.4-1.fc38.x86_64.rpm mustach-lib-core-devel-1.2.4-1.fc38.x86_64.rpm mustach-lib-json-c-1.2.4-1.fc38.x86_64.rpm mustach-lib-json-c-devel-1.2.4-1.fc38.x86_64.rpm mustach-lib-cjson-1.2.4-1.fc38.x86_64.rpm mustach-lib-cjson-devel-1.2.4-1.fc38.x86_64.rpm mustach-lib-jansson-1.2.4-1.fc38.x86_64.rpm mustach-lib-jansson-devel-1.2.4-1.fc38.x86_64.rpm mustach-debuginfo-1.2.4-1.fc38.x86_64.rpm mustach-debugsource-1.2.4-1.fc38.x86_64.rpm mustach-1.2.4-1.fc38.src.rpm =============================================== rpmlint session starts =============================================== rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml rpmlintrc: [PosixPath('/tmp/tmp24rkgrly')] checks: 31, packages: 12 mustach-lib-cjson.x86_64: W: summary-not-capitalized cjson library of mustach mustach-lib-cjson-devel.x86_64: W: summary-not-capitalized cjson library of mustach - Development files mustach-lib-jansson.x86_64: W: summary-not-capitalized jansson library of mustach mustach-lib-jansson-devel.x86_64: W: summary-not-capitalized jansson library of mustach - Development files mustach-lib-json-c.x86_64: W: summary-not-capitalized json-c library of mustach mustach-lib-json-c-devel.x86_64: W: summary-not-capitalized json-c library of mustach - Development files mustach-lib-cjson.x86_64: W: one-line-command-in-%postun /sbin/ldconfig mustach-lib-core.x86_64: W: one-line-command-in-%postun /sbin/ldconfig mustach-lib-jansson.x86_64: W: one-line-command-in-%postun /sbin/ldconfig mustach-lib-json-c.x86_64: W: one-line-command-in-%postun /sbin/ldconfig mustach-lib-cjson.x86_64: W: one-line-command-in-%post /sbin/ldconfig mustach-lib-core.x86_64: W: one-line-command-in-%post /sbin/ldconfig mustach-lib-jansson.x86_64: W: one-line-command-in-%post /sbin/ldconfig mustach-lib-json-c.x86_64: W: one-line-command-in-%post /sbin/ldconfig mustach-lib-cjson.x86_64: W: no-documentation mustach-lib-cjson-devel.x86_64: W: no-documentation mustach-lib-core.x86_64: W: no-documentation mustach-lib-core-devel.x86_64: W: no-documentation mustach-lib-jansson.x86_64: W: no-documentation mustach-lib-jansson-devel.x86_64: W: no-documentation mustach-lib-json-c.x86_64: W: no-documentation mustach-lib-json-c-devel.x86_64: W: no-documentation mustach.src: W: name-repeated-in-summary Mustach mustach.x86_64: W: name-repeated-in-summary Mustach mustach.spec:8: W: mixed-use-of-spaces-and-tabs (spaces: line 4, tab: line 8) mustach.x86_64: W: incoherent-version-in-changelog 1.2.4 ['1.2.4-1.fc38', '1.2.4-1'] mustach-lib-core-devel.x86_64: W: description-shorter-than-summary =============== 12 packages and 0 specfiles checked; 0 errors, 27 warnings, 0 badness; has taken 0.4 s =============== Source checksums ---------------- https://gitlab.com/jobol/mustach/-/archive/1.2.4/mustach-1.2.4.tar.bz2 : CHECKSUM(SHA256) this package : 122c62ff39796d31fae2f735e006d91b3e5ab54552611f33f4f27d243b130518 CHECKSUM(SHA256) upstream package : 122c62ff39796d31fae2f735e006d91b3e5ab54552611f33f4f27d243b130518 Requires -------- mustach (rpmlib, GLIBC filtered): libc.so.6()(64bit) libjson-c.so.5()(64bit) libjson-c.so.5(JSONC_0.14)(64bit) rtld(GNU_HASH) mustach-lib-core (rpmlib, GLIBC filtered): /bin/sh libc.so.6()(64bit) rtld(GNU_HASH) mustach-lib-core-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-core.so.1()(64bit) mustach-lib-core mustach-lib-json-c (rpmlib, GLIBC filtered): /bin/sh libc.so.6()(64bit) libjson-c.so.5()(64bit) libjson-c.so.5(JSONC_0.14)(64bit) pkgconfig(json-c) rtld(GNU_HASH) mustach-lib-json-c-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-json-c.so.1()(64bit) mustach-lib-json-c mustach-lib-cjson (rpmlib, GLIBC filtered): /bin/sh libc.so.6()(64bit) libcjson.so.1()(64bit) pkgconfig(cjson) rtld(GNU_HASH) mustach-lib-cjson-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-cjson.so.1()(64bit) mustach-lib-cjson mustach-lib-jansson (rpmlib, GLIBC filtered): /bin/sh libc.so.6()(64bit) libjansson.so.4()(64bit) pkgconfig(jansson) rtld(GNU_HASH) mustach-lib-jansson-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-jansson.so.1()(64bit) mustach-lib-jansson mustach-debuginfo (rpmlib, GLIBC filtered): mustach-debugsource (rpmlib, GLIBC filtered): Provides -------- mustach: mustach mustach(x86-64) mustach-lib-core: libmustach-core.so.1()(64bit) mustach-lib-core mustach-lib-core(x86-64) mustach-lib-core-devel: mustach-lib-core-devel mustach-lib-core-devel(x86-64) pkgconfig(libmustach-core) mustach-lib-json-c: libmustach-json-c.so.1()(64bit) mustach-lib-json-c mustach-lib-json-c(x86-64) pkgconfig(libmustach-json-c) mustach-lib-json-c-devel: mustach-lib-json-c-devel mustach-lib-json-c-devel(x86-64) pkgconfig(libmustach-json-c) mustach-lib-cjson: libmustach-cjson.so.1()(64bit) mustach-lib-cjson mustach-lib-cjson(x86-64) pkgconfig(libmustach-cjson) mustach-lib-cjson-devel: mustach-lib-cjson-devel mustach-lib-cjson-devel(x86-64) pkgconfig(libmustach-cjson) mustach-lib-jansson: libmustach-jansson.so.1()(64bit) mustach-lib-jansson mustach-lib-jansson(x86-64) pkgconfig(libmustach-jansson) mustach-lib-jansson-devel: mustach-lib-jansson-devel mustach-lib-jansson-devel(x86-64) pkgconfig(libmustach-jansson) mustach-debuginfo: debuginfo(build-id) mustach-debuginfo mustach-debuginfo(x86-64) mustach-debugsource: mustach-debugsource mustach-debugsource(x86-64) Generated by fedora-review 0.9.0 (6761b6c) last change: 2022-08-23 Command line :/usr/bin/fedora-review -b 2163447 Buildroot used: fedora-rawhide-x86_64 Active plugins: Generic, C/C++, Shell-api Disabled plugins: PHP, fonts, Ocaml, R, Java, SugarActivity, Perl, Haskell, Python Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH
A couple of corrections/additions. [!]: Changelog in prescribed format. Missing release numbers. mustach.x86_64: W: incoherent-version-in-changelog 1.2.4 ['1.2.4-1.fc38', '1.2.4-1'] Using %autochangelog will fix this. - mustach.spec:8: W: mixed-use-of-spaces-and-tabs (spaces: line 4, tab: line 8) You can do: vim mustach.spec :set et :retab :wq to convert any tabs to spaces.
Many many thanks for this extensive review! I will apply these points to my two other packages, once I get to them, and resubmit them. I have followed all your recommendations, except: [...] > Some people would even recommend this, in case you add an Epoch in the > future: I didn't use the epoch version [...] > - If you are using %{autorelease}, it’s best to use %{autochangelog} too. See: > https://docs.pagure.org/Fedora-Infra.rpmautospec/opting-in.html#opting-into-using-rpmautospec > > Do this instead of writing a manual changelog: > > %changelog > %autochangelog I'm a bit reluctant to push the full git history into the changelog. Here, I've git committed for each change you suggested. That seems quite exhaustive to me. [...] > - The Makefile installs files without preserving their timestamps. See: > However, I’ve offered a PR upstream to make this easier: I'm now packaging v1.2.5 which includes your PR ===== MUST items ===== Generic: > [!]: 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. Fixed. > [!]: License file installed when any subpackage combination is installed. Fixed. > [!]: Package requires other packages for directories it uses. > Note: No known owner of /usr/include/mustach Fixed. > [!]: Package must own all directories that it creates. > Note: Directories without known owners: /usr/include/mustach Fixed. > [!]: %build honors applicable compiler flags or justifies otherwise. Fixed. > [!]: Each %files section contains %defattr if rpm < 4.4 > Note: %defattr present but not needed Fixed. > [!]: Requires correct, justified where necessary. > Unnecessary and not-always-correct manual Requires are present. Fixed. > [!]: Package complies to the Packaging Guidelines > See Issues section. Fixed. > ===== SHOULD items ===== > > Generic: > [!]: Final provides and requires are sane (see attachments). > There are some issues, noted in Issues. I hope for the best > > [!]: Fully versioned dependency in subpackages if applicable. > Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in mustach- > lib-core , mustach-lib-core-devel , mustach-lib-json-c , mustach-lib- > json-c-devel , mustach-lib-cjson , mustach-lib-cjson-devel , mustach- > lib-jansson , mustach-lib-jansson-devel Fixed. > [?]: Package functions as described. The tests are included and run during packaging. > [!]: %check is present and all tests pass. Yup > [!]: Packages should try to preserve timestamps of original installed > files. Fixed by upstream PR #29 > ===== EXTRA items ===== > > Generic: > [!]: Rpmlint is run on all installed packages. > Note: Mock build failed > See: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_use_rpmlint Except: - W: no-documentation, since this is only warned for sub-packages - W: name-repeated-in-summary, since I think this is a bug in Rpmlint: the name is "mustach" the repeated name refers to the software "mustache" (i.e. with an additional 'e'). > Installation errors > ------------------- [...] > ERROR: Command failed: > # /usr/bin/systemd-nspawn -q -M d3cf83e0343d431a8b20c0a7306a9ecd -D /var/lib/mock/fedora-rawhide-x86_64-bootstrap/root -a --capability=cap_ipc_lock --bind=/tmp/mock-resolv.a2gn4isy:/etc/resolv.conf --console=pipe --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOME=/var/lib/mock/fedora-rawhide-x86_64/root/installation-homedir --setenv=HOSTNAME=mock --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin --setenv=PROMPT_COMMAND=printf "\033]0;<mock-chroot>\007" --setenv=PS1=<mock-chroot> \s-\v\$ --setenv=LANG=C.UTF-8 --setenv=LC_MESSAGES=C.UTF-8 --resolv-conf=off /usr/bin/dnf --installroot /var/lib/mock/fedora-rawhide-x86_64/root/ --releasever 38 --setopt=deltarpm=False --allowerasing --disableplugin=local --disableplugin=spacewalk --disableplugin=versionlock install /builddir/mustach-lib-json-c-devel-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-core-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-core-devel-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-cjson-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-json-c-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-core-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-json-c-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-cjson-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-cjson-devel-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-debugsource-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-jansson-debuginfo-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-jansson-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-1.2.4-1.fc38.x86_64.rpm /builddir/mustach-lib-jansson-devel-1.2.4-1.fc38.x86_64.rpm --setopt=tsflags=nocontexts I have no idea if / how to address this.
Thanks! I’ll revisit this ASAP.
For some reason, “fedora-review -b 2163447” now fails with “ERROR: 'No srpm found for mustach'”. I’m trying to figure out what is going wrong.
The problem was that the linked spec file was updated, but without an updated SRPM. I created a new SRPM using the spec file and the sources from its URLs: Updated SRPM URL: https://music.fedorapeople.org/mustach-1.2.5-1.fc37.src.rpm
Almost there! Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated Issues: ======= - Dist tag is present. OK: fedora-review does not understand rpmautospec - Package does not contain duplicates in %files. Note: warning: File listed twice: /usr/include/mustach See: https://docs.fedoraproject.org/en-US/packaging- guidelines/#_duplicate_files I think you want to remove this line: %{_includedir}/mustach …which means the directory /usr/bin/mustach plus all of its contents. In the following lines, you have correctly listed just the directory %dir %{_includedir}/mustach and listed individual headers in the various devel packages. The extra line also means that %{_includedir}/mustach/mustach-cjson.h and %{_includedir}/mustach/mustach-jansson.h are (co-)owned by mustach-lib-core-devel rather than only by the backend-specific -devel packages, which is unintended. - The dependency on mustach-lib-core from mustach-lib-core-devel should be fully versioned and arched. Change: Requires: %{name}-lib-core = %{version} to: Requires: %{name}-lib-core%{?_isa} = %{version}-%{release} See: https://docs.fedoraproject.org/en-US/packaging-guidelines/#_requiring_base_package The other inter-subpackage dependencies are already correct. ===== MUST items ===== C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: If your application is a C or C++ application you must list a BuildRequires against gcc, gcc-c++ or clang. [x]: Header files in -devel subpackage, if present. [x]: ldconfig not called in %post and %postun for Fedora 28 and later. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs. [x]: Development (unversioned) .so files in -devel subpackage, if present. 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: "Unknown or generated", "ISC License", "*No copyright* ISC License", "*No copyright* Apache License 2.0", "MIT License". 67 files have unknown license. Detailed output of licensecheck in /home/reviewer/mustach/review-mustach/licensecheck.txt While test6/test-custom-write.c is Apache-2.0, and the Mustache specs in Source1 are MIT, neither contributes to the binary RPMs. [x]: License file installed when any subpackage combination is installed. [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. [x]: 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. [ ]: Spec file is legible and written in American English. [ ]: Package contains systemd file(s) if in need. [ ]: Useful -debuginfo package or justification otherwise. [ ]: 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 20480 bytes in 3 files. [ ]: 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]: 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]: Permissions on files are set properly. [x]: Package must not depend on deprecated() packages. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package does not use a name that already exists. [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). [!]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in mustach- lib-core , mustach-lib-core-devel , mustach-lib-json-c , mustach-lib- json-c-devel , mustach-lib-cjson , mustach-lib-cjson-devel , mustach- lib-jansson , mustach-lib-jansson-devel See Issues. [x]: Package functions as described. (tests pass) [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [-]: Sources are verified with gpgverify first in %prep if upstream publishes signatures. Note: gpgverify is not used. [x]: Package should compile and build into binary rpms on all supported architectures. [x]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [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]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: The placement of pkgconfig(.pc) files are correct. [x]: Sources can be downloaded from URI in Source: tag [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: There are rpmlint messages (see attachment). [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: mustach-1.2.5-1.fc39.x86_64.rpm mustach-lib-core-1.2.5-1.fc39.x86_64.rpm mustach-lib-core-devel-1.2.5-1.fc39.x86_64.rpm mustach-lib-json-c-1.2.5-1.fc39.x86_64.rpm mustach-lib-json-c-devel-1.2.5-1.fc39.x86_64.rpm mustach-lib-cjson-1.2.5-1.fc39.x86_64.rpm mustach-lib-cjson-devel-1.2.5-1.fc39.x86_64.rpm mustach-lib-jansson-1.2.5-1.fc39.x86_64.rpm mustach-lib-jansson-devel-1.2.5-1.fc39.x86_64.rpm mustach-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-debugsource-1.2.5-1.fc39.x86_64.rpm mustach-1.2.5-1.fc39.src.rpm =============================================== rpmlint session starts =============================================== rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml rpmlintrc: [PosixPath('/tmp/tmp_t4wond3')] checks: 31, packages: 12 mustach-lib-cjson.x86_64: W: no-documentation mustach-lib-cjson-devel.x86_64: W: no-documentation mustach-lib-core.x86_64: W: no-documentation mustach-lib-jansson.x86_64: W: no-documentation mustach-lib-jansson-devel.x86_64: W: no-documentation mustach-lib-json-c.x86_64: W: no-documentation mustach-lib-json-c-devel.x86_64: W: no-documentation mustach.src: W: name-repeated-in-summary Mustach mustach.x86_64: W: name-repeated-in-summary Mustach =============== 12 packages and 0 specfiles checked; 0 errors, 9 warnings, 0 badness; has taken 1.1 s ================ Rpmlint (debuginfo) ------------------- Checking: mustach-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-jansson-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-cjson-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-json-c-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-core-debuginfo-1.2.5-1.fc39.x86_64.rpm =============================================== rpmlint session starts =============================================== rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml rpmlintrc: [PosixPath('/tmp/tmpgf5r8zop')] checks: 31, packages: 5 ================ 5 packages and 0 specfiles checked; 0 errors, 0 warnings, 0 badness; has taken 0.6 s ================ Rpmlint (installed packages) ---------------------------- ============================ rpmlint session starts ============================ rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 31, packages: 15 mustach-lib-jansson.x86_64: W: no-documentation mustach-lib-jansson-devel.x86_64: W: no-documentation mustach-lib-cjson-devel.x86_64: W: no-documentation mustach-lib-json-c-devel.x86_64: W: no-documentation mustach-lib-core.x86_64: W: no-documentation mustach-lib-json-c.x86_64: W: no-documentation mustach-lib-cjson.x86_64: W: no-documentation mustach.x86_64: W: name-repeated-in-summary Mustach 15 packages and 0 specfiles checked; 0 errors, 8 warnings, 0 badness; has taken 1.6 s Source checksums ---------------- https://github.com/mustache/spec/archive/refs/tags/v1.3.0.tar.gz : CHECKSUM(SHA256) this package : 060da2de3135f6ec3682289fdc8a5f0abc275dad73a328f051c3d8c4ee4431f5 CHECKSUM(SHA256) upstream package : 060da2de3135f6ec3682289fdc8a5f0abc275dad73a328f051c3d8c4ee4431f5 https://gitlab.com/jobol/mustach/-/archive/1.2.5/mustach-1.2.5.tar.bz2 : CHECKSUM(SHA256) this package : da3605d4d72688ac6a4f26229561c021571117a02474bee7da3fd3d396c5826c CHECKSUM(SHA256) upstream package : da3605d4d72688ac6a4f26229561c021571117a02474bee7da3fd3d396c5826c Requires -------- mustach (rpmlib, GLIBC filtered): glibc libc.so.6()(64bit) libjson-c.so.5()(64bit) libjson-c.so.5(JSONC_0.14)(64bit) rtld(GNU_HASH) mustach-lib-core (rpmlib, GLIBC filtered): libc.so.6()(64bit) rtld(GNU_HASH) mustach-lib-core-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-core.so.1()(64bit) mustach-lib-core mustach-lib-json-c (rpmlib, GLIBC filtered): glibc libc.so.6()(64bit) libjson-c.so.5()(64bit) libjson-c.so.5(JSONC_0.14)(64bit) rtld(GNU_HASH) mustach-lib-json-c-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-json-c.so.1()(64bit) mustach-lib-core-devel(x86-64) mustach-lib-json-c(x86-64) mustach-lib-cjson (rpmlib, GLIBC filtered): libc.so.6()(64bit) libcjson.so.1()(64bit) rtld(GNU_HASH) mustach-lib-cjson-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-cjson.so.1()(64bit) mustach-lib-cjson(x86-64) mustach-lib-core-devel(x86-64) mustach-lib-jansson (rpmlib, GLIBC filtered): glibc libc.so.6()(64bit) libjansson.so.4()(64bit) rtld(GNU_HASH) mustach-lib-jansson-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-jansson.so.1()(64bit) mustach-lib-core-devel(x86-64) mustach-lib-jansson(x86-64) mustach-debuginfo (rpmlib, GLIBC filtered): mustach-debugsource (rpmlib, GLIBC filtered): Provides -------- mustach: mustach mustach(x86-64) mustach-lib-core: libmustach-core.so.1()(64bit) mustach-lib-core mustach-lib-core(x86-64) mustach-lib-core-devel: mustach-lib-core-devel mustach-lib-core-devel(x86-64) pkgconfig(libmustach-core) mustach-lib-json-c: libmustach-json-c.so.1()(64bit) mustach-lib-json-c mustach-lib-json-c(x86-64) mustach-lib-json-c-devel: mustach-lib-json-c-devel mustach-lib-json-c-devel(x86-64) pkgconfig(libmustach-json-c) mustach-lib-cjson: libmustach-cjson.so.1()(64bit) mustach-lib-cjson mustach-lib-cjson(x86-64) mustach-lib-cjson-devel: mustach-lib-cjson-devel mustach-lib-cjson-devel(x86-64) pkgconfig(libmustach-cjson) mustach-lib-jansson: libmustach-jansson.so.1()(64bit) mustach-lib-jansson mustach-lib-jansson(x86-64) mustach-lib-jansson-devel: mustach-lib-jansson-devel mustach-lib-jansson-devel(x86-64) pkgconfig(libmustach-jansson) mustach-debuginfo: debuginfo(build-id) mustach-debuginfo mustach-debuginfo(x86-64) mustach-debugsource: mustach-debugsource mustach-debugsource(x86-64) Generated by fedora-review 0.9.0 (6761b6c) last change: 2022-08-23 Command line :/usr/bin/fedora-review -n mustach Buildroot used: fedora-rawhide-x86_64 Active plugins: C/C++, Shell-api, Generic Disabled plugins: SugarActivity, R, PHP, Java, Python, Perl, Ocaml, Haskell, fonts Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH
Sorry, missed a few: [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 20480 bytes in 3 files. [x]: Package complies to the Packaging Guidelines (except as noted)
> Issues: > ======= > - Dist tag is present. > > OK: fedora-review does not understand rpmautospec I'm not sure what to do here: - I don't find any "dist" in the spec file, and according to https://docs.fedoraproject.org/en-US/packaging-guidelines/DistTag/ it is not forbidden. > - Package does not contain duplicates in %files. > Note: warning: File listed twice: /usr/include/mustach > See: https://docs.fedoraproject.org/en-US/packaging- > guidelines/#_duplicate_files > > I think you want to remove this line: > > %{_includedir}/mustach > > …which means the directory /usr/bin/mustach plus all of its contents. In the > following lines, you have correctly listed just the directory > > %dir %{_includedir}/mustach > > and listed individual headers in the various devel packages. > > The extra line also means that %{_includedir}/mustach/mustach-cjson.h and > %{_includedir}/mustach/mustach-jansson.h are (co-)owned by > mustach-lib-core-devel rather than only by the backend-specific -devel > packages, which is unintended. Thanks! Fixed. > - The dependency on mustach-lib-core from mustach-lib-core-devel should be > fully versioned and arched. Change: Fixed. [...] > ===== MUST items ===== [...] > ===== SHOULD items ===== > > Generic: [...] > [!]: Fully versioned dependency in subpackages if applicable. > Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in mustach- > lib-core , mustach-lib-core-devel , mustach-lib-json-c , mustach-lib- > json-c-devel , mustach-lib-cjson , mustach-lib-cjson-devel , mustach- > lib-jansson , mustach-lib-jansson-devel should be fixed [...]
(In reply to hardt from comment #11) > > Issues: > > ======= > > - Dist tag is present. > > > > OK: fedora-review does not understand rpmautospec > I'm not sure what to do here: > - I don't find any "dist" in the spec file, and according to > https://docs.fedoraproject.org/en-US/packaging-guidelines/DistTag/ it is > not forbidden. The fedora-review tool confusingly reports “Dist tag is present” when it thinks the dist tag is *not* present. However, fedora-review still does not understand rpmautospec, which creates the dist tag when it substitutes %autorelease. The spec file is correct and it is fedora-review that is wrong. Thus I reported the fedora-review output but noted that it is “OK”; there is nothing to change here.
$ diff -Naur mustach.spec 20230314/mustach.spec --- mustach.spec 2023-03-12 11:21:09.582015084 -0400 +++ 20230314/mustach.spec 2023-03-14 09:53:59.817462697 -0400 @@ -36,7 +36,7 @@ %package lib-core-devel Summary: Core library of mustach - Development files -Requires: %{name}-lib-core = %{version} +Requires: %{name}-lib-core%{?_isa} = %{version} %description lib-core-devel Core development files for mustach core library @@ -143,7 +143,6 @@ %files lib-core-devel %{_libdir}/libmustach-core.so %{pkgdir}/libmustach-core.pc -%{_includedir}/mustach %{_includedir}/mustach/mustach.h %{_includedir}/mustach/mustach-wrap.h %dir %{_includedir}/mustach ----- This looks reasonable. It’s still unnecessarily difficult to review the package when you don’t post an updated source RPM. I used the updated spec file to make my own source RPM, and I’ll finish re-reviewing shortly.
That one inter-subpackage dependency still needs -%{release}. Otherwise this looks great. Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated Issues: ======= - Dist tag is present. This is not an error; it is a deficiency in fedora-review, which cannot detect the dist tag when %autorelease is used. - This still needs -%{release}: %package lib-core-devel Summary: Core library of mustach - Development files Requires: %{name}-lib-core%{?_isa} = %{version} Replace the last line with: Summary: Core library of mustach - Development files Requires: %{name}-lib-core%{?_isa} = %{version}-%{release} ===== MUST items ===== C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: If your application is a C or C++ application you must list a BuildRequires against gcc, gcc-c++ or clang. [x]: Header files in -devel subpackage, if present. [x]: ldconfig not called in %post and %postun for Fedora 28 and later. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs. [x]: Development (unversioned) .so files in -devel subpackage, if present. 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: "Unknown or generated", "ISC License", "*No copyright* ISC License", "*No copyright* Apache License 2.0", "MIT License". 67 files have unknown license. Detailed output of licensecheck in /home/reviewer/2163447-mustach/x/review-mustach/licensecheck.txt While test6/test-custom-write.c is Apache-2.0, it does not contribute to the binary RPMs. The Mustache test specs in Source1, which are MIT, do not contribute to the binary RPMs. [x]: License file installed when any subpackage combination is installed. [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. [x]: 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 20480 bytes in 3 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]: 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]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package must not depend on deprecated() packages. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package does not use a name that already exists. [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). [!]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in mustach- lib-core , mustach-lib-core-devel , mustach-lib-json-c , mustach-lib- json-c-devel , mustach-lib-cjson , mustach-lib-cjson-devel , mustach- lib-jansson , mustach-lib-jansson-devel [x]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [-]: Sources are verified with gpgverify first in %prep if upstream publishes signatures. Note: gpgverify is not used. [x]: Package should compile and build into binary rpms on all supported architectures. [x]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [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]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: The placement of pkgconfig(.pc) files are correct. [x]: Sources can be downloaded from URI in Source: tag [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: There are rpmlint messages (see attachment). [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: mustach-1.2.5-1.fc39.x86_64.rpm mustach-lib-core-1.2.5-1.fc39.x86_64.rpm mustach-lib-core-devel-1.2.5-1.fc39.x86_64.rpm mustach-lib-json-c-1.2.5-1.fc39.x86_64.rpm mustach-lib-json-c-devel-1.2.5-1.fc39.x86_64.rpm mustach-lib-cjson-1.2.5-1.fc39.x86_64.rpm mustach-lib-cjson-devel-1.2.5-1.fc39.x86_64.rpm mustach-lib-jansson-1.2.5-1.fc39.x86_64.rpm mustach-lib-jansson-devel-1.2.5-1.fc39.x86_64.rpm mustach-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-debugsource-1.2.5-1.fc39.x86_64.rpm mustach-1.2.5-1.fc39.src.rpm =============================================== rpmlint session starts =============================================== rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml rpmlintrc: [PosixPath('/tmp/tmpfl__gi7_')] checks: 31, packages: 12 mustach-lib-cjson.x86_64: W: no-documentation mustach-lib-cjson-devel.x86_64: W: no-documentation mustach-lib-core.x86_64: W: no-documentation mustach-lib-jansson.x86_64: W: no-documentation mustach-lib-jansson-devel.x86_64: W: no-documentation mustach-lib-json-c.x86_64: W: no-documentation mustach-lib-json-c-devel.x86_64: W: no-documentation mustach.src: W: name-repeated-in-summary Mustach mustach.x86_64: W: name-repeated-in-summary Mustach =============== 12 packages and 0 specfiles checked; 0 errors, 9 warnings, 0 badness; has taken 1.1 s ================ Rpmlint (debuginfo) ------------------- Checking: mustach-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-cjson-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-core-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-json-c-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-jansson-debuginfo-1.2.5-1.fc39.x86_64.rpm =============================================== rpmlint session starts =============================================== rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml rpmlintrc: [PosixPath('/tmp/tmpito1jvv6')] checks: 31, packages: 5 ================ 5 packages and 0 specfiles checked; 0 errors, 0 warnings, 0 badness; has taken 0.6 s ================ Rpmlint (installed packages) ---------------------------- ============================ rpmlint session starts ============================ rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 31, packages: 15 mustach-lib-cjson.x86_64: W: no-documentation mustach-lib-jansson.x86_64: W: no-documentation mustach-lib-json-c.x86_64: W: no-documentation mustach-lib-jansson-devel.x86_64: W: no-documentation mustach-lib-core.x86_64: W: no-documentation mustach-lib-json-c-devel.x86_64: W: no-documentation mustach-lib-cjson-devel.x86_64: W: no-documentation mustach.x86_64: W: name-repeated-in-summary Mustach 15 packages and 0 specfiles checked; 0 errors, 8 warnings, 0 badness; has taken 1.7 s Source checksums ---------------- https://github.com/mustache/spec/archive/refs/tags/v1.3.0.tar.gz : CHECKSUM(SHA256) this package : 060da2de3135f6ec3682289fdc8a5f0abc275dad73a328f051c3d8c4ee4431f5 CHECKSUM(SHA256) upstream package : 060da2de3135f6ec3682289fdc8a5f0abc275dad73a328f051c3d8c4ee4431f5 https://gitlab.com/jobol/mustach/-/archive/1.2.5/mustach-1.2.5.tar.bz2 : CHECKSUM(SHA256) this package : da3605d4d72688ac6a4f26229561c021571117a02474bee7da3fd3d396c5826c CHECKSUM(SHA256) upstream package : da3605d4d72688ac6a4f26229561c021571117a02474bee7da3fd3d396c5826c Requires -------- mustach (rpmlib, GLIBC filtered): glibc libc.so.6()(64bit) libjson-c.so.5()(64bit) libjson-c.so.5(JSONC_0.14)(64bit) rtld(GNU_HASH) mustach-lib-core (rpmlib, GLIBC filtered): libc.so.6()(64bit) rtld(GNU_HASH) mustach-lib-core-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-core.so.1()(64bit) mustach-lib-core(x86-64) mustach-lib-json-c (rpmlib, GLIBC filtered): glibc libc.so.6()(64bit) libjson-c.so.5()(64bit) libjson-c.so.5(JSONC_0.14)(64bit) rtld(GNU_HASH) mustach-lib-json-c-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-json-c.so.1()(64bit) mustach-lib-core-devel(x86-64) mustach-lib-json-c(x86-64) mustach-lib-cjson (rpmlib, GLIBC filtered): libc.so.6()(64bit) libcjson.so.1()(64bit) rtld(GNU_HASH) mustach-lib-cjson-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-cjson.so.1()(64bit) mustach-lib-cjson(x86-64) mustach-lib-core-devel(x86-64) mustach-lib-jansson (rpmlib, GLIBC filtered): glibc libc.so.6()(64bit) libjansson.so.4()(64bit) rtld(GNU_HASH) mustach-lib-jansson-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-jansson.so.1()(64bit) mustach-lib-core-devel(x86-64) mustach-lib-jansson(x86-64) mustach-debuginfo (rpmlib, GLIBC filtered): mustach-debugsource (rpmlib, GLIBC filtered): Provides -------- mustach: mustach mustach(x86-64) mustach-lib-core: libmustach-core.so.1()(64bit) mustach-lib-core mustach-lib-core(x86-64) mustach-lib-core-devel: mustach-lib-core-devel mustach-lib-core-devel(x86-64) pkgconfig(libmustach-core) mustach-lib-json-c: libmustach-json-c.so.1()(64bit) mustach-lib-json-c mustach-lib-json-c(x86-64) mustach-lib-json-c-devel: mustach-lib-json-c-devel mustach-lib-json-c-devel(x86-64) pkgconfig(libmustach-json-c) mustach-lib-cjson: libmustach-cjson.so.1()(64bit) mustach-lib-cjson mustach-lib-cjson(x86-64) mustach-lib-cjson-devel: mustach-lib-cjson-devel mustach-lib-cjson-devel(x86-64) pkgconfig(libmustach-cjson) mustach-lib-jansson: libmustach-jansson.so.1()(64bit) mustach-lib-jansson mustach-lib-jansson(x86-64) mustach-lib-jansson-devel: mustach-lib-jansson-devel mustach-lib-jansson-devel(x86-64) pkgconfig(libmustach-jansson) mustach-debuginfo: debuginfo(build-id) mustach-debuginfo mustach-debuginfo(x86-64) mustach-debugsource: mustach-debugsource mustach-debugsource(x86-64) Generated by fedora-review 0.9.0 (6761b6c) last change: 2022-08-23 Command line :/usr/bin/fedora-review -n mustach Buildroot used: fedora-rawhide-x86_64 Active plugins: Shell-api, C/C++, Generic Disabled plugins: R, SugarActivity, Java, PHP, Ocaml, Python, Haskell, Perl, fonts Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH
Ok, I've updated the spec, and placed the SRPM to our repo server. I'm constantly interrupted by other work, unfortunately. Updated SRPM URL: http://repo.data.kit.edu/files/mustach-1.2.5-1.fc37.src.rpm
This looks good to me! The package is APPROVED. Sorry it took me a while to get back to the review. Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated Issues: ======= - Dist tag is present. The above message is from fedora-review, which does not understand rpmautospec. This is not an issue; there is nothing to fix. ===== MUST items ===== C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: If your application is a C or C++ application you must list a BuildRequires against gcc, gcc-c++ or clang. [x]: Header files in -devel subpackage, if present. [x]: ldconfig not called in %post and %postun for Fedora 28 and later. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs. [x]: Development (unversioned) .so files in -devel subpackage, if present. 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: "Unknown or generated", "ISC License", "*No copyright* ISC License", "*No copyright* Apache License 2.0", "MIT License". 67 files have unknown license. Detailed output of licensecheck in /home/reviewer/2163447-mustach/licensecheck.txt Source license is ISC. While test6/test-custom-write.c is Apache-2.0, it is test code that does not contribute to the binary RPMs, so its license does not need to appear in the SPDX expression. Similarly, the contents of test-specs/ are MIT, but are only used for testing and are not installed. Therefore, “License: ISC” is correct. All source licenses are allowed in Fedora. [x]: License file installed when any subpackage combination is installed. [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. [x]: 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 20480 bytes in 3 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]: 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]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package must not depend on deprecated() packages. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package does not use a name that already exists. [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]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in mustach- lib-core , mustach-lib-core-devel , mustach-lib-json-c , mustach-lib- json-c-devel , mustach-lib-cjson , mustach-lib-cjson-devel , mustach- lib-jansson , mustach-lib-jansson-devel [x]: Package functions as described. (upstream tests pass) [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [-]: Sources are verified with gpgverify first in %prep if upstream publishes signatures. Note: gpgverify is not used. [x]: Package should compile and build into binary rpms on all supported architectures. https://koji.fedoraproject.org/koji/taskinfo?taskID=100855021 [x]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [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]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: The placement of pkgconfig(.pc) files are correct. [x]: Sources can be downloaded from URI in Source: tag [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: There are rpmlint messages (see attachment). [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: mustach-1.2.5-1.fc39.x86_64.rpm mustach-lib-core-1.2.5-1.fc39.x86_64.rpm mustach-lib-core-devel-1.2.5-1.fc39.x86_64.rpm mustach-lib-json-c-1.2.5-1.fc39.x86_64.rpm mustach-lib-json-c-devel-1.2.5-1.fc39.x86_64.rpm mustach-lib-cjson-1.2.5-1.fc39.x86_64.rpm mustach-lib-cjson-devel-1.2.5-1.fc39.x86_64.rpm mustach-lib-jansson-1.2.5-1.fc39.x86_64.rpm mustach-lib-jansson-devel-1.2.5-1.fc39.x86_64.rpm mustach-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-debugsource-1.2.5-1.fc39.x86_64.rpm mustach-1.2.5-1.fc39.src.rpm =========================================================================================================== rpmlint session starts =========================================================================================================== rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml rpmlintrc: [PosixPath('/tmp/tmp49253tiu')] checks: 31, packages: 12 mustach-lib-cjson.x86_64: W: no-documentation mustach-lib-cjson-devel.x86_64: W: no-documentation mustach-lib-core.x86_64: W: no-documentation mustach-lib-jansson.x86_64: W: no-documentation mustach-lib-jansson-devel.x86_64: W: no-documentation mustach-lib-json-c.x86_64: W: no-documentation mustach-lib-json-c-devel.x86_64: W: no-documentation mustach.src: W: name-repeated-in-summary Mustach mustach.x86_64: W: name-repeated-in-summary Mustach =========================================================================== 12 packages and 0 specfiles checked; 0 errors, 9 warnings, 0 badness; has taken 0.6 s ============================================================================ Rpmlint (debuginfo) ------------------- Checking: mustach-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-core-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-json-c-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-cjson-debuginfo-1.2.5-1.fc39.x86_64.rpm mustach-lib-jansson-debuginfo-1.2.5-1.fc39.x86_64.rpm =========================================================================================================== rpmlint session starts =========================================================================================================== rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml rpmlintrc: [PosixPath('/tmp/tmppx8zime3')] checks: 31, packages: 5 ============================================================================ 5 packages and 0 specfiles checked; 0 errors, 0 warnings, 0 badness; has taken 0.4 s ============================================================================ Rpmlint (installed packages) ---------------------------- ============================ rpmlint session starts ============================ rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 31, packages: 15 mustach-lib-core.x86_64: W: no-documentation mustach-lib-json-c.x86_64: W: no-documentation mustach-lib-json-c-devel.x86_64: W: no-documentation mustach-lib-jansson-devel.x86_64: W: no-documentation mustach-lib-cjson.x86_64: W: no-documentation mustach-lib-jansson.x86_64: W: no-documentation mustach-lib-cjson-devel.x86_64: W: no-documentation mustach.x86_64: W: name-repeated-in-summary Mustach 15 packages and 0 specfiles checked; 0 errors, 8 warnings, 0 badness; has taken 1.4 s Source checksums ---------------- https://github.com/mustache/spec/archive/refs/tags/v1.3.0.tar.gz : CHECKSUM(SHA256) this package : 060da2de3135f6ec3682289fdc8a5f0abc275dad73a328f051c3d8c4ee4431f5 CHECKSUM(SHA256) upstream package : 060da2de3135f6ec3682289fdc8a5f0abc275dad73a328f051c3d8c4ee4431f5 https://gitlab.com/jobol/mustach/-/archive/1.2.5/mustach-1.2.5.tar.bz2 : CHECKSUM(SHA256) this package : da3605d4d72688ac6a4f26229561c021571117a02474bee7da3fd3d396c5826c CHECKSUM(SHA256) upstream package : da3605d4d72688ac6a4f26229561c021571117a02474bee7da3fd3d396c5826c Requires -------- mustach (rpmlib, GLIBC filtered): glibc libc.so.6()(64bit) libjson-c.so.5()(64bit) libjson-c.so.5(JSONC_0.14)(64bit) rtld(GNU_HASH) mustach-lib-core (rpmlib, GLIBC filtered): libc.so.6()(64bit) rtld(GNU_HASH) mustach-lib-core-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-core.so.1()(64bit) mustach-lib-core(x86-64) mustach-lib-json-c (rpmlib, GLIBC filtered): glibc libc.so.6()(64bit) libjson-c.so.5()(64bit) libjson-c.so.5(JSONC_0.14)(64bit) rtld(GNU_HASH) mustach-lib-json-c-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-json-c.so.1()(64bit) mustach-lib-core-devel(x86-64) mustach-lib-json-c(x86-64) mustach-lib-cjson (rpmlib, GLIBC filtered): libc.so.6()(64bit) libcjson.so.1()(64bit) rtld(GNU_HASH) mustach-lib-cjson-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-cjson.so.1()(64bit) mustach-lib-cjson(x86-64) mustach-lib-core-devel(x86-64) mustach-lib-jansson (rpmlib, GLIBC filtered): glibc libc.so.6()(64bit) libjansson.so.4()(64bit) rtld(GNU_HASH) mustach-lib-jansson-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libmustach-jansson.so.1()(64bit) mustach-lib-core-devel(x86-64) mustach-lib-jansson(x86-64) mustach-debuginfo (rpmlib, GLIBC filtered): mustach-debugsource (rpmlib, GLIBC filtered): Provides -------- mustach: mustach mustach(x86-64) mustach-lib-core: libmustach-core.so.1()(64bit) mustach-lib-core mustach-lib-core(x86-64) mustach-lib-core-devel: mustach-lib-core-devel mustach-lib-core-devel(x86-64) pkgconfig(libmustach-core) mustach-lib-json-c: libmustach-json-c.so.1()(64bit) mustach-lib-json-c mustach-lib-json-c(x86-64) mustach-lib-json-c-devel: mustach-lib-json-c-devel mustach-lib-json-c-devel(x86-64) pkgconfig(libmustach-json-c) mustach-lib-cjson: libmustach-cjson.so.1()(64bit) mustach-lib-cjson mustach-lib-cjson(x86-64) mustach-lib-cjson-devel: mustach-lib-cjson-devel mustach-lib-cjson-devel(x86-64) pkgconfig(libmustach-cjson) mustach-lib-jansson: libmustach-jansson.so.1()(64bit) mustach-lib-jansson mustach-lib-jansson(x86-64) mustach-lib-jansson-devel: mustach-lib-jansson-devel mustach-lib-jansson-devel(x86-64) pkgconfig(libmustach-jansson) mustach-debuginfo: debuginfo(build-id) mustach-debuginfo mustach-debuginfo(x86-64) mustach-debugsource: mustach-debugsource mustach-debugsource(x86-64) Generated by fedora-review 0.9.0 (6761b6c) last change: 2022-08-23 Command line :/usr/bin/fedora-review -b 2163447 Buildroot used: fedora-rawhide-x86_64 Active plugins: Generic, Shell-api, C/C++ Disabled plugins: Java, Python, Perl, fonts, R, Haskell, PHP, Ocaml, SugarActivity Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH
Note that if you don’t request the dist-git repository relatively promptly, the package will have to be re-approved. Let me know if you run into trouble.
Ok; I was not able to respond promptly. I've tried to find what to do for dist-git, but didn't quite find useful links. What's the next steps? dist-git + reapprove? Best, Marcus.
(In reply to hardt from comment #18) > Ok; I was not able to respond promptly. I've tried to find what to do for > dist-git, but didn't quite find useful links. > > What's the next steps? dist-git + reapprove? I’m going to toggle the relevant flags to “refresh” the approval. Here’s the documentation for requesting a dist-git repository. https://docs.fedoraproject.org/en-US/package-maintainers/New_Package_Process_for_New_Contributors/#add_package_to_source_code_management_scm_system_and_set_owner ----- It looks like you also still needed to be sponsored into the packager group. Based on this package review, I’m willing to do that. That means I agree to the responsibilities listed here, https://docs.fedoraproject.org/en-US/fesco/Packager_sponsor_policy/#responsibilities and you should feel free to contact me with any questions you might have for as long as you contribute to Fedora. You will need to log out of your Fedora account (https://accounts.fedoraproject.org/user/marcvs/) and back in to use your new privileges. Once you get your first package set up, make sure you have a look at the Updates Policy so you understand how to handle any future API/ABI breaks. As always, I’m happy to answer questions. https://docs.fedoraproject.org/en-US/fesco/Updates_Policy/
Hello @marcvs, since this is your first Fedora package, you need to get sponsored by a package sponsor before it can be accepted. A sponsor is an experienced package maintainer who will guide you through the processes that you will follow and the tools that you will use as a future maintainer. A sponsor will also be there to answer your questions related to packaging. You can find all active sponsors here: https://docs.pagure.org/fedora-sponsors/ I created a sponsorship request for you: https://pagure.io/packager-sponsors/issue/577 Please take a look and make sure the information is correct. Thank you, and best of luck on your packaging journey. --- This comment was created by the fedora-review-service https://github.com/FrostyX/fedora-review-service
Package was never imported. The ticket status is being reset, since creating the repository will require a fresh approval. Let us know if you're still interested in this package.