scmrepo 1.5.0__tar.gz → 1.6.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of scmrepo might be problematic. Click here for more details.
- {scmrepo-1.5.0 → scmrepo-1.6.0}/.cruft.json +1 -1
- {scmrepo-1.5.0 → scmrepo-1.6.0}/.gitignore +2 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/.pre-commit-config.yaml +6 -23
- {scmrepo-1.5.0/src/scmrepo.egg-info → scmrepo-1.6.0}/PKG-INFO +7 -21
- {scmrepo-1.5.0 → scmrepo-1.6.0}/noxfile.py +0 -1
- scmrepo-1.6.0/pyproject.toml +126 -0
- scmrepo-1.6.0/setup.cfg +4 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/credentials.py +2 -1
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/lfs/client.py +3 -8
- {scmrepo-1.5.0 → scmrepo-1.6.0/src/scmrepo.egg-info}/PKG-INFO +7 -21
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo.egg-info/SOURCES.txt +0 -2
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo.egg-info/requires.txt +2 -18
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/test_credentials.py +6 -12
- scmrepo-1.5.0/pyproject.toml +0 -109
- scmrepo-1.5.0/setup.cfg +0 -82
- scmrepo-1.5.0/src/scmrepo.egg-info/not-zip-safe +0 -1
- {scmrepo-1.5.0 → scmrepo-1.6.0}/.coveragerc +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/.gitattributes +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/.github/dependabot.yml +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/.github/workflows/release.yaml +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/.github/workflows/tests.yaml +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/.github/workflows/update-template.yaml +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/CODE_OF_CONDUCT.rst +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/CONTRIBUTING.rst +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/LICENSE +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/README.rst +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/__init__.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/asyn.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/base.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/exceptions.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/fs.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/__init__.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/backend/__init__.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/backend/base.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/backend/dulwich/__init__.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/backend/dulwich/asyncssh_vendor.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/backend/dulwich/client.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/backend/gitpython.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/backend/pygit2/__init__.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/backend/pygit2/callbacks.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/backend/pygit2/filter.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/config.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/lfs/__init__.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/lfs/exceptions.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/lfs/fetch.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/lfs/object.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/lfs/pointer.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/lfs/progress.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/lfs/smudge.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/lfs/storage.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/objects.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/git/stash.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/noscm.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/progress.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/py.typed +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo/utils.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo.egg-info/dependency_links.txt +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/src/scmrepo.egg-info/top_level.txt +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/__init__.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/conftest.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/docker-compose.yml +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/git-init/git.sh +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/test_dulwich.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/test_fs.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/test_git.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/test_lfs.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/test_noscm.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/test_pygit2.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/test_scmrepo.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/test_stash.py +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/user.key +0 -0
- {scmrepo-1.5.0 → scmrepo-1.6.0}/tests/user.key.pub +0 -0
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
default_language_version:
|
|
2
2
|
python: python3
|
|
3
3
|
repos:
|
|
4
|
-
- repo: https://github.com/psf/black
|
|
5
|
-
rev: 23.9.1
|
|
6
|
-
hooks:
|
|
7
|
-
- id: black
|
|
8
4
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
9
5
|
rev: v4.4.0
|
|
10
6
|
hooks:
|
|
@@ -24,6 +20,12 @@ repos:
|
|
|
24
20
|
args: ['--fix=lf']
|
|
25
21
|
- id: sort-simple-yaml
|
|
26
22
|
- id: trailing-whitespace
|
|
23
|
+
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
24
|
+
rev: 'v0.1.5'
|
|
25
|
+
hooks:
|
|
26
|
+
- id: ruff
|
|
27
|
+
args: [--fix, --exit-non-zero-on-fix]
|
|
28
|
+
- id: ruff-format
|
|
27
29
|
- repo: https://github.com/codespell-project/codespell
|
|
28
30
|
rev: v2.2.5
|
|
29
31
|
hooks:
|
|
@@ -34,22 +36,3 @@ repos:
|
|
|
34
36
|
hooks:
|
|
35
37
|
- id: pyupgrade
|
|
36
38
|
args: [--py38-plus]
|
|
37
|
-
- repo: https://github.com/PyCQA/isort
|
|
38
|
-
rev: 5.12.0
|
|
39
|
-
hooks:
|
|
40
|
-
- id: isort
|
|
41
|
-
- repo: https://github.com/pycqa/flake8
|
|
42
|
-
rev: 6.1.0
|
|
43
|
-
hooks:
|
|
44
|
-
- id: flake8
|
|
45
|
-
additional_dependencies:
|
|
46
|
-
- flake8-bugbear==23.7.10
|
|
47
|
-
- flake8-comprehensions==3.14.0
|
|
48
|
-
- flake8-debugger==4.1.2
|
|
49
|
-
- flake8-string-format==0.3.0
|
|
50
|
-
- repo: https://github.com/pycqa/bandit
|
|
51
|
-
rev: 1.7.5
|
|
52
|
-
hooks:
|
|
53
|
-
- id: bandit
|
|
54
|
-
args: ["-c", "pyproject.toml"]
|
|
55
|
-
additional_dependencies: [".[toml]"]
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: scmrepo
|
|
3
|
-
Version: 1.
|
|
4
|
-
Summary:
|
|
5
|
-
|
|
6
|
-
Maintainer-email: support@dvc.org
|
|
3
|
+
Version: 1.6.0
|
|
4
|
+
Summary: scmrepo
|
|
5
|
+
Author-email: Iterative <support@dvc.org>
|
|
7
6
|
License: Apache-2.0
|
|
8
|
-
|
|
7
|
+
Project-URL: Issues, https://github.com/iterative/scmrepo/issues
|
|
8
|
+
Project-URL: Source, https://github.com/iterative/scmrepo
|
|
9
9
|
Classifier: Programming Language :: Python :: 3
|
|
10
10
|
Classifier: Programming Language :: Python :: 3.8
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.9
|
|
@@ -24,14 +24,13 @@ Requires-Dist: pathspec>=0.9.0
|
|
|
24
24
|
Requires-Dist: asyncssh<3,>=2.13.1
|
|
25
25
|
Requires-Dist: funcy>=1.14
|
|
26
26
|
Requires-Dist: shortuuid>=0.5.0
|
|
27
|
-
Requires-Dist: dvc-objects<
|
|
27
|
+
Requires-Dist: dvc-objects<3,>=1.0.1
|
|
28
28
|
Requires-Dist: dvc-http>=2.29.0
|
|
29
29
|
Provides-Extra: tests
|
|
30
30
|
Requires-Dist: pytest==7.2.0; extra == "tests"
|
|
31
31
|
Requires-Dist: pytest-sugar==0.9.5; extra == "tests"
|
|
32
32
|
Requires-Dist: pytest-cov==3.0.0; extra == "tests"
|
|
33
33
|
Requires-Dist: pytest-mock==3.8.2; extra == "tests"
|
|
34
|
-
Requires-Dist: pylint==2.15.0; extra == "tests"
|
|
35
34
|
Requires-Dist: mypy==0.971; extra == "tests"
|
|
36
35
|
Requires-Dist: pytest-test-utils==0.0.8; extra == "tests"
|
|
37
36
|
Requires-Dist: pytest-asyncio==0.18.3; extra == "tests"
|
|
@@ -42,20 +41,7 @@ Requires-Dist: types-certifi==2021.10.8.3; extra == "tests"
|
|
|
42
41
|
Requires-Dist: types-mock==5.1.0.2; extra == "tests"
|
|
43
42
|
Requires-Dist: types-paramiko==3.3.0.0; extra == "tests"
|
|
44
43
|
Provides-Extra: dev
|
|
45
|
-
Requires-Dist:
|
|
46
|
-
Requires-Dist: pytest-sugar==0.9.5; extra == "dev"
|
|
47
|
-
Requires-Dist: pytest-cov==3.0.0; extra == "dev"
|
|
48
|
-
Requires-Dist: pytest-mock==3.8.2; extra == "dev"
|
|
49
|
-
Requires-Dist: pylint==2.15.0; extra == "dev"
|
|
50
|
-
Requires-Dist: mypy==0.971; extra == "dev"
|
|
51
|
-
Requires-Dist: pytest-test-utils==0.0.8; extra == "dev"
|
|
52
|
-
Requires-Dist: pytest-asyncio==0.18.3; extra == "dev"
|
|
53
|
-
Requires-Dist: pytest-docker==0.12.0; (python_version < "3.10" and implementation_name != "pypy") and extra == "dev"
|
|
54
|
-
Requires-Dist: mock==5.1.0; extra == "dev"
|
|
55
|
-
Requires-Dist: paramiko==3.3.1; extra == "dev"
|
|
56
|
-
Requires-Dist: types-certifi==2021.10.8.3; extra == "dev"
|
|
57
|
-
Requires-Dist: types-mock==5.1.0.2; extra == "dev"
|
|
58
|
-
Requires-Dist: types-paramiko==3.3.0.0; extra == "dev"
|
|
44
|
+
Requires-Dist: scmrepo[tests]; extra == "dev"
|
|
59
45
|
|
|
60
46
|
scmrepo
|
|
61
47
|
=======
|
|
@@ -29,7 +29,6 @@ def lint(session: nox.Session) -> None:
|
|
|
29
29
|
args = *(session.posargs or ("--show-diff-on-failure",)), "--all-files"
|
|
30
30
|
session.run("pre-commit", "run", *args)
|
|
31
31
|
session.run("python", "-m", "mypy")
|
|
32
|
-
session.run("python", "-m", "pylint", *locations)
|
|
33
32
|
|
|
34
33
|
|
|
35
34
|
@nox.session
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=48", "setuptools_scm[toml]>=6.3.1"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[tool.setuptools_scm]
|
|
6
|
+
|
|
7
|
+
[project]
|
|
8
|
+
name = "scmrepo"
|
|
9
|
+
description = "scmrepo"
|
|
10
|
+
readme = "README.rst"
|
|
11
|
+
license = {text = "Apache-2.0"}
|
|
12
|
+
authors = [{ name = "Iterative", email = "support@dvc.org" }]
|
|
13
|
+
classifiers = [
|
|
14
|
+
"Programming Language :: Python :: 3",
|
|
15
|
+
"Programming Language :: Python :: 3.8",
|
|
16
|
+
"Programming Language :: Python :: 3.9",
|
|
17
|
+
"Programming Language :: Python :: 3.10",
|
|
18
|
+
"Programming Language :: Python :: 3.11",
|
|
19
|
+
"Development Status :: 4 - Beta",
|
|
20
|
+
]
|
|
21
|
+
requires-python = ">=3.8"
|
|
22
|
+
dynamic = ["version"]
|
|
23
|
+
dependencies = [
|
|
24
|
+
"gitpython>3",
|
|
25
|
+
"dulwich>=0.21.6",
|
|
26
|
+
"pygit2>=1.13.3",
|
|
27
|
+
"pygtrie>=2.3.2",
|
|
28
|
+
"fsspec>=2021.7.0",
|
|
29
|
+
"pathspec>=0.9.0",
|
|
30
|
+
"asyncssh>=2.13.1,<3",
|
|
31
|
+
"funcy>=1.14",
|
|
32
|
+
"shortuuid>=0.5.0",
|
|
33
|
+
"dvc-objects>=1.0.1,<3",
|
|
34
|
+
"dvc-http>=2.29.0",
|
|
35
|
+
]
|
|
36
|
+
|
|
37
|
+
[project.urls]
|
|
38
|
+
Issues = "https://github.com/iterative/scmrepo/issues"
|
|
39
|
+
Source = "https://github.com/iterative/scmrepo"
|
|
40
|
+
|
|
41
|
+
[project.optional-dependencies]
|
|
42
|
+
tests = [
|
|
43
|
+
"pytest==7.2.0",
|
|
44
|
+
"pytest-sugar==0.9.5",
|
|
45
|
+
"pytest-cov==3.0.0",
|
|
46
|
+
"pytest-mock==3.8.2",
|
|
47
|
+
"mypy==0.971",
|
|
48
|
+
"pytest-test-utils==0.0.8",
|
|
49
|
+
"pytest-asyncio==0.18.3",
|
|
50
|
+
# https://github.com/docker/docker-py/issues/2902
|
|
51
|
+
"pytest-docker==0.12.0; python_version < '3.10' and implementation_name != 'pypy'",
|
|
52
|
+
"mock==5.1.0",
|
|
53
|
+
"paramiko==3.3.1",
|
|
54
|
+
"types-certifi==2021.10.8.3",
|
|
55
|
+
"types-mock==5.1.0.2",
|
|
56
|
+
"types-paramiko==3.3.0.0",
|
|
57
|
+
]
|
|
58
|
+
dev = [
|
|
59
|
+
"scmrepo[tests]",
|
|
60
|
+
]
|
|
61
|
+
|
|
62
|
+
[tool.setuptools.package-data]
|
|
63
|
+
dvc_objects = ["py.typed"]
|
|
64
|
+
|
|
65
|
+
[tool.setuptools.packages.find]
|
|
66
|
+
where = ["src"]
|
|
67
|
+
namespaces = false
|
|
68
|
+
|
|
69
|
+
[tool.pytest.ini_options]
|
|
70
|
+
addopts = "-ra"
|
|
71
|
+
markers = [
|
|
72
|
+
"skip_git_backend: skip tests for given backend",
|
|
73
|
+
"slow: mark test as slow to run",
|
|
74
|
+
]
|
|
75
|
+
|
|
76
|
+
[tool.coverage.run]
|
|
77
|
+
branch = true
|
|
78
|
+
source = ["scmrepo", "tests"]
|
|
79
|
+
|
|
80
|
+
[tool.coverage.paths]
|
|
81
|
+
source = ["src", "*/site-packages"]
|
|
82
|
+
|
|
83
|
+
[tool.coverage.report]
|
|
84
|
+
show_missing = true
|
|
85
|
+
exclude_lines = [
|
|
86
|
+
"pragma: no cover",
|
|
87
|
+
"if __name__ == .__main__.:",
|
|
88
|
+
"if typing.TYPE_CHECKING:",
|
|
89
|
+
"if TYPE_CHECKING:",
|
|
90
|
+
"raise NotImplementedError",
|
|
91
|
+
"raise AssertionError",
|
|
92
|
+
"@overload",
|
|
93
|
+
]
|
|
94
|
+
|
|
95
|
+
[tool.mypy]
|
|
96
|
+
# Error output
|
|
97
|
+
show_column_numbers = true
|
|
98
|
+
show_error_codes = true
|
|
99
|
+
show_error_context = true
|
|
100
|
+
show_traceback = true
|
|
101
|
+
pretty = true
|
|
102
|
+
check_untyped_defs = false
|
|
103
|
+
# Warnings
|
|
104
|
+
warn_no_return = true
|
|
105
|
+
warn_redundant_casts = true
|
|
106
|
+
warn_unreachable = true
|
|
107
|
+
files = ["src", "tests"]
|
|
108
|
+
|
|
109
|
+
[[tool.mypy.overrides]]
|
|
110
|
+
module = [
|
|
111
|
+
"pygtrie",
|
|
112
|
+
"dvc_http.*",
|
|
113
|
+
"funcy",
|
|
114
|
+
"git",
|
|
115
|
+
"gitdb.*",
|
|
116
|
+
"fsspec.*",
|
|
117
|
+
"pathspec.patterns",
|
|
118
|
+
"asyncssh.*",
|
|
119
|
+
"pygit2.*",
|
|
120
|
+
"pytest_docker.plugin",
|
|
121
|
+
"urllib3.*",
|
|
122
|
+
]
|
|
123
|
+
ignore_missing_imports = true
|
|
124
|
+
|
|
125
|
+
[tool.codespell]
|
|
126
|
+
ignore-words-list = "cachable, keypair"
|
scmrepo-1.6.0/setup.cfg
ADDED
|
@@ -292,7 +292,8 @@ def _input_tty(prompt: str = "Username: ") -> str:
|
|
|
292
292
|
with ExitStack() as stack:
|
|
293
293
|
try:
|
|
294
294
|
fd = os.open(
|
|
295
|
-
"/dev/tty",
|
|
295
|
+
"/dev/tty",
|
|
296
|
+
os.O_RDWR | os.O_NOCTTY, # pylint: disable=no-member
|
|
296
297
|
)
|
|
297
298
|
tty = io.FileIO(fd, "w+")
|
|
298
299
|
stack.enter_context(tty)
|
|
@@ -190,15 +190,10 @@ class LFSClient(AbstractContextManager):
|
|
|
190
190
|
**kwargs,
|
|
191
191
|
):
|
|
192
192
|
async def _get_one(from_path: str, to_path: str, **kwargs):
|
|
193
|
-
get_coro = callback.wrap_and_branch_coro(
|
|
194
|
-
self.httpfs._get_file # pylint: disable=protected-access
|
|
195
|
-
)
|
|
196
193
|
with as_atomic(localfs, to_path, create_parents=True) as tmp_file:
|
|
197
|
-
|
|
198
|
-
from_path,
|
|
199
|
-
|
|
200
|
-
**kwargs,
|
|
201
|
-
)
|
|
194
|
+
with callback.branch(from_path, tmp_file, kwargs):
|
|
195
|
+
await self.httpfs._get_file(from_path, tmp_file, **kwargs) # pylint: disable=protected-access
|
|
196
|
+
callback.relative_update()
|
|
202
197
|
|
|
203
198
|
resp_data = await self._batch_request(objects, **kwargs)
|
|
204
199
|
if resp_data.get("transfer") != "basic":
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: scmrepo
|
|
3
|
-
Version: 1.
|
|
4
|
-
Summary:
|
|
5
|
-
|
|
6
|
-
Maintainer-email: support@dvc.org
|
|
3
|
+
Version: 1.6.0
|
|
4
|
+
Summary: scmrepo
|
|
5
|
+
Author-email: Iterative <support@dvc.org>
|
|
7
6
|
License: Apache-2.0
|
|
8
|
-
|
|
7
|
+
Project-URL: Issues, https://github.com/iterative/scmrepo/issues
|
|
8
|
+
Project-URL: Source, https://github.com/iterative/scmrepo
|
|
9
9
|
Classifier: Programming Language :: Python :: 3
|
|
10
10
|
Classifier: Programming Language :: Python :: 3.8
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.9
|
|
@@ -24,14 +24,13 @@ Requires-Dist: pathspec>=0.9.0
|
|
|
24
24
|
Requires-Dist: asyncssh<3,>=2.13.1
|
|
25
25
|
Requires-Dist: funcy>=1.14
|
|
26
26
|
Requires-Dist: shortuuid>=0.5.0
|
|
27
|
-
Requires-Dist: dvc-objects<
|
|
27
|
+
Requires-Dist: dvc-objects<3,>=1.0.1
|
|
28
28
|
Requires-Dist: dvc-http>=2.29.0
|
|
29
29
|
Provides-Extra: tests
|
|
30
30
|
Requires-Dist: pytest==7.2.0; extra == "tests"
|
|
31
31
|
Requires-Dist: pytest-sugar==0.9.5; extra == "tests"
|
|
32
32
|
Requires-Dist: pytest-cov==3.0.0; extra == "tests"
|
|
33
33
|
Requires-Dist: pytest-mock==3.8.2; extra == "tests"
|
|
34
|
-
Requires-Dist: pylint==2.15.0; extra == "tests"
|
|
35
34
|
Requires-Dist: mypy==0.971; extra == "tests"
|
|
36
35
|
Requires-Dist: pytest-test-utils==0.0.8; extra == "tests"
|
|
37
36
|
Requires-Dist: pytest-asyncio==0.18.3; extra == "tests"
|
|
@@ -42,20 +41,7 @@ Requires-Dist: types-certifi==2021.10.8.3; extra == "tests"
|
|
|
42
41
|
Requires-Dist: types-mock==5.1.0.2; extra == "tests"
|
|
43
42
|
Requires-Dist: types-paramiko==3.3.0.0; extra == "tests"
|
|
44
43
|
Provides-Extra: dev
|
|
45
|
-
Requires-Dist:
|
|
46
|
-
Requires-Dist: pytest-sugar==0.9.5; extra == "dev"
|
|
47
|
-
Requires-Dist: pytest-cov==3.0.0; extra == "dev"
|
|
48
|
-
Requires-Dist: pytest-mock==3.8.2; extra == "dev"
|
|
49
|
-
Requires-Dist: pylint==2.15.0; extra == "dev"
|
|
50
|
-
Requires-Dist: mypy==0.971; extra == "dev"
|
|
51
|
-
Requires-Dist: pytest-test-utils==0.0.8; extra == "dev"
|
|
52
|
-
Requires-Dist: pytest-asyncio==0.18.3; extra == "dev"
|
|
53
|
-
Requires-Dist: pytest-docker==0.12.0; (python_version < "3.10" and implementation_name != "pypy") and extra == "dev"
|
|
54
|
-
Requires-Dist: mock==5.1.0; extra == "dev"
|
|
55
|
-
Requires-Dist: paramiko==3.3.1; extra == "dev"
|
|
56
|
-
Requires-Dist: types-certifi==2021.10.8.3; extra == "dev"
|
|
57
|
-
Requires-Dist: types-mock==5.1.0.2; extra == "dev"
|
|
58
|
-
Requires-Dist: types-paramiko==3.3.0.0; extra == "dev"
|
|
44
|
+
Requires-Dist: scmrepo[tests]; extra == "dev"
|
|
59
45
|
|
|
60
46
|
scmrepo
|
|
61
47
|
=======
|
|
@@ -9,7 +9,6 @@ LICENSE
|
|
|
9
9
|
README.rst
|
|
10
10
|
noxfile.py
|
|
11
11
|
pyproject.toml
|
|
12
|
-
setup.cfg
|
|
13
12
|
.github/dependabot.yml
|
|
14
13
|
.github/workflows/release.yaml
|
|
15
14
|
.github/workflows/tests.yaml
|
|
@@ -26,7 +25,6 @@ src/scmrepo/utils.py
|
|
|
26
25
|
src/scmrepo.egg-info/PKG-INFO
|
|
27
26
|
src/scmrepo.egg-info/SOURCES.txt
|
|
28
27
|
src/scmrepo.egg-info/dependency_links.txt
|
|
29
|
-
src/scmrepo.egg-info/not-zip-safe
|
|
30
28
|
src/scmrepo.egg-info/requires.txt
|
|
31
29
|
src/scmrepo.egg-info/top_level.txt
|
|
32
30
|
src/scmrepo/git/__init__.py
|
|
@@ -7,33 +7,17 @@ pathspec>=0.9.0
|
|
|
7
7
|
asyncssh<3,>=2.13.1
|
|
8
8
|
funcy>=1.14
|
|
9
9
|
shortuuid>=0.5.0
|
|
10
|
-
dvc-objects<
|
|
10
|
+
dvc-objects<3,>=1.0.1
|
|
11
11
|
dvc-http>=2.29.0
|
|
12
12
|
|
|
13
13
|
[dev]
|
|
14
|
-
|
|
15
|
-
pytest-sugar==0.9.5
|
|
16
|
-
pytest-cov==3.0.0
|
|
17
|
-
pytest-mock==3.8.2
|
|
18
|
-
pylint==2.15.0
|
|
19
|
-
mypy==0.971
|
|
20
|
-
pytest-test-utils==0.0.8
|
|
21
|
-
pytest-asyncio==0.18.3
|
|
22
|
-
mock==5.1.0
|
|
23
|
-
paramiko==3.3.1
|
|
24
|
-
types-certifi==2021.10.8.3
|
|
25
|
-
types-mock==5.1.0.2
|
|
26
|
-
types-paramiko==3.3.0.0
|
|
27
|
-
|
|
28
|
-
[dev:python_version < "3.10" and implementation_name != "pypy"]
|
|
29
|
-
pytest-docker==0.12.0
|
|
14
|
+
scmrepo[tests]
|
|
30
15
|
|
|
31
16
|
[tests]
|
|
32
17
|
pytest==7.2.0
|
|
33
18
|
pytest-sugar==0.9.5
|
|
34
19
|
pytest-cov==3.0.0
|
|
35
20
|
pytest-mock==3.8.2
|
|
36
|
-
pylint==2.15.0
|
|
37
21
|
mypy==0.971
|
|
38
22
|
pytest-test-utils==0.0.8
|
|
39
23
|
pytest-asyncio==0.18.3
|
|
@@ -174,13 +174,11 @@ def test_get_matching_commands():
|
|
|
174
174
|
from dulwich.config import ConfigFile
|
|
175
175
|
|
|
176
176
|
config_file = io.BytesIO(
|
|
177
|
-
"""
|
|
177
|
+
b"""
|
|
178
178
|
[credential]
|
|
179
179
|
helper = /usr/local/bin/my-helper
|
|
180
180
|
UseHttpPath = true
|
|
181
|
-
"""
|
|
182
|
-
"ascii"
|
|
183
|
-
)
|
|
181
|
+
"""
|
|
184
182
|
)
|
|
185
183
|
config_file.seek(0)
|
|
186
184
|
config = ConfigFile.from_file(config_file)
|
|
@@ -189,12 +187,10 @@ def test_get_matching_commands():
|
|
|
189
187
|
) == [("/usr/local/bin/my-helper", True)]
|
|
190
188
|
|
|
191
189
|
config_file = io.BytesIO(
|
|
192
|
-
"""
|
|
190
|
+
b"""
|
|
193
191
|
[credential]
|
|
194
192
|
helper = /usr/local/bin/my-helper
|
|
195
|
-
"""
|
|
196
|
-
"ascii"
|
|
197
|
-
)
|
|
193
|
+
"""
|
|
198
194
|
)
|
|
199
195
|
config_file.seek(0)
|
|
200
196
|
config = ConfigFile.from_file(config_file)
|
|
@@ -203,12 +199,10 @@ def test_get_matching_commands():
|
|
|
203
199
|
) == [("/usr/local/bin/my-helper", False)]
|
|
204
200
|
|
|
205
201
|
config_file = io.BytesIO(
|
|
206
|
-
"""
|
|
202
|
+
b"""
|
|
207
203
|
[credential]
|
|
208
204
|
helper =
|
|
209
|
-
"""
|
|
210
|
-
"ascii"
|
|
211
|
-
)
|
|
205
|
+
"""
|
|
212
206
|
)
|
|
213
207
|
config_file.seek(0)
|
|
214
208
|
config = ConfigFile.from_file(config_file)
|
scmrepo-1.5.0/pyproject.toml
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
[build-system]
|
|
2
|
-
requires = ["setuptools>=48", "setuptools_scm[toml]>=6.3.1"]
|
|
3
|
-
build-backend = "setuptools.build_meta"
|
|
4
|
-
|
|
5
|
-
[tool.setuptools_scm]
|
|
6
|
-
|
|
7
|
-
[tool.black]
|
|
8
|
-
line-length = 88
|
|
9
|
-
include = '\.pyi?$'
|
|
10
|
-
exclude = '''
|
|
11
|
-
/(
|
|
12
|
-
\.eggs
|
|
13
|
-
| \.git
|
|
14
|
-
| \.hg
|
|
15
|
-
| \.mypy_cache
|
|
16
|
-
| \.tox
|
|
17
|
-
| \.venv
|
|
18
|
-
| _build
|
|
19
|
-
| buck-out
|
|
20
|
-
| build
|
|
21
|
-
| dist
|
|
22
|
-
)/
|
|
23
|
-
'''
|
|
24
|
-
|
|
25
|
-
[tool.isort]
|
|
26
|
-
profile = "black"
|
|
27
|
-
known_first_party = ["scmrepo"]
|
|
28
|
-
line_length = 88
|
|
29
|
-
|
|
30
|
-
[tool.pytest.ini_options]
|
|
31
|
-
addopts = "-ra"
|
|
32
|
-
markers = [
|
|
33
|
-
"skip_git_backend: skip tests for given backend",
|
|
34
|
-
"slow: mark test as slow to run",
|
|
35
|
-
]
|
|
36
|
-
|
|
37
|
-
[tool.coverage.run]
|
|
38
|
-
branch = true
|
|
39
|
-
source = ["scmrepo", "tests"]
|
|
40
|
-
|
|
41
|
-
[tool.coverage.paths]
|
|
42
|
-
source = ["src", "*/site-packages"]
|
|
43
|
-
|
|
44
|
-
[tool.coverage.report]
|
|
45
|
-
show_missing = true
|
|
46
|
-
exclude_lines = [
|
|
47
|
-
"pragma: no cover",
|
|
48
|
-
"if __name__ == .__main__.:",
|
|
49
|
-
"if typing.TYPE_CHECKING:",
|
|
50
|
-
"if TYPE_CHECKING:",
|
|
51
|
-
"raise NotImplementedError",
|
|
52
|
-
"raise AssertionError",
|
|
53
|
-
"@overload",
|
|
54
|
-
]
|
|
55
|
-
|
|
56
|
-
[tool.mypy]
|
|
57
|
-
# Error output
|
|
58
|
-
show_column_numbers = true
|
|
59
|
-
show_error_codes = true
|
|
60
|
-
show_error_context = true
|
|
61
|
-
show_traceback = true
|
|
62
|
-
pretty = true
|
|
63
|
-
check_untyped_defs = false
|
|
64
|
-
# Warnings
|
|
65
|
-
warn_no_return = true
|
|
66
|
-
warn_redundant_casts = true
|
|
67
|
-
warn_unreachable = true
|
|
68
|
-
files = ["src", "tests"]
|
|
69
|
-
|
|
70
|
-
[[tool.mypy.overrides]]
|
|
71
|
-
module = [
|
|
72
|
-
"pygtrie",
|
|
73
|
-
"dvc_http.*",
|
|
74
|
-
"funcy",
|
|
75
|
-
"git",
|
|
76
|
-
"gitdb.*",
|
|
77
|
-
"fsspec.*",
|
|
78
|
-
"pathspec.patterns",
|
|
79
|
-
"asyncssh.*",
|
|
80
|
-
"pygit2.*",
|
|
81
|
-
"pytest_docker.plugin",
|
|
82
|
-
"urllib3.*",
|
|
83
|
-
]
|
|
84
|
-
ignore_missing_imports = true
|
|
85
|
-
|
|
86
|
-
[tool.pylint.format]
|
|
87
|
-
max-line-length = 88
|
|
88
|
-
|
|
89
|
-
[tool.pylint.master]
|
|
90
|
-
extension-pkg-whitelist = ["pygit2"]
|
|
91
|
-
|
|
92
|
-
[tool.pylint.message_control]
|
|
93
|
-
disable = [
|
|
94
|
-
"format", "refactoring", "design", "invalid-name", "duplicate-code",
|
|
95
|
-
"missing-function-docstring", "missing-module-docstring", "missing-class-docstring",
|
|
96
|
-
"raise-missing-from", "import-outside-toplevel", "cyclic-import", "fixme",
|
|
97
|
-
]
|
|
98
|
-
enable = ["c-extension-no-member", "no-else-return"]
|
|
99
|
-
|
|
100
|
-
[tool.pylint.variables]
|
|
101
|
-
dummy-variables-rgx = "_+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy|^ignored_|^unused_"
|
|
102
|
-
ignored-argument-names = "_.*|^ignored_|^unused_|args|kwargs"
|
|
103
|
-
|
|
104
|
-
[tool.codespell]
|
|
105
|
-
ignore-words-list = "cachable, keypair"
|
|
106
|
-
|
|
107
|
-
[tool.bandit]
|
|
108
|
-
exclude_dirs = ["tests"]
|
|
109
|
-
skips = ["B101"]
|
scmrepo-1.5.0/setup.cfg
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
[metadata]
|
|
2
|
-
description = SCM wrapper and fsspec filesystem for Git for use in DVC
|
|
3
|
-
name = scmrepo
|
|
4
|
-
long_description = file: README.rst
|
|
5
|
-
long_description_content_type = text/x-rst
|
|
6
|
-
license = Apache-2.0
|
|
7
|
-
license_file = LICENSE
|
|
8
|
-
url = https://github.com/iterative/scmrepo
|
|
9
|
-
platforms = any
|
|
10
|
-
authors = Iterative
|
|
11
|
-
maintainer_email = support@dvc.org
|
|
12
|
-
classifiers =
|
|
13
|
-
Programming Language :: Python :: 3
|
|
14
|
-
Programming Language :: Python :: 3.8
|
|
15
|
-
Programming Language :: Python :: 3.9
|
|
16
|
-
Programming Language :: Python :: 3.10
|
|
17
|
-
Programming Language :: Python :: 3.11
|
|
18
|
-
Development Status :: 4 - Beta
|
|
19
|
-
|
|
20
|
-
[options]
|
|
21
|
-
python_requires = >=3.8
|
|
22
|
-
zip_safe = False
|
|
23
|
-
package_dir =
|
|
24
|
-
=src
|
|
25
|
-
packages = find:
|
|
26
|
-
install_requires =
|
|
27
|
-
gitpython>3
|
|
28
|
-
dulwich>=0.21.6
|
|
29
|
-
pygit2>=1.13.3
|
|
30
|
-
pygtrie>=2.3.2
|
|
31
|
-
fsspec>=2021.7.0
|
|
32
|
-
pathspec>=0.9.0
|
|
33
|
-
asyncssh>=2.13.1,<3
|
|
34
|
-
funcy>=1.14
|
|
35
|
-
shortuuid>=0.5.0
|
|
36
|
-
dvc-objects>=1.0.1,<2
|
|
37
|
-
dvc-http>=2.29.0
|
|
38
|
-
|
|
39
|
-
[options.extras_require]
|
|
40
|
-
tests =
|
|
41
|
-
pytest==7.2.0
|
|
42
|
-
pytest-sugar==0.9.5
|
|
43
|
-
pytest-cov==3.0.0
|
|
44
|
-
pytest-mock==3.8.2
|
|
45
|
-
pylint==2.15.0
|
|
46
|
-
mypy==0.971
|
|
47
|
-
pytest-test-utils==0.0.8
|
|
48
|
-
pytest-asyncio==0.18.3
|
|
49
|
-
pytest-docker==0.12.0; python_version < '3.10' and implementation_name != 'pypy'
|
|
50
|
-
mock==5.1.0
|
|
51
|
-
paramiko==3.3.1
|
|
52
|
-
types-certifi==2021.10.8.3
|
|
53
|
-
types-mock==5.1.0.2
|
|
54
|
-
types-paramiko==3.3.0.0
|
|
55
|
-
dev =
|
|
56
|
-
%(tests)s
|
|
57
|
-
|
|
58
|
-
[options.packages.find]
|
|
59
|
-
exclude =
|
|
60
|
-
tests
|
|
61
|
-
tests.*
|
|
62
|
-
where = src
|
|
63
|
-
|
|
64
|
-
[options.package_data]
|
|
65
|
-
scmrepo = py.typed
|
|
66
|
-
|
|
67
|
-
[flake8]
|
|
68
|
-
ignore =
|
|
69
|
-
E203
|
|
70
|
-
E266
|
|
71
|
-
W503
|
|
72
|
-
P1
|
|
73
|
-
max_line_length = 88
|
|
74
|
-
max-complexity = 15
|
|
75
|
-
select = B,C,E,F,W,T4,B902,T,P
|
|
76
|
-
show_source = true
|
|
77
|
-
count = true
|
|
78
|
-
|
|
79
|
-
[egg_info]
|
|
80
|
-
tag_build =
|
|
81
|
-
tag_date = 0
|
|
82
|
-
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|