Commit 6d4a6c8
chore: modernize repo tooling and dependencies (#8)
* chore: modernize repo tooling and dependencies
Major dependency updates:
- Migrate redis-storage from redis@3.x to redis@4.x (native promises)
- Update @types/node from 18.19.0 to ^20.0.0
- Upgrade TypeScript from 5.1.6 to ^5.7.0
- Upgrade ESLint from 8.x to 9.x with flat config
- Upgrade Prettier from 2.x to 3.x
- Migrate test framework from Mocha to Vitest
ESM conversion:
- Add "type": "module" to root package.json
- Convert gulpfile.js to ESM syntax
Code quality:
- Remove deprecated bluebird dependency
- Remove old .eslintrc.js in favor of eslint.config.js
- Update tsconfig.json with modern settings (NodeNext modules, ES2022)
- Convert all test files from Mocha/assert to Vitest/expect
* chore: replace gulp with npm scripts
- Remove gulp, del, and glob dependencies
- Add rimraf for cross-platform file deletion
- Convert gulp tasks to npm scripts:
- clean: removes dist and .tmp directories
- clean:modules: removes node_modules from packages
- clean:all: runs both clean tasks
- Remove gulpfile.js
* chore: use modern exports field in package.json
Replace legacy main/types fields with the modern exports field
for all packages. This provides:
- Better encapsulation of package internals
- Proper TypeScript resolution via types condition
- Future-proof for subpath exports if needed
All packages now use:
"exports": {
".": {
"types": "./dist/index.d.ts",
"import": "./dist/index.js"
}
}
* chore: add changeset
* ci: use GitHub App token for changeset bot
Use a GitHub App token instead of GITHUB_TOKEN so that commits
made by the changeset bot will trigger subsequent workflow runs
(CI checks).
Required setup:
1. Create a GitHub App with Contents: write permission
2. Install the app on the repository
3. Add BOT_APP_ID as a repository variable
4. Add BOT_APP_PRIVATE_KEY as a repository secret
* chore: add .prettierignore to exclude .changeset folder
* fix: increase redis test timeout for CI
* ci: remove custom changeset workflows in favor of official bot
* ci: retry tests
* ci: use Redis service container instead of redis-memory-server in CI
- Add Redis 7 service container to test workflow
- Update redis storage test to use CI Redis when REDIS_HOST/REDIS_PORT set
- Fall back to redis-memory-server for local development
- Fixes timeout issues on Node 20
* chore: remove changeset to test bot flow
* chore: remove redis-memory-server dependency
- Remove redis-memory-server from devDependencies
- Tests now require actual Redis (CI service container or local Docker)
- Faster installs, no 4MB binary download
---------
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>1 parent a2b80d2 commit 6d4a6c8
38 files changed
Lines changed: 1704 additions & 4158 deletions
File tree
- .github/workflows
- storages
- lru-redis
- src
- test
- lru
- src
- test
- node-cache
- test
- redisio
- src
- test
- redis
- src
- test
- ts-cache
- src/decorator
- test
This file was deleted.
This file was deleted.
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
19 | 30 | | |
20 | 31 | | |
21 | 32 | | |
| |||
39 | 50 | | |
40 | 51 | | |
41 | 52 | | |
| 53 | + | |
| 54 | + | |
42 | 55 | | |
43 | 56 | | |
44 | 57 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
0 commit comments