https://bugzilla.redhat.com/show_bug.cgi?id=1882899
Bug ID: 1882899 Summary: Review Request: scout - Lightweight URL fuzzer and spider Product: Fedora Version: rawhide Hardware: All OS: Linux Status: NEW Component: Package Review Severity: medium Priority: medium Assignee: nobody@fedoraproject.org Reporter: mail@fabian-affolter.ch QA Contact: extras-qa@fedoraproject.org CC: package-review@lists.fedoraproject.org Target Milestone: --- Classification: Fedora
Spec URL: https://fab.fedorapeople.org/packages/SRPMS/scout.spec SRPM URL: https://fab.fedorapeople.org/packages/SRPMS/scout-0.12.0-1.fc32.src.rpm
Project URL: https://github.com/liamg/scout
Description: A lightweight URL fuzzer and spider: Discover a web server's undisclosed files, directories and VHOSTs.
Koji scratch build: fails due to missing dependencies
rpmlint output: $ rpmlint scout-0.12.0-1.fc32.src.rpm scout.src: W: spelling-error Summary(en_US) fuzzer -> fuzzier, fuzzes, fuzzed scout.src: W: spelling-error %description -l en_US fuzzer -> fuzzier, fuzzes, fuzzed 1 packages and 0 specfiles checked; 0 errors, 2 warnings.
$ rpmlint scout* scout.x86_64: W: spelling-error Summary(en_US) fuzzer -> fuzzier, fuzzes, fuzzed scout.x86_64: W: spelling-error %description -l en_US fuzzer -> fuzzier, fuzzes, fuzzed scout.x86_64: W: no-manual-page-for-binary scout 3 packages and 0 specfiles checked; 0 errors, 3 warnings.
Fedora Account System Username: fab
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
Andy Mender andymenderunix@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED CC| |andymenderunix@gmail.com Assignee|nobody@fedoraproject.org |andymenderunix@gmail.com Doc Type|--- |If docs needed, set a value Flags| |fedora-review?
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
--- Comment #1 from Andy Mender andymenderunix@gmail.com --- Koji build: https://koji.fedoraproject.org/koji/taskinfo?taskID=52348252
Unfortunately, this package cannot be fully reviewed yet, since some dependencies are missing. See log from Koji: https://kojipkgs.fedoraproject.org//work/tasks/8284/52348284/mock_output.log Below requirements cannot be satisfied:
BuildRequires: golang(github.com/avast/retry-go) BuildRequires: golang(github.com/liamg/tml)
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
Fabian Affolter mail@fabian-affolter.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |563471 (FE-SECLAB) Depends On| |1882895, 1882898
--- Comment #2 from Fabian Affolter mail@fabian-affolter.ch --- Sorry, I missed to add the deps.
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=563471 [Bug 563471] Tracker: Review Requests for Fedora Security Lab related packages https://bugzilla.redhat.com/show_bug.cgi?id=1882895 [Bug 1882895] Review Request: golang-github-liamg-tml - Markup language for terminal output https://bugzilla.redhat.com/show_bug.cgi?id=1882898 [Bug 1882898] Review Request: golang-github-avast-retry - Simple golang library for retry mechanism
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
--- Comment #3 from Andy Mender andymenderunix@gmail.com --- Added to a COPR project together with its dependencies: https://copr.fedorainfracloud.org/coprs/andymenderunix/scout/build/1686845/
Sorry, I missed to add the deps.
No worries. Both were reviewed.
From fedora-review:
- Package does not use a name that already exists. Note: A package with this name already exists. Please check https://src.fedoraproject.org/rpms/scout See: https://docs.fedoraproject.org/en-US/packaging- guidelines/Naming/#_conflicting_package_name
Unfortunately, a "scout" package already exists. In any case, I think the current package should be called "golang-github-liamg-scout" as is the convention for Golang packages. You can leverage the Name field for that:
Name: %{goname}
Here's an example: https://src.fedoraproject.org/rpms/golang-github-zyedidia-highlight/blob/mas...
Full review below:
Package Review ==============
Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed
Issues: ======= - Package installs properly. Note: Installation errors (see attachment) See: https://docs.fedoraproject.org/en-US/packaging-guidelines/ - Package does not use a name that already exists. Note: A package with this name already exists. Please check https://src.fedoraproject.org/rpms/scout See: https://docs.fedoraproject.org/en-US/packaging- guidelines/Naming/#_conflicting_package_names
===== MUST items =====
Generic: [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. Note: Using prebuilt packages [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: 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 /home/amender/rpmbuild/SPECS/scout/copr-build-1686845/review- scout/licensecheck.txt [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 [?]: 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 552960 bytes in 6 files. Review: Do we need a separate -doc package here? [x]: Package complies to the Packaging Guidelines [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]: 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 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: [x]: Reviewer should test that the package builds in mock. [-]: 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 golang- github-liamg-scout-devel Review: Not explicitly specified in the SPEC file, but I see other Golang packages don't do it either. [?]: 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. [-]: 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. [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]: 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 2.6 starting (python version = 3.8.5)... Start: init plugins INFO: selinux enabled Finish: init plugins INFO: Signal handler active Start: run 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: 2.6 INFO: Mock Version: 2.6 Finish: chroot init INFO: installing package(s): /home/amender/rpmbuild/SPECS/scout/copr-build-1686845/scout-debuginfo-0.12.0-1.fc34.x86_64.rpm /home/amender/rpmbuild/SPECS/scout/copr-build-1686845/golang-github-liamg-scout-devel-0.12.0-1.fc34.noarch.rpm /home/amender/rpmbuild/SPECS/scout/copr-build-1686845/scout-0.12.0-1.fc34.x86_64.rpm ERROR: Command failed: # /usr/bin/dnf --installroot /var/lib/mock/fedora-rawhide-x86_64/root/ --releasever 34 --setopt=deltarpm=False --allowerasing --disableplugin=local --disableplugin=spacewalk install /home/amender/rpmbuild/SPECS/scout/copr-build-1686845/scout-debuginfo-0.12.0-1.fc34.x86_64.rpm /home/amender/rpmbuild/SPECS/scout/copr-build-1686845/golang-github-liamg-scout-devel-0.12.0-1.fc34.noarch.rpm /home/amender/rpmbuild/SPECS/scout/copr-build-1686845/scout-0.12.0-1.fc34.x86_64.rpm --setopt=tsflags=nocontexts
Rpmlint ------- Checking: scout-0.12.0-1.fc34.x86_64.rpm golang-github-liamg-scout-devel-0.12.0-1.fc34.noarch.rpm scout-0.12.0-1.fc34.src.rpm scout.x86_64: W: spelling-error Summary(en_US) fuzzer -> fuzzier, fuzzes, fuzzed scout.x86_64: W: spelling-error %description -l en_US fuzzer -> fuzzier, fuzzes, fuzzed scout.x86_64: W: no-manual-page-for-binary scout golang-github-liamg-scout-devel.noarch: W: spelling-error Summary(en_US) fuzzer -> fuzzier, fuzzes, fuzzed golang-github-liamg-scout-devel.noarch: W: spelling-error %description -l en_US fuzzer -> fuzzier, fuzzes, fuzzed golang-github-liamg-scout-devel.noarch: W: hidden-file-or-dir /usr/share/gocode/src/github.com/liamg/scout/.goipath scout.src: W: spelling-error Summary(en_US) fuzzer -> fuzzier, fuzzes, fuzzed scout.src: W: spelling-error %description -l en_US fuzzer -> fuzzier, fuzzes, fuzzed 3 packages and 0 specfiles checked; 0 errors, 8 warnings.
Source checksums ---------------- https://github.com/liamg/scout/archive/v0.12.0/scout-0.12.0.tar.gz : CHECKSUM(SHA256) this package : 6933d9ad4b2059de1395ffafea73ab8f70e24ff88fd5e1f26bd00f7f5dad977e CHECKSUM(SHA256) upstream package : 6933d9ad4b2059de1395ffafea73ab8f70e24ff88fd5e1f26bd00f7f5dad977e
Requires -------- scout (rpmlib, GLIBC filtered): libc.so.6()(64bit) libpthread.so.0()(64bit)
golang-github-liamg-scout-devel (rpmlib, GLIBC filtered): go-filesystem golang(github.com/avast/retry-go) golang(github.com/liamg/tml) golang(github.com/sirupsen/logrus) golang(github.com/spf13/cobra)
Provides -------- scout: scout scout(x86-64)
golang-github-liamg-scout-devel: golang(github.com/liamg/scout/internal/app/scout/data) golang(github.com/liamg/scout/internal/app/scout/version) golang(github.com/liamg/scout/pkg/scan) golang(github.com/liamg/scout/pkg/wordlist) golang-github-liamg-scout-devel golang-ipath(github.com/liamg/scout)
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
--- Comment #4 from Fabian Affolter mail@fabian-affolter.ch --- (In reply to Andy Mender from comment #3)
From fedora-review:
- Package does not use a name that already exists. Note: A package with this name already exists. Please check https://src.fedoraproject.org/rpms/scout See: https://docs.fedoraproject.org/en-US/packaging- guidelines/Naming/#_conflicting_package_name
Unfortunately, a "scout" package already exists. In any case, I think the current package should be called "golang-github-liamg-scout" as is the convention for Golang packages. You can leverage the Name field for that:
Name: %{goname}
The package named scout [1] was retired two years ago and prior to that it was unmaintained for around 8 years. I'm about the rules of re-using existing name. I will rename the package.
[1] https://src.fedoraproject.org/rpms/scout
%changelog * Wed Oct 07 2020 Fabian Affolter mail@fabian-affolter.ch - 0.12.0-2 - Update naming (#1882899)
Updated files: Spec URL: https://fab.fedorapeople.org/packages/SRPMS/golang-github-liamg-scout.spec SRPM URL: https://fab.fedorapeople.org/packages/SRPMS/golang-github-liamg-scout-0.12.0...
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
Fabian Affolter mail@fabian-affolter.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Review Request: scout - |Review Request: |Lightweight URL fuzzer and |golang-github-liamg-scout - |spider |Lightweight URL fuzzer and | |spider
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
Andy Mender andymenderunix@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |POST Flags|fedora-review? |fedora-review+
--- Comment #5 from Andy Mender andymenderunix@gmail.com --- New COPR build: https://copr.fedorainfracloud.org/coprs/andymenderunix/scout/build/1698392/
I had a look at the SPEC file for the former "scout" package and since it's a python package, the generated RPM should be called "python3-scout" if anyone ever decides to revive it. I think we're good even if your package generates "scout" and "scout-debuginfo" RPMS like here: https://download.copr.fedorainfracloud.org/results/andymenderunix/scout/fedo...
Package approved.
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
--- Comment #6 from Gwyn Ciesla gwync@protonmail.com --- (fedscm-admin): The Pagure repository was created at https://src.fedoraproject.org/rpms/golang-github-liamg-scout
https://bugzilla.redhat.com/show_bug.cgi?id=1882899 Bug 1882899 depends on bug 1882898, which changed state.
Bug 1882898 Summary: Review Request: golang-github-avast-retry - Simple golang library for retry mechanism https://bugzilla.redhat.com/show_bug.cgi?id=1882898
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1882899 Bug 1882899 depends on bug 1882895, which changed state.
Bug 1882895 Summary: Review Request: golang-github-liamg-tml - Markup language for terminal output https://bugzilla.redhat.com/show_bug.cgi?id=1882895
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|POST |MODIFIED
--- Comment #7 from Fedora Update System updates@fedoraproject.org --- FEDORA-2020-488f80d279 has been submitted as an update to Fedora 33. https://bodhi.fedoraproject.org/updates/FEDORA-2020-488f80d279
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |ON_QA
--- Comment #8 from Fedora Update System updates@fedoraproject.org --- FEDORA-2020-488f80d279 has been pushed to the Fedora 33 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf install --enablerepo=updates-testing --advisory=FEDORA-2020-488f80d279 *` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-488f80d279
See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
https://bugzilla.redhat.com/show_bug.cgi?id=1882899
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA Last Closed| |2020-11-07 02:09:45
--- Comment #9 from Fedora Update System updates@fedoraproject.org --- FEDORA-2020-488f80d279 has been pushed to the Fedora 33 stable repository. If problem still persists, please make note of it in this bug report.
package-review@lists.fedoraproject.org