[Bug 1773716] Review Request: golang-github-gehirninc-crypt - Pure Go crypt(3) Implementation

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

 



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



--- Comment #11 from Brandon Perkins <bperkins@xxxxxxxxxx> ---
Trying to get ahead of any issues, I went through the fedora-review report for
all five packages as they exist now and provided comments where needed:

> ===== MUST items =====
> 
> Generic:
> [ ]: Package is licensed with an open-source compatible license and meets
>      other legal requirements as defined in the legal section of Packaging
>      Guidelines.

$ rpm -q --queryformat="%{NAME}: %{LICENSE}\n"
RPMS/golang-github-gehirninc-crypt-devel-0-0.2.20200214git6c0105a.fc31.noarch.rpm
SRPMS/golang-github-gehirninc-crypt-0-0.2.20200214git6c0105a.fc31.src.rpm
golang-github-gehirninc-crypt-devel: BSD
golang-github-gehirninc-crypt: BSD


> [ ]: License field in the package spec file matches the actual license.
>      Note: There is no build directory. Running licensecheck on vanilla
>      upstream sources. Licenses found: "Unknown or generated". 1 files have
>      unknown license. Detailed output of licensecheck in
>      ~/git/haproxytech/1773716-golang-github-gehirninc-
>      crypt/licensecheck.txt


Unknown or generated
--------------------
~/git/haproxytech/1773716-golang-github-gehirninc-crypt/upstream-unpacked/Source0/crypt-6c0105aabd460ae06c87afeb5a47c869f6a7557e.tar.gz

$ rpm -qpL
RPMS/golang-github-gehirninc-crypt-devel-0-0.2.20200214git6c0105a.fc31.noarch.rpm 
/usr/share/licenses/golang-github-gehirninc-crypt-devel/LICENSE
$ tar -tf
1773716-golang-github-gehirninc-crypt/upstream-unpacked/Source0/crypt-6c0105aabd460ae06c87afeb5a47c869f6a7557e.tar.gz
| grep /LICENSE$
crypt-6c0105aabd460ae06c87afeb5a47c869f6a7557e/LICENSE
$ tar -xvzf
1773716-golang-github-gehirninc-crypt/upstream-unpacked/Source0/crypt-6c0105aabd460ae06c87afeb5a47c869f6a7557e.tar.gz
crypt-6c0105aabd460ae06c87afeb5a47c869f6a7557e/LICENSE
crypt-6c0105aabd460ae06c87afeb5a47c869f6a7557e/LICENSE
$ rpm -qp --queryformat="%{NAME}: %{LICENSE}\n"
RPMS/golang-github-gehirninc-crypt-devel-0-0.2.20200214git6c0105a.fc31.noarch.rpm
golang-github-gehirninc-crypt-devel: BSD
$ licensecheck crypt-6c0105aabd460ae06c87afeb5a47c869f6a7557e/LICENSE 
crypt-6c0105aabd460ae06c87afeb5a47c869f6a7557e/LICENSE: BSD 2-clause
"Simplified" License
$ grep '^# Upstream license specification: '
1773716-golang-github-gehirninc-crypt/srpm-unpacked/golang-github-gehirninc-crypt.spec
# Upstream license specification: BSD-2-Clause


> [ ]: Package does not own files or directories owned by other packages.
>      Note: Dirs in package are owned also by:

<snip/>

This is an issue across all 'golang-github' packages.  In reality, the
'/usr/share/gocode/src/github.com' directory should only be owned by the
'golang' package itself:

$ rpm -qf /usr/share/gocode/src/github.com
golang-1.13.6-1.fc31.x86_64


> [ ]: %build honors applicable compiler flags or justifies otherwise.

Not Applicable as there is no %build section:

$ grep -A7 ^%build SPECS/golang-github-gehirninc-crypt.spec


> [ ]: Package contains no bundled libraries without FPC exception.

None:

$ rpm -qp --provides
RPMS/golang-github-gehirninc-crypt-devel-0-0.2.20200214git6c0105a.fc31.noarch.rpm
| grep bundled


> [ ]: Changelog in prescribed format.

Should all be fixed now.

> [ ]: Sources contain only permissible code or content.

Yes.

> [ ]: Package contains desktop file if it is a GUI application.

Not Applicable.

> [ ]: Development files must be in a -devel package

RPMS/golang-github-gehirninc-crypt-devel-0-0.2.20200214git6c0105a.fc31.noarch.rpm


> [ ]: Package uses nothing in %doc for runtime.

None:

golang-github-gehirninc-crypt-devel:
/usr/share/doc/golang-github-gehirninc-crypt-devel/AUTHORS.md
/usr/share/doc/golang-github-gehirninc-crypt-devel/README.rst
/usr/share/gocode/src/github.com/GehirnInc/crypt/AUTHORS.md



