feat: fix for push private repo (#1618)

* feat: push private repo

# GitHub Integration Changelog

## Fixed
- Fixed issue where repositories marked as private weren't being created with private visibility
- Added support for changing repository visibility (public/private) when pushing to existing repositories
- Fixed 404 errors when pushing files after changing repository visibility

## Added
- Added clear user warnings when changing repository visibility from public to private or vice versa
- Implemented delays after visibility changes to allow GitHub API to fully process the change
- Added retry mechanism (up to 3 attempts with increasing delays) for pushing files after visibility changes
- Added repository data refresh before pushing to ensure latest reference data

## Improved
- Enhanced error logging and handling for all GitHub API operations
- Updated return value handling to use actual repository URLs from the API response
- Added comprehensive logging to track repository creation and update operations

* cleanup

* Update Workbench.client.tsx
This commit is contained in:
Stijnus
2025-04-08 22:20:54 +02:00
committed by GitHub
parent 552f08acea
commit 0202aefad9
8 changed files with 484 additions and 79 deletions

52
pnpm-lock.yaml generated
View File

@@ -405,6 +405,12 @@ importers:
electron-builder:
specifier: ^25.1.8
version: 25.1.8(electron-builder-squirrel-windows@25.1.8(dmg-builder@25.1.8))
eslint-config-prettier:
specifier: ^10.1.1
version: 10.1.1(eslint@9.23.0(jiti@1.21.7))
eslint-plugin-prettier:
specifier: ^5.2.6
version: 5.2.6(eslint-config-prettier@10.1.1(eslint@9.23.0(jiti@1.21.7)))(eslint@9.23.0(jiti@1.21.7))(prettier@3.5.3)
fast-glob:
specifier: ^3.3.2
version: 3.3.3
@@ -424,7 +430,7 @@ importers:
specifier: ^9.14.4
version: 9.15.9
prettier:
specifier: ^3.4.1
specifier: ^3.5.3
version: 3.5.3
rimraf:
specifier: ^4.4.1
@@ -2186,6 +2192,10 @@ packages:
resolution: {integrity: sha512-vsJDAkYR6qCPu+ioGScGiMYR7LvZYIXh/dlQeviqoTWNCVfKTLYD/LkNWH4Mxsv2a5vpIRc77FN5DnmK1eBggQ==}
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
'@pkgr/core@0.2.1':
resolution: {integrity: sha512-VzgHzGblFmUeBmmrk55zPyrQIArQN4vujc9shWytaPdB3P7qhi0cpaiKIr7tlCmFv2lYUwnLospIqjL9ZSAhhg==}
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
'@polka/url@1.0.0-next.28':
resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==}
@@ -4554,6 +4564,12 @@ packages:
peerDependencies:
eslint: '>=6.0.0'
eslint-config-prettier@10.1.1:
resolution: {integrity: sha512-4EQQr6wXwS+ZJSzaR5ZCrYgLxqvUjdXctaEtBqHcbkW944B1NQyO4qpdHQbXBONfwxXdkAY81HH4+LUfrg+zPw==}
hasBin: true
peerDependencies:
eslint: '>=7.0.0'
eslint-config-prettier@9.1.0:
resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==}
hasBin: true
@@ -4577,8 +4593,8 @@ packages:
peerDependencies:
eslint: '>=6.0.0'
eslint-plugin-prettier@5.2.5:
resolution: {integrity: sha512-IKKP8R87pJyMl7WWamLgPkloB16dagPIdd2FjBDbyRYPKo93wS/NbCOPh6gH+ieNLC+XZrhJt/kWj0PS/DFdmg==}
eslint-plugin-prettier@5.2.6:
resolution: {integrity: sha512-mUcf7QG2Tjk7H055Jk0lGBjbgDnfrvqjhXh9t2xLMSCjZVcw9Rb1V6sVNXO0th3jgeO7zllWPTNRil3JW94TnQ==}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
'@types/eslint': '>=8.0.0'
@@ -7389,6 +7405,10 @@ packages:
resolution: {integrity: sha512-R1urvuyiTaWfeCggqEvpDJwAlDVdsT9NM+IP//Tk2x7qHCkSvBk/fwFgw/TLAHzZlrAnnazMcRw0ZD8HlYFTEQ==}
engines: {node: ^14.18.0 || >=16.0.0}
synckit@0.11.3:
resolution: {integrity: sha512-szhWDqNNI9etJUvbZ1/cx1StnZx8yMmFxme48SwR4dty4ioSY50KEZlpv0qAfgc1fpRzuh9hBXEzoCpJ779dLg==}
engines: {node: ^14.18.0 || >=16.0.0}
tabbable@6.2.0:
resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==}
@@ -8837,7 +8857,7 @@ snapshots:
eslint: 9.23.0(jiti@1.21.7)
eslint-config-prettier: 9.1.0(eslint@9.23.0(jiti@1.21.7))
eslint-plugin-jsonc: 2.20.0(eslint@9.23.0(jiti@1.21.7))
eslint-plugin-prettier: 5.2.5(eslint-config-prettier@9.1.0(eslint@9.23.0(jiti@1.21.7)))(eslint@9.23.0(jiti@1.21.7))(prettier@3.5.3)
eslint-plugin-prettier: 5.2.6(eslint-config-prettier@9.1.0(eslint@9.23.0(jiti@1.21.7)))(eslint@9.23.0(jiti@1.21.7))(prettier@3.5.3)
globals: 15.15.0
typescript-eslint: 8.28.0(eslint@9.23.0(jiti@1.21.7))(typescript@5.8.2)
transitivePeerDependencies:
@@ -9938,6 +9958,8 @@ snapshots:
'@pkgr/core@0.2.0': {}
'@pkgr/core@0.2.1': {}
'@polka/url@1.0.0-next.28': {}
'@radix-ui/number@1.1.0': {}
@@ -12925,6 +12947,10 @@ snapshots:
eslint: 9.23.0(jiti@1.21.7)
semver: 7.7.1
eslint-config-prettier@10.1.1(eslint@9.23.0(jiti@1.21.7)):
dependencies:
eslint: 9.23.0(jiti@1.21.7)
eslint-config-prettier@9.1.0(eslint@9.23.0(jiti@1.21.7)):
dependencies:
eslint: 9.23.0(jiti@1.21.7)
@@ -12949,12 +12975,21 @@ snapshots:
transitivePeerDependencies:
- '@eslint/json'
eslint-plugin-prettier@5.2.5(eslint-config-prettier@9.1.0(eslint@9.23.0(jiti@1.21.7)))(eslint@9.23.0(jiti@1.21.7))(prettier@3.5.3):
eslint-plugin-prettier@5.2.6(eslint-config-prettier@10.1.1(eslint@9.23.0(jiti@1.21.7)))(eslint@9.23.0(jiti@1.21.7))(prettier@3.5.3):
dependencies:
eslint: 9.23.0(jiti@1.21.7)
prettier: 3.5.3
prettier-linter-helpers: 1.0.0
synckit: 0.10.3
synckit: 0.11.3
optionalDependencies:
eslint-config-prettier: 10.1.1(eslint@9.23.0(jiti@1.21.7))
eslint-plugin-prettier@5.2.6(eslint-config-prettier@9.1.0(eslint@9.23.0(jiti@1.21.7)))(eslint@9.23.0(jiti@1.21.7))(prettier@3.5.3):
dependencies:
eslint: 9.23.0(jiti@1.21.7)
prettier: 3.5.3
prettier-linter-helpers: 1.0.0
synckit: 0.11.3
optionalDependencies:
eslint-config-prettier: 9.1.0(eslint@9.23.0(jiti@1.21.7))
@@ -16448,6 +16483,11 @@ snapshots:
'@pkgr/core': 0.2.0
tslib: 2.8.1
synckit@0.11.3:
dependencies:
'@pkgr/core': 0.2.1
tslib: 2.8.1
tabbable@6.2.0: {}
tailwind-merge@2.6.0: {}