diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 41db046a..3fe314d2 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -17,14 +17,14 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - node-version: [20.10.0, 21.x] + node-version: ["lts/iron", "lts/jod", "latest"] steps: - name: Checkout code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} @@ -45,14 +45,14 @@ jobs: runs-on: windows-latest strategy: matrix: - node-version: [20.10.0, 21.x] + node-version: ["lts/iron", "lts/jod", "latest"] steps: - name: Checkout code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup Node.js - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} diff --git a/commands/add.ts b/commands/add.ts index 44073703..34913fea 100644 --- a/commands/add.ts +++ b/commands/add.ts @@ -44,11 +44,13 @@ export default class Add extends BaseCommand { * Detect the package manager to use */ async #getPackageManager() { - const pkgManager = + const packageManager = this.packageManager || (await detectPackageManager(this.app.makePath())) || 'npm' - if (KNOWN_PACKAGE_MANAGERS.includes(pkgManager)) { - return pkgManager + if ( + KNOWN_PACKAGE_MANAGERS.some((knownPackageManager) => knownPackageManager === packageManager) + ) { + return packageManager as (typeof KNOWN_PACKAGE_MANAGERS)[number] | undefined } throw new Error('Invalid package manager. Must be one of npm, pnpm, bun or yarn') diff --git a/modules/ace/codemods.ts b/modules/ace/codemods.ts index 3dcd30b8..006ae804 100644 --- a/modules/ace/codemods.ts +++ b/modules/ace/codemods.ts @@ -297,7 +297,7 @@ export class Codemods extends EventEmitter { * name like : * * ``` - * this.installPackages(['@adonisjs/lucid@next', '@adonisjs/auth@3.0.0']) + * this.installPackages([{ name: '@adonisjs/lucid@next', isDevDependency: false }]) * ``` */ async installPackages(packages: { name: string; isDevDependency: boolean }[]) { diff --git a/package.json b/package.json index cbcfcf93..29250b57 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@adonisjs/core", "description": "Core of AdonisJS", - "version": "6.14.1", + "version": "6.15.0", "engines": { "node": ">=20.6.0" }, @@ -86,16 +86,16 @@ "@adonisjs/eslint-config": "^2.0.0-beta.7", "@adonisjs/prettier-config": "^1.4.0", "@adonisjs/tsconfig": "^1.4.0", - "@commitlint/cli": "^19.5.0", - "@commitlint/config-conventional": "^19.5.0", + "@commitlint/cli": "^19.6.0", + "@commitlint/config-conventional": "^19.6.0", "@japa/assert": "^3.0.0", "@japa/expect-type": "^2.0.2", "@japa/file-system": "^2.3.0", "@japa/runner": "^3.1.4", "@japa/snapshot": "^2.0.6", - "@release-it/conventional-changelog": "^8.0.2", - "@swc/core": "^1.7.26", - "@types/node": "^22.7.5", + "@release-it/conventional-changelog": "^9.0.3", + "@swc/core": "^1.9.3", + "@types/node": "^20.17.8", "@types/pretty-hrtime": "^1.0.3", "@types/sinon": "^17.0.3", "@types/supertest": "^6.0.2", @@ -108,18 +108,17 @@ "cross-env": "^7.0.3", "del-cli": "^6.0.0", "edge.js": "^6.2.0", - "eslint": "^9.12.0", - "execa": "^9.4.0", + "eslint": "^9.15.0", + "execa": "^9.5.1", "get-port": "^7.1.0", - "github-label-sync": "^2.3.1", - "husky": "^9.1.6", + "husky": "^9.1.7", "prettier": "^3.3.3", - "release-it": "^17.7.0", + "release-it": "^17.10.0", "sinon": "^19.0.2", "supertest": "^7.0.0", "test-console": "^2.0.0", "ts-node-maintained": "^10.9.4", - "typescript": "^5.6.3" + "typescript": "^5.7.2" }, "dependencies": { "@adonisjs/ace": "^13.3.0", @@ -129,16 +128,16 @@ "@adonisjs/encryption": "^6.0.2", "@adonisjs/env": "^6.1.0", "@adonisjs/events": "^9.0.2", - "@adonisjs/fold": "^10.1.2", + "@adonisjs/fold": "^10.1.3", "@adonisjs/hash": "^9.0.5", "@adonisjs/health": "^2.0.0", "@adonisjs/http-server": "^7.2.5", - "@adonisjs/logger": "^6.0.3", + "@adonisjs/logger": "^6.0.4", "@adonisjs/repl": "^4.0.1", "@antfu/install-pkg": "^0.4.1", "@paralleldrive/cuid2": "^2.2.2", "@poppinss/colors": "^4.1.3", - "@poppinss/dumper": "^0.4.2", + "@poppinss/dumper": "^0.6.1", "@poppinss/macroable": "^1.0.3", "@poppinss/utils": "^6.8.3", "@sindresorhus/is": "^7.0.1", diff --git a/stubs/make/service/main.stub b/stubs/make/service/main.stub index fdf5e1ce..cf9fe163 100644 --- a/stubs/make/service/main.stub +++ b/stubs/make/service/main.stub @@ -1,6 +1,10 @@ +{{#var serviceName = string(entity.name).pascalCase().suffix('Service')}} {{#var serviceFileName = generators.serviceFileName(entity.name)}} {{{ exports({ to: app.servicesPath(entity.path, serviceFileName) }) }}} +export class {{ serviceName }} { + // Your code here +} diff --git a/tests/stubs/make_service.spec.ts b/tests/stubs/make_service.spec.ts index 77211988..9ecf17eb 100644 --- a/tests/stubs/make_service.spec.ts +++ b/tests/stubs/make_service.spec.ts @@ -31,6 +31,6 @@ test.group('Make Service', () => { }) assert.equal(destination, join(BASE_PATH, 'app/services/app_service.ts')) - assert.equal(contents.trim(), '') + assert.match(contents.trim(), /export class AppService {/) }) })