Re: [OpenWrt-Devel] openwrt/packages: [RFC] Regarding preferences re: switch to codeload

2018-08-19 Thread Daniel F. Dickinson
On 2018-08-19 03:09 PM, Daniel F. Dickinson wrote:
> Since it's holiday season I will wait until after first full week of
> September to close https://github.com/openwrt/packages/issues/6748 which
> discusses this issue.
>
> I would like to say that impatience (and I'm badly guilty of this too),
> is a big part of the problem here and with the perceived
> maintainer problem with the packages feed, and/or the pushing of commits
> by non-maintainers.

Also due to objections with using the list for this discussion (and most
posting being on the issue) I'd suggest to move the discussion to the
ticket.  I admit I'm not particularly happy about the lack of a proper
discussion list for the packages feed (I don't consider GitHub Issues
very helpful in that regard although apparently others do).

Regards,

Daniel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] openwrt/packages: [RFC] Regarding preferences re: switch to codeload

2018-08-19 Thread Daniel F. Dickinson
Since it's holiday season I will wait until after first full week of
September to close https://github.com/openwrt/packages/issues/6748 which
discusses this issue.

I would like to say that impatience (and I'm badly guilty of this too),
is a big part of the problem here and with the perceived
maintainer problem with the packages feed, and/or the pushing of commits
by non-maintainers.

Regards,

Daniel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] openwrt/packages: [RFC] Regarding preferences re: switch to codeload

2018-08-17 Thread Daniel F. Dickinson
On 2018-08-13 01:45 PM, Rosen Penev wrote:
> On Mon, Aug 13, 2018 at 2:45 AM Jo-Philipp Wich  wrote:
>> Hi,
>>
>> personally I'm opposed to the entire code load thing.
>>
>> First of all I was unable to reproduce the tarballs offered by Github.
>>
>> Github seems to use an extended tar (pax) format while we pack our SCM
>> clones using the more traditional ustar format, however even using `tar
>> -cp -H pax --numeric-owner --owner=0 --group=0 --sort=name --mtime ...`
>> seems to yield a different tar stream compared to whatever is offered by
>> Github;
>>
>>  - The order of the entries in the archive also seems to deviate from
>>that of `tar --sort=name`, it looks as if Github archives are sorted
>>using the "C" collate while GNU tar uses something else.
>>
>>  - The PAX header format seems to be different, Github uses a global PAX
>>header while GNU tar produces per-member headers
>>
>>  - There seem to be proprietary tags inside Github tar (comment=)
>>which are not present in the GNU equivalent
>>
>> Furthermore I dislike the idea of tailoring download mechanisms around a
>> specific proprietary service.
>>
>> If the allegations about hash changes for unknown reasons are correct,
>> then this raises a huge red flag for me
> I can only imagine this to be the case if git history gets changed.
> I'm sure it's automated.
>> and I see no reason to not
>> assume that codeload tarballs will eventually change as well, become
>> rate limited, redirected, discontinued or changed in other arbitrary ways.
> Well, there are people who believe Microsoft will cripple GitHub.
>> So TLDR; I prefer a locally reproducible, cached tarball of a given SCM
>> clone over an opaque Github offer.
> It's not reproducible in all cases. See
> https://github.com/openwrt/openwrt/pull/815
>
> We could not produce the same tarball with the same hash. I was using
> Ubuntu 16.04 FWIW.
>>
>> My 2cents,
> Mine are that it's better to use a tarball that is not locally
> generated. I understand that ultimately the buildbots generate the
> tarballs but then you potentially have a situation where a package
> bump has the wrong hash since the buildbot and someone's local
> environment can differ enough to matter.
>
> My understanding is that OpenWrt can be built on Linux and some BSDs
> like macOS or FreeBSD.
>
> The initial motivation for moving packages to codeload was to adjust
> uscan's reporting of version numbers as git revisions when there are
> git tags available. eg: using
>
> PKG_SOURCE_VERSION:=1ee4c4eac2f1f771ecc57d4f7ce298739bbc8a82 vs.
> PKG_SOURCE_VERSION:=v$(PKG_VERSION)
>
> I also don't see why both codeload and buildbot generated tarballs
> can't coexist.

Based on actual responses (most of which were on the GitHub issue not
here), it seems the majority opinion is to not actually care about this
/ leave it individual maintainers to do decide.

