104 Commits

Author SHA1 Message Date
taoky
a5ffd11fdb Add extra verification with package JSON meta for filter updates 2025-07-07 02:01:07 +08:00
taoky
f653de5a98 Reformat with ruff 2025-07-07 01:39:30 +08:00
taoky
1c8b0199b4 Auto PyPI fallback in SyncPlainHTTP 2025-07-07 01:39:07 +08:00
taoky
94cc16db5e Note breaking changes in README 2025-06-29 02:06:26 +08:00
taoky
40da452f3d Adjust exclude in example config 2025-06-29 01:59:05 +08:00
taoky
8ad920ee82 Use re.search instead of re.match for pattern matching 2025-06-29 01:55:32 +08:00
taoky
611d18c5d7 Add missing excluded_wheel_filename in example toml 2025-06-19 21:13:18 +08:00
taoky
5a4f28a3d3 Add --excluded-wheel-filename
Closes: #7
2025-06-17 23:32:18 +08:00
dependabot[bot]
5942907954 Bump requests from 2.32.3 to 2.32.4
Bumps [requests](https://github.com/psf/requests) from 2.32.3 to 2.32.4.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.3...v2.32.4)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.32.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-17 12:06:52 +08:00
taoky
bbcab99b4d Fix timeout setting in CustomXMLRPCTransport 2025-01-13 21:12:46 +08:00
taoky
5dd445507d Clarify license 2024-11-11 17:22:33 +08:00
taoky
1856a97e2d Add clear-invalid-packages command 2024-11-03 21:20:21 +08:00
taoky
5f057c5e47 Add SHADOWMIRE_IGNORE_THRESHOLD option
Related: https://github.com/tuna/issues/issues/2061
2024-11-03 21:20:21 +08:00
taoky
1ca3e23bcf Add timeout for requests.Session and XMLRPC 2024-09-27 18:56:29 +08:00
taoky
4664c23ad5 Use logger.warning() to replace deprecated warn() 2024-09-27 18:31:54 +08:00
taoky
3a1b20541c Optimize utils.create_package_stubs 2024-09-04 17:52:59 +08:00
taoky
47529107ae Use unquote to handle encoded path
In previous versions shadowmire fails to handle filename like "logic gates.tar", instead it would download as "logic%20gates.tar".

Existing instances using shadowmire might need to re-verify.
2024-09-04 17:06:13 +08:00
taoky
99bd4d932e Add multithreading to genlocal
Related: #4
2024-09-04 14:08:18 +08:00
taoky
20c1462ec7 Set default IOWORKERS to 2
5 might be too high for HDD setup, which makes packages/ iterating even slower than only 1 thread in local testing. Use a smaller value for this now.
2024-09-04 01:21:51 +08:00
taoky
7d78d998ba Add utils.create_package_stubs for debugging 2024-09-04 00:26:05 +08:00
taoky
40c9edba50 Add generate pathcache as Step 3
This helps speed up check_and_update(), when --compare-size is NOT set.
2024-09-04 00:18:08 +08:00
taoky
7c963b00b1 Check package size in do_update()
This helps make --compare-size really work.
2024-09-03 23:10:51 +08:00
taoky
a5dbd61e95 Replace glob by fast_iterdir in verification step 4
To avoid stat() every files in package/.
Related: #4
2024-09-03 22:47:43 +08:00
taoky
6e4aa61119 Add fast_readall to save some syscalls
Related: #4
Co-authored-by: luvletter2333 <luvletter2333@gmail.com>
2024-09-03 17:03:55 +08:00
taoky
bfdecd4d8f Mention IOWORKERS in README.md 2024-08-27 21:41:03 +08:00
taoky
cd40fc1f40 DRY in futures exception handling 2024-08-27 21:39:35 +08:00
taoky
99fabce7b8 Parallelize verification step 4
Related: #4
2024-08-27 20:33:36 +08:00
taoky
9e57eb6f46 Optimize get_existing_hrefs for fast path (json file exists)
Related: #4
2024-08-27 19:20:20 +08:00
taoky
799a477336 Parallelize verification step 3 with threads
Related: #4
2024-08-27 19:06:05 +08:00
taoky
d64ea61be7 Only do one stat() for packages when sync-packages is on in verification step 3
Related: #4
2024-08-27 18:46:19 +08:00
taoky
f4927fdb0d Save a bit syscalls in check_and_update()
Related: #4
2024-08-27 18:26:02 +08:00
taoky
bc6159807d iterdir() optimization
Related: #4
2024-08-27 16:36:37 +08:00
taoky
aa6ece7e8b Add TUNA to acknowledgements 2024-08-25 00:10:47 +08:00
taoky
17d48f2456 Add type parameter for package_names list 2024-08-24 17:41:31 +08:00
taoky
972c94d35b Add MAX_DELETION "safety net" 2024-08-24 17:39:06 +08:00
taoky
0a6a958e49 Fix getting last serial in SyncPlainHTTP 2024-08-11 05:07:44 +08:00
taoky
d565ac388b Fix urljoin usage in SyncPlainHTTP 2024-08-11 04:46:47 +08:00
taoky
b9c6ac5c62 Add verification for v1_html and symlink 2024-08-10 19:39:00 +08:00
taoky
b5fca47101 Make simple/<package>/index.html symlink to index.v1_html
Closes: #1
2024-08-10 19:35:04 +08:00
taoky
a913965c22 Fix logging in genlocal 2024-08-08 18:16:13 +08:00
taoky
4e20615ed6 Fix logging not showing 2024-08-08 16:58:06 +08:00
Shengqi Chen
3da636ad00 doc: fix typo in README
Signed-off-by: Shengqi Chen <harry-chen@outlook.com>
2024-08-08 16:40:07 +08:00
Shengqi Chen
a2b2a941e2 doc: update README, mainly on verify
Signed-off-by: Shengqi Chen <harry-chen@outlook.com>
2024-08-08 16:40:07 +08:00
Shengqi Chen
4d509dfb5e chore: add more logging output
Signed-off-by: Shengqi Chen <harry-chen@outlook.com>
2024-08-08 16:40:07 +08:00
Shengqi Chen
d09c3a8ed1 chore: adjust default logging format
Signed-off-by: Shengqi Chen <harry-chen@outlook.com>
2024-08-08 16:40:07 +08:00
Shengqi Chen
b6071ec2e9 chore: seprate third-party imports
Signed-off-by: Shengqi Chen <harry-chen@outlook.com>
2024-08-08 16:40:07 +08:00
taoky
f1a2a023de Some linting fixes 2024-08-08 14:52:39 +08:00
taoky
4d602a3649 Add --use-pypi-index 2024-08-08 14:50:22 +08:00
taoky
008617cccd Set repo with argument/config (no longer use env) 2024-08-08 14:33:34 +08:00
taoky
8145552631 Add license info 2024-08-08 14:14:32 +08:00