← Back to team overview

kicad-developers team mailing list archive

Re: [rfc patch] replace avhttp with libcurl

 

I was suggesting it as a stop gap measure and to give us a data point so
that we can pin down what the problem is.  I'm hoping there are some
users technically savvy enough to add:

192.30.252.147  codeload.github.com

to their /etc/hosts file and report back if it resolves their problems.
 Obviously I don't want inexperience users to muck about with their
system settings but I and AFAICT none of the other developer can
duplicate this issues which makes it hard to fix.  If this resolves the
issues than this points to the issue Dick mentioned so we can either
disable multi-threaded footprint loading or lower the number of working
threads on package builds so it will work for all users.  Although I'm
sure this will lead to complaining about the footprint library load times.

On 12/4/2015 11:12 AM, Chris Pavlina wrote:
> Suggesting users add github to /etc/hosts may be the single most user-unfriendly, UX-unaware idea I've ever seen proposed for kicad, which is a true feat considering up until a couple years ago kicad used to be the very epitome of those adjectives.
> 
> On Fri, Dec 04, 2015 at 10:56:15AM -0500, Wayne Stambaugh wrote:
>> Replacing avhttp with lib curl is fine for the development branch once
>> we prove it out but I am reluctant to backport it to the stable release
>> for obvious reasons.  I got an email from Dick today.  He believes the
>> problem lies with the users router's inability to keep up with the
>> parallel DNS look up requests.  This may be that's why it hasn't been a
>> problem for developers.  My guess is most of us have routers that are
>> fast enough to handle the parallel DNS requests.  He suggested adding
>> github to /etc/hosts so the host will cache the DNS look up but that's
>> still no guarentee.  As an alternative we could either lower the number
>> of work threads in footprint_info.cpp (which also effects non-github
>> footprint library loading), disable multiple threads all together, or
>> make the number of worker threads configurable.  I'm not sure if the
>> github plugin itself is also spawning multiple threads so that may be
>> another place to look.  Has anyone tried building kicad with worker
>> threads disabled in footprint_info.cpp to confirm if this resolves the
>> issue?
>>
>> On 12/4/2015 10:10 AM, Nick Østergaard wrote:
>>> 2015-12-04 14:15 GMT+01:00 Mark Roszko <mark.roszko@xxxxxxxxx>:
>>>>> I understand what you mean, but I am pretty sure avhttp did not test
>>>> certificates.
>>>> It did using boost::asio:ssl which has the functionality for it.
>>>>
>>>> in include/avhttp/impl/http_stream.ipp you can even see the
>>>> m_check_certificate option which kicad never turned off.
>>>>
>>>>
>>>>> I am worried by the fact most of Kicad users know nothing about
>>>>> certificates, and using them is open a door to a lot of bug reports (the
>>>>> fp lib table issues could be zilch compared to that).
>>>>
>>>> We would bundle it with the kicad  for Windows and it should be fine.
>>>> Anyone else should have a dependency on their installed kicad package
>>>> on libcurl which in term will have a dependency on ca-certificates.
>>>>
>>>>
>>>>> I am thinking the certificate ca-bundle.crt is OK (cURL works fine since
>>>>> I updated it), but it is just not found by Kicad (It could be fixed).
>>>>
>>>> On two of my machines inside MSYS2, curl works just fine in kicad :/
>>>>
>>>>
>>>>> I am thinking the certificate ca-bundle.crt is OK (cURL works fine since I updated it), but it is just not found by Kicad (It could be fixed).
>>>>
>>>> It can be by setting the paths within kicad. But its more of a MSYS2 issue.
>>>
>>> I am not exactly sure why it happens, but this happens on msys2 when
>>> you do not upgrade "properly". If you blindly pacman -Syu when it will
>>> update the mingw something something dll, which requires you to only
>>> update that and close the shell and reopen to continue the update this
>>> ca-certificates thing happen where https do not work.  But if you do
>>> update-repo and then pacman -Sy   to update it should be good at all
>>> times -- apparently.
>>>
>>>> Interesting is they compile with
>>>> _variant_config+=("--with-ca-bundle=${MINGW_PREFIX}/ssl/certs/ca-bundle.crt")
>>>>
>>>> so I have it in
>>>> D:\msys64\usr\ssl\certs
>>>> and
>>>> D:\msys64\mingw64\ssl\certs
>>>>
>>>> They do add a patch to curl that makes the ca-bundle path relative to
>>>> the executable.
>>>>
>>>> _______________________________________________
>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
> 



Follow ups

References