If that's not the case please post on the ticket and/or here else I
shall close ticket and Rosen Perev and Daniel Englberg(sp?) (@neheb and
@diizzy) will be promoting this to maintainers on GitHub.

I wanted to make sure this was discussed openly, but if not enough
people actually care to comment, and it seems majority opinion is to no
care, then I guess the discussion wasn't needed.

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] openwrt/packages: [RFC] Regarding preferences re: switch to codeload

2018-08-13 Thread Daniel F. Dickinson
On 2018-08-13 01:45 PM, Rosen Penev wrote:

>> Furthermore I dislike the idea of tailoring download mechanisms around a
>> specific proprietary service.

This I agree with

>>
>> If the allegations about hash changes for unknown reasons are correct,
>> then this raises a huge red flag for me
> I can only imagine this to be the case if git history gets changed.
> I'm sure it's automated.

Well it's been happening intermittently for a least 2-3 years from what
I've seen myself and heard from others.  My own theory is a flaw in
their reproducible builds strategy, and for some reason or other
automated rebuilding of the tarballs even when the code hasn't changed.

>> and I see no reason to not
>> assume that codeload tarballs will eventually change as well, become
>> rate limited, redirected, discontinued or changed in other arbitrary ways.
> Well, there are people who believe Microsoft will cripple GitHub.

I don't MS is relevant to the question, only profit motive, TBH.  It's
more have a reasonable concern that the drive to monetize will result in
changes that make community more difficult (at best).

>>
>> So TLDR; I prefer a locally reproducible, cached tarball of a given SCM
>> clone over an opaque Github offer.
> It's not reproducible in all cases. See
> https://github.com/openwrt/openwrt/pull/815
> 
> We could not produce the same tarball with the same hash. I was using
> Ubuntu 16.04 FWIW

Can you reproduce the non-reproduction, or was it a one-off that could
be attribute temporary local issues?  I'm sure the OpenWrt core team
would really like to know about verifiable cases of issues with failures
to reproduce, since this is considered rather important.

>>
>>
>> My 2cents,
> Mine are that it's better to use a tarball that is not locally
> generated. I understand that ultimately the buildbots generate the
> tarballs but then you potentially have a situation where a package
> bump has the wrong hash since the buildbot and someone's local
> environment can differ enough to matter.

The whole point of the drive for reproducible builds (and tarballs) is
to identify all factors that influence the final hash and so that one
can be guaranteed of the same result irrespective of environment.  If
there is verifiable evidence somethings been missed, please file details
at https://bugs.openwrt.org as that's not just an issue with an
individual package but with the core system.

> 
> My understanding is that OpenWrt can be built on Linux and some BSDs
> like macOS or FreeBSD.
> 
> The initial motivation for moving packages to codeload was to adjust
> uscan's reporting of version numbers as git revisions when there are
> git tags available. eg: using
> 
> PKG_SOURCE_VERSION:=1ee4c4eac2f1f771ecc57d4f7ce298739bbc8a82 vs.
> PKG_SOURCE_VERSION:=v$(PKG_VERSION)

I'm not exactly convinced that's a good reason to adopt a tree-wide
change involving a propriety and opaque mechanism.

> 
> I also don't see why both codeload and buildbot generated tarballs
> can't coexist.

Have you looked at how the build system works in this regard?

Regards,

Daniel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] openwrt/packages: [RFC] Regarding preferences re: switch to codeload

2018-08-13 Thread Rosen Penev
On Mon, Aug 13, 2018 at 2:45 AM Jo-Philipp Wich  wrote:
>
> Hi,
>
> personally I'm opposed to the entire code load thing.
>
> First of all I was unable to reproduce the tarballs offered by Github.
>
> Github seems to use an extended tar (pax) format while we pack our SCM
> clones using the more traditional ustar format, however even using `tar
> -cp -H pax --numeric-owner --owner=0 --group=0 --sort=name --mtime ...`
> seems to yield a different tar stream compared to whatever is offered by
> Github;
>
>  - The order of the entries in the archive also seems to deviate from
>that of `tar --sort=name`, it looks as if Github archives are sorted
>using the "C" collate while GNU tar uses something else.
>
>  - The PAX header format seems to be different, Github uses a global PAX
>header while GNU tar produces per-member headers
>
>  - There seem to be proprietary tags inside Github tar (comment=)
>which are not present in the GNU equivalent
>
> Furthermore I dislike the idea of tailoring download mechanisms around a
> specific proprietary service.
>
> If the allegations about hash changes for unknown reasons are correct,
> then this raises a huge red flag for me
I can only imagine this to be the case if git history gets changed.
I'm sure it's automated.
> and I see no reason to not
> assume that codeload tarballs will eventually change as well, become
> rate limited, redirected, discontinued or changed in other arbitrary ways.
Well, there are people who believe Microsoft will cripple GitHub.
>
> So TLDR; I prefer a locally reproducible, cached tarball of a given SCM
> clone over an opaque Github offer.
It's not reproducible in all cases. See
https://github.com/openwrt/openwrt/pull/815

