[Bug 1764175] Review Request: elements - A C++/Python build framework

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.redhat.com/show_bug.cgi?id=1764175

Robert-André Mauchin <zebob.m@xxxxxxxxx> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|nobody@xxxxxxxxxxxxxxxxx    |zebob.m@xxxxxxxxx
            Summary|Review Request: Elements -  |Review Request: elements -
                   |A C++/Python build          |A C++/Python build
                   |framework                   |framework
              Flags|                            |fedora-review?



--- Comment #7 from Robert-André Mauchin <zebob.m@xxxxxxxxx> ---
 - Use a better name for your archive:

Source0:       
https://github.com/degauden/Elements/archive/%{version}/%{name}-%{version}.tar.gz

 - Use %global, not %define:


%global cmakedir %{_libdir}/cmake/ElementsProject
%global xmldir %{cmakedir}

%global makedir %{_datadir}/Elements/make
%global confdir %{_datadir}/Elements
%global auxdir %{_datadir}/auxdir
%global docdir %{_docdir}/Elements

 - I would simplify these:

%dir %{cmakedir}
%{cmakedir}/ElementsBuildFlags.cmake
%{cmakedir}/ElementsCoverage.cmake
%{cmakedir}/ElementsDocumentation.cmake
%{cmakedir}/ElementsLocations.cmake
%{cmakedir}/ElementsProjectConfig.cmake
%{cmakedir}/ElementsToolChain.cmake
%{cmakedir}/ElementsToolChainMacros.cmake
%{cmakedir}/ElementsUninstall.cmake
%{cmakedir}/ElementsUtils.cmake
%{cmakedir}/ElementsInfo.cmake
%{cmakedir}/ElementsExports-relwithdebinfo.cmake
%{cmakedir}/ElementsServicesExport.cmake
%{cmakedir}/SGSPlatform.cmake
%{cmakedir}/auxdir
%{cmakedir}/doc
%{cmakedir}/modules
%{cmakedir}/scripts
%{cmakedir}/tests
%{cmakedir}/ElementsExports.cmake
%{cmakedir}/ElementsPlatformConfig.cmake
%{cmakedir}/ElementsKernelExport.cmake
%{cmakedir}/ElementsConfigVersion.cmake
%{cmakedir}/ElementsConfig.cmake

%dir %{makedir}
%{makedir}/Elements.mk

 with:

%{cmakedir}
%{makedir}

 - Own this directory:

[!]: Package requires other packages for directories it uses.
     Note: No known owner of /usr/share/Elements

%dir %{confdir}

 - Fix the changelog entry:


elements.x86_64: W: incoherent-version-in-changelog 5.8-2 ['5.8-3.fc32',
'5.8-3']



Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed

===== 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", "GNU Lesser General Public License
     (v3.0 or later)", "BSD 3-clause "New" or "Revised" License GNU Lesser
     General Public License (v3.0 or later)", "*No copyright* GNU Lesser
     General Public License (v3.0 or later)". 166 files have unknown
     license. Detailed output of licensecheck in
     /home/bob/packaging/review/elements/review-elements/licensecheck.txt
[x]: License file installed when any subpackage combination is installed.
[!]: Package requires other packages for directories it uses.
     Note: No known owner of /usr/share/Elements
[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.
[-]: 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]: 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]: 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 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

Python:
[x]: Python eggs must not download any dependencies during the build
     process.
[x]: A package which is used by another package via an egg interface should
     provide egg info.
[x]: Package meets the Packaging Guidelines::Python
[x]: Package contains BR: python2-devel or python3-devel
[x]: Packages MUST NOT have dependencies (either build-time or runtime) on
     packages named with the unversioned python- prefix unless no properly
     versioned package exists. Dependencies on Python packages instead MUST
     use names beginning with python2- or python3- as appropriate.
[x]: Python packages must not contain %{pythonX_site(lib|arch)}/* in %files
[x]: Binary eggs must be removed in %prep

===== 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).
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise
     justified.
[-]: Sources are verified with gpgverify first in %prep if upstream
     publishes signatures.
     Note: gpgverify is not used.
[-]: 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.
[x]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
     files.
[ ]: Spec use %global instead of %define unless justified.
     Note: %define requiring justification: %define cmakedir
     %{_libdir}/cmake/ElementsProject, %define xmldir %{cmakedir}, %define
     makedir %{_datadir}/Elements/make, %define confdir
     %{_datadir}/Elements, %define auxdir %{_datadir}/auxdir, %define
     docdir %{_docdir}/Elements
[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]: Fully versioned dependency in subpackages if applicable.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: SourceX is a working URL.

===== 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: elements-5.8-3.fc32.x86_64.rpm
          elements-devel-5.8-3.fc32.x86_64.rpm
          elements-doc-5.8-3.fc32.noarch.rpm
          elements-debuginfo-5.8-3.fc32.x86_64.rpm
          elements-debugsource-5.8-3.fc32.x86_64.rpm
          elements-5.8-3.fc32.src.rpm
elements.x86_64: W: description-shorter-than-summary
elements.x86_64: W: incoherent-version-in-changelog 5.8-2 ['5.8-3.fc32',
'5.8-3']
elements.x86_64: W: shared-lib-calls-exit /usr/lib64/libElementsKernel.so.5.8
exit@GLIBC_2.2.5
elements.x86_64: W: no-documentation
elements.x86_64: E: non-executable-script
/usr/share/auxdir/ElementsKernel/templates/Script_template.in 644 /bin/sh 
elements.x86_64: W: no-manual-page-for-binary AddCppClass
elements.x86_64: W: no-manual-page-for-binary AddCppProgram
elements.x86_64: W: no-manual-page-for-binary AddElementsModule
elements.x86_64: W: no-manual-page-for-binary AddPythonModule
elements.x86_64: W: no-manual-page-for-binary AddPythonProgram
elements.x86_64: W: no-manual-page-for-binary AddScript
elements.x86_64: W: no-manual-page-for-binary CreateElementsProject
elements.x86_64: W: no-manual-page-for-binary ElementsNameCheck
elements.x86_64: W: no-manual-page-for-binary GetElementsFiles
elements.x86_64: W: no-manual-page-for-binary RemoveCppClass
elements.x86_64: W: no-manual-page-for-binary RemoveCppProgram
elements.x86_64: W: no-manual-page-for-binary RemovePythonModule
elements.x86_64: W: no-manual-page-for-binary RemovePythonProgram
elements-devel.x86_64: W: no-documentation
elements.src: W: description-shorter-than-summary
6 packages and 0 specfiles checked; 1 errors, 19 warnings.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
_______________________________________________
package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx




[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite Conditions]     [KDE Users]

  Powered by Linux