> [ ]: Package consistently uses macros (instead of hard-coded directory
>      names).

Yes.

> [ ]: Package is named according to the Package Naming Guidelines.

Yes.

> [ ]: Package does not generate any conflict.

None.

> [ ]: Package obeys FHS, except libexecdir and /usr/target.

Yes.

> [ ]: If the package is a rename of another package, proper Obsoletes and
>      Provides are present.

Not Applicable.

> [ ]: Requires correct, justified where necessary.

Yes:

golang-github-gehirninc-crypt-devel:
go-filesystem



> [ ]: Spec file is legible and written in American English.

Yes.

> [ ]: Package contains systemd file(s) if in need.

Not Applicable.

> [ ]: Package is not known to require an ExcludeArch tag.

ExcludeArch tag not required.

> [ ]: Large documentation must go in a -doc subpackage. Large could be size
>      (~1MB) or number of files.
>      Note: Documentation size is 10240 bytes in 2 files.

Not needed as 10240 bytes is less than 1MB.

> [ ]: Package complies to the Packaging Guidelines

Yes.

> [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 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 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.

Good.

> [ ]: Final provides and requires are sane (see attachments).

Good.

> [ ]: Package functions as described.

Yes.

> [ ]: Latest version is packaged.

Yes.

> [ ]: Package does not include license text files separate from upstream.

No additional license text files.

> [ ]: Sources are verified with gpgverify first in %prep if upstream
>      publishes signatures.
>      Note: gpgverify is not used.

Not available.

> [ ]: Description and summary sections in the package spec file contains
>      translations for supported Non-English languages, if available.

Not available.

> [ ]: %check is present and all tests pass.

Yes:

$ grep -B1 -A3 -E "(^%check| check$)" SPECS/golang-github-gehirninc-crypt.spec
%bcond_without check

# https://github.com/GehirnInc/crypt
%global goipath         github.com/GehirnInc/crypt
--
%if %{with check}
%check
%gocheck
%endif



> [ ]: Packages should try to preserve timestamps of original installed
>      files.

Good:

$ date ; LANG=C.utf8 mock -q -r fedora-rawhide-x86_64 --no-bootstrap-chroot
--no-cleanup-after --no-clean --enable-network --chroot -- "ls -ld \$(rpm -qL
golang-github-gehirninc-crypt-devel)"
Wed 04 Mar 2020 02:50:20 PM EST
-rw-r--r--. 1 root root 1333 Mar  1  2019
/usr/share/licenses/golang-github-gehirninc-crypt-devel/LICENSE


> [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]: Sources can be downloaded from URI in Source: tag
> [x]: SourceX is a working URL.
> [x]: Package should compile and build into binary rpms on all supported
>      architectures.
> [x]: Spec use %global instead of %define unless justified.
> 
> ===== EXTRA items =====
> 
> Generic:
> [x]: Rpmlint is run on all installed packages.
>      Note: There are rpmlint messages (see attachment).
> [x]: Spec file according to URL is the same as in SRPM.
> 
> 
> Rpmlint
> -------
> Checking: golang-github-gehirninc-crypt-devel-0-0.2.20191113git6c0105a.fc33.noarch.rpm
>           golang-github-gehirninc-crypt-0-0.2.20191113git6c0105a.fc33.src.rpm
> golang-github-gehirninc-crypt-devel.noarch: W: hidden-file-or-dir /usr/share/gocode/src/github.com/GehirnInc/crypt/.goipath

Expected.

> golang-github-gehirninc-crypt.src: W: no-%build-section

%build section not needed for '-devel' packages.

> 2 packages and 0 specfiles checked; 0 errors, 2 warnings.
> 
> 
> 
> 
> Rpmlint (installed packages)
> ----------------------------
> golang-github-gehirninc-crypt-devel.noarch: W: invalid-url URL: https://github.com/GehirnInc/crypt <urlopen error [Errno -2] Name or service not known>
> golang-github-gehirninc-crypt-devel.noarch: W: hidden-file-or-dir /usr/share/gocode/src/github.com/GehirnInc/crypt/.goipath
> 1 packages and 0 specfiles checked; 0 errors, 2 warnings.
>

