This service will be undergoing maintenance at 00:00 UTC, 2017-10-23 It is expected to last about 30 minutes
Bug 1289827 - Please package golang-googlecode-goauth2 for epel7
Please package golang-googlecode-goauth2 for epel7
Status: CLOSED ERRATA
Product: Fedora EPEL
Classification: Fedora
Component: golang-googlecode-goauth2 (Show other bugs)
epel7
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Fridolín Pokorný
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-12-08 23:39 EST by Adam Goode
Modified: 2016-03-15 21:23 EDT (History)
5 users (show)

See Also:
Fixed In Version: golang-googlecode-goauth2-0-0.15.git8914e50.fc23
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-03-15 21:23:10 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Adam Goode 2015-12-08 23:39:06 EST
Description of problem:
Please package golang-googlecode-goauth2 for epel7.
Comment 1 Jan Chaloupka 2015-12-24 09:30:40 EST
I don't think it is a good idea to debundle golang dependencies for epel7 as there is a high chance of migrating epel7 projects into rhel7 causing repeated removal of dependencies from epel7.

The same happened for etcd. I am not against debundling in epel7. However, after experience with fedora and el6, it just another overhead without much benefits. What project in epel7 needs goauth2?
Comment 2 Adam Goode 2015-12-25 20:07:59 EST
This makes a lot of sense, but is the first I've heard of this policy. I put the same comment on the gofed bug.

The Fedora Go packaging draft needs an update with this information.
Comment 3 Jan Chaloupka 2015-12-28 06:42:10 EST
Right, Go packaging draft has still some unfinished issues and holes. Lets put it into a list of issues [1].

[1] https://github.com/gofed/gofed/issues/77
Comment 4 Jan Chaloupka 2015-12-30 08:36:42 EST
https://fedoraproject.org/wiki/PackagingDrafts/Go#Packaging_Binaries, subsection "Bundled or de-bundled".

This update actually does not change anything. It is just a note. [1] says:

"EPEL packages should only enhance and never disturb the Enterprise Linux distributions they were build for."

and

"The packages in the repository should, if possible, be maintained in similar ways to the Enterprise Packages they were built against"

Justification:
- goauth2 depends on 3 other projects: 
BuildRequires: golang(golang.org/x/net/context)
BuildRequires: golang(google.golang.org/appengine)
BuildRequires: golang(google.golang.org/appengine/urlfetch)
BuildRequires: golang(google.golang.org/cloud/compute/metadata)
- net depends on:
BuildRequires:  golang(code.google.com/p/go.text/encoding)
BuildRequires:  golang(code.google.com/p/go.text/encoding/charmap)
BuildRequires:  golang(code.google.com/p/go.text/encoding/japanese)
BuildRequires:  golang(code.google.com/p/go.text/encoding/korean)
BuildRequires:  golang(code.google.com/p/go.text/encoding/simplifiedchinese)
BuildRequires:  golang(code.google.com/p/go.text/encoding/traditionalchinese)
BuildRequires:  golang(code.google.com/p/go.text/encoding/unicode)
BuildRequires:  golang(code.google.com/p/go.text/transform)
- appengine on:
BuildRequires: golang(github.com/golang/protobuf/proto)
BuildRequires: golang(golang.org/x/net/context)
- cloud on:
BuildRequires: golang(github.com/golang/protobuf/proto)
BuildRequires: golang(golang.org/x/net/context)
BuildRequires: golang(google.golang.org/api/bigquery/v2)
BuildRequires: golang(google.golang.org/api/container/v1beta1)
BuildRequires: golang(google.golang.org/api/googleapi)
BuildRequires: golang(google.golang.org/api/storage/v1)
BuildRequires: golang(google.golang.org/grpc)
BuildRequires: golang(google.golang.org/grpc/credentials)
BuildRequires: golang(google.golang.org/grpc/credentials/oauth)
- grpc on:
BuildRequires: golang(github.com/bradfitz/http2)
BuildRequires: golang(github.com/bradfitz/http2/hpack)
BuildRequires: golang(github.com/golang/glog)
BuildRequires: golang(github.com/golang/protobuf/proto)
BuildRequires: golang(golang.org/x/net/context)
BuildRequires: golang(golang.org/x/net/trace)
BuildRequires: golang(golang.org/x/oauth2)
BuildRequires: golang(golang.org/x/oauth2/google)
BuildRequires: golang(golang.org/x/oauth2/jwt)
- and I can continue with http2,glog

https://github.com/golang/oauth2 project does not provide any Godeps.json file or mechanism to state which commits of each dependency is required. So at best I can guess and approximate. This is a general problem of golang projects.

What it would mean to package goauth2 for epel7:
1) repeat packaging hell as we already have in Fedora
2) invest packaging and maintenance time (and doable to work already done in Fedora)
3) create unstable environment as goauth2 dependencies can change over time
4) risk possible removal of goauth2 and all its dependencies due to their transfer to RHEL7.

This is quite disturbing and orthogonal to the current effort committed in RHEL7.

[1] https://fedoraproject.org/wiki/EPEL/GuidelinesAndPolicies#Policy
[2] https://fedorahosted.org/fesco/ticket/1483#comment:17

===========================

Packaging goauth2 for epel7 is not against policy. However, I don't recommended it. It generates more work with almost no benefits. In future, all the work can be in vain. Feel free to request for new epel7 branch for goauth2 and git merge from master branch. I would reconsider and ask Fesco for exception for epel7 branch. Or if there is an argument that can be found complying with policies [1] and [2]. Maybe "goauth2 project does not provide a reliable way of building from system libraries due to unstability of its changing dependencies breaking backward compatibility". In this cause it would comply with the third sentence in [1].
Comment 5 Fedora Update System 2016-03-06 08:57:38 EST
golang-googlecode-goauth2-0-0.15.git8914e50.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-3ba8ead003
Comment 6 Fedora Update System 2016-03-06 19:26:29 EST
golang-googlecode-goauth2-0-0.15.git8914e50.fc23 has been pushed to the Fedora 23 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-2016-3ba8ead003
Comment 7 Fedora Update System 2016-03-15 21:23:07 EDT
golang-googlecode-goauth2-0-0.15.git8914e50.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

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