← Back to team overview

kicad-developers team mailing list archive

Re: [rfc patch] replace avhttp with libcurl

 

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
> 



Follow ups

References