Bug 1426965

Summary: Review Request: go-i18n - Translate Go programs into multiple languages
Product: [Fedora] Fedora Reporter: Athos Ribeiro <athoscribeiro>
Component: Package ReviewAssignee: Fabio Valentini <decathorpe>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: decathorpe, package-review, panemade
Target Milestone: ---Flags: decathorpe: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-04-04 16:02:43 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1426972    

Description Athos Ribeiro 2017-02-26 22:01:15 UTC
Spec URL: https://athoscr.fedorapeople.org/packaging/golang-github-nicksnyder-go-i18n.spec
SRPM URL: https://athoscr.fedorapeople.org/packaging/golang-github-nicksnyder-go-i18n-1.7.0-1.src.rpm

koji build: https://koji.fedoraproject.org/koji/taskinfo?taskID=18079655

Description: 
Translate your Go program into multiple languages with templates and CLDR plural support

Fedora Account System Username: athoscr

Comment 3 Fabio Valentini 2017-03-14 11:28:47 UTC
Taking this review.

Comment 4 Fabio Valentini 2017-03-15 14:22:08 UTC
Initial comments:

1) I think the peculiar definition of %gobuild (at line 18) is necessary for the successful generation of debuginfo packages, so that should be OK. Maybe add a comment why it's there?

2) Since the package provides a binary (goi18n), I think the main package name could be just named "goi18n" (see [1]) with subpackages "golang-github-nicksnyder-go-i18n-devel" and "golang-github-nicksnyder-go-i18n-unit-test-devel" (just like right now). But using the appropriate "Provides:" for the main package name (like you do now) should be fine too.

3) Please leave the %commit and %shortcommit definitions in the spec (just paste the commit hash of the used tag) - this is used by some of the automatic tooling for version tracking, for example like this:

# version 1.7.0 == commit f757c9f9b69c16ff69d38dbf224be28a7b6537bb
%global commit          f757c9f9b69c16ff69d38dbf224be28a7b6537bb
%global shortcommit     %(c=%{commit}; echo ${c:0:7})

4) What is the purpose of the %if-else block at line 45? There are no bundled sources present, so the BR on golang(gopkg.in/yaml.v2) should be there unconditionally.

5) Since the main package BRs: golang(gopkg.in/yaml.v2) anyway, you can remove it the -devel subpackage (line 61) along with the enclosing %if-endif block.

6) You can remove the empty %if-endif block at line 82-85.

7) Since there are no bundled sources (and both branches of the if-else are identical anyway), you can remove the wrapping around the GOPATH definition in line 106/109.

8) Why are you including a commented-out build / install / %files entry of the codegen binary? Maybe you could include a comment as to why you don't build this binary, but the disabled build alone is not really informative / helpful.


[1]: https://fedoraproject.org/wiki/PackagingDrafts/Go#Packaging_Binaries

Comment 5 Athos Ribeiro 2017-03-15 18:17:03 UTC
Hello Fabio,

Thank you for the nice review!

1) Done.

2) Upstream names the project go-i18n, but names the main binary goi18n. I will follow the guidelines, naming the package after upstream (go-i18n).
 
3) Done.

4) Done.
 
5) Done.

6) Done.

7) Done.

8) The codegen subpackage aims the generations of source code for new locales. I do believe this should not be shipped, but sources are shipped within the devel subpackage. I decided to keep the comments on the binary so if anyone ever feels that The binary should be shipped, all we'd need to do is remove the comments. I just added a new macro to build with codegen (deactivated) and some comments on it.

Spec URL: https://athoscr.fedorapeople.org/packaging/go-i18n.spec
SRPM URL: https://athoscr.fedorapeople.org/packaging/go-i18n-1.7.0-4.fc25.src.rpm

Comment 6 Fabio Valentini 2017-03-15 19:52:13 UTC
Looks very good now! Package approved.

PS: There's a typo in line 12 (s/loacles/locales) - just fix it before committing the .spec in git.

Comment 7 Athos Ribeiro 2017-03-15 20:01:59 UTC
Thank you, Fabio. I will change the typo!

I requested the package repository.

Comment 8 Gwyn Ciesla 2017-03-15 21:45:27 UTC
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/go-i18n

Comment 9 Fedora Update System 2017-03-15 22:18:50 UTC
go-i18n-1.7.0-4.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-ec7e584128

Comment 10 Fedora Update System 2017-03-16 00:51:37 UTC
go-i18n-1.7.0-4.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-ec7e584128

Comment 11 Fedora Update System 2017-03-16 15:40:44 UTC
go-i18n-1.7.0-5.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-a8dc79a021

Comment 12 Fedora Update System 2017-03-17 02:19:38 UTC
go-i18n-1.7.0-5.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-a8dc79a021

Comment 13 Fedora Update System 2017-04-04 16:02:43 UTC
go-i18n-1.7.0-5.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.