Jon Dufresne
bd0c1f5d4c
Remove outdated PyPy workaround for site_packages location
...
Upstream issue has been resolved and released on Python versions
supported by pip:
https://foss.heptapod.net/pypy/pypy/-/issues/2506
2020-12-27 12:16:28 -08:00
Jon Dufresne
8a9fea7434
Remove unnecessary class FakeFile
...
The class was being used in a single place, passed to csv.reader().
However, per the docs, csv.reader() can handle a list of str objects.
https://docs.python.org/3/library/csv.html#csv.reader
> csvfile can be any object which supports the iterator protocol and
> returns a string each time its __next__() method is called — file
> objects and list objects are both suitable.
2020-12-27 09:26:15 -08:00
Pradyun Gedam
609d9d4a68
Merge pull request #9371 from hugovk/tidy-urllib-imports
...
Clean up urllib imports
2020-12-27 15:34:09 +00:00
Hugo van Kemenade
a3e246f7d0
Cleanup: replace 'from urllib import xyz as urllib_xyz' with import urllib.xyz
2020-12-27 16:18:44 +02:00
Tzu-ping Chung
6a438bdc93
Upgrade vendored resolvelib to 0.5.4
2020-12-27 20:23:07 +08:00
Pradyun Gedam
5ccd226df8
Merge pull request #9364 from jdufresne/oserror
...
Use unified OSError and its subclasses
2020-12-27 12:15:41 +00:00
Pradyun Gedam
7e609a058e
Merge pull request #9315 from pradyunsg/better-search-errors
2020-12-27 11:59:44 +00:00
Tzu-ping Chung
2a25452542
Add docstring to emphasise laziness
2020-12-27 04:17:26 +08:00
Tzu-ping Chung
8e55757a2f
Lazy-evaluate candidates with installed inserted
2020-12-27 04:17:26 +08:00
Tzu-ping Chung
41a30089de
Re-apply invalid metadata skip
...
Skip candidate not providing valid metadata
This reverts commit 7165ab8cb9
.
2020-12-27 04:16:24 +08:00
Jon Dufresne
d282fb94a3
Use unified OSError and its subclasses
...
Since Python 3.3, the following classes have merged into OSError. They
remain as aliases for backward compatibility.
- EnvironmentError
- IOError
- WindowsError
https://docs.python.org/3/library/exceptions.html#OSError
Python 3 also has subclasses of OSError to help identify more specific
errors. For example, FileNotFoundError. This allows simplifying some
except blocks.
2020-12-26 12:16:09 -08:00
Jon Dufresne
14ebb03997
Use "yield from" syntax
...
Available since Python 3.3.
https://docs.python.org/3/whatsnew/3.3.html#pep-380
2020-12-26 07:04:58 -08:00
Pradyun Gedam
a48ad5385b
Merge pull request #9352 from jdufresne/io-codecs-open
...
Replace io.open() and codecs.open() with builtin open()
2020-12-26 10:24:47 +00:00
Pradyun Gedam
86afa89043
Merge pull request #9361 from jdufresne/f-strings
...
Use f-strings for simple string formatting
2020-12-26 10:24:18 +00:00
Pradyun Gedam
fecfa11f5a
Merge pull request #9359 from jdufresne/get-remote-url
...
Harmonize type signature of VersionControl.get_remote_url() subclasses
2020-12-26 10:23:39 +00:00
Pradyun Gedam
31eb524ff0
Merge pull request #9351 from jdufresne/object
...
Remove object from class definitions
2020-12-26 10:21:40 +00:00
Pradyun Gedam
49c898e4b6
Merge pull request #9358 from jdufresne/uses-fragment
...
Remove Python 2 compatibility shim for urlparse.uses_fragment
2020-12-26 10:21:09 +00:00
Pradyun Gedam
7a6b1a5805
Merge pull request #9357 from jdufresne/ipaddress
...
Replace vendored ipaddress with stdlib
2020-12-26 10:20:18 +00:00
Pradyun Gedam
fe741a2610
Merge pull request #9360 from jdufresne/json-decode-error
...
Remove Python 2 compatibility shim for json.JSONDecodeError
2020-12-26 09:20:42 +00:00
Pradyun Gedam
4e48ba838b
Merge pull request #9356 from jdufresne/lru-cache
...
Replace utils.compat.lru_cache with stdlib functools.lru_cache
2020-12-26 09:20:20 +00:00
Jon Dufresne
07ddf66f65
Remove Python 2 compatibility shim for json.JSONDecodeError
...
JSONDecodeError has been available since Python 3.5.
https://docs.python.org/3/library/json.html#json.JSONDecodeError
2020-12-25 16:28:53 -08:00
Jon Dufresne
cdcf74fb8e
Use f-strings for simple string formatting
...
Use pyupgrade to convert simple string formatting to use f-string
syntax. pyupgrade is intentionally timid and will not create an f-string
if it would make the expression longer or if the substitution parameters
are anything but simple names or dotted names.
2020-12-25 16:21:20 -08:00
Jon Dufresne
a1fff4a080
Replace io.open() and codecs.open() with builtin open()
...
In Python 3, these are functionally equivalent and share the same
feature set.
2020-12-25 15:53:08 -08:00
Jon Dufresne
09b3d3a50b
Remove object from class definitions
...
Unnecessary since dropping Python 2 support. In Python 3, all classes
are new style classes.
2020-12-25 15:48:11 -08:00
Jon Dufresne
0b761a164c
Harmonize type signature of VersionControl.get_remote_url() subclasses
...
In the base class, the signature is defined as:
type: (str) -> str
Further, the docstring says:
Raises RemoteNotFoundError if the repository does not have a remote
url configured.
However, some subclasses were returning None instead of raising
RemoteNotFoundError. This violated the type signature and forced calling
code to handle multiple error paradigms.
Now, all subclasses implement the base's signature.
This allowed simplifying some call sites as they can assume None will
not be returned.
This mismatch was noticed while trying to remove "mypy:
disallow-untyped-defs=False" comments.
2020-12-25 13:45:17 -08:00
Jon Dufresne
7e3fe0c84e
Remove Python 2 compatibility shim for urlparse.uses_fragment
...
This attribute (now urllib.parse.uses_fragment) is unused by the stdlib
and remains only for backwards compatibility. See the comment:
https://github.com/python/cpython/blob/v3.6.0/Lib/urllib/parse.py#L55-L63
2020-12-25 11:48:38 -08:00
Pradyun Gedam
f91ba6b348
Merge pull request #9354 from jdufresne/super
...
Use short Python3 super() syntax
2020-12-25 19:18:28 +00:00
Jon Dufresne
e28badf979
Remove unnecessary type annotation in BlueEmojiBar
2020-12-25 08:54:58 -08:00
Jon Dufresne
17d72b748f
Replace utils.compat.lru_cache with stdlib functools.lru_cache
...
The stdlib version has been available since Python 3.2.
2020-12-25 08:51:15 -08:00
Jon Dufresne
653f12b5e7
Replace vendored ipaddress with stdlib
...
The vendored copy is unnecessary since dropping Python 2 support. The
module has been available in the stdlib since Python 3.3.
2020-12-25 08:47:38 -08:00
Jon Dufresne
ba40f58ecc
Remove encoding cookie from Python source files
...
Unnecessary since dropping Python 2. Python now decodes files as utf-8
by default.
2020-12-25 07:26:07 -08:00
Jon Dufresne
2e38024991
Drop u prefix from str literals
...
Unnecessary since dropping Python 2 support.
This makes one test case from test_str_to_display a duplicate and so has
been removed.
2020-12-25 07:26:06 -08:00
Jon Dufresne
5e11687cbd
Replace typing.Text with str
...
Using typing.Text is unnecessary since dropping Python 2 support.
In Python 3, typing.Text is a simple alias of str. It exists as a
backward compatibility shim for Python 2.
2020-12-24 16:40:55 -08:00
Jon Dufresne
c148bcc1aa
Use short Python3 super() syntax
2020-12-24 15:11:51 -08:00
Jon Dufresne
f32adaf09b
Remove __future__ imports
...
Unnecessary since dropping Python 2.
2020-12-24 08:38:09 -08:00
Jon Dufresne
53234e578f
Remove obsolete "# type: ignore" comments
...
Obsolete since dropping Python 2 support.
Add the mypy setting "warn_unused_ignores = True" to catch these
earlier.
2020-12-23 15:42:48 -08:00
Hugo van Kemenade
add5cfa514
Replace compat shim with shutil.get_terminal_size()
2020-12-22 22:41:58 +02:00
Hugo van Kemenade
2426744203
"" is clearer than str()
2020-12-22 16:38:25 +02:00
Hugo van Kemenade
d509a27ad4
Review updates
2020-12-22 15:21:17 +02:00
Hugo van Kemenade
33f48e2b72
Replace more six
2020-12-22 10:22:20 +02:00
Hugo van Kemenade
817ee23051
Remove redundant Python 2.7 code
2020-12-22 09:06:26 +02:00
Pradyun Gedam
be9637f7f5
Merge pull request #9189 from pradyunsg/drop-old-python-support
...
Drop support for Python 2.7 and Python 3.5
2020-12-20 18:57:41 +00:00
Pradyun Gedam
7281ed9d98
No longer print a deprecation warning on 2.7/3.5
...
These versions are no longer supported.
2020-12-19 19:55:04 +00:00
Pradyun Gedam
77fa5dfb9e
Present a nicer error in pip search
2020-12-18 17:50:36 +00:00
Nikita Chepanov
f8b03eefe2
Add `--ignore-requires-python` support to pip download
2020-12-17 12:40:01 -05:00
Pradyun Gedam
7165ab8cb9
Revert "Skip candidate not providing valid metadata"
2020-12-15 10:17:20 +00:00
gpiks
6b2ccdd10d
Update packaging to version 20.8
...
To account for Python 3.10, update the packaging version to 20.8.
2020-12-14 14:12:47 -05:00
Tzu-ping Chung
d869e0cbfd
Merge master
2020-12-12 18:49:14 +08:00
Tzu-ping Chung
b2c04877fa
Add comments explaining InstallationError handling
2020-12-12 18:47:37 +08:00
Pradyun Gedam
0aee48ff1f
Merge pull request #9265 from uranusjr/new-resolver-cache-installed-candidates
...
Cache AlreadyInstalledCandidate
2020-12-11 21:03:56 +00:00