What's Changed
- Complete the Users Module by @Nictheboy in #1
- Add refresh token by @Nictheboy in #2
- chore: update .gitignore and dependecies by @Nictheboy in #3
- chore(users): clean code according to the reviewer's opinion by @Nictheboy in #9
- refactor(users)!: change the response format of register and login by @Nictheboy in #10
- refactor(users): refresh token endpoint and controller response by @HuanCheng65 in #12
- refactor(users): update refresh token path and fix cookie path, implement refresh token rotation by @HuanCheng65 in #13
- fix(users): password validation regex and default avatar filename by @HuanCheng65 in #14
- feat(users): add userDto to the response of /users/auth/refresh-token by @Nictheboy in #15
- feat(questions, topics): implement by @Nictheboy in #16
- chore(github action) & fix(questions, topics): create github action config file to do e2e tests; fix a bug in fulltext search by @Nictheboy in #17
- feat: enable CORS for development environment by @HuanCheng65 in #11
- feat(groups)!: implement by @andylizf in #7
- Patch-groups-search by @andylizf in #22
- chore: add CodeQL for vulnerability scan by @Nictheboy in #24
- Patch-config and resolve #23 by @andylizf in #25
- test! & refactor: add tests and fix bugs by @Nictheboy in #20
- fix(groups): support searching groups without userId or searchType by @Nictheboy in #31
- fix(search): eliminate problematic
unescapewhen parsing keyword by @Nictheboy in #30 - chore: add lint-staged and clean husky config by @andylizf in #35
- chore(tests): fix scripts to run on Windows by @andylizf in #37
- Add docker support for backend by @corporal9736 in #40
- docs(API): add api definition of insights by @HuanCheng65 in #39
- chore: clone and format with line end lf uniformly by @andylizf in #44
- refactor: use prisma and postgresql by @Nictheboy in #43
- chore: improve Prisma support clarity by @andylizf in #46
- refactor(API)!: respond more unifiedly and clearly by @HuanCheng65 in #42
- fix(users): fix the mistake in the message of password rule by @Nictheboy in #45
- chore: github action for binary package by @Nictheboy in #50
- refactor(prisma): clearer usage of prisma by @Nictheboy in #47
- feat: use elasticsearch by @Nictheboy in #48
- fix: use PORT in env by @Nictheboy in #56
- fix: remove pkg support by @Nictheboy in #57
- chore: remove *.es-doc.ts file (elasticsearch document) from test coverage range by @Nictheboy in #58
- feat(answers): implement by @ziyebuxiu in #6
- feat(users): statistics by @HuanCheng65 in #51
- chore: replace versions of mysql with versions of pg and es by @Nictheboy in #61
- chore: regenerate *.legacy.prisma and deprecate typeorm synchronize by @Nictheboy in #59
- feat(comment): implement by @kamisatukayaku in #4
- fix(answers): use plural form for endpoint by @HuanCheng65 in #68
- docs(API): make parameters reusable by @HuanCheng65 in #70
- feat: avatars by @nameisyui in #60
- fix(answer): repeated answering and questionId in path check and
unfavoriteAnswerresponse by @HuanCheng65 in #66 - Docker and CI/CD support with prisma, postgresql and elasticsearch by @corporal9736 in #53
- fix(ci): fix typo in dev docker workflow by @corporal9736 in #86
- feat: invite user to answer question by @HuanCheng65 in #62
- feat: attitude by @HuanCheng65 in #71
- fix(avatar): applying
BaseErrorExceptionFilterby @nameisyui in #88 - ci: add dependabot by @andylizf in #90
- chore(deps): bump actions/checkout from 3 to 4 by @dependabot in #94
- chore(deps-dev): bump typescript from 5.3.3 to 5.4.3 by @dependabot in #102
- chore(deps): bump pnpm/action-setup from 2 to 3 by @dependabot in #95
- chore(deps): bump express from 4.18.2 to 4.19.1 by @dependabot in #101
- chore(deps): bump actions/setup-node from 3 to 4 by @dependabot in #96
- chore(deps-dev): bump @types/jest from 29.5.11 to 29.5.12 by @dependabot in #98
- chore(deps): bump node from 20-slim to 21-slim by @dependabot in #97
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 6.19.1 to 7.0.0 by @dependabot in #99
- chore(deps-dev): bump eslint from 8.56.0 to 8.57.0 by @dependabot in #100
- feat: always validate access token as long as there is one by @Nictheboy in #106
- fix prod docker error by @corporal9736 in #91
- fix(invitations): use plural form in endpoint path by @HuanCheng65 in #107
- feat(user): get a user's questions, answers and his followed questions by @Nictheboy in #92
- fix(docker): add binaryTargets to src/app.prisma by @corporal9736 in #111
- chore(deps): bump @prisma/client from 5.9.1 to 5.11.0 by @dependabot in #119
- chore(deps-dev): bump husky from 9.0.7 to 9.0.11 by @dependabot in #118
- chore(deps-dev): bump @nestjs/testing from 10.3.1 to 10.3.5 by @dependabot in #120
- chore(deps): bump @elastic/elasticsearch from 8.12.1 to 8.12.2 by @dependabot in #121
- chore(deps-dev): bump prisma from 5.9.1 to 5.11.0 by @dependabot in #122
- feat(question): bounty and acceptance by @HuanCheng65 in #63
- fix(ci): use migrate instead of db push by @corporal9736 in #123
- chore: use prisma-case-format to format prisma case by @Nictheboy in #110
- refactor(avatars): improvement of API by @HuanCheng65 in #108
- Feat(readme): remove nestjs logo and add ci status by @corporal9736 in #124
- chore(deps): bump express from 4.19.1 to 4.19.2 by @dependabot in #126
- fix: no token validation for some endpoint by @HuanCheng65 in #128
- refactor: encapsulate more DTOs with validating and transforming by @andylizf in #112
- fix: timestamp with timezone by @HuanCheng65 in #127
- fix: make delete request return void by @kamisatukayaku in #129
- feat: configure CORS via environment variables by @HuanCheng65 in #131
- refactor: rename
XIdNotFoundErrortoXNotFoundErrorby @kamisatukayaku in #130 - chore(deps): bump reflect-metadata from 0.1.14 to 0.2.2 by @dependabot in #139
- chore(deps-dev): bump @commitlint/config-conventional from 18.6.3 to 19.1.0 by @dependabot in #138
- chore(deps): bump codecov/codecov-action from 4.0.1 to 4.1.1 by @dependabot in #136
- chore(deps-dev): bump @commitlint/cli from 18.6.1 to 19.2.1 by @dependabot in #137
- chore: prune unused dependencies by @andylizf in #140
- fix(avatars): mime type & cache control by @HuanCheng65 in #134
- feat: materials by @HuanCheng65 in #74
- fix(env): support special chars in password by @Nictheboy in #146
- fix(avatars): correct upload path by @nameisyui in #84
- fix: transfer all Dto-name into RespondDto by @kamisatukayaku in #144
- add frontend and schema check support by @corporal9736 in #143
- chore(deps-dev): bump prisma from 5.11.0 to 5.12.1 by @dependabot in #150
- chore(deps-dev): bump typescript from 5.4.3 to 5.4.4 by @dependabot in #152
- chore(deps): bump @nestjs/config from 3.2.1 to 3.2.2 by @dependabot in #149
- chore(deps): bump codecov/codecov-action from 4.1.1 to 4.2.0 by @dependabot in #154
- chore(deps-dev): bump @types/node from 20.12.3 to 20.12.5 by @dependabot in #153
- chore(deps): bump @prisma/client from 5.11.0 to 5.12.1 by @dependabot in #151
- chore(deps): bump undici from 5.28.3 to 5.28.4 by @dependabot in #157
- feat(email): implementation and tests by @Nictheboy in #160
- chore: dev container enable building, more features and allow customization by @andylizf in #163
- chore: regenerate prisma schema using newer version by @Nictheboy in #162
- feat(ci): check prisma.schema is up to date in workflow by @corporal9736 in #167
- refactor(users): deprecate typeorm by @Nictheboy in #169
- refactor(answer): clean unused answer attitude code by @Nictheboy in #170
- chore(deps-dev): bump ts-json-schema-generator from 1.5.0 to 2.0.1 by @dependabot in #175
- chore(deps): bump codecov/codecov-action from 4.2.0 to 4.3.0 by @dependabot in #176
- chore(deps-dev): bump @types/node from 20.12.5 to 20.12.7 by @dependabot in #174
- chore(deps-dev): bump @typescript-eslint/parser from 7.5.0 to 7.6.0 by @dependabot in #173
- chore(deps): bump @elastic/elasticsearch from 8.13.0 to 8.13.1 by @dependabot in #172
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 7.5.0 to 7.6.0 by @dependabot in #171
- chore: add devcontainers eco to dependabot config by @andylizf in #177
- chore(deps-dev): bump typescript from 5.4.4 to 5.4.5 by @dependabot in #180
- chore(deps-dev): bump @commitlint/config-conventional from 19.1.0 to 19.2.2 by @dependabot in #179
- chore(deps-dev): bump @commitlint/cli from 19.2.1 to 19.2.2 by @dependabot in #178
- chore(deps-dev): bump @nestjs/testing from 10.3.7 to 10.3.8 by @dependabot in #185
- chore(deps-dev): bump ts-json-schema-generator from 2.0.1 to 2.1.0 by @dependabot in #184
- chore(deps-dev): bump @typescript-eslint/parser from 7.6.0 to 7.7.0 by @dependabot in #181
- chore(deps): bump @nestjs/platform-express from 10.3.7 to 10.3.8 by @dependabot in #183
- chore(deps): bump @nestjs/common from 10.3.7 to 10.3.8 by @dependabot in #182
- fix: add uploads to .gitignore by @panjd123 in #186
- chore(deps): bump @nestjs/core from 10.3.7 to 10.3.8 by @dependabot in #191
- chore(deps-dev): bump ts-json-schema-generator from 2.1.0 to 2.1.1 by @dependabot in #193
- chore(deps-dev): bump @commitlint/cli from 19.2.2 to 19.3.0 by @dependabot in #192
- chore(deps-dev): bump @typescript-eslint/parser from 7.7.0 to 7.7.1 by @dependabot in #190
- chore(deps): bump @nestjs-modules/mailer from 1.11.2 to 2.0.2 by @dependabot in #195
- chore(deps-dev): bump prisma from 5.12.1 to 5.13.0 by @dependabot in #198
- feat: add nix dev shell support by @lunaticabs in #188
- chore(deps-dev): bump supertest from 6.3.4 to 7.0.0 by @dependabot in #205
- chore(deps-dev): bump @types/node from 20.12.7 to 20.12.11 by @dependabot in #204
- chore(deps): bump pnpm/action-setup from 3 to 4 by @dependabot in #203
- chore(deps): bump @prisma/client from 5.12.1 to 5.13.0 by @dependabot in #201
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 7.6.0 to 7.9.0 by @dependabot in #206
- chore(deps): bump node from 21-slim to 22-slim by @dependabot in #196
- chore(deps): bump codecov/codecov-action from 4.3.0 to 4.3.1 by @dependabot in #197
- chore(deps): bump ajv from 8.12.0 to 8.13.0 by @dependabot in #200
- chore(deps): bump fluent-ffmpeg from 2.1.2 to 2.1.3 by @dependabot in #210
- chore(deps-dev): bump @typescript-eslint/parser from 7.7.1 to 7.9.0 by @dependabot in #208
- chore(deps): bump codecov/codecov-action from 4.3.1 to 4.4.0 by @dependabot in #207
- chore(deps): bump @prisma/client from 5.13.0 to 5.14.0 by @dependabot in #209
- fix: init avatarservice only once by @nameisyui in #194
- chore(deps-dev): bump lint-staged from 15.2.2 to 15.2.5 by @dependabot in #214
- chore(deps-dev): bump @typescript-eslint/parser from 7.9.0 to 7.12.0 by @dependabot in #221
- chore(deps): bump codecov/codecov-action from 4.4.0 to 4.4.1 by @dependabot in #217
- chore(deps-dev): bump @types/node from 20.12.11 to 20.14.2 by @dependabot in #223
- chore(deps-dev): bump prisma from 5.13.0 to 5.15.0 by @dependabot in #224
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 7.9.0 to 7.13.0 by @dependabot in #225
- chore(deps): bump codecov/codecov-action from 4.4.1 to 4.5.0 by @dependabot in #232
- chore(deps): bump pg from 8.11.5 to 8.12.0 by @dependabot in #227
- chore(deps-dev): bump ts-json-schema-generator from 2.1.1 to 2.3.0 by @dependabot in #231
- chore(deps-dev): bump prettier from 3.2.5 to 3.3.2 by @dependabot in #228
- chore(deps-dev): bump @typescript-eslint/parser from 7.12.0 to 7.13.0 by @dependabot in #229
- chore(deps-dev): bump lint-staged from 15.2.5 to 15.2.7 by @dependabot in #230
- refactor: remove TypeORM completely by @Nictheboy in #226
- fix: solve the problem of test caused by too much running cores but insufficient memory by @CH3COOH-JYR in #245
- chore(deps-dev): bump @typescript-eslint/parser from 7.13.0 to 7.16.0 by @dependabot in #251
- chore(deps-dev): bump @types/node from 20.14.2 to 20.14.10 by @dependabot in #246
- chore(deps): bump docker/build-push-action from 5 to 6 by @dependabot in #235
- chore(deps): bump @prisma/client from 5.14.0 to 5.16.2 by @dependabot in #252
- chore(deps-dev): bump typescript from 5.4.5 to 5.5.3 by @dependabot in #247
- fix(github action): bugs in ci by @Nictheboy in #255
- chore(deps): bump uuid and @types/uuid by @dependabot in #260
- chore(deps-dev): bump @nestjs/cli from 10.3.2 to 10.4.2 by @dependabot in #259
- chore(deps): bump @nestjs/config from 3.2.2 to 3.2.3 by @dependabot in #258
- chore(deps): bump ajv from 8.16.0 to 8.17.1 by @dependabot in #257
- feat: resources, attachments & materials by @HuanCheng65 in #168
- fix(docker): a bug caused by husky by @Nictheboy in #261
- chore(deps-dev): bump @typescript-eslint/parser from 7.16.1 to 7.17.0 by @dependabot in #266
- chore(deps-dev): bump husky from 9.1.1 to 9.1.3 by @dependabot in #262
- chore(deps-dev): bump @types/node from 20.14.11 to 22.0.0 by @dependabot in #264
- chore(deps-dev): bump eslint from 9.7.0 to 9.8.0 by @dependabot in #265
- chore(deps-dev): bump typescript from 5.5.3 to 5.5.4 by @dependabot in #263
- chore(deps-dev): bump @nestjs/schematics from 10.1.2 to 10.1.3 by @dependabot in #272
- chore(deps-dev): bump @types/node from 22.0.0 to 22.1.0 by @dependabot in #271
- chore(deps-dev): bump lint-staged from 15.2.7 to 15.2.8 by @dependabot in #270
- chore(deps-dev): bump husky from 9.1.3 to 9.1.4 by @dependabot in #269
- chore(deps-dev): bump @typescript-eslint/parser from 7.17.0 to 8.0.0 by @dependabot in #268
- chore(deps-dev): bump @types/fluent-ffmpeg from 2.1.24 to 2.1.26 by @dependabot in #286
- chore(deps-dev): bump @typescript-eslint/parser from 8.0.0 to 8.3.0 by @dependabot in #285
- chore(deps-dev): bump @commitlint/cli from 19.3.0 to 19.4.1 by @dependabot in #284
- chore(deps): bump @prisma/client from 5.17.0 to 5.19.0 by @dependabot in #283
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 7.16.1 to 8.4.0 by @dependabot in #287
- chore: add script to start docker dependencies by @Nictheboy in #233
- feat: better permission system by @Nictheboy in #267
- chore(deps): bump @elastic/elasticsearch from 8.14.0 to 8.15.0 by @dependabot in #292
- chore(deps-dev): bump @nestjs/cli from 10.4.2 to 10.4.5 by @dependabot in #289
- chore(deps): bump @nestjs/platform-express from 10.3.10 to 10.4.3 by @dependabot in #295
- chore(deps-dev): bump @typescript-eslint/parser from 8.3.0 to 8.6.0 by @dependabot in #294
- chore(deps): bump @nestjs/platform-express from 10.4.3 to 10.4.4 by @dependabot in #296
- chore(deps-dev): bump @nestjs/schematics from 10.1.3 to 10.1.4 by @dependabot in #288
- fix(avatar): get avatar returns 401 unauthorized before by @Nictheboy in #297
- Fix: authentication required to GET avatars' default image by @andylizf in #300
- fix(attachment): fix the bug that image, video and audio can not be accepted as file by @Nictheboy in #301
- chore(deps-dev): bump @commitlint/cli from 19.4.1 to 19.5.0 by @dependabot in #306
- chore(deps): bump @prisma/client from 5.19.0 to 5.20.0 by @dependabot in #305
- chore(deps-dev): bump @nestjs/testing from 10.3.10 to 10.4.4 by @dependabot in #304
- chore(deps): bump pg from 8.12.0 to 8.13.0 by @dependabot in #302
- chore(deps-dev): bump prisma from 5.17.0 to 5.20.0 by @dependabot in #303
- feat: add configuration COOKIE_BASE_URL by @Nictheboy in #307
- fix(avatar): increase max avatar size to 10MB by @Nictheboy in #314
- chore(deps-dev): bump husky from 9.1.4 to 9.1.6 by @dependabot in #313
- chore(deps-dev): bump @types/multer from 1.4.11 to 1.4.12 by @dependabot in #312
- chore(deps-dev): bump ts-jest from 29.2.3 to 29.2.5 by @dependabot in #311
- chore(deps): bump @nestjs/common from 10.3.10 to 10.4.4 by @dependabot in #310
- chore(deps-dev): bump @typescript-eslint/parser from 8.6.0 to 8.8.0 by @dependabot in #309
- chore(deps): bump codecov/codecov-action from 4.5.0 to 4.6.0 by @dependabot in #308
- chore(deps): bump nodemailer from 6.9.14 to 6.9.15 by @dependabot in #317
- chore(deps-dev): bump @commitlint/config-conventional from 19.2.2 to 19.5.0 by @dependabot in #318
- chore(deps-dev): bump @typescript-eslint/parser from 8.8.0 to 8.11.0 by @dependabot in #324
- chore(deps): bump express from 4.19.2 to 4.21.1 by @dependabot in #316
- chore(deps): bump node from 22-slim to 23-slim by @dependabot in #322
- chore(deps): bump @nestjs/core from 10.3.10 to 10.4.6 by @dependabot in #323
- fix(login): refresh token cookie path by @HuanCheng65 in #325
- feat: add configuration "TRUST_X_FORWARDED_FOR" to use X-Forwarded-For by @Nictheboy in #326
- chore(deps): bump @elastic/elasticsearch from 8.15.0 to 8.15.1 by @dependabot in #328
- chore(deps-dev): bump @types/fluent-ffmpeg from 2.1.26 to 2.1.27 by @dependabot in #330
- chore(deps): bump @nestjs/config from 3.2.3 to 3.3.0 by @dependabot in #329
- chore: set test/resources/* as binary in .gitattributes by @Nictheboy in #327
- chore(deps-dev): bump @types/express from 4.17.21 to 5.0.0 by @dependabot in #332
- chore(deps-dev): bump prisma from 5.20.0 to 5.21.1 by @dependabot in #331
- chore(deps-dev): bump @nestjs/cli from 10.4.5 to 10.4.7 by @dependabot in #333
- chore(deps-dev): bump @typescript-eslint/parser from 8.11.0 to 8.13.0 by @dependabot in #335
- chore(deps): bump @nestjs/core from 10.4.6 to 10.4.7 by @dependabot in #334
- chore(deps): bump @nestjs/common from 10.4.4 to 10.4.7 by @dependabot in #336
- feat: change default avatar by @Nictheboy in #338
- chore(deps-dev): bump @types/node from 22.1.0 to 22.9.0 by @dependabot in #337
- feat: reset password email by @Nictheboy in #339
- chore(deps): bump codecov/codecov-action from 4.6.0 to 5.0.2 by @dependabot in #345
- chore(deps): bump @nestjs/mapped-types from 2.0.5 to 2.0.6 by @dependabot in #344
- chore(deps-dev): bump @nestjs/testing from 10.4.4 to 10.4.8 by @dependabot in #343
- chore(deps-dev): bump prisma from 5.21.1 to 5.22.0 by @dependabot in #340
- chore(deps): bump @nestjs/platform-express from 10.4.4 to 10.4.8 by @dependabot in #342
- chore(deps-dev): bump typescript from 5.5.4 to 5.7.2 by @dependabot in #350
- chore(deps-dev): bump @commitlint/config-conventional from 19.5.0 to 19.6.0 by @dependabot in #349
- chore(deps-dev): bump @types/jest from 29.5.12 to 29.5.14 by @dependabot in #348
- chore(deps): bump codecov/codecov-action from 5.0.2 to 5.0.7 by @dependabot in #346
- chore(deps): bump codecov/codecov-action from 5.0.7 to 5.1.1 by @dependabot in #357
- chore(deps-dev): bump @typescript-eslint/parser from 8.13.0 to 8.18.0 by @dependabot in #365
- chore(deps-dev): bump lint-staged from 15.2.8 to 15.2.11 by @dependabot in #363
- chore(deps-dev): bump @types/node from 22.9.0 to 22.10.2 by @dependabot in #361
- chore(deps-dev): bump @nestjs/testing from 10.4.8 to 10.4.15 by @dependabot in #364
- chore(deps): bump @nestjs/common from 10.4.7 to 10.4.15 by @dependabot in #362
- chore(deps-dev): bump @commitlint/cli from 19.5.0 to 19.7.1 by @dependabot in #374
- chore(deps): bump codecov/codecov-action from 5.1.1 to 5.3.1 by @dependabot in #373
- chore(deps): bump @nestjs/platform-express from 10.4.8 to 10.4.15 by @dependabot in #370
- chore(deps): bump express from 4.21.1 to 4.21.2 by @dependabot in #368
- chore(deps-dev): bump @nestjs/cli from 10.4.7 to 11.0.2 by @dependabot in #372
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 8.4.0 to 8.24.0 by @dependabot in #381
- chore(deps-dev): bump husky from 9.1.6 to 9.1.7 by @dependabot in #378
- chore(deps): bump @nestjs/elasticsearch from 10.0.1 to 11.0.0 by @dependabot in #376
- chore(deps-dev): bump @commitlint/config-conventional from 19.6.0 to 19.7.1 by @dependabot in #375
- chore(deps-dev): bump prettier from 3.3.3 to 3.5.1 by @dependabot in #380
- feat(auth): passkey, TOTP and sudo mode by @HuanCheng65 in #382
- feat(db): add passkey and two-factor authentication migration by @HuanCheng65 in #384
- feat(auth): implement Secure Remote Password (SRP) authentication by @HuanCheng65 in #386
- chore(deps): bump @prisma/client from 5.20.0 to 6.4.1 by @dependabot in #391
- chore(deps): bump nodemailer from 6.9.15 to 6.10.0 by @dependabot in #390
- chore(deps-dev): bump eslint-plugin-prettier from 5.2.1 to 5.2.3 by @dependabot in #389
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 8.24.0 to 8.24.1 by @dependabot in #387
- chore(deps): bump rxjs from 7.8.1 to 7.8.2 by @dependabot in #388
- Release: 0.10.0 by @Nictheboy in #392
New Contributors
- @Nictheboy made their first contribution in #1
- @andylizf made their first contribution in #7
- @corporal9736 made their first contribution in #40
- @kamisatukayaku made their first contribution in #4
- @nameisyui made their first contribution in #60
- @dependabot made their first contribution in #94
- @panjd123 made their first contribution in #186
- @lunaticabs made their first contribution in #188
- @CH3COOH-JYR made their first contribution in #245
Full Changelog: https://github.com/SageSeekerSociety/cheese-backend/commits/0.10.0