Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 591970 - dev-lang/erlang-19.1 version bump
Summary: dev-lang/erlang-19.1 version bump
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Dirkjan Ochtman (RETIRED)
URL: http://erlang.org/pipermail/erlang-qu...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-08-23 22:53 UTC by Kenneth Lakin
Modified: 2016-09-24 14:00 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
erlang-19.0.5.ebuild (erlang-19.0.5.ebuild,4.63 KB, text/plain)
2016-08-23 22:53 UTC, Kenneth Lakin
Details
erlang-19.0.1-to-19.0.2.patch (erlang-19.0.1-to-19.0.2.patch,16.52 KB, patch)
2016-08-23 22:54 UTC, Kenneth Lakin
Details | Diff
erlang-19.0-to-19.0.1.patch (erlang-19.0-to-19.0.1.patch,45.84 KB, patch)
2016-08-23 22:54 UTC, Kenneth Lakin
Details | Diff
erlang-19.0.2-to-19.0.3.patch (erlang-19.0.2-to-19.0.3.patch,22.73 KB, patch)
2016-08-23 22:55 UTC, Kenneth Lakin
Details | Diff
erlang-19.0.3-to-19.0.4.patch (erlang-19.0.3-to-19.0.4.patch,6.24 KB, patch)
2016-08-23 22:55 UTC, Kenneth Lakin
Details | Diff
erlang-19.0.4-to-19.0.5.patch (erlang-19.0.4-to-19.0.5.patch,6.33 KB, patch)
2016-08-23 22:56 UTC, Kenneth Lakin
Details | Diff
erlang-19.0.5-to-19.0.6.patch (erlang-19.0.5-to-19.0.6.patch,7.55 KB, patch)
2016-09-15 05:03 UTC, Kenneth Lakin
Details | Diff
erlang-19.0.6-to-19.0.7.patch (erlang-19.0.6-to-19.0.7.patch,6.90 KB, patch)
2016-09-15 05:03 UTC, Kenneth Lakin
Details | Diff
erlang-19.0.7.ebuild (erlang-19.0.7.ebuild,4.73 KB, text/plain)
2016-09-15 05:04 UTC, Kenneth Lakin
Details
erlang-19.1.ebuild (erlang-19.1.ebuild,4.37 KB, text/plain)
2016-09-21 23:31 UTC, Kenneth Lakin
Details
metadata.xml (metadata.xml,830 bytes, text/xml)
2016-09-21 23:32 UTC, Kenneth Lakin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kenneth Lakin 2016-08-23 22:53:29 UTC
Erlang versions 19.0.1->19.0.5 are patch packages rather than full releases, but they do contain bugfixes. Attached is an ebuild for 19.0.5, along with the incremental patches for 19.0->19.0.1 through 19.0.5.
Comment 1 Kenneth Lakin 2016-08-23 22:53:54 UTC
Created attachment 443992 [details]
erlang-19.0.5.ebuild
Comment 2 Kenneth Lakin 2016-08-23 22:54:33 UTC
Created attachment 443994 [details, diff]
erlang-19.0.1-to-19.0.2.patch
Comment 3 Kenneth Lakin 2016-08-23 22:54:56 UTC
Created attachment 443996 [details, diff]
erlang-19.0-to-19.0.1.patch
Comment 4 Kenneth Lakin 2016-08-23 22:55:19 UTC
Created attachment 443998 [details, diff]
erlang-19.0.2-to-19.0.3.patch
Comment 5 Kenneth Lakin 2016-08-23 22:55:39 UTC
Created attachment 444000 [details, diff]
erlang-19.0.3-to-19.0.4.patch
Comment 6 Kenneth Lakin 2016-08-23 22:56:32 UTC
Created attachment 444002 [details, diff]
erlang-19.0.4-to-19.0.5.patch
Comment 7 Dirkjan Ochtman (RETIRED) gentoo-dev 2016-08-26 09:12:11 UTC
Ugh. What's so hard about putting out a full tarball?
Comment 8 Kenneth Lakin 2016-08-26 09:30:59 UTC
(In reply to Dirkjan Ochtman from comment #7)
> Ugh. What's so hard about putting out a full tarball?

I have no idea. When making the diffs from the git tags, I had to remove some changes to stuff in $ERL_TOP/bootstrap introduced in 19.0.2, as it seems that the stuff in bootstrap isn't used when building from the source tarball.
Comment 9 Dirkjan Ochtman (RETIRED) gentoo-dev 2016-08-26 12:47:44 UTC
Can we just take the 19.0.5 tarball from GitHub? I guess that would leave the documentation outdated... I kind of don't want to deal with this patch crap.
Comment 10 Kenneth Lakin 2016-08-26 21:17:20 UTC
(In reply to Dirkjan Ochtman from comment #9)
> Can we just take the 19.0.5 tarball from GitHub? I guess that would leave
> the documentation outdated... I kind of don't want to deal with this patch
> crap.

By the "GitHub tarball" do you mean the zip file that's linked by the "Clone or Download" button for the currently viewed branch/tag: https://github.com/erlang/otp/archive/OTP-19.0.5.zip ?

Also, I'm happy to keep watching the erlang-questions mailing list for "patch package" announcements and making the relevant patches and ebuild changes.
Comment 11 Kenneth Lakin 2016-08-26 23:45:14 UTC
(In reply to Kenneth Lakin from comment #10)
> Also, I'm happy to keep watching the erlang-questions mailing list for
> "patch package" announcements and making the relevant patches and ebuild
> changes.

I had forgotten that I could ask GitHub to create diffs for me: ( https://github.com/erlang/otp/compare/OTP-19.0.4...OTP-19.0.5.patch ). If you're willing to let me do revision bumps for "patch releases", this will make it easier for you to verify that I'm not doing anything incorrectly or maliciously.
Comment 12 Kenneth Lakin 2016-09-15 05:02:23 UTC
The 19.0.6 and 19.0.7 patch packages were released today. It looks like .7 was released to ship a fix that was left out of .6, so I'm only posting the 19.0.7 ebuild.

19.0.6 patch package announcement: http://erlang.org/pipermail/erlang-questions/2016-September/090120.html
19.0.7 announcement: http://erlang.org/pipermail/erlang-questions/2016-September/090129.html
.5 to .6 patch is from here: https://github.com/erlang/otp/compare/OTP-19.0.5...OTP-19.0.6.patch
.6 to .7 patch is from here: https://github.com/erlang/otp/compare/OTP-19.0.6...OTP-19.0.7.patch

I've asked about the patch package vs. full release policy. It _looks_ like micro version bumps (ie .6 to .7) get patch packages, while minor or major version bumps get full releases. That thread starts here: http://erlang.org/pipermail/erlang-questions/2016-September/090135.html
Comment 13 Kenneth Lakin 2016-09-15 05:03:27 UTC
Created attachment 445760 [details, diff]
erlang-19.0.5-to-19.0.6.patch
Comment 14 Kenneth Lakin 2016-09-15 05:03:48 UTC
Created attachment 445762 [details, diff]
erlang-19.0.6-to-19.0.7.patch
Comment 15 Kenneth Lakin 2016-09-15 05:04:21 UTC
Created attachment 445764 [details]
erlang-19.0.7.ebuild
Comment 16 Kenneth Lakin 2016-09-21 23:31:55 UTC
Created attachment 447264 [details]
erlang-19.1.ebuild

Erlang 19.1 has been released. Since this is a full release, there's a release tarball and everything.

This ebuild is virtually identical to the erlang-19.0 ebuild. The only thing changed is an off-by-default USE flag (dirty-schedulers) which enables dirty schedulers. I'll attach the modified metadata.xml next.
Comment 17 Kenneth Lakin 2016-09-21 23:32:19 UTC
Created attachment 447266 [details]
metadata.xml
Comment 18 Dirkjan Ochtman (RETIRED) gentoo-dev 2016-09-24 08:53:28 UTC
Committed this:

commit eb36a77d6c29fabbbcd2471b4df7fd44c19db412
Author: Dirkjan Ochtman <djc@gentoo.org>
Date:   Sat Sep 24 10:52:11 2016 +0200

    dev-lang/erlang: version bump to 19.1 (fixes bug 591970)
    
    Thanks to Kenneth Lakin <kennethlakin@gmail.com> for doing the work.
    
    Package-Manager: portage-2.2.28

Thanks for doing the work! And sorry for not being able to accomodate the patch releases, I just think not releasing tarballs is a boneheaded upstream policy.
Comment 19 Kenneth Lakin 2016-09-24 10:03:14 UTC
(In reply to Dirkjan Ochtman from comment #18)
> Thanks for doing the work!

No problem. I'm happy to do it. Glad the new version made its way into the tree.

> And sorry for not being able to accomodate the patch releases, 
> I just think not releasing tarballs is a boneheaded upstream
> policy.

I understand your opinion on the matter. However, upstream is not likely to budge. Looking at the erlang-questions mailing list history, it seems that they've been doing things this way for a long time. Meanwhile, Gentoo users miss out on bugfix releases.

For reference, the project's versioning scheme is laid out here <http://erlang.org/doc/system_principles/versions.html#version_scheme>. The salient parts for the purposes of this discussion are as follows:

"
In the normal case, a version is constructed as <Major>.<Minor>.<Patch>, where <Major> is the most significant part. ...
The three normal parts <Major>.<Minor>.<Patch> are changed as follows:

* <Major> - Increases when major changes, including incompatibilities, are made.
* <Minor> - Increases when new functionality is added.
* <Patch> - Increases when pure bug fixes are made.
"

Given that upstream isn't going to change their release tarball policy, what needs to be done to ensure that Erlang's patch releases start reliably making their way into the Portage Tree?

I'm happy to do the legwork required to create patches (or -I guess- download GH zip files), build and do smoke testing for these releases on x86 (for as long as my 32-bit machine keeps running) and amd64. If you need me to become a Gentoo Developer and take over maintenance of this package, I could do that, too. (Though I hear that that process takes quite a while.)
Comment 20 Dirkjan Ochtman (RETIRED) gentoo-dev 2016-09-24 14:00:46 UTC
Well, we're always happy to have more devs anyway, so if you're at all interested, that sounds like a good avenue to explore. It does usually take a while, though.

I'm not really a heavy erlang user, I only maintain it because I like to use CouchDB. Since I'm pretty busy with other stuff, dealing with upstream idiosyncracies in how they do their micro releases is really something I can do without, but let's see what happens with 19.1 patch releases.