Commit Graph

796 Commits

Author SHA1 Message Date
Changaco
a2391a550e remove pointless and unsafe exports in examples 2026-04-30 14:43:27 +00:00
Changaco
9340aa3aaa try to clarify what --incremental actually does 2026-04-30 14:43:27 +00:00
Changaco
543d76f24b fix a typo in the README 2026-04-30 14:43:27 +00:00
Changaco
3cda5a01fd document that --all doesn't imply --attachments 2026-04-30 14:43:27 +00:00
Jose Diaz-Gonzalez
4d1772319f Merge pull request #508 from Changaco/security-improvements
Security-related changes
2026-04-30 10:19:19 -04:00
Jose Diaz-Gonzalez
2c7fdab54e Merge pull request #507 from Changaco/output-cleanup
Hide output of `git lfs version`
2026-04-30 10:19:02 -04:00
Jose Diaz-Gonzalez
334c6c6546 Merge pull request #506 from Changaco/fix-crash
Fix a crash
2026-04-30 10:18:42 -04:00
Changaco
2f130ecd66 remove bad invocation of the system shell 2026-04-30 12:24:26 +00:00
Changaco
ddf7f82e65 add missing context argument to urlopen call 2026-04-30 12:24:26 +00:00
Changaco
ddf82f1115 suppress output of call to git lfs version 2026-04-30 12:22:57 +00:00
Changaco
0638666bc7 handle more network errors
```python-traceback
Traceback (most recent call last):
  File ".local/bin/github-backup", line 6, in <module>
    sys.exit(main())
             ~~~~^^
  File ".local/share/pipx/venvs/github-backup/lib/python3.14/site-packages/github_backup/cli.py", line 83, in main
    backup_repositories(args, output_directory, repositories)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".local/share/pipx/venvs/github-backup/lib/python3.14/site-packages/github_backup/github_backup.py", line 1845, in backup_repositories
    backup_pulls(args, repo_cwd, repository, repos_template)
    ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".local/share/pipx/venvs/github-backup/lib/python3.14/site-packages/github_backup/github_backup.py", line 2019, in backup_pulls
    pulls[number]["commit_data"] = retrieve_data(args, template)
                                   ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
  File ".local/share/pipx/venvs/github-backup/lib/python3.14/site-packages/github_backup/github_backup.py", line 766, in retrieve_data
    return list(fetch_all())
  File ".local/share/pipx/venvs/github-backup/lib/python3.14/site-packages/github_backup/github_backup.py", line 717, in fetch_all
    response = json.loads(http_response.read().decode("utf-8"))
                          ~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.14/http/client.py", line 500, in read
    s = self._safe_read(self.length)
  File "/usr/lib/python3.14/http/client.py", line 648, in _safe_read
    data = self.fp.read(cursize)
  File "/usr/lib/python3.14/socket.py", line 725, in readinto
    return self._sock.recv_into(b)
           ~~~~~~~~~~~~~~~~~~~~^^^
  File "/usr/lib/python3.14/ssl.py", line 1304, in recv_into
    return self.read(nbytes, buffer)
           ~~~~~~~~~^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.14/ssl.py", line 1138, in read
    return self._sslobj.read(len, buffer)
           ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
ConnectionResetError: [Errno 104] Connection reset by peer
```
2026-04-29 12:39:13 +00:00
GitHub Action
f8cdf55050 Release version 0.62.0 0.62.0 2026-04-29 12:10:11 +00:00
Jose Diaz-Gonzalez
b59f719f10 Merge pull request #505 from mrexodia/redundant-fetches
Reduce redundant fetches
2026-04-29 08:09:20 -04:00
Duncan Ogilvie
014eff395a Skip checkpoint-equal incremental items 2026-04-29 12:56:24 +02:00
Duncan Ogilvie
9d0cfdb61d Avoid redundant release asset list requests 2026-04-29 12:56:23 +02:00
Duncan Ogilvie
6cd0ab3633 Reduce unnecessary pull requests with incremental fetching 2026-04-29 12:56:23 +02:00
Jose Diaz-Gonzalez
02e833e40a Merge pull request #504 from mrexodia/per-resource-last-update
Implement per-resource last_update timestamps
2026-04-29 06:25:05 -04:00
Duncan Ogilvie
b3a8241c9a Implement per-resource last_update timestamps
Closes #62
2026-04-29 12:06:33 +02:00
Jose Diaz-Gonzalez
d19e2ad9c5 Merge pull request #503 from mrexodia/pr-reviews
Add support for pull request reviews
2026-04-29 05:52:50 -04:00
Duncan Ogilvie
24b3fdb4f3 Add support for pull request reviews
Closes #124
2026-04-29 11:43:30 +02:00
Jose Diaz-Gonzalez
013b27208e Merge pull request #502 from mrexodia/discussions
Add support for discussions
2026-04-29 00:42:53 -04:00
Duncan Ogilvie
4d022d94d0 Add support for discussions
Closes #290
2026-04-28 14:32:27 +02:00
Jose Diaz-Gonzalez
ed29a917ca Merge pull request #501 from mrexodia/gh-cli-token
Add --token-from-gh authentication option
2026-04-27 17:22:10 -04:00
Duncan Ogilvie
f4117990b2 Add --token-from-gh authentication option 2026-04-27 15:52:55 +02:00
Jose Diaz-Gonzalez
4c1f21a306 Merge pull request #499 from josegonzalez/dependabot/pip/python-packages-590e9db7b9
chore(deps): bump pytest from 9.0.2 to 9.0.3 in the python-packages group
2026-04-08 12:46:47 -04:00
dependabot[bot]
9fde6ed1ff chore(deps): bump pytest in the python-packages group
Bumps the python-packages group with 1 update: [pytest](https://github.com/pytest-dev/pytest).


Updates `pytest` from 9.0.2 to 9.0.3
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/9.0.2...9.0.3)

---
updated-dependencies:
- dependency-name: pytest
  dependency-version: 9.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-04-08 13:05:48 +00:00
Jose Diaz-Gonzalez
9a9b069e14 Merge pull request #497 from josegonzalez/dependabot/pip/python-packages-b7f5c28099
chore(deps): bump black from 26.3.0 to 26.3.1 in the python-packages group
2026-03-19 18:05:25 -04:00
dependabot[bot]
f85c759e5d chore(deps): bump black in the python-packages group
Bumps the python-packages group with 1 update: [black](https://github.com/psf/black).


Updates `black` from 26.3.0 to 26.3.1
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](https://github.com/psf/black/compare/26.3.0...26.3.1)

---
updated-dependencies:
- dependency-name: black
  dependency-version: 26.3.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-12 13:05:24 +00:00
Jose Diaz-Gonzalez
26a6e1df1b Merge pull request #491 from josegonzalez/dependabot/github_actions/docker/login-action-4
chore(deps): bump docker/login-action from 3 to 4
2026-03-09 13:30:22 -04:00
dependabot[bot]
3d961d1118 chore(deps): bump docker/login-action from 3 to 4
Bumps [docker/login-action](https://github.com/docker/login-action) from 3 to 4.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 17:26:41 +00:00
Jose Diaz-Gonzalez
20f9542063 Merge pull request #494 from josegonzalez/dependabot/github_actions/docker/setup-qemu-action-4
chore(deps): bump docker/setup-qemu-action from 3 to 4
2026-03-09 13:26:23 -04:00
Jose Diaz-Gonzalez
bbf76e70eb Merge pull request #495 from josegonzalez/dependabot/github_actions/docker/build-push-action-7
chore(deps): bump docker/build-push-action from 6 to 7
2026-03-09 13:26:11 -04:00
Jose Diaz-Gonzalez
ca70725449 Merge pull request #493 from josegonzalez/dependabot/github_actions/docker/setup-buildx-action-4
chore(deps): bump docker/setup-buildx-action from 3 to 4
2026-03-09 13:25:54 -04:00
Jose Diaz-Gonzalez
653ceb1e12 Merge pull request #492 from josegonzalez/dependabot/github_actions/docker/metadata-action-6
chore(deps): bump docker/metadata-action from 5 to 6
2026-03-09 13:25:43 -04:00
Jose Diaz-Gonzalez
ba1575538b Merge pull request #496 from josegonzalez/dependabot/pip/python-packages-898938d50a
chore(deps): bump the python-packages group with 2 updates
2026-03-09 13:25:35 -04:00
dependabot[bot]
d5be07ec80 chore(deps): bump the python-packages group with 2 updates
Bumps the python-packages group with 2 updates: [black](https://github.com/psf/black) and [setuptools](https://github.com/pypa/setuptools).


Updates `black` from 26.1.0 to 26.3.0
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](https://github.com/psf/black/compare/26.1.0...26.3.0)

Updates `setuptools` from 82.0.0 to 82.0.1
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/setuptools/compare/v82.0.0...v82.0.1)

---
updated-dependencies:
- dependency-name: black
  dependency-version: 26.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: setuptools
  dependency-version: 82.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 13:28:37 +00:00
dependabot[bot]
5758e489e8 chore(deps): bump docker/build-push-action from 6 to 7
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6 to 7.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6...v7)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 04:33:58 +00:00
dependabot[bot]
cceef92346 chore(deps): bump docker/setup-qemu-action from 3 to 4
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3 to 4.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 04:33:55 +00:00
dependabot[bot]
7f1807aaf8 chore(deps): bump docker/setup-buildx-action from 3 to 4
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3 to 4.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 04:33:53 +00:00
dependabot[bot]
8a0553a5b1 chore(deps): bump docker/metadata-action from 5 to 6
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 5 to 6.
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](https://github.com/docker/metadata-action/compare/v5...v6)

---
updated-dependencies:
- dependency-name: docker/metadata-action
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-09 04:33:49 +00:00
GitHub Action
68af1d406a Release version 0.61.5 0.61.5 2026-02-18 21:04:32 +00:00
Jose Diaz-Gonzalez
b112b43a08 Merge pull request #490 from Iamrodos/fix/489-empty-repo-none-comparison
Fix empty repository crash due to None timestamp comparison (#489)
2026-02-18 16:03:57 -05:00
Rodos
f54a5458f6 Fix empty repository crash due to None timestamp comparison (#489)
Empty repositories have None for pushed_at/updated_at, causing a
TypeError when compared to the last_update string. Use .get() with
truthiness check to skip None timestamps in incremental tracking.
2026-02-18 20:10:48 +11:00
GitHub Action
60067650b0 Release version 0.61.4 0.61.4 2026-02-16 05:46:39 +00:00
Jose Diaz-Gonzalez
655886fa80 Merge pull request #488 from Iamrodos/fix/487-dmca-regression
Fix HTTP 451 DMCA and 403 TOS handling regression (#487)
2026-02-16 00:46:05 -05:00
Rodos
0162f7ed46 Fix HTTP 451 DMCA and 403 TOS handling regression (#487)
The DMCA handling added in PR #454 had a bug: make_request_with_retry()
raises HTTPError before retrieve_data() could check the status code via
getcode(), making the case 451 handler dead code. This also affected
HTTP 403 TOS violations (e.g. jumoog/MagiskOnWSA).

Fix by catching HTTPError in retrieve_data() and converting 451 and
blocked 403 responses (identified by "block" key in response body) to
RepositoryUnavailableError. Non-block 403s (permissions, scopes) still
propagate as HTTPError. Also handle RepositoryUnavailableError in
retrieve_repositories() for the --repository case.

Rewrote tests to mock urlopen (not make_request_with_retry) to exercise
the real code path that was previously untested.

Closes #487
2026-02-16 10:16:33 +11:00
Jose Diaz-Gonzalez
8c1a13475a Merge pull request #485 from josegonzalez/dependabot/pip/python-packages-906bf77f00
chore(deps): bump setuptools from 80.10.2 to 82.0.0 in the python-packages group
2026-02-11 15:26:03 -05:00
dependabot[bot]
6268a4c5c6 chore(deps): bump setuptools in the python-packages group
Bumps the python-packages group with 1 update: [setuptools](https://github.com/pypa/setuptools).


Updates `setuptools` from 80.10.2 to 82.0.0
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/setuptools/compare/v80.10.2...v82.0.0)

---
updated-dependencies:
- dependency-name: setuptools
  dependency-version: 82.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-09 14:31:40 +00:00
Jose Diaz-Gonzalez
4b2295db0d Merge pull request #484 from josegonzalez/dependabot/pip/python-packages-e903f47b53
chore(deps): bump setuptools from 80.10.1 to 80.10.2 in the python-packages group
2026-01-26 10:54:29 -05:00
dependabot[bot]
be900d1f3f chore(deps): bump setuptools in the python-packages group
Bumps the python-packages group with 1 update: [setuptools](https://github.com/pypa/setuptools).


Updates `setuptools` from 80.10.1 to 80.10.2
- [Release notes](https://github.com/pypa/setuptools/releases)
- [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/setuptools/compare/v80.10.1...v80.10.2)

---
updated-dependencies:
- dependency-name: setuptools
  dependency-version: 80.10.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-26 14:08:53 +00:00