$ sudo mkdir -p /var/lib/mock/fedora-rawhide-x86_64/root/root/.config
$ echo "addFilter(r\"hidden-file-or-dir
/usr/share/gocode/src/github\.com/.*/.*/.goipath$\")" > /tmp/rpmlint.config
$ sudo cp /tmp/rpmlint.config
/var/lib/mock/fedora-rawhide-x86_64/root/root/.config/rpmlint
$ LANG=C.utf8 mock -q -r fedora-rawhide-x86_64 --no-bootstrap-chroot
--no-cleanup-after --no-clean --enable-network --chroot -- rpmlint -f
/root/.config/rpmlint golang-github-gehirninc-crypt-devel
1 packages and 0 specfiles checked; 0 errors, 0 warnings.


> 
> 
> Source checksums
> ----------------
> https://github.com/GehirnInc/crypt/archive/6c0105aabd460ae06c87afeb5a47c869f6a7557e/crypt-6c0105aabd460ae06c87afeb5a47c869f6a7557e.tar.gz :
>   CHECKSUM(SHA256) this package     : b9daac49482d52dc4ab0381124f87cd3ec0104f8f626abd67e3d880cba3258be
>   CHECKSUM(SHA256) upstream package : b9daac49482d52dc4ab0381124f87cd3ec0104f8f626abd67e3d880cba3258be
> 
> 
> Requires
> --------
> golang-github-gehirninc-crypt-devel (rpmlib, GLIBC filtered):
>     go-filesystem
> 
> 
> 
> Provides
> --------
> golang-github-gehirninc-crypt-devel:
>     golang(github.com/GehirnInc/crypt)
>     golang(github.com/GehirnInc/crypt)(commit=6c0105aabd460ae06c87afeb5a47c869f6a7557e)
>     golang(github.com/GehirnInc/crypt/apr1_crypt)
>     golang(github.com/GehirnInc/crypt/apr1_crypt)(commit=6c0105aabd460ae06c87afeb5a47c869f6a7557e)
>     golang(github.com/GehirnInc/crypt/common)
>     golang(github.com/GehirnInc/crypt/common)(commit=6c0105aabd460ae06c87afeb5a47c869f6a7557e)
>     golang(github.com/GehirnInc/crypt/internal)
>     golang(github.com/GehirnInc/crypt/internal)(commit=6c0105aabd460ae06c87afeb5a47c869f6a7557e)
>     golang(github.com/GehirnInc/crypt/md5_crypt)
>     golang(github.com/GehirnInc/crypt/md5_crypt)(commit=6c0105aabd460ae06c87afeb5a47c869f6a7557e)
>     golang(github.com/GehirnInc/crypt/sha256_crypt)
>     golang(github.com/GehirnInc/crypt/sha256_crypt)(commit=6c0105aabd460ae06c87afeb5a47c869f6a7557e)
>     golang(github.com/GehirnInc/crypt/sha512_crypt)
>     golang(github.com/GehirnInc/crypt/sha512_crypt)(commit=6c0105aabd460ae06c87afeb5a47c869f6a7557e)
>     golang-github-gehirninc-crypt-devel
>     golang-ipath(github.com/GehirnInc/crypt)
>     golang-ipath(github.com/GehirnInc/crypt)(commit=6c0105aabd460ae06c87afeb5a47c869f6a7557e)
> 
> 
> 
> Generated by fedora-review 0.7.5 (5fa5b7e) last change: 2020-02-16
> Command line :/usr/bin/fedora-review -b 1773716 -L ~/git/haproxytech/RPMS -v
> Buildroot used: fedora-rawhide-x86_64
> Active plugins: Shell-api, Generic
> Disabled plugins: Java, C/C++, R, fonts, SugarActivity, PHP, Perl, Haskell, Ocaml, Python
> Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH
> 
> Built with local dependencies:
>     ~/git/haproxytech/RPMS/golang-github-gehirninc-crypt-devel-0-0.2.20200214git6c0105a.fc31.noarch.rpm
>     ~/git/haproxytech/RPMS/golang-github-haproxytech-client-native-devel-1.2.6-2.fc31.noarch.rpm
>     ~/git/haproxytech/RPMS/golang-github-haproxytech-config-parser-devel-1.2.0-1.fc31.noarch.rpm
>     ~/git/haproxytech/RPMS/golang-github-haproxytech-dataplaneapi-1.2.4-5.fc31.x86_64.rpm
>     ~/git/haproxytech/RPMS/golang-github-haproxytech-dataplaneapi-debuginfo-1.2.4-5.fc31.x86_64.rpm
>     ~/git/haproxytech/RPMS/golang-github-haproxytech-dataplaneapi-debugsource-1.2.4-5.fc31.x86_64.rpm
>     ~/git/haproxytech/RPMS/golang-github-haproxytech-dataplaneapi-devel-1.2.4-5.fc31.noarch.rpm
>     ~/git/haproxytech/RPMS/golang-github-haproxytech-models-devel-1.2.4-2.fc31.noarch.rpm

-- 
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