[Vm-dev] missing dependency ftp://.../libpng-1.6.29.tar.gz
Fabio Niephaus
lists at fniephaus.com
Sun Dec 23 13:08:48 UTC 2018
On Sun, 23 Dec 2018 at 1:34 pm, Ben Coman <btc at openinworld.com> wrote:
>
>
>
> On Sun, 23 Dec 2018 at 01:56, Fabio Niephaus <lists at fniephaus.com> wrote:
>
>>
>> Hi all,
>>
>> On Sat, Dec 22, 2018 at 6:28 PM Nicolas Cellier
>> <nicolas.cellier.aka.nice at gmail.com> wrote:
>> >
>> >
>> > Submodule is also a possibility. If the repo is not on github, we could
>> clone it under opensmalltalk in order to reduce web failures.
>> >
>> > Le sam. 22 déc. 2018 à 14:45, Eliot Miranda <eliot.miranda at gmail.com>
>> a écrit :
>> >>
>> >>
>> >> Hi Ben,
>> >>
>> >> On Dec 22, 2018, at 5:09 AM, Ben Coman <btc at openinworld.com> wrote:
>> >>
>> >> It funny when the system seems to fight back.
>> >> Just as I think I resolve my freetype build issues,
>> >> my Windows build started failing as follows...
>> >> > wget -q --no-check-certificate -O
>> ../../.thirdparty-cache/libpng-1.6.29.tar.gz
>> ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.29.tar.gz
>> >> > make: *** [../third-party/Makefile.libpng:19:
>> ../../.thirdparty-cache/libpng-1.6.29.tar.gz] Error 8
>> >>
>> >> What I see at ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/
>> >> is...
>> >> Name Size Date Modified
>> >> libpng-1.6.34-LICENSE.txt 4.9 kB 29/09/2017, 08:00:00
>> >> libpng-1.6.34-README.txt 96 3B 29/09/2017, 08:00:00
>> >> libpng-1.6.34.tar.gz 1.4 MB 29/09/2017, 08:00:00
>> >> libpng-1.6.34.tar.gz.asc 819 B 29/09/2017, 08:00:00
>> >> libpng-1.6.34.tar.xz 975 kB 29/09/2017, 08:00:00
>> >> libpng-1.6.34.tar.xz.asc 819 B 29/09/2017, 08:00:00
>> >> lpng1634.7z 734 kB 29/09/2017, 08:00:00
>> >> lpng1634.7z.asc 819 B 29/09/2017, 08:00:00
>> >> lpng1634.zip 1.3 MB 29/09/2017, 08:00:00
>> >> lpng1634.zip.asc 819 B 29/09/2017, 08:00:00
>> >>
>> >> So did version 1.6.29 exist yesterday but not today?
>> >> or am I going crazy?
>> >>
>> >>
>> >> :-(
>> >>
>> >> Anyway, should our builds avoid referencing external resources not
>> under our control? Or would it be be better to copy the required tar files
>> to a server our community controls, (either files.opensmalltalk.org or
>> file.pharo.org)?
>> >>
>> >>
>> >> I don’t see how the former is possible :-(. Do some variation of the
>> latter is necessary. I like your suggestion of files.pharo.org;
>> files.opensmalltalk.org doesn’t exist and do would need funding. I
>> think adding the tar files to opensmalltalk-vm itself would be a huge
>> mistake; it would cause the repository to bloat quite quickly right?
>
>
> Yes. I agree.
>
Agreed. Git is not designed to store large files and removing large files
from the history was the most annoying part when we migrated from SVN to
Git.
>
>> So what are the logistics of using files.pharo.org?
>>
>
> That would be up to Esteban, et al,
> but Fabio's suggestion might be a better way to go...
>
I'm in favor of keeping the VM as independent as possible, so I'd like a
solution everyone can easily contribute to.
>
>> How about something like this:
>> https://github.com/OpenSmalltalk/opensmalltalk-vm-dependencies
>>
>> We basically maintain a second repository with links to all
>> dependencies and mirror corresponding files as part of a single GitHub
>> release (see [1] for limitations). Advantages: free plus TravisCI and
>> AppVeyor optimize their network connection to GitHub.
>
>
>> Example release:
>> https://github.com/OpenSmalltalk/opensmalltalk-vm-dependencies/releases
>>
>> Example download link:
>>
>> https://github.com/OpenSmalltalk/opensmalltalk-vm-dependencies/releases/download/latest/libpng-1.6.29.tar.gz
>
>
> ... but actually, like Nicolas suggests I've often thought keeping a local
> fork of dependencies
> to be a pragmatic safety measure (e.g. under a branch called "mirror").
> But since we end up with dll and so files
> I wonder if there is another path than using submodules. When a newcomer
> freshly clones opensmalltalk-vm
> the majority of build time for pharo.cog.spur is the third-party
> libraries. This seems a bit of a waste
> when those dependencies don't change often. If we have a repo per
> dependency a CI build
> could "release" built dependent dll and so files. So these could be
> downloaded rather than built each time
>
I hope third party libs only need to be compiled once after a fresh
checkout. To avoid this overhead, we cache all of this on CI. But I agree,
the real problem is that some external plugins require third party libs and
are part of the OSVM repo. Why do we have a VM which is easy to extend if
we don't use that mechanism? So +1 for externalizing external plugins into
other repos under the OpenSmallalk umbrella. This way, breaking a plugin
doesn't break the rest of the VM.
Fabio
.
>
> cheers -ben
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20181223/a8a2f05e/attachment-0001.html>
More information about the Vm-dev
mailing list