We could not produce the same tarball with the same hash. I was using
Ubuntu 16.04 FWIW.
>
>
> My 2cents,
Mine are that it's better to use a tarball that is not locally
generated. I understand that ultimately the buildbots generate the
tarballs but then you potentially have a situation where a package
bump has the wrong hash since the buildbot and someone's local
environment can differ enough to matter.

My understanding is that OpenWrt can be built on Linux and some BSDs
like macOS or FreeBSD.

The initial motivation for moving packages to codeload was to adjust
uscan's reporting of version numbers as git revisions when there are
git tags available. eg: using

PKG_SOURCE_VERSION:=1ee4c4eac2f1f771ecc57d4f7ce298739bbc8a82 vs.
PKG_SOURCE_VERSION:=v$(PKG_VERSION)

I also don't see why both codeload and buildbot generated tarballs
can't coexist.
> Jo
>
> ___
> openwrt-devel mailing list
> openwrt-devel@lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] openwrt/packages: [RFC] Regarding preferences re: switch to codeload

2018-08-13 Thread John Crispin



On 13/08/18 11:45, Jo-Philipp Wich wrote:

So TLDR; I prefer a locally reproducible, cached tarball of a given SCM
clone over an opaque Github offer.


I would like to second that notion
    John

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: [OpenWrt-Devel] openwrt/packages: [RFC] Regarding preferences re: switch to codeload

2018-08-13 Thread Jo-Philipp Wich
Hi,

personally I'm opposed to the entire code load thing.

First of all I was unable to reproduce the tarballs offered by Github.

Github seems to use an extended tar (pax) format while we pack our SCM
clones using the more traditional ustar format, however even using `tar
-cp -H pax --numeric-owner --owner=0 --group=0 --sort=name --mtime ...`
seems to yield a different tar stream compared to whatever is offered by
Github;

 - The order of the entries in the archive also seems to deviate from
   that of `tar --sort=name`, it looks as if Github archives are sorted
   using the "C" collate while GNU tar uses something else.

 - The PAX header format seems to be different, Github uses a global PAX
   header while GNU tar produces per-member headers

 - There seem to be proprietary tags inside Github tar (comment=)
   which are not present in the GNU equivalent

Furthermore I dislike the idea of tailoring download mechanisms around a
specific proprietary service.

If the allegations about hash changes for unknown reasons are correct,
then this raises a huge red flag for me and I see no reason to not
assume that codeload tarballs will eventually change as well, become
rate limited, redirected, discontinued or changed in other arbitrary ways.

So TLDR; I prefer a locally reproducible, cached tarball of a given SCM
clone over an opaque Github offer.


My 2cents,
Jo

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


[OpenWrt-Devel] openwrt/packages: [RFC] Regarding preferences re: switch to codeload

2018-08-13 Thread Daniel F. Dickinson


Posting here as this seems to me to be a project decision:

From: https://github.com/openwrt/packages/issues/6748

> @neheb Has submitted a number of PR's (referenced in #6584), full list of 
> his/her PR's (which probably include the codeload thing for any github 
> pulls): https://github.com/openwrt/packages/pulls/neheb
> 
> @diizzyy has also mentioned codeload. @karlp appears to feel the change is 
> for marginal gain (based on #6584 (comment)).
> 
> I personally think that tree-wide changes, especially for something @yousong 
> has been trying solve another way ought t be clearly discussed and not just 
> brought in through the back door, hence this ticket and I'll be following up 
> on openwrt-devel as well.

** Clarification for neheb this is for GitHub projects without release
tarballs; of course as I understand the GitHub release tarball
situation, the hash changes for unknown reasons for time to time, which
makes them useless.

Regards,

Daniel

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel