Skip to content

Commit 15bff4d

Browse files
authored
Merge pull request #342 from laminas/1.31.x-merge-up-into-2.0.x_GaM1jeO8
Merge release 1.31.0 into 2.0.x
2 parents 63f70a4 + cb19bb4 commit 15bff4d

File tree

10 files changed

+4843
-3538
lines changed

10 files changed

+4843
-3538
lines changed

.eslintrc.json

Lines changed: 0 additions & 41 deletions
This file was deleted.

.github/workflows/continuous-integration.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ jobs:
136136
- uses: "actions/setup-node@v4"
137137
with:
138138
check-latest: true
139-
node-version: 21
139+
node-version: 24
140140
- name: "Install node modules"
141141
run: "npm ci"
142142
- name: Run ESLint
@@ -149,7 +149,7 @@ jobs:
149149
- uses: "actions/setup-node@v4"
150150
with:
151151
check-latest: true
152-
node-version: 21
152+
node-version: 24
153153
- name: "Install node modules"
154154
run: "npm ci"
155155
- name: Run Jest
@@ -162,6 +162,6 @@ jobs:
162162
- uses: "actions/setup-node@v4"
163163
with:
164164
check-latest: true
165-
node-version: 21
165+
node-version: 24
166166
- name: "Check package-lock.json is up2date"
167167
run: "npx --yes package-lock-utd"

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM node:21.7.3-alpine AS compiler
1+
FROM node:24.10.0-alpine AS compiler
22

33
RUN mkdir -p /usr/local/source
44
WORKDIR /usr/local/source
@@ -11,7 +11,7 @@ COPY ./src ./src
1111
RUN npm run build
1212

1313

14-
FROM node:21.7.3-alpine
14+
FROM node:24.10.0-alpine
1515
LABEL "repository"="http://github.com/laminas/laminas-ci-matrix-action"
1616
LABEL "homepage"="http://github.com/laminas/laminas-ci-matrix-action"
1717
LABEL "maintainer"="https://github.com/laminas/technical-steering-committee/"

Makefile

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
2+
NODE_IMG=laminas-ci/node:dev
3+
4+
build-container:
5+
$(if ${NODE_IMG}, $(info Image already built), docker build -t ${NODE_IMG} .)
6+
.PHONY: build-container
7+
8+
npm-install: build-container ## Install node deps
9+
docker run -it -w /app -v ${PWD}:/app --rm ${NODE_IMG} npm ci
10+
.PHONY: npm-install
11+
12+
npm-update: build-container ## Update node deps
13+
docker run -it -w /app -v ${PWD}:/app --rm ${NODE_IMG} npm update
14+
.PHONY: npm-update
15+
16+
lint: build-container ## Lint
17+
docker run -it -w /app -v ${PWD}:/app --rm ${NODE_IMG} npm run lint
18+
.PHONY: lint
19+
20+
test: build-container ## Tests
21+
docker run -it -w /app -v ${PWD}:/app --rm ${NODE_IMG} npm run test
22+
.PHONY: test
23+
24+
shell: build-container
25+
docker run -it -w /app -v ${PWD}:/app --rm ${NODE_IMG} sh
26+
.PHONY:

eslint.config.mjs

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
import { defineConfig } from "eslint/config";
2+
import typescriptEslint from "@typescript-eslint/eslint-plugin";
3+
import globals from "globals";
4+
import tsParser from "@typescript-eslint/parser";
5+
import path from "node:path";
6+
import { fileURLToPath } from "node:url";
7+
import js from "@eslint/js";
8+
import { FlatCompat } from "@eslint/eslintrc";
9+
import nodePlugin from "eslint-plugin-node";
10+
11+
const __filename = fileURLToPath(import.meta.url);
12+
const __dirname = path.dirname(__filename);
13+
const compat = new FlatCompat({
14+
baseDirectory: __dirname,
15+
recommendedConfig: js.configs.recommended,
16+
allConfig: js.configs.all
17+
});
18+
19+
export default defineConfig([{
20+
extends: compat.extends("plugin:@typescript-eslint/recommended"),
21+
22+
plugins: {
23+
"@typescript-eslint": typescriptEslint,
24+
"node": nodePlugin,
25+
},
26+
27+
languageOptions: {
28+
globals: {
29+
...Object.fromEntries(Object.entries(globals.browser).map(([key]) => [key, "off"])),
30+
...globals.node,
31+
},
32+
33+
parser: tsParser,
34+
ecmaVersion: 2022,
35+
sourceType: "commonjs",
36+
37+
parserOptions: {
38+
ecmaFeatures: {
39+
modules: true,
40+
},
41+
},
42+
},
43+
44+
settings: {
45+
"import/resolver": {
46+
typescript: {},
47+
},
48+
},
49+
50+
rules: {
51+
"no-unused-vars": "off",
52+
"@typescript-eslint/no-unused-vars": "error",
53+
54+
"node/no-unpublished-import": ["error", {
55+
allowModules: ["@cfworker/json-schema", "dotenv"],
56+
}],
57+
58+
"no-process-exit": "off",
59+
"no-sync": "off",
60+
"no-shadow": "off",
61+
"object-curly-spacing": "off",
62+
"comma-dangle": "off",
63+
"censor/no-swear": "off",
64+
"@typescript-eslint/no-inferrable-types": "off",
65+
"object-shorthand": "off",
66+
},
67+
}]);

0 commit comments

Comments
 (0)