Commit Graph
596 Commits
Author SHA1 Message Date
dependabot[bot] d115ea2b66 deps(deps): bump qs in the npm_and_yarn group across 1 directory
Bumps the npm_and_yarn group with 1 update in the / directory: [qs](https://github.com/ljharb/qs).


Updates `qs` from 6.14.0 to 6.14.1
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ljharb/qs/compare/v6.14.0...v6.14.1)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-01 19:41:42 +00:00
xixu-me 3c229ac611 Merge pull request #146 from xixu-me/dependabot/npm_and_yarn/cloudflare/workers-types-4.20251229.0
deps(deps-dev): bump @cloudflare/workers-types from 4.20251221.0 to 4.20251229.0
2025-12-29 18:28:01 +08:00
dependabot[bot] de019b06aa deps(deps-dev): bump @cloudflare/workers-types
Bumps [@cloudflare/workers-types](https://github.com/cloudflare/workerd) from 4.20251221.0 to 4.20251229.0.
- [Release notes](https://github.com/cloudflare/workerd/releases)
- [Changelog](https://github.com/cloudflare/workerd/blob/main/RELEASE.md)
- [Commits](https://github.com/cloudflare/workerd/commits)

---
updated-dependencies:
- dependency-name: "@cloudflare/workers-types"
  dependency-version: 4.20251229.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-29 09:32:54 +00:00
xixu-me 66715cf222 Fix Mermaid graph label quoting in README files
Updated the Mermaid diagrams in all README variants to quote the Wait (Backoff) node label, ensuring correct rendering of labels with parentheses.
2025-12-23 17:17:01 +08:00
xixu-me af8af4c682 Add system architecture diagrams to README files
Introduced detailed system architecture and request processing flow diagrams using Mermaid in the English, Simplified Chinese, and Traditional Chinese README files. These additions provide a clearer overview of the platform's internal structure and request handling logic for developers and users.
2025-12-23 17:14:51 +08:00
xixu-me 3cd8475b07 Merge pull request #143 from xixu-me/dependabot/npm_and_yarn/cloudflare/vitest-pool-workers-0.11.1
deps(deps-dev): bump @cloudflare/vitest-pool-workers from 0.10.15 to 0.11.1
2025-12-22 17:44:49 +08:00
dependabot[bot] dbfdd03dec deps(deps-dev): bump @cloudflare/vitest-pool-workers
Bumps [@cloudflare/vitest-pool-workers](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/vitest-pool-workers) from 0.10.15 to 0.11.1.
- [Release notes](https://github.com/cloudflare/workers-sdk/releases)
- [Changelog](https://github.com/cloudflare/workers-sdk/blob/main/packages/vitest-pool-workers/CHANGELOG.md)
- [Commits](https://github.com/cloudflare/workers-sdk/commits/@cloudflare/vitest-pool-workers@0.11.1/packages/vitest-pool-workers)

---
updated-dependencies:
- dependency-name: "@cloudflare/vitest-pool-workers"
  dependency-version: 0.11.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-22 09:42:39 +00:00
xixu-me bdcd7974dc Remove Gitee voting and Product Hunt badges from README
Eliminated the Gitee 2025 Open Source Software Awards voting prompt and Product Hunt badge from all README files (English, Simplified Chinese, Traditional Chinese) to streamline project documentation.
2025-12-16 15:34:00 +08:00
xixu-me 15bc402368 Merge pull request #139 from xixu-me/dependabot/npm_and_yarn/cloudflare/vitest-pool-workers-0.10.15
deps(deps-dev): bump @cloudflare/vitest-pool-workers from 0.10.14 to 0.10.15
2025-12-15 17:59:28 +08:00
xixu-me a7f8522c9a Merge pull request #137 from xixu-me/dependabot/npm_and_yarn/eslint-9.39.2
deps(deps-dev): bump eslint from 9.39.1 to 9.39.2
2025-12-15 17:59:03 +08:00
dependabot[bot] 630257ce23 deps(deps-dev): bump @cloudflare/vitest-pool-workers
Bumps [@cloudflare/vitest-pool-workers](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/vitest-pool-workers) from 0.10.14 to 0.10.15.
- [Release notes](https://github.com/cloudflare/workers-sdk/releases)
- [Changelog](https://github.com/cloudflare/workers-sdk/blob/main/packages/vitest-pool-workers/CHANGELOG.md)
- [Commits](https://github.com/cloudflare/workers-sdk/commits/@cloudflare/vitest-pool-workers@0.10.15/packages/vitest-pool-workers)

---
updated-dependencies:
- dependency-name: "@cloudflare/vitest-pool-workers"
  dependency-version: 0.10.15
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 09:57:30 +00:00
dependabot[bot] 65824ac081 deps(deps-dev): bump eslint from 9.39.1 to 9.39.2
Bumps [eslint](https://github.com/eslint/eslint) from 9.39.1 to 9.39.2.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/compare/v9.39.1...v9.39.2)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.39.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 09:57:24 +00:00
xixu-me fb310f01d5 Merge pull request #138 from xixu-me/dependabot/npm_and_yarn/wrangler-4.54.0
deps(deps-dev): bump wrangler from 4.53.0 to 4.54.0
2025-12-15 17:57:00 +08:00
xixu-me e6cb4254bc Merge pull request #136 from xixu-me/dependabot/npm_and_yarn/cloudflare/workers-types-4.20251213.0
deps(deps-dev): bump @cloudflare/workers-types from 4.20251205.0 to 4.20251213.0
2025-12-15 17:56:16 +08:00
dependabot[bot] 32c38205d1 deps(deps-dev): bump wrangler from 4.53.0 to 4.54.0
Bumps [wrangler](https://github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler) from 4.53.0 to 4.54.0.
- [Release notes](https://github.com/cloudflare/workers-sdk/releases)
- [Commits](https://github.com/cloudflare/workers-sdk/commits/wrangler@4.54.0/packages/wrangler)

---
updated-dependencies:
- dependency-name: wrangler
  dependency-version: 4.54.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 09:46:48 +00:00
dependabot[bot] a9a8bfe252 deps(deps-dev): bump @cloudflare/workers-types
Bumps [@cloudflare/workers-types](https://github.com/cloudflare/workerd) from 4.20251205.0 to 4.20251213.0.
- [Release notes](https://github.com/cloudflare/workerd/releases)
- [Changelog](https://github.com/cloudflare/workerd/blob/main/RELEASE.md)
- [Commits](https://github.com/cloudflare/workerd/commits)

---
updated-dependencies:
- dependency-name: "@cloudflare/workers-types"
  dependency-version: 4.20251213.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 09:46:26 +00:00
xixu-me 6041fc8a28 Update language labels and DartNode badge in READMEs
Standardized the Traditional Chinese label to '漢語(繁體)' across all README files. Moved the DartNode badge from the Chinese READMEs to the English README.
2025-12-13 19:44:55 +08:00
xixu-me 49d1a6b095 Update README language switcher and remove repository purpose
Standardized the language switcher formatting across English, Simplified Chinese, and Traditional Chinese README files. Removed the 'repository purpose' section from both Chinese README files for conciseness.
2025-12-13 19:32:55 +08:00
xixu-me 690ef1cd2b Fix misplaced closing div in README files
Moved the closing </div> tag to after the language selection line in all README files to ensure correct HTML structure and consistent formatting.
2025-12-13 19:30:35 +08:00
xixu-me ee79e2adf7 Add Traditional Chinese README and update language links
Added a new Traditional Chinese (zh-Hant) README. Updated language switcher links in the English and Simplified Chinese READMEs to include all three language options.
2025-12-13 19:29:27 +08:00
xixu-me 165c57b8e7 Translate README.md to English and update links
The README.md has been fully translated from Chinese to English, including section titles, descriptions, and platform-specific instructions. All internal anchor links and badge references have been updated to use English section names, and example URLs and explanations are now in English. The language switch link now points to the Simplified Chinese README, and terminology throughout the document has been standardized for an international audience.
2025-12-13 19:07:40 +08:00
xixu-me c727b2fc03 Update badges for container registries and AI providers
Changed the badge colors and logos for container registries and AI inference providers in both English and Chinese README files to use OpenContainers Initiative and OpenRouter logos, respectively, for improved clarity and consistency.
2025-12-12 14:42:23 +08:00
xixu-me 29fe048984 Improve Docker redirect and auth header handling
Adds special handling for Docker registry redirects to prevent leaking Authorization headers to S3 or blob storage by using manual redirect mode and stripping sensitive headers before following redirects. Refactors scope handling for unauthorized responses and ensures retry logic for token fetches also respects Docker redirect requirements.
2025-12-12 13:29:07 +08:00
xixu-me 9fc2804332 Fix client scope in unauthorized response for cr- platforms
Adjusts the client scope in unauthorized responses to include the platform prefix for platforms starting with 'cr-'. This ensures clients request tokens with a scope that Xget can properly route.
2025-12-12 13:20:47 +08:00
xixu-me e8d7a0ef6b Refactor Docker scope extraction and 401 response
Moved Docker registry scope extraction logic into a new getScopeFromUrl function in docker.js for reuse and clarity. Updated responseUnauthorized to accept an optional scope and improved its error response format to be more Docker/OCI-compliant. Refactored index.js to use the new scope extraction and 401 response logic.
2025-12-12 13:16:21 +08:00
xixu-me 07f5f35972 Improve JSDoc types and add eslint-plugin-jsdoc
Standardized JSDoc type annotations across the codebase, replacing 'Object' with 'object' and refining function signatures for better type safety. Added and configured eslint-plugin-jsdoc for enhanced documentation linting, and updated ESLint settings to include adapters and new JSDoc rules. Updated dependencies to include eslint-plugin-jsdoc and related packages.
2025-12-11 13:27:26 +08:00
xixu-me bfec1d2d9e Add GPL license header and clean up Docker 401 handling
Added GPL license header to Netlify edge-handler.js. Removed redundant comments and clarified logic for handling Docker 401 responses in src/index.js.
2025-12-11 12:58:11 +08:00
xixu-me 5cbcd0c3d4 Add GPLv3 license headers to source files
Added GNU General Public License v3 headers to protocol and utility modules for Xget, clarifying copyright and licensing information. This ensures compliance and transparency regarding the project's open source status.
2025-12-11 12:34:10 +08:00
xixu-me 8c489ff529 Delete .github/workflows/ci.yml 2025-12-10 17:45:59 +08:00
xixu-me 1f03e6b2a6 Merge pull request #133 from xixu-me/alert-autofix-13
Potential fix for code scanning alert no. 13: Workflow does not contain permissions
2025-12-10 16:58:33 +08:00
xixu-meandCopilot Autofix powered by AI a46db6243a Potential fix for code scanning alert no. 13: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2025-12-10 16:58:15 +08:00
xixu-me 477e9a28e1 Increase CI test job timeout to 30 minutes
Extended the timeout for the test job in the CI workflow from 10 to 30 minutes to accommodate longer-running tests and prevent premature job termination.
2025-12-10 16:48:51 +08:00
xixu-me ce93ea9861 Refactor integration tests and add feature-specific test suites
Moves Git, Git LFS, and authentication header forwarding tests from integration.test.js into dedicated feature test files under test/features/. Updates range-cache, security, and container-registry tests for consistency and minor improvements. Refactors src/index.js for code style and readability, especially around cache logic and error handling.
2025-12-10 16:23:44 +08:00
xixu-me 44b54580ad Add multi-platform function adapters and CI workflow
Introduces adapters for Vercel, Netlify Edge, Deno Deploy, and Cloudflare Pages, each with platform-specific entry points and configuration files. Adds a GitHub Actions CI workflow for linting, type checking, and testing. Updates lint scripts to include adapters, improves type annotations in src/index.js, and fixes a type assertion in security tests.
2025-12-10 16:08:10 +08:00
xixu-me 214e596d00 Refactor request handling and improve Docker detection
Refactored the main request handler in src/index.js for improved readability and error handling. Enhanced Docker request detection in validation.js to include additional Content-Type checks. Updated tests to increase timeouts and expand expected status codes for container registry platforms.
2025-12-10 15:47:25 +08:00
xixu-me 1c20e7af4f Refactor protocol header logic into modular helpers
Moved AI and Git protocol detection and header configuration logic from utils/validation.js and index.js into dedicated modules (src/protocols/ai.js and src/protocols/git.js). This improves code organization, modularity, and maintainability by separating protocol-specific concerns.
2025-12-10 15:25:57 +08:00
xixu-me 70ff5b248d Refactor protocol and utility logic into separate modules
Moved Docker/OCI protocol handling, performance monitoring, security, and validation logic into dedicated modules under src/protocols and src/utils. Updated src/index.js to use these new modules, improving maintainability and separation of concerns. Added pre-computed sorted platform keys for efficient matching in platform config.
2025-12-10 15:03:27 +08:00
xixu-me 89c8da936d Add transformPath utility to handle platform prefixes
Introduces the transformPath function to remove platform-specific prefixes from paths. This utility helps standardize path handling by stripping prefixes like /gh/ or /cr/docker/ based on the platform key.
2025-12-10 14:36:29 +08:00
xixu-me a6a0e97ada Refactor Docker authentication handling in handleRequest
Moved Docker authentication logic to occur before platform detection for /v2/auth paths, parsing the scope parameter to identify the registry platform and repository. Improved parsing of the WWW-Authenticate header and removed redundant Docker authentication code from the platform detection block.
2025-12-10 13:44:30 +08:00
xixu-me 80e3c26967 Transform scope parameter for container registry auth
Added logic to remove the cr/[registry]/ prefix from the scope parameter and handle official Docker Hub images by adding the library/ prefix. Updated tests to verify correct scope transformation for Docker Hub, GHCR, and official images.
2025-12-10 13:04:33 +08:00
xixu-me 1515515d91 Merge pull request #130 from xixu-me/alert-autofix-11
Potential fix for code scanning alert no. 11: Incomplete regular expression for hostnames
2025-12-08 20:06:18 +08:00
xixu-meandCopilot Autofix powered by AI ead7afed1a Potential fix for code scanning alert no. 11: Incomplete regular expression for hostnames
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2025-12-08 20:05:05 +08:00
xixu-me e639554587 Update tsconfig for bundler resolution and type includes
Changed moduleResolution to 'bundler' and added Cloudflare Vitest pool workers types to the include array for better type support. Removed explicit types array and ensured configuration aligns with new tooling requirements.
2025-12-08 20:03:10 +08:00
xixu-me 9b5db30455 Update tsconfig for module resolution and types
Changed moduleResolution from 'bundler' to 'node', added global types for Cloudflare Workers and Vitest, and simplified the include paths. This improves compatibility with Node.js tooling and test environments.
2025-12-08 20:01:57 +08:00
xixu-me a621d4f21b Revert "Add CI workflow and update deployment triggers"
This reverts commit 55e99c9eac.
2025-12-08 19:57:58 +08:00
xixu-me 4993444f51 Add type declarations and improve test typings
Introduces src/types.d.ts and test/types.d.ts for Cloudflare Workers and test utilities. Enhances JSDoc comments and type annotations across test files for better type safety and clarity. Updates tsconfig.json to use bundler module resolution and include additional type sources. Minor test logic and assertion improvements for robustness.
2025-12-08 19:57:48 +08:00
xixu-me d2ee1bcd37 Add eslint-config-prettier and update ESLint config
Integrated eslint-config-prettier to disable formatting rules that conflict with Prettier. Updated ESLint configuration and added the dependency to package.json for improved code formatting consistency.
2025-12-08 19:34:56 +08:00
xixu-me 7036cbd39e Refactor cacheKey request formatting
Reformats the construction of the cacheKey Request object for improved readability and consistency in indentation.
2025-12-08 19:23:07 +08:00
xixu-me d88f1911a6 Improve parsing, regex, and test consistency
Refines regex patterns for URL rewriting and authentication parsing, ensures parseInt uses radix 10 throughout, and updates test mocks and helpers for consistency. Also adds more global variables to ESLint config, improves error handling, and removes unused code in tests.
2025-12-08 19:19:10 +08:00
xixu-me 55e99c9eac Add CI workflow and update deployment triggers
Introduces a new CI workflow for linting, type checking, and testing. Updates sync and workers deployment workflows to trigger on successful completion of the CI workflow instead of direct pushes, improving reliability and sequencing of deployments.
2025-12-08 19:11:44 +08:00