github-backup 0.46.0__tar.gz → 0.47.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.
@@ -1,9 +1,242 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
- 0.46.0 (2024-09-11)
4
+ 0.47.0 (2024-12-09)
5
5
  -------------------
6
6
  ------------------------
7
+ - Detect empty HTTPS contexts. [John Doe]
8
+
9
+ Some users are relying solely on the certifi package to provide their CA certs, as requests does this by default.
10
+
11
+ This patch detects this situation and emits a clear warning as well as importing certifi to work around the situation..
12
+
13
+ Fixes #162 .
14
+ - Chore(deps): bump six from 1.16.0 to 1.17.0 in the python-packages
15
+ group. [dependabot[bot]]
16
+
17
+ Bumps the python-packages group with 1 update: [six](https://github.com/benjaminp/six).
18
+
19
+
20
+ Updates `six` from 1.16.0 to 1.17.0
21
+ - [Changelog](https://github.com/benjaminp/six/blob/main/CHANGES)
22
+ - [Commits](https://github.com/benjaminp/six/compare/1.16.0...1.17.0)
23
+
24
+ ---
25
+ updated-dependencies:
26
+ - dependency-name: six
27
+ dependency-type: direct:production
28
+ update-type: version-update:semver-minor
29
+ dependency-group: python-packages
30
+ ...
31
+ - Chore(deps): bump the python-packages group across 1 directory with 20
32
+ updates. [dependabot[bot]]
33
+
34
+ Bumps the python-packages group with 20 updates in the / directory:
35
+
36
+ | Package | From | To |
37
+ | --- | --- | --- |
38
+ | [black](https://github.com/psf/black) | `24.4.2` | `24.10.0` |
39
+ | [bleach](https://github.com/mozilla/bleach) | `6.1.0` | `6.2.0` |
40
+ | [certifi](https://github.com/certifi/python-certifi) | `2024.7.4` | `2024.8.30` |
41
+ | [charset-normalizer](https://github.com/Ousret/charset_normalizer) | `3.3.2` | `3.4.0` |
42
+ | [flake8](https://github.com/pycqa/flake8) | `7.1.0` | `7.1.1` |
43
+ | [idna](https://github.com/kjd/idna) | `3.7` | `3.10` |
44
+ | [importlib-metadata](https://github.com/python/importlib_metadata) | `7.2.1` | `8.5.0` |
45
+ | [keyring](https://github.com/jaraco/keyring) | `25.2.1` | `25.5.0` |
46
+ | [more-itertools](https://github.com/more-itertools/more-itertools) | `10.3.0` | `10.5.0` |
47
+ | [packaging](https://github.com/pypa/packaging) | `24.1` | `24.2` |
48
+ | [pkginfo](https://code.launchpad.net/~tseaver/pkginfo/trunk) | `1.11.1` | `1.12.0` |
49
+ | [platformdirs](https://github.com/tox-dev/platformdirs) | `4.2.2` | `4.3.6` |
50
+ | [pycodestyle](https://github.com/PyCQA/pycodestyle) | `2.12.0` | `2.12.1` |
51
+ | [readme-renderer](https://github.com/pypa/readme_renderer) | `43.0` | `44.0` |
52
+ | [rich](https://github.com/Textualize/rich) | `13.7.1` | `13.9.4` |
53
+ | [setuptools](https://github.com/pypa/setuptools) | `70.1.1` | `75.6.0` |
54
+ | [tqdm](https://github.com/tqdm/tqdm) | `4.66.4` | `4.67.1` |
55
+ | [twine](https://github.com/pypa/twine) | `5.1.0` | `6.0.1` |
56
+ | [urllib3](https://github.com/urllib3/urllib3) | `2.2.2` | `2.2.3` |
57
+ | [zipp](https://github.com/jaraco/zipp) | `3.19.2` | `3.21.0` |
58
+
59
+
60
+
61
+ Updates `black` from 24.4.2 to 24.10.0
62
+ - [Release notes](https://github.com/psf/black/releases)
63
+ - [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
64
+ - [Commits](https://github.com/psf/black/compare/24.4.2...24.10.0)
65
+
66
+ Updates `bleach` from 6.1.0 to 6.2.0
67
+ - [Changelog](https://github.com/mozilla/bleach/blob/main/CHANGES)
68
+ - [Commits](https://github.com/mozilla/bleach/compare/v6.1.0...v6.2.0)
69
+
70
+ Updates `certifi` from 2024.7.4 to 2024.8.30
71
+ - [Commits](https://github.com/certifi/python-certifi/compare/2024.07.04...2024.08.30)
72
+
73
+ Updates `charset-normalizer` from 3.3.2 to 3.4.0
74
+ - [Release notes](https://github.com/Ousret/charset_normalizer/releases)
75
+ - [Changelog](https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md)
76
+ - [Commits](https://github.com/Ousret/charset_normalizer/compare/3.3.2...3.4.0)
77
+
78
+ Updates `flake8` from 7.1.0 to 7.1.1
79
+ - [Commits](https://github.com/pycqa/flake8/compare/7.1.0...7.1.1)
80
+
81
+ Updates `idna` from 3.7 to 3.10
82
+ - [Release notes](https://github.com/kjd/idna/releases)
83
+ - [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
84
+ - [Commits](https://github.com/kjd/idna/compare/v3.7...v3.10)
85
+
86
+ Updates `importlib-metadata` from 7.2.1 to 8.5.0
87
+ - [Release notes](https://github.com/python/importlib_metadata/releases)
88
+ - [Changelog](https://github.com/python/importlib_metadata/blob/main/NEWS.rst)
89
+ - [Commits](https://github.com/python/importlib_metadata/compare/v7.2.1...v8.5.0)
90
+
91
+ Updates `keyring` from 25.2.1 to 25.5.0
92
+ - [Release notes](https://github.com/jaraco/keyring/releases)
93
+ - [Changelog](https://github.com/jaraco/keyring/blob/main/NEWS.rst)
94
+ - [Commits](https://github.com/jaraco/keyring/compare/v25.2.1...v25.5.0)
95
+
96
+ Updates `more-itertools` from 10.3.0 to 10.5.0
97
+ - [Release notes](https://github.com/more-itertools/more-itertools/releases)
98
+ - [Commits](https://github.com/more-itertools/more-itertools/compare/v10.3.0...v10.5.0)
99
+
100
+ Updates `packaging` from 24.1 to 24.2
101
+ - [Release notes](https://github.com/pypa/packaging/releases)
102
+ - [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
103
+ - [Commits](https://github.com/pypa/packaging/compare/24.1...24.2)
104
+
105
+ Updates `pkginfo` from 1.11.1 to 1.12.0
106
+
107
+ Updates `platformdirs` from 4.2.2 to 4.3.6
108
+ - [Release notes](https://github.com/tox-dev/platformdirs/releases)
109
+ - [Changelog](https://github.com/tox-dev/platformdirs/blob/main/CHANGES.rst)
110
+ - [Commits](https://github.com/tox-dev/platformdirs/compare/4.2.2...4.3.6)
111
+
112
+ Updates `pycodestyle` from 2.12.0 to 2.12.1
113
+ - [Release notes](https://github.com/PyCQA/pycodestyle/releases)
114
+ - [Changelog](https://github.com/PyCQA/pycodestyle/blob/main/CHANGES.txt)
115
+ - [Commits](https://github.com/PyCQA/pycodestyle/compare/2.12.0...2.12.1)
116
+
117
+ Updates `readme-renderer` from 43.0 to 44.0
118
+ - [Release notes](https://github.com/pypa/readme_renderer/releases)
119
+ - [Changelog](https://github.com/pypa/readme_renderer/blob/main/CHANGES.rst)
120
+ - [Commits](https://github.com/pypa/readme_renderer/compare/43.0...44.0)
121
+
122
+ Updates `rich` from 13.7.1 to 13.9.4
123
+ - [Release notes](https://github.com/Textualize/rich/releases)
124
+ - [Changelog](https://github.com/Textualize/rich/blob/master/CHANGELOG.md)
125
+ - [Commits](https://github.com/Textualize/rich/compare/v13.7.1...v13.9.4)
126
+
127
+ Updates `setuptools` from 70.1.1 to 75.6.0
128
+ - [Release notes](https://github.com/pypa/setuptools/releases)
129
+ - [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
130
+ - [Commits](https://github.com/pypa/setuptools/compare/v70.1.1...v75.6.0)
131
+
132
+ Updates `tqdm` from 4.66.4 to 4.67.1
133
+ - [Release notes](https://github.com/tqdm/tqdm/releases)
134
+ - [Commits](https://github.com/tqdm/tqdm/compare/v4.66.4...v4.67.1)
135
+
136
+ Updates `twine` from 5.1.0 to 6.0.1
137
+ - [Release notes](https://github.com/pypa/twine/releases)
138
+ - [Changelog](https://github.com/pypa/twine/blob/main/docs/changelog.rst)
139
+ - [Commits](https://github.com/pypa/twine/compare/5.1.0...6.0.1)
140
+
141
+ Updates `urllib3` from 2.2.2 to 2.2.3
142
+ - [Release notes](https://github.com/urllib3/urllib3/releases)
143
+ - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
144
+ - [Commits](https://github.com/urllib3/urllib3/compare/2.2.2...2.2.3)
145
+
146
+ Updates `zipp` from 3.19.2 to 3.21.0
147
+ - [Release notes](https://github.com/jaraco/zipp/releases)
148
+ - [Changelog](https://github.com/jaraco/zipp/blob/main/NEWS.rst)
149
+ - [Commits](https://github.com/jaraco/zipp/compare/v3.19.2...v3.21.0)
150
+
151
+ ---
152
+ updated-dependencies:
153
+ - dependency-name: black
154
+ dependency-type: direct:production
155
+ update-type: version-update:semver-minor
156
+ dependency-group: python-packages
157
+ - dependency-name: bleach
158
+ dependency-type: direct:production
159
+ update-type: version-update:semver-minor
160
+ dependency-group: python-packages
161
+ - dependency-name: certifi
162
+ dependency-type: direct:production
163
+ update-type: version-update:semver-minor
164
+ dependency-group: python-packages
165
+ - dependency-name: charset-normalizer
166
+ dependency-type: direct:production
167
+ update-type: version-update:semver-minor
168
+ dependency-group: python-packages
169
+ - dependency-name: flake8
170
+ dependency-type: direct:production
171
+ update-type: version-update:semver-patch
172
+ dependency-group: python-packages
173
+ - dependency-name: idna
174
+ dependency-type: direct:production
175
+ update-type: version-update:semver-minor
176
+ dependency-group: python-packages
177
+ - dependency-name: importlib-metadata
178
+ dependency-type: direct:production
179
+ update-type: version-update:semver-major
180
+ dependency-group: python-packages
181
+ - dependency-name: keyring
182
+ dependency-type: direct:production
183
+ update-type: version-update:semver-minor
184
+ dependency-group: python-packages
185
+ - dependency-name: more-itertools
186
+ dependency-type: direct:production
187
+ update-type: version-update:semver-minor
188
+ dependency-group: python-packages
189
+ - dependency-name: packaging
190
+ dependency-type: direct:production
191
+ update-type: version-update:semver-minor
192
+ dependency-group: python-packages
193
+ - dependency-name: pkginfo
194
+ dependency-type: direct:production
195
+ update-type: version-update:semver-minor
196
+ dependency-group: python-packages
197
+ - dependency-name: platformdirs
198
+ dependency-type: direct:production
199
+ update-type: version-update:semver-minor
200
+ dependency-group: python-packages
201
+ - dependency-name: pycodestyle
202
+ dependency-type: direct:production
203
+ update-type: version-update:semver-patch
204
+ dependency-group: python-packages
205
+ - dependency-name: readme-renderer
206
+ dependency-type: direct:production
207
+ update-type: version-update:semver-major
208
+ dependency-group: python-packages
209
+ - dependency-name: rich
210
+ dependency-type: direct:production
211
+ update-type: version-update:semver-minor
212
+ dependency-group: python-packages
213
+ - dependency-name: setuptools
214
+ dependency-type: direct:production
215
+ update-type: version-update:semver-major
216
+ dependency-group: python-packages
217
+ - dependency-name: tqdm
218
+ dependency-type: direct:production
219
+ update-type: version-update:semver-minor
220
+ dependency-group: python-packages
221
+ - dependency-name: twine
222
+ dependency-type: direct:production
223
+ update-type: version-update:semver-major
224
+ dependency-group: python-packages
225
+ - dependency-name: urllib3
226
+ dependency-type: direct:production
227
+ update-type: version-update:semver-patch
228
+ dependency-group: python-packages
229
+ - dependency-name: zipp
230
+ dependency-type: direct:production
231
+ update-type: version-update:semver-minor
232
+ dependency-group: python-packages
233
+ ...
234
+ - KeyError fix with gists. [John Doe]
235
+ - Fix punctuation in README. [Jakub Wilk]
236
+
237
+
238
+ 0.46.0 (2024-09-11)
239
+ -------------------
7
240
 
8
241
  Fix
9
242
  ~~~
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: github-backup
3
- Version: 0.46.0
3
+ Version: 0.47.0
4
4
  Summary: backup a github user or organization
5
5
  Home-page: http://github.com/josegonzalez/python-github-backup
6
6
  Author: Jose Diaz-Gonzalez
@@ -244,7 +244,7 @@ Gotchas / Known-issues
244
244
  All is not everything
245
245
  ---------------------
246
246
 
247
- The ``--all`` argument does not include; cloning private repos (``-P, --private``), cloning forks (``-F, --fork``) cloning starred repositories (``--all-starred``), ``--pull-details``, cloning LFS repositories (``--lfs``), cloning gists (``--starred-gists``) or cloning starred gist repos (``--starred-gists``). See examples for more.
247
+ The ``--all`` argument does not include: cloning private repos (``-P, --private``), cloning forks (``-F, --fork``), cloning starred repositories (``--all-starred``), ``--pull-details``, cloning LFS repositories (``--lfs``), cloning gists (``--starred-gists``) or cloning starred gist repos (``--starred-gists``). See examples for more.
248
248
 
249
249
  Cloning all starred size
250
250
  ------------------------
@@ -225,7 +225,7 @@ Gotchas / Known-issues
225
225
  All is not everything
226
226
  ---------------------
227
227
 
228
- The ``--all`` argument does not include; cloning private repos (``-P, --private``), cloning forks (``-F, --fork``) cloning starred repositories (``--all-starred``), ``--pull-details``, cloning LFS repositories (``--lfs``), cloning gists (``--starred-gists``) or cloning starred gist repos (``--starred-gists``). See examples for more.
228
+ The ``--all`` argument does not include: cloning private repos (``-P, --private``), cloning forks (``-F, --fork``), cloning starred repositories (``--all-starred``), ``--pull-details``, cloning LFS repositories (``--lfs``), cloning gists (``--starred-gists``) or cloning starred gist repos (``--starred-gists``). See examples for more.
229
229
 
230
230
  Cloning all starred size
231
231
  ------------------------
@@ -225,7 +225,7 @@ Gotchas / Known-issues
225
225
  All is not everything
226
226
  ---------------------
227
227
 
228
- The ``--all`` argument does not include; cloning private repos (``-P, --private``), cloning forks (``-F, --fork``) cloning starred repositories (``--all-starred``), ``--pull-details``, cloning LFS repositories (``--lfs``), cloning gists (``--starred-gists``) or cloning starred gist repos (``--starred-gists``). See examples for more.
228
+ The ``--all`` argument does not include: cloning private repos (``-P, --private``), cloning forks (``-F, --fork``), cloning starred repositories (``--all-starred``), ``--pull-details``, cloning LFS repositories (``--lfs``), cloning gists (``--starred-gists``) or cloning starred gist repos (``--starred-gists``). See examples for more.
229
229
 
230
230
  Cloning all starred size
231
231
  ------------------------
@@ -0,0 +1 @@
1
+ __version__ = "0.47.0"
@@ -15,6 +15,7 @@ import platform
15
15
  import re
16
16
  import select
17
17
  import socket
18
+ import ssl
18
19
  import subprocess
19
20
  import sys
20
21
  import time
@@ -36,6 +37,18 @@ FNULL = open(os.devnull, "w")
36
37
  FILE_URI_PREFIX = "file://"
37
38
  logger = logging.getLogger(__name__)
38
39
 
40
+ https_ctx = ssl.create_default_context()
41
+ if not https_ctx.get_ca_certs():
42
+ import warnings
43
+ warnings.warn('\n\nYOUR DEFAULT CA CERTS ARE EMPTY.\n' +
44
+ 'PLEASE POPULATE ANY OF:' +
45
+ ''.join([
46
+ '\n - ' + x
47
+ for x in ssl.get_default_verify_paths()
48
+ if type(x) is str
49
+ ]) + '\n', stacklevel=2)
50
+ import certifi
51
+ https_ctx = ssl.create_default_context(cafile=certifi.where())
39
52
 
40
53
  def logging_subprocess(
41
54
  popenargs, stdout_log_level=logging.DEBUG, stderr_log_level=logging.ERROR, **kwargs
@@ -666,7 +679,7 @@ def _get_response(request, auth, template):
666
679
  while True:
667
680
  should_continue = False
668
681
  try:
669
- r = urlopen(request)
682
+ r = urlopen(request, context=https_ctx)
670
683
  except HTTPError as exc:
671
684
  errors, should_continue = _request_http_error(exc, auth, errors) # noqa
672
685
  r = exc
@@ -931,11 +944,11 @@ def filter_repositories(args, unfiltered_repositories):
931
944
  if r.get("language") and r.get("language").lower() in languages
932
945
  ] # noqa
933
946
  if name_regex:
934
- repositories = [r for r in repositories if name_regex.match(r["name"])]
947
+ repositories = [r for r in repositories if "name" not in r or name_regex.match(r["name"])]
935
948
  if args.skip_archived:
936
949
  repositories = [r for r in repositories if not r.get("archived")]
937
950
  if args.exclude:
938
- repositories = [r for r in repositories if r["name"] not in args.exclude]
951
+ repositories = [r for r in repositories if "name" not in r or r["name"] not in args.exclude]
939
952
 
940
953
  return repositories
941
954
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: github-backup
3
- Version: 0.46.0
3
+ Version: 0.47.0
4
4
  Summary: backup a github user or organization
5
5
  Home-page: http://github.com/josegonzalez/python-github-backup
6
6
  Author: Jose Diaz-Gonzalez
@@ -244,7 +244,7 @@ Gotchas / Known-issues
244
244
  All is not everything
245
245
  ---------------------
246
246
 
247
- The ``--all`` argument does not include; cloning private repos (``-P, --private``), cloning forks (``-F, --fork``) cloning starred repositories (``--all-starred``), ``--pull-details``, cloning LFS repositories (``--lfs``), cloning gists (``--starred-gists``) or cloning starred gist repos (``--starred-gists``). See examples for more.
247
+ The ``--all`` argument does not include: cloning private repos (``-P, --private``), cloning forks (``-F, --fork``), cloning starred repositories (``--all-starred``), ``--pull-details``, cloning LFS repositories (``--lfs``), cloning gists (``--starred-gists``) or cloning starred gist repos (``--starred-gists``). See examples for more.
248
248
 
249
249
  Cloning all starred size
250
250
  ------------------------
@@ -0,0 +1,39 @@
1
+ autopep8==2.3.1
2
+ black==24.10.0
3
+ bleach==6.2.0
4
+ certifi==2024.8.30
5
+ charset-normalizer==3.4.0
6
+ click==8.1.7
7
+ colorama==0.4.6
8
+ docutils==0.21.2
9
+ flake8==7.1.1
10
+ gitchangelog==3.0.4
11
+ idna==3.10
12
+ importlib-metadata==8.5.0
13
+ jaraco.classes==3.4.0
14
+ keyring==25.5.0
15
+ markdown-it-py==3.0.0
16
+ mccabe==0.7.0
17
+ mdurl==0.1.2
18
+ more-itertools==10.5.0
19
+ mypy-extensions==1.0.0
20
+ packaging==24.2
21
+ pathspec==0.12.1
22
+ pkginfo==1.12.0
23
+ platformdirs==4.3.6
24
+ pycodestyle==2.12.1
25
+ pyflakes==3.2.0
26
+ Pygments==2.18.0
27
+ readme-renderer==44.0
28
+ requests==2.32.3
29
+ requests-toolbelt==1.0.0
30
+ restructuredtext-lint==1.4.0
31
+ rfc3986==2.0.0
32
+ rich==13.9.4
33
+ setuptools==75.6.0
34
+ six==1.17.0
35
+ tqdm==4.67.1
36
+ twine==6.0.1
37
+ urllib3==2.2.3
38
+ webencodings==0.5.1
39
+ zipp==3.21.0
@@ -1 +0,0 @@
1
- __version__ = "0.46.0"
@@ -1,39 +0,0 @@
1
- autopep8==2.3.1
2
- black==24.4.2
3
- bleach==6.1.0
4
- certifi==2024.7.4
5
- charset-normalizer==3.3.2
6
- click==8.1.7
7
- colorama==0.4.6
8
- docutils==0.21.2
9
- flake8==7.1.0
10
- gitchangelog==3.0.4
11
- idna==3.7
12
- importlib-metadata==7.2.1
13
- jaraco.classes==3.4.0
14
- keyring==25.2.1
15
- markdown-it-py==3.0.0
16
- mccabe==0.7.0
17
- mdurl==0.1.2
18
- more-itertools==10.3.0
19
- mypy-extensions==1.0.0
20
- packaging==24.1
21
- pathspec==0.12.1
22
- pkginfo==1.11.1
23
- platformdirs==4.2.2
24
- pycodestyle==2.12.0
25
- pyflakes==3.2.0
26
- Pygments==2.18.0
27
- readme-renderer==43.0
28
- requests==2.32.3
29
- requests-toolbelt==1.0.0
30
- restructuredtext-lint==1.4.0
31
- rfc3986==2.0.0
32
- rich==13.7.1
33
- setuptools==70.1.1
34
- six==1.16.0
35
- tqdm==4.66.4
36
- twine==5.1.0
37
- urllib3==2.2.2
38
- webencodings==0.5.1
39
- zipp==3.19.2
File without changes
File without changes