Jon Dufresne
c513c5e890
Harmonize return type of VersionControl.get_revision in subclasses
...
Previously, the Subversion subclass violated the parent's type signature
by returning an int, but it is now coerced to a str to match the
expected signature.
2020-12-30 11:25:29 -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
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
Hugo van Kemenade
817ee23051
Remove redundant Python 2.7 code
2020-12-22 09:06:26 +02:00
Devesh Kumar Singh
ab3ee7191c
Remove on_returncode parameter from call_subprocess
2020-05-23 19:13:13 +05:30
Devesh Kumar Singh
94882fd1ed
Remove show_stdout from run_command args
2020-05-23 19:13:13 +05:30
Tzu-ping Chung
6e2e74ac29
Normalize path returned by VCS on return
2020-01-15 16:37:05 +08:00
Tzu-ping Chung
85654a9eb8
Minor code formatting and logging
2020-01-14 18:08:00 +08:00
Tzu-ping Chung
e0781159c6
Strip the repo root output
2020-01-14 16:40:48 +08:00
Tzu-ping Chung
2d3e8f72e6
Detect all registered VCS and choose inner-most
2020-01-14 00:30:27 +08:00
tbeswick
7ebc54171c
Fixed missing return statement in `Mercurial.controls_location()`, it
...
only got found after reverting `VersionControl.controls_location()`
2019-10-11 17:15:35 +13:00
tbeswick
f197479dc8
Fixed LF getting converted to CRLF in last commit.
2019-10-11 14:30:30 +13:00
tbeswick
f81f3c902c
Removed `get_repo_root_dir()`, this functionality is now included in `Git.get_subdirectory()` and `Mercurial.get_subdirectory()`.
...
Added `find_path_to_setup_from_repo_root()` function to perform the
common parts of `get_subdirectory()`.
2019-10-11 12:27:17 +13:00
TonyBeswick
bcbaee7aa5
Merge branch 'master' into master
2019-10-08 18:39:08 +13:00
tbeswick
c6906f1a38
- Abstracted out common `get_subdirectory()` code in `Git` and `Mercurial`, adding `get_repo_root_dir()` for the vcs specific code.
...
- Reverted behaviour of `Git.controls_location()` and `Mercurial.controls_location()` to call the vcs command if the base `VersionControl.controls_location()` doesn't detect the vcs directory.
- Added `log_failed_cmd` argument `VcsSupport.run_command()` to allow vcs commands to be tried without logging errors if they aren't present.
- Corrected indentation.
- Removed `expect_stderr=True` in `test_freeze_mercurial_clone_srcdir` as its not required.
2019-10-08 18:15:22 +13:00
Christopher Hunt
5a997b7509
Merge pull request #7065 from chrahunt/pr-5955
...
Explicit support for hg+file
2019-10-06 09:39:42 -04:00
Pradyun Gedam
2eafb0218b
Update all the imports as needed
2019-09-30 11:15:24 +05:30
Maxim Kurnikov
3692097cca
add per-file disallow_untyped_defs=False, and set it to True globally
2019-09-29 23:31:15 +02:00
tbeswick
b2bae62641
Fixed problem where vcs commands were being called even if they're not installed, causing errors to be logged.
2019-09-25 11:40:38 +12:00
tbeswick
657a7cb0c2
- Added missing argument to run_command: on_returncode='ignore'
...
- fixed lint errors.
2019-09-24 21:05:30 +12:00
Chris Jerdonek
0435316fde
Move path_to_url() to utils/urls.py.
2019-09-24 02:01:52 -07:00
Tony Beswick
063b899c3b
Adding `get_subdirdctory` method to `Mercurial` class so it can detect a setup.py in a repo subdirectory.
2019-09-24 12:20:53 +12:00
Tony Beswick
c0809f4183
Added a `controls_location` implementation to the `Mercurial` class, so it porperly detects that subdirectories are under mercurial control.
2019-09-24 11:46:02 +12:00
Chris Hunt
05964ead48
Address previous review comments
2019-09-22 11:10:25 -04:00
Adam Tse
3f98ee4250
Explicit support and tests for `hg+file` scheme for `pip install`.
2019-09-22 11:04:23 -04:00
Chris Jerdonek
7783c47131
Hide security-sensitive strings in VCS command log messages ( #6890 )
2019-08-21 03:22:57 -07:00
Chris Jerdonek
393f626276
Add type annotations to VCS methods passing an url to run_command().
2019-08-16 16:20:56 -07:00
Chris Jerdonek
5c89643d3d
Remove importing from vcs in pip/_internal/__init__.py.
...
This also renames the current vcs/__init__.py to vcs/versioncontrol.py.
2019-06-03 01:18:36 -07:00
Chris Jerdonek
68c105c29d
Make VersionControl.fetch_new() an instance method.
2019-05-22 00:11:07 -07:00
Chris Jerdonek
0573d7f81f
Merge pull request #6408 from cjerdonek/vcs-remove-url-attribute
...
Remove url as an attribute of VersionControl
2019-05-07 15:17:56 -04:00
Pradyun Gedam
422d989056
Merge pull request #5931 from xrmx/fix5059
...
Remove last use of SafeConfigParser
2019-05-07 11:37:37 -04:00
Chris Jerdonek
0ea639d644
Remove url as an instance attribute of the VersionControl class.
2019-05-06 22:59:18 -04:00
Chris Jerdonek
a829362e6a
Make fetch_new() a class method.
2019-03-22 00:04:55 -07:00
Chris Jerdonek
977d3f6f8c
Make is_commit_id_equal() a class method.
2019-03-22 00:04:55 -07:00
Chris Jerdonek
22e4be1410
Address review comment: make two methods static.
2019-03-17 00:27:09 -07:00
Chris Jerdonek
12e41eef8b
Make VersionControl.get_base_rev_args() a class method.
2019-03-16 01:21:30 -07:00
Chris Jerdonek
fdbfde03e1
Implement get_src_requirement() in the VersionControl base class.
2019-03-01 11:01:25 -08:00
Chris Jerdonek
8d45557ff1
Make get_src_requirement() a class method.
2019-01-09 01:52:24 -08:00
Chris Jerdonek
8a036105dd
Make get_revision() and get_revision_hash() class methods.
2019-01-09 01:52:19 -08:00
Chris Jerdonek
8a771d027d
Make get_remote_url() a class method.
2019-01-09 01:24:16 -08:00
Chris Jerdonek
7e8e706791
Rename VersionControl.get_url() to get_remote_url().
2018-11-09 22:55:59 -08:00
Chris Jerdonek
07900ed732
Change VersionControl.get_src_requirement() to accept the project name.
2018-11-08 04:24:05 -08:00
Riccardo Magliocchetti
376abc0655
remove last user of SafeConfigParser
...
Fixes #5059
2018-10-30 12:11:04 +01:00
Chris Jerdonek
520df5356f
Add misc.make_vcs_requirement_url().
2018-09-25 01:31:34 -07:00
Chris Jerdonek
59b8a80c9b
Remove two unreachable returns in VersionControl.get_src_requirement().
2018-09-20 00:34:05 -07:00
Chris Jerdonek
d5af777d0d
Fix issue #5624 : installing a Git ref for installs after the first.
2018-08-08 00:16:57 -07:00
Chris Jerdonek
701d010c02
Implement VersionControl.obtain() in the base class.
2018-07-08 22:46:25 -07:00
Chris Jerdonek
64d205e896
Refactor out a new VersionControl.fetch_new() method.
2018-07-07 21:55:55 -07:00
Chris Jerdonek
da30b7007d
Address @pradyunsg's review comment.
2017-10-05 02:32:54 -07:00