<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr">On Sun, 23 Dec 2018 at 01:56, Fabio Niephaus <<a href="mailto:lists@fniephaus.com">lists@fniephaus.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <br>
Hi all,<br>
<br>
On Sat, Dec 22, 2018 at 6:28 PM Nicolas Cellier<br>
<<a href="mailto:nicolas.cellier.aka.nice@gmail.com" target="_blank">nicolas.cellier.aka.nice@gmail.com</a>> wrote:<br>
><br>
><br>
> Submodule is also a possibility. If the repo is not on github, we could clone it under opensmalltalk in order to reduce web failures.<br>
><br>
> Le sam. 22 déc. 2018 à 14:45, Eliot Miranda <<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>> a écrit :<br>
>><br>
>><br>
>> Hi Ben,<br>
>><br>
>> On Dec 22, 2018, at 5:09 AM, Ben Coman <<a href="mailto:btc@openinworld.com" target="_blank">btc@openinworld.com</a>> wrote:<br>
>><br>
>> It funny when the system seems to fight back.<br>
>> Just as I think I resolve my freetype build issues,<br>
>> my Windows build started failing as follows...<br>
>> > wget -q --no-check-certificate  -O ../../.thirdparty-cache/libpng-1.6.29.tar.gz <a href="ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.29.tar.gz" rel="noreferrer" target="_blank">ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.29.tar.gz</a><br>
>> > make: *** [../third-party/Makefile.libpng:19: ../../.thirdparty-cache/libpng-1.6.29.tar.gz] Error 8<br>
>><br>
>> What I see at <a href="ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/" rel="noreferrer" target="_blank">ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/</a><br>
>> is...<br>
>> Name                           Size   Date Modified<br>
>> libpng-1.6.34-LICENSE.txt    4.9 kB   29/09/2017, 08:00:00<br>
>> libpng-1.6.34-README.txt      96 3B   29/09/2017, 08:00:00<br>
>> libpng-1.6.34.tar.gz         1.4 MB   29/09/2017, 08:00:00<br>
>> libpng-1.6.34.tar.gz.asc      819 B   29/09/2017, 08:00:00<br>
>> libpng-1.6.34.tar.xz         975 kB   29/09/2017, 08:00:00<br>
>> libpng-1.6.34.tar.xz.asc      819 B   29/09/2017, 08:00:00<br>
>> lpng1634.7z                  734 kB   29/09/2017, 08:00:00<br>
>> lpng1634.7z.asc               819 B   29/09/2017, 08:00:00<br>
>> lpng1634.zip                 1.3 MB   29/09/2017, 08:00:00<br>
>> lpng1634.zip.asc              819 B   29/09/2017, 08:00:00<br>
>><br>
>> So did version 1.6.29 exist yesterday but not today?<br>
>> or am I going crazy?<br>
>><br>
>><br>
>> :-(<br>
>><br>
>> 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 <a href="http://files.opensmalltalk.org" rel="noreferrer" target="_blank">files.opensmalltalk.org</a> or <a href="http://file.pharo.org" rel="noreferrer" target="_blank">file.pharo.org</a>)?<br>
>><br>
>><br>
>> I don’t see how the former is possible :-(. Do some variation of the latter is necessary.  I like your suggestion of <a href="http://files.pharo.org" rel="noreferrer" target="_blank">files.pharo.org</a>; <a href="http://files.opensmalltalk.org" rel="noreferrer" target="_blank">files.opensmalltalk.org</a> 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?  </blockquote><div><br></div><div>Yes. I agree.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">So what are the logistics of using <a href="http://files.pharo.org" rel="noreferrer" target="_blank">files.pharo.org</a>?<br></blockquote><div><br></div><div>That would be up to Esteban, et al,</div><div>but Fabio's suggestion might be a better way to go...</div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
How about something like this:<br>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm-dependencies" rel="noreferrer" target="_blank">https://github.com/OpenSmalltalk/opensmalltalk-vm-dependencies</a><br>
<br>
We basically maintain a second repository with links to all<br>
dependencies and mirror corresponding files as part of a single GitHub<br>
release (see [1] for limitations). Advantages: free plus TravisCI and<br>
AppVeyor optimize their network connection to GitHub. </blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Example release:<br>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm-dependencies/releases" rel="noreferrer" target="_blank">https://github.com/OpenSmalltalk/opensmalltalk-vm-dependencies/releases</a><br>
<br>
Example download link:<br>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm-dependencies/releases/download/latest/libpng-1.6.29.tar.gz" rel="noreferrer" target="_blank">https://github.com/OpenSmalltalk/opensmalltalk-vm-dependencies/releases/download/latest/libpng-1.6.29.tar.gz</a></blockquote><div><br></div><div>... but actually, like Nicolas suggests I've often thought keeping a local fork of dependencies </div><div> to be a pragmatic safety measure (e.g. under a branch called "mirror").  But since we end up with dll and so files</div><div>I wonder if there is another path than using submodules.  When a newcomer freshly clones opensmalltalk-vm</div><div>the majority of build time for pharo.cog.spur is the third-party libraries.  This seems a bit of a waste</div><div>when those dependencies don't change often.  If we have a repo per dependency a CI build </div><div>could "release" built dependent dll and so files.  So these could be downloaded rather than built each time.</div><div><br></div><div>cheers -ben</div></div></div>