Bug 2070881 - Review Request: golang-github-mock - gomock is a mocking framework for the Go programming language
Summary: Review Request: golang-github-mock - gomock is a mocking framework for the Go...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Fabio Alessandro Locati
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-04-01 09:30 UTC by Carmelo Sarta
Modified: 2022-04-07 17:11 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2022-04-07 17:11:40 UTC
Type: ---
Embargoed:
me: fedora-review+


Attachments (Terms of Use)

Description Carmelo Sarta 2022-04-01 09:30:16 UTC
Spec URL: https://raw.githubusercontent.com/Laiot/golang-github-mock-rpm/master/golang-github-mock.spec
SRPM URL: https://github.com/Laiot/golang-github-mock-rpm/blob/master/golang-github-mock-1.6.0-1.fc36.src.rpm
Description: gomock is a mocking framework for the Go programming language. It integrates well with Go's built-in testing package, but can be used in other contexts too.
Fedora Account System Username: laiot

Comment 1 Fabio Alessandro Locati 2022-04-02 08:29:45 UTC
Hi Carmelo,

Thanks for the effort, and overall a good package! I see a couple of things to tweak before it's approvable:

1. For future request, please provide direct links and not links that require clicking around (not only for the SPEC, but also for the SRPM)
2. It seems like you were trying to use %autorelease and %autochangelog, but positioned them in the wrong place.

* %autochangelog should be put in place of the "standard" changelog, not after it

* %autorelease should be used as a parameter for "Release:", like:

    Release:        %autorelease

3. The shipped binary (mockgen) only utility is to generate the source code, so we do not need to have it within the package, since we are already ship the output of it.

To strip the binary you should:
* Add the configuration to let the builder know to produce platform-independent RPM, since we are only going to ship sources:

    BuildArch:      noarch

* Remove the build of the binary:

    for cmd in mockgen; do
      %gobuild -o %{gobuilddir}/bin/$(basename $cmd) %{goipath}/$cmd
    done

* Remove the installation of the binary and respective folder:

    install -m 0755 -vd                     %{buildroot}%{_bindir}
    install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/

* Since we only need to put files in the -devel package, we can also remove the whole %file block since %gopkgfiles will take care of all files and put them in the right location without help:

    %files
    %license LICENSE
    %doc AUTHORS CONTRIBUTING.md CONTRIBUTORS README.md sample/README.md
    %{_bindir}/*

Comment 2 Carmelo Sarta 2022-04-03 08:25:32 UTC
Thank Fale for your help.
I pushed the fixed files in the same repo.

Spec URL: https://raw.githubusercontent.com/Laiot/golang-github-mock-rpm/master/golang-github-mock.spec
SRPM URL: https://github.com/Laiot/golang-github-mock-rpm/raw/7ae36f1cac7dad54a958079b640d0ab9a96ec38e/golang-github-mock-1.6.0-1.fc36.src.rpm
Description: gomock is a mocking framework for the Go programming language. It integrates well with Go's built-in testing package, but can be used in other contexts too.
Fedora Account System Username: laiot

Comment 3 Fabio Alessandro Locati 2022-04-03 21:37:29 UTC
Please remove the manual changelog entries:

    * Fri Apr 01 2022 laiot <carmelo.sarta.main> - 1.6.0-1
    - Initial package

Since you are already using %autochangelog that auto-creates those lines.

Comment 4 Carmelo Sarta 2022-04-05 08:02:41 UTC
Removed the manual changelog entry and pushed the new spec.

Comment 5 Fabio Alessandro Locati 2022-04-05 20:09:42 UTC
go2rpm package, fedora-review is correct:

- The specfile is sane.
- License is correct
- Builds successfully in mock
- No rpmlint errors
- %check section passes
- The latest version is packaged
- The package complies with the Packaging Guidelines.

Package approved! On import, don't forget to do the following:

- Add package to release-monitoring.org
- Add package to Koschei.
- Give go-sig privileges on package
- Close the review bug by referencing it in the rpm changelog and/or the Bodhi ticket. (rhbz#BUG_ID)

Thanks!


Note You need to log in before you can comment on or make changes to this bug.