cc-archive / cc-link-checker

Automated link checker for legalcode and license URLs
MIT License
9 stars 13 forks source link

Added multiprocessing support #13

Closed bhumijgupta closed 5 years ago

bhumijgupta commented 5 years ago

Fixes #12

Description The script can now use multithreading. The maximum number of threads are set to 5. Due to this, on local testing the execution time reduced from over 5 minutes to 3:20 .

Other information Threading is only implemented for checking links within the license. The threads still suffer from GIL(Global Interpretor Lock) of python.

Checklist:

Developer Certificate of Origin Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors. 1 Letterman Drive Suite D4700 San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or

(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or

(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.

(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.

bhumijgupta commented 5 years ago

After implementing grequests, the execution time for the script got reduced to 2:50 on Circle-ci.

bhumijgupta commented 5 years ago

A good option would be to squash and merge since the multithreading commit are not needed. This would also help to keep the commit history clean.