Skip to content

Commit 6d07de0

Browse files
Update deps (#119)
Original PR #99 Mise à jour des dépendances de l'api (basé sur `feat/lexical-generator`) Faker v10 n'est pas compatible avec jest, il existe un [workaround](https://v10.fakerjs.dev/guide/upgrading.html#incompatibility-with-jest) qui consiste à utiliser babel... Mais c'est un peu lourd pour les test, non ? Si on décide d'utiliser babel parce que jest ne supporte les packages pure-esm, on pourra réintroduire les tests unitaires de lexical (cf. #97) --------- Co-authored-by: AlbanSdl <alban.delavoreille@free.fr>
1 parent 62cb21e commit 6d07de0

107 files changed

Lines changed: 4585 additions & 4475 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,9 @@ yarn.lock
111111
docs/_build/
112112
docs/build/
113113

114+
# Prisma generated files
115+
src/prisma/build/**/*.ts
116+
114117
# OLD DATABASE, DO NOT PUSH, IT CONTAINS SENSITIVE DATA
115118
migration/etuutt_old/etuutt_old.sql
116119
# UE Data

migration/etuutt_old/make-migration.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import { PrismaClient as _PrismaClient } from '@prisma/client';
1+
import { PrismaClient as _PrismaClient } from '../../src/prisma/types';
2+
import { PrismaMariaDb } from '@prisma/adapter-mariadb';
23
import { createConnection } from 'mysql';
34
import { cleanDb } from '../../test/utils/test_utils';
45
import { findLegacyUeofName, migrateUEs } from './modules/ue';
@@ -34,7 +35,7 @@ export async function getOperationResults<T>(operations: MayBePromise<PrismaOper
3435
}
3536

3637
let ueId = -1;
37-
const _prisma = new _PrismaClient();
38+
const _prisma = new _PrismaClient({ adapter: new PrismaMariaDb(process.env.DATABASE_URL) });
3839
const prisma = _prisma.$extends({
3940
model: {
4041
semester: {

migration/etuutt_old/modules/user.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { PrismaClient, UserType } from '@prisma/client';
1+
import { PrismaClient, UserType } from '../../../src/prisma/types';
22
import { QueryFunction } from '../make-migration';
33
import { RawSemester, RawUe, RawUser } from '../../../src/prisma/types';
44

package.json

Lines changed: 69 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
{
2-
"name": "etu-utt-api-nestjs-prisma",
2+
"name": "etu-utt-api",
33
"version": "0.0.1",
44
"description": "",
55
"author": "",
66
"private": true,
77
"license": "UNLICENSED",
8+
"type": "commonjs",
89
"scripts": {
910
"build": "npx nest build",
1011
"build:docs": "python3 -m sphinx -W -T -b html -d docs/build/doctrees -D language=fr docs docs/build/html",
@@ -15,20 +16,21 @@
1516
"dev": "NODE_ENV=development npx nest start --watch",
1617
"dev:debug": "NODE_ENV=development npx nest start --debug --watch",
1718
"db:reset": "pnpm dev:db:reset && pnpm test:db:reset",
18-
"db:editor": "env-cmd -f .env.dev -- pnpm prisma studio",
19+
"db:editor": "prisma studio",
1920
"db:seed": "env-cmd -f .env.dev -- ts-node prisma/seed/seed.ts",
2021
"db:migrate": "env-cmd -f .env.dev -- ts-node migration/etuutt_old/make-migration.ts",
2122
"dev:serve": "http-server ./dev/ -p 3042",
22-
"dev:db:reset": "env-cmd -f .env.dev --use-shell \"pnpm prisma migrate reset --force && pnpm prisma db push\"",
23+
"dev:db:reset": "env-cmd -f .env.dev --use-shell \"pnpm prisma generate && pnpm prisma migrate reset --force && pnpm prisma db push\"",
2324
"dev:smtp-server:certificate": "openssl req -x509 -newkey rsa:4096 -keyout myKey.pem -out cert.pem -days 365 -nodes -subj \"/CN=ung.utt.fr/O=UTT Net Group/C=FR\" && openssl pkcs12 -export -out dummy-cert.p12 -inkey myKey.pem -in cert.pem -passout pass:etuutt && rm myKey.pem cert.pem && chmod 644 dummy-cert.p12",
2425
"dev:smtp-server": "docker run -p 587:587 -p 8080:8080 -p 8081:8081 -e FAKESMTP_PORT=587 -e FAKESMTP_AUTHENTICATION_USERNAME=etuutt -e FAKESMTP_AUTHENTICATION_PASSWORD=etuutt -e FAKESMTP_REQUIRETLS=true -e FAKESMTP_TLSKEYSTORE_LOCATION=file:/data/dummy-cert.p12 -e FAKESMTP_TLSKEYSTORE_PASSWORD=etuutt -e FAKESMTP_TLSKEYSTORE_TYPE=PKCS12 -v ./dummy-cert.p12:/data/dummy-cert.p12 gessnerfl/fake-smtp-server",
25-
"test": "NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" jest --config test/jest.json --runInBand --testNamePattern",
26-
"test:unit": "NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" jest --config test/jest.json \"unit/app.spec.ts\" --runInBand --testNamePattern",
27-
"test:e2e": "NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" jest --config test/jest.json \"e2e/app.e2e-spec.ts\" --runInBand --testNamePattern",
28-
"test:watch": "NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" jest --watch --config ./test/jest.json --runInBand",
29-
"test:cov": "NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" jest --coverage --config ./test/jest.json --runInBand",
30-
"test:instantfail": "NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" jest --config test/jest.json --runInBand --testNamePattern --bail",
31-
"test:db:reset": "env-cmd -f .env.test --use-shell \"pnpm prisma migrate reset --force && pnpm prisma db push\"",
26+
"test": "NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" jest --config test/jest.json --runInBand",
27+
"test:grep": "pnpm test --testNamePattern",
28+
"test:unit": "pnpm test \"unit/app.spec.ts\"",
29+
"test:e2e": "pnpm test \"e2e/app.e2e-spec.ts\"",
30+
"test:watch": "pnpm test --watch",
31+
"test:cov": "pnpm test --coverage",
32+
"test:instantfail": "pnpm test --bail",
33+
"test:db:reset": "env-cmd -f .env.test --use-shell \"pnpm prisma generate && pnpm prisma migrate reset --force && pnpm prisma db push\"",
3234
"test:db:editor": "env-cmd -f .env.test -- pnpm prisma studio",
3335
"seed:base": "env-cmd -f .env.dev -- ts-node scripts/seed/base.ts",
3436
"seed:ue": "env-cmd -f .env.dev -- ts-node scripts/seed/ue.ts",
@@ -39,87 +41,82 @@
3941
"script:deps:graph": "ts-node scripts/dependency_graph.ts"
4042
},
4143
"dependencies": {
42-
"@fast-csv/parse": "^5.0.2",
43-
"@lexical/code": "^0.37.0",
44-
"@lexical/extension": "^0.37.0",
45-
"@lexical/headless": "^0.37.0",
46-
"@lexical/html": "^0.37.0",
47-
"@lexical/link": "^0.37.0",
48-
"@lexical/list": "^0.37.0",
49-
"@lexical/rich-text": "^0.37.0",
50-
"@lexical/table": "^0.37.0",
44+
"@fast-csv/parse": "^5.0.5",
45+
"@lexical/code": "^0.41.0",
46+
"@lexical/extension": "^0.41.0",
47+
"@lexical/headless": "^0.41.0",
48+
"@lexical/html": "^0.41.0",
49+
"@lexical/link": "^0.41.0",
50+
"@lexical/list": "^0.41.0",
51+
"@lexical/rich-text": "^0.41.0",
52+
"@lexical/table": "^0.41.0",
5153
"@nestjs-modules/mailer": "^2.0.2",
52-
"@nestjs/axios": "^4.0.0",
53-
"@nestjs/common": "^11.0.11",
54-
"@nestjs/config": "^4.0.1",
55-
"@nestjs/core": "^11.0.11",
56-
"@nestjs/jwt": "^11.0.0",
54+
"@nestjs/axios": "^4.0.1",
55+
"@nestjs/common": "^11.1.16",
56+
"@nestjs/config": "^4.0.3",
57+
"@nestjs/core": "^11.1.16",
58+
"@nestjs/jwt": "^11.0.2",
5759
"@nestjs/passport": "^11.0.5",
58-
"@nestjs/platform-express": "^11.0.11",
59-
"@nestjs/swagger": "^11.0.6",
60-
"@prisma/client": "^6.5.0",
61-
"axios": "^1.8.3",
62-
"bcryptjs": "^3.0.2",
60+
"@nestjs/platform-express": "^11.1.16",
61+
"@nestjs/swagger": "^11.2.6",
62+
"@prisma/adapter-mariadb": "^7.4.2",
63+
"@prisma/client": "^7.4.2",
64+
"axios": "^1.13.6",
65+
"bcryptjs": "^3.0.3",
6366
"class-transformer": "^0.5.1",
64-
"class-validator": "^0.14.1",
65-
"fast-xml-parser": "^5.0.9",
66-
"file-type": "^20.4.1",
67-
"ldapts": "^7.3.1",
68-
"lexical": "^0.37.0",
69-
"multer": "1.4.5-lts.1",
70-
"pactum-matchers": "^1.1.7",
67+
"class-validator": "^0.15.1",
68+
"fast-xml-parser": "^5.4.2",
69+
"file-type": "^21.3.0",
70+
"ldapts": "8.1.7",
71+
"lexical": "^0.41.0",
72+
"multer": "2.1.1",
73+
"pactum-matchers": "^1.2.0",
7174
"passport-jwt": "^4.0.1",
72-
"pdfkit": "^0.16.0",
73-
"prisma": "^6.5.0",
75+
"pdfkit": "^0.17.2",
76+
"prisma": "^7.4.2",
7477
"reflect-metadata": "^0.2.2",
7578
"rxjs": "^7.8.2",
76-
"sharp": "^0.33.5"
79+
"sharp": "^0.34.5"
7780
},
7881
"devDependencies": {
79-
"@faker-js/faker": "^9.6.0",
80-
"@nestjs/cli": "^11.0.5",
81-
"@nestjs/schematics": "^11.0.2",
82-
"@nestjs/testing": "^11.0.11",
82+
"@faker-js/faker": "^9.9.0",
83+
"@nestjs/cli": "^11.0.16",
84+
"@nestjs/schematics": "^11.0.9",
85+
"@nestjs/testing": "^11.1.16",
8386
"@types/bcryptjs": "^3.0.0",
84-
"@types/express": "^5.0.0",
85-
"@types/jest": "29.5.14",
86-
"@types/multer": "^1.4.12",
87-
"@types/mysql": "^2.15.26",
88-
"@types/node": "22.13.10",
89-
"@types/nodemailer": "^7.0.9",
87+
"@types/express": "^5.0.6",
88+
"@types/jest": "30.0.0",
89+
"@types/multer": "^2.0.0",
90+
"@types/mysql": "^2.15.27",
91+
"@types/node": "25.3.4",
92+
"@types/nodemailer": "^7.0.11",
9093
"@types/passport-jwt": "^4.0.1",
91-
"@types/pdfkit": "^0.13.9",
92-
"@typescript-eslint/eslint-plugin": "^8.26.1",
93-
"@typescript-eslint/parser": "^8.26.1",
94-
"cz-emoji": "1.3.2-canary.2",
95-
"env-cmd": "^10.1.0",
96-
"eslint": "^9.22.0",
97-
"eslint-config-prettier": "^10.1.1",
98-
"eslint-plugin-prettier": "^5.2.3",
99-
"globals": "^16.0.0",
100-
"http-server": "^14.1.1",
101-
"jest": "29.7.0",
94+
"@types/pdfkit": "^0.17.5",
95+
"@typescript-eslint/eslint-plugin": "^8.56.1",
96+
"@typescript-eslint/parser": "^8.56.1",
97+
"env-cmd": "^11.0.0",
98+
"eslint": "^10.0.2",
99+
"eslint-config-prettier": "^10.1.8",
100+
"eslint-plugin-prettier": "^5.5.5",
101+
"globals": "^17.4.0",
102+
"jest": "30.2.0",
102103
"ldap-server-mock": "^6.0.1",
103104
"mysql": "^2.18.1",
104105
"nestjs-spelunker": "^1.3.2",
105-
"nock": "^14.0.1",
106-
"pactum": "^3.7.6",
107-
"prettier": "^3.5.3",
106+
"nock": "^14.0.11",
107+
"pactum": "^3.9.1",
108+
"prettier": "^3.8.1",
108109
"source-map-support": "^0.5.21",
109-
"ts-jest": "29.2.6",
110-
"ts-loader": "^9.5.2",
110+
"ts-jest": "29.4.6",
111+
"ts-loader": "^9.5.4",
111112
"ts-node": "^10.9.2",
112113
"tsconfig-paths": "4.2.0",
113-
"typescript": "^5.8.2",
114-
"typescript-eslint": "^8.26.1"
115-
},
116-
"config": {
117-
"commitizen": {
118-
"path": "cz-emoji"
119-
}
114+
"typescript": "^5.9.3",
115+
"typescript-eslint": "^8.56.1"
120116
},
121117
"pnpm": {
122118
"onlyBuiltDependencies": [
119+
"@nestjs/core",
123120
"sharp"
124121
]
125122
}

0 commit comments

Comments
 (0)