Author | SHA1 | Message | Date |
---|---|---|---|
Yen Chi Hsuan |
4bd7d9d4ae
|
[socks] Refine exception model for better error handling
1. ProxyError now inherits from socket.error instead of IOError The only functions socks.py overrides are connect and connect_ex. In Python 2.x and Python <= 3.2, socket functions raises socket.error. In newer Python versions, those functions raises OSError instead. The name socket.error is preserved as an alias of OSError for backward compability. To keep socks.py compatible with Python's standard library, it should raise the same exception as raw sockets. See PEP 3151 (https://www.python.org/dev/peps/pep-3151/) for more information about the change in Python 3.3. 2. Raise EOFError instead of IOError when the socket receives less data than it expects There's no common convention, but both ftplib and telnetlib raises EOFError for similar situations. socks.py follows them. Closes #11355 In #11355, only Python 2 is affected. In Python 3, both socket.error and IOError are alias of OSError, so AbstractHTTPHandler.do_open correctly catches the error and thus InfoExtractor._is_valid_url works fine. |
8 years ago |
Yen Chi Hsuan |
8344296619
|
[socks] Fix error reporting (#11355) | 8 years ago |
Yen Chi Hsuan |
582be35847
|
Update coding style after pycodestyle 2.1.0
In pycodestyle 2.1.0, E305 was introduced, which requires two blank lines after top level declarations, too. See https://github.com/PyCQA/pycodestyle/issues/400 See also #10689; thanks @stepshal for first mentioning this issue and initial patches |
8 years ago |
stepshal |
a2406fce3c
|
Fix misspelling | 8 years ago |
Yen Chi Hsuan |
fa5cb8d021
|
[socks] Remove a superfluous clause | 9 years ago |
Yen Chi Hsuan |
edaa23f822
|
[compat] Rename struct_(un)pack to compat_struct_(un)pack | 9 years ago |
Yen Chi Hsuan |
9e9cd7248d
|
[socks] Eliminate magic constants and improve | 9 years ago |
Yen Chi Hsuan |
71aff18809
|
[socks] Support SOCKS proxies | 9 years ago |
Yen Chi Hsuan |
4350b74545
|
[socks] Add socks.py from @bluec0re's public domain implementation
https://gist.github.com/bluec0re/cafd3764412967417fd3 |
9 years ago |