GitHub Action
858731ebbd
Release version 0.60.0
0.60.0
2025-12-24 00:45:01 +00:00
Jose Diaz-Gonzalez
2e999d0d3c
Merge pull request #474 from mwtzzz/retry_logic
...
update retry logic and logging
2025-12-23 19:44:32 -05:00
michaelmartinez
44b0003ec9
updates to the tests, and fixes to the retry
2025-12-23 14:07:38 -08:00
michaelmartinez
5ab3852476
rm max_retries.py
2025-12-23 08:57:57 -08:00
michaelmartinez
8b21e2501c
readme
2025-12-23 08:55:52 -08:00
michaelmartinez
f9827da342
don't use a global variable, pass the args instead
2025-12-23 08:53:54 -08:00
michaelmartinez
1f2ec016d5
readme, simplify the logic a bit
2025-12-22 16:13:12 -08:00
michaelmartinez
8b1b632d89
max_retries 5
2025-12-22 14:47:26 -08:00
michaelmartinez
89502c326d
update retry logic and logging
...
### What
1. configureable retry count
2. additional logging
### Why
1. pass retry count as a command line arg; default 5
2. show details when api requests fail
### Testing before merge
compiles cleanly
### Validation after merge
compile and test
### Issue addressed by this PR
https://github.com/stellar/ops/issues/2039
2025-12-22 14:23:02 -08:00
GitHub Action
81a72ac8af
Release version 0.59.0
0.59.0
2025-12-21 23:48:36 +00:00
Jose Diaz-Gonzalez
3edbfc777c
Merge pull request #472 from Iamrodos/feature/108-starred-skip-size-over
...
Add --starred-skip-size-over flag to limit starred repo size (#108 )
2025-12-21 18:47:58 -05:00
Rodos
3c43e0f481
Add --starred-skip-size-over flag to limit starred repo size ( #108 )
...
Allow users to skip starred repositories exceeding a size threshold
when using --all-starred. Size is specified in MB and checked against
the GitHub API's repository size field.
- Only affects starred repos; user's own repos always included
- Logs each skipped repo with name and size
Closes #108
2025-12-21 22:18:09 +11:00
Jose Diaz-Gonzalez
875f09eeaf
Merge pull request #473 from Iamrodos/chore/remove-password-auth
...
chore: remove deprecated -u/-p password authentication options
2025-12-21 01:36:35 -05:00
Rodos
db36c3c137
chore: remove deprecated -u/-p password authentication options
2025-12-20 19:16:11 +11:00
GitHub Action
c70cc43f57
Release version 0.58.0
0.58.0
2025-12-16 15:17:23 +00:00
Jose Diaz-Gonzalez
27d3fcdafa
Merge pull request #471 from Iamrodos/fix/retry-logic
...
Fix retry logic for HTTP 5xx errors and network failures
2025-12-16 10:16:48 -05:00
Rodos
46140b0ff1
Fix retry logic for HTTP 5xx errors and network failures
...
Refactors error handling to retry all 5xx errors (not just 502), network errors (URLError, socket.error, IncompleteRead), and JSON parse errors with exponential backoff and jitter. Respects retry-after and rate limit headers per GitHub API requirements. Consolidates retry logic into make_request_with_retry() wrapper and adds clear logging for retry attempts and failures. Removes dead code from 2016 (errors list, _request_http_error, _request_url_error) that was intentionally disabled in commit 1e5a9048 to fix #29 .
Fixes #140 , #110 , #138
2025-12-16 21:55:47 +11:00
Jose Diaz-Gonzalez
02dd902b67
Merge pull request #470 from Iamrodos/chore/cleanup-release-requirements
...
chore: remove transitive deps from release-requirements.txt
2025-12-12 21:51:24 -05:00
Rodos
241949137d
chore: remove transitive deps from release-requirements.txt
2025-12-13 11:22:53 +11:00
Jose Diaz-Gonzalez
1155da849d
Merge pull request #469 from josegonzalez/dependabot/pip/python-packages-3c63e8caab
...
chore(deps): bump urllib3 from 2.6.1 to 2.6.2 in the python-packages group
2025-12-12 16:39:50 -05:00
dependabot[bot]
59a70ff11a
chore(deps): bump urllib3 in the python-packages group
...
Bumps the python-packages group with 1 update: [urllib3](https://github.com/urllib3/urllib3 ).
Updates `urllib3` from 2.6.1 to 2.6.2
- [Release notes](https://github.com/urllib3/urllib3/releases )
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst )
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.1...2.6.2 )
---
updated-dependencies:
- dependency-name: urllib3
dependency-version: 2.6.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: python-packages
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-12-12 13:09:29 +00:00
GitHub Action
ba852b5830
Release version 0.57.0
0.57.0
2025-12-12 11:07:14 +00:00
Jose Diaz-Gonzalez
934ee4b14b
Merge pull request #467 from Iamrodos/docs/187-189-auth-docs
...
Add GitHub Apps documentation and stdin token example
2025-12-12 06:06:30 -05:00
Jose Diaz-Gonzalez
37a0c5c123
Merge pull request #468 from Iamrodos/feature/135-skip-assets-on
...
Add --skip-assets-on flag to skip release asset downloads (#135 )
2025-12-12 06:05:47 -05:00
Rodos
f6e2f40b09
Add --skip-assets-on flag to skip release asset downloads ( #135 )
...
Allow users to skip downloading release assets for specific repositories
while still backing up release metadata. Useful for starred repos with
large assets (e.g. syncthing with 27GB+).
Usage: --skip-assets-on repo1 repo2 owner/repo3
Features:
- Space-separated repos (consistent with --exclude)
- Case-insensitive matching
- Supports both repo name and owner/repo format
2025-12-12 16:21:52 +11:00
Rodos
ef990483e2
Add GitHub Apps documentation and remove outdated header
...
- Add GitHub Apps authentication section with setup steps
and CI/CD workflow example using actions/create-github-app-token
- Remove outdated machine-man-preview header (graduated 2020)
Closes #189
2025-12-12 10:25:49 +11:00
Rodos
3a513b6646
docs: add stdin token example to README
...
Add example showing how to pipe a token from stdin using
file:///dev/stdin to avoid storing tokens in environment
variables or command history.
Closes #187
2025-12-12 09:55:13 +11:00
GitHub Action
2bb83d6d8b
Release version 0.56.0
0.56.0
2025-12-11 16:50:28 +00:00
Jose Diaz-Gonzalez
8fcc142621
Merge pull request #465 from Iamrodos/fix/379-lfs-clone-deprecated
...
fix: replace deprecated git lfs clone with git clone + git lfs fetch --all
2025-12-11 11:49:53 -05:00
Jose Diaz-Gonzalez
7615ce6102
Merge pull request #464 from Iamrodos/fix/246-restore-docs
...
docs: clarify no inbuilt restore and GitHub API limitations
2025-12-11 11:49:39 -05:00
Jose Diaz-Gonzalez
3f1ef821c3
Merge pull request #466 from Iamrodos/fix/112-windows-support
...
fix: add Windows support with entry_points and os.replace
2025-12-11 11:48:59 -05:00
Rodos
3684756eaa
fix: add Windows support with entry_points and os.replace
...
- Replace os.rename() with os.replace() for atomic file operations
on Windows (os.rename fails if destination exists on Windows)
- Add entry_points console_scripts for proper .exe generation on Windows
- Create github_backup/cli.py with main() entry point
- Add github_backup/__main__.py for python -m github_backup support
- Keep bin/github-backup as thin wrapper for backwards compatibility
Closes #112
2025-12-11 22:03:45 +11:00
Rodos
e745b55755
fix: replace deprecated git lfs clone with git clone + git lfs fetch --all
...
git lfs clone is deprecated - modern git clone handles LFS automatically.
Using git lfs fetch --all ensures all LFS objects across all refs are
backed up, matching the existing bare clone behavior and providing
complete LFS backups.
Closes #379
2025-12-11 20:55:38 +11:00
Rodos
75e6f56773
docs: add "Restoring from Backup" section to README
...
Clarifies that this tool is backup-only with no inbuilt restore.
Documents that git repos can be pushed back, but issues/PRs have
GitHub API limitations affecting all backup tools.
Closes #246
2025-12-11 20:35:08 +11:00
Jose Diaz-Gonzalez
b991c363a0
Merge pull request #463 from josegonzalez/dependabot/pip/python-packages-9e0978b55f
...
chore(deps): bump urllib3 from 2.6.0 to 2.6.1 in the python-packages group
2025-12-10 09:39:07 -05:00
dependabot[bot]
6d74af9126
chore(deps): bump urllib3 in the python-packages group
...
Bumps the python-packages group with 1 update: [urllib3](https://github.com/urllib3/urllib3 ).
Updates `urllib3` from 2.6.0 to 2.6.1
- [Release notes](https://github.com/urllib3/urllib3/releases )
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst )
- [Commits](https://github.com/urllib3/urllib3/compare/2.6.0...2.6.1 )
---
updated-dependencies:
- dependency-name: urllib3
dependency-version: 2.6.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: python-packages
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-12-09 13:10:12 +00:00
Jose Diaz-Gonzalez
381d67af96
Merge pull request #462 from josegonzalez/dependabot/pip/python-packages-3a01b12ef5
...
chore(deps): bump the python-packages group with 3 updates
2025-12-08 16:00:24 -05:00
dependabot[bot]
2fbe8d272c
chore(deps): bump the python-packages group with 3 updates
...
Bumps the python-packages group with 3 updates: [black](https://github.com/psf/black ), [pytest](https://github.com/pytest-dev/pytest ) and [platformdirs](https://github.com/tox-dev/platformdirs ).
Updates `black` from 25.11.0 to 25.12.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/25.11.0...25.12.0 )
Updates `pytest` from 9.0.1 to 9.0.2
- [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.1...9.0.2 )
Updates `platformdirs` from 4.5.0 to 4.5.1
- [Release notes](https://github.com/tox-dev/platformdirs/releases )
- [Changelog](https://github.com/tox-dev/platformdirs/blob/main/CHANGES.rst )
- [Commits](https://github.com/tox-dev/platformdirs/compare/4.5.0...4.5.1 )
---
updated-dependencies:
- dependency-name: black
dependency-version: 25.12.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: pytest
dependency-version: 9.0.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: python-packages
- dependency-name: platformdirs
dependency-version: 4.5.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: python-packages
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-12-08 13:09:32 +00:00
GitHub Action
eb5779ac23
Release version 0.55.0
0.55.0
2025-12-07 13:59:35 +00:00
Jose Diaz-Gonzalez
5b52931ebf
Merge pull request #461 from Iamrodos/fix-cli-ux-and-cleanup
...
fix: CLI UX improvements and cleanup
2025-12-07 08:58:59 -05:00
Rodos
1d6d474408
fix: improve error messages for inaccessible repos and empty wikis
2025-12-07 21:50:49 +11:00
Rodos
b80049e96e
test: add missing test coverage for case sensitivity fix
2025-12-07 21:21:37 +11:00
Rodos
58ad1c2378
docs: fix RST formatting in Known blocking errors section
2025-12-07 21:21:26 +11:00
Rodos
6e2a7e521c
fix: --all-starred now clones repos without --repositories
2025-12-07 21:21:14 +11:00
Rodos
aba048a3e9
fix: warn when --private used without authentication
2025-12-07 21:20:54 +11:00
Jose Diaz-Gonzalez
9f7c08166f
Merge pull request #460 from josegonzalez/dependabot/pip/urllib3-2.6.0
...
chore(deps): bump urllib3 from 2.5.0 to 2.6.0
2025-12-06 22:23:09 -05:00
dependabot[bot]
fdfaaec1ba
chore(deps): bump urllib3 from 2.5.0 to 2.6.0
...
Bumps [urllib3](https://github.com/urllib3/urllib3 ) from 2.5.0 to 2.6.0.
- [Release notes](https://github.com/urllib3/urllib3/releases )
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst )
- [Commits](https://github.com/urllib3/urllib3/compare/2.5.0...2.6.0 )
---
updated-dependencies:
- dependency-name: urllib3
dependency-version: 2.6.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-12-06 04:51:42 +00:00
Jose Diaz-Gonzalez
8f9cf7ff89
Merge pull request #459 from Iamrodos/issue-93-starred-gists-warning
...
fix: warn and skip when --starred-gists used for different user
2025-12-03 23:07:29 -05:00
Rodos
899ab5fdc2
fix: warn and skip when --starred-gists used for different user
...
GitHub's API only allows retrieving starred gists for the authenticated
user. Previously, using --starred-gists when backing up a different user
would silently return no relevant data.
Now warns and skips the retrieval entirely when the target user differs
from the authenticated user. Uses case-insensitive comparison to match
GitHub's username handling.
Fixes #93
2025-12-04 10:07:43 +11:00
GitHub Action
2a9d86a6bf
Release version 0.54.0
0.54.0
2025-12-03 02:17:59 +00:00