@elsikora/nestjs-crud-config 3.1.0-dev.1 → 4.0.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +21 -20
  2. package/package.json +4 -4
package/README.md CHANGED
@@ -16,7 +16,7 @@
16
16
  - [Description](#-description)
17
17
  - [Features](#-features)
18
18
  - [Installation](#-installation)
19
- - [Migrating to 3.0](#migrating-to-30)
19
+ - [Migrating to 4.0](#migrating-to-40)
20
20
  - [Usage](#-usage)
21
21
  - [Migration System](#-migration-system)
22
22
  - [API Documentation](#-api-documentation)
@@ -55,17 +55,17 @@ Whether you're managing API keys across different environments, storing feature
55
55
 
56
56
  ## 🛠 Installation
57
57
 
58
- These docs describe the upcoming CrudConfig 3.0 contract. Use the 3.x-only range below. It intentionally fails until a 3.0 prerelease exists instead of resolving incompatible CrudConfig 2.x:
58
+ These docs describe the CrudConfig 4 contract. Use the 4.x-only range so the package manager cannot resolve an incompatible 3.x release:
59
59
 
60
60
  ```bash
61
61
  # npm
62
- npm install @elsikora/nestjs-crud-config@^3.0.0-0
62
+ npm install @elsikora/nestjs-crud-config@^4.0.0-0
63
63
 
64
64
  # yarn
65
- yarn add @elsikora/nestjs-crud-config@^3.0.0-0
65
+ yarn add @elsikora/nestjs-crud-config@^4.0.0-0
66
66
 
67
67
  # pnpm
68
- pnpm add @elsikora/nestjs-crud-config@^3.0.0-0
68
+ pnpm add @elsikora/nestjs-crud-config@^4.0.0-0
69
69
  ```
70
70
 
71
71
  ### Prerequisites
@@ -73,13 +73,13 @@ pnpm add @elsikora/nestjs-crud-config@^3.0.0-0
73
73
  Install the required peer dependencies:
74
74
 
75
75
  ```bash
76
- npm install @elsikora/nestjs-crud-automator@^3.0.2 @nestjs/common@^11.1.24 @nestjs/core@^11.1.24 @nestjs/typeorm@^11.0.0 typeorm@^0.3.20
77
- npm install @nestjs/passport@^11.0.5 @nestjs/platform-fastify@^11.1.24 @nestjs/swagger@11.4.2 @nestjs/throttler@^6.5.0 class-transformer@^0.5.1 class-validator@^0.15.1 fastify@^5.8.5 lodash@^4.18.1
76
+ npm install @elsikora/nestjs-crud-automator@^4.0.0-0 @nestjs/common@^11.1.24 @nestjs/core@^11.1.24 @nestjs/typeorm@^11.0.0 typeorm@^0.3.20
77
+ npm install @nestjs/passport@^11.0.5 @nestjs/platform-fastify@11.1.24 @nestjs/swagger@11.4.2 @nestjs/throttler@^6.5.0 class-transformer@^0.5.1 class-validator@^0.15.1 fastify@^5.8.5 lodash@^4.18.1
78
78
  ```
79
79
 
80
- ### Automator 3 compatibility
80
+ ### Automator 4 compatibility
81
81
 
82
- The upcoming CrudConfig 3 release requires `@elsikora/nestjs-crud-automator >=3.0.2-0 <4.0.0`. Automator 2 is not supported.
82
+ CrudConfig 4 requires `@elsikora/nestjs-crud-automator >=4.0.0-0 <5.0.0`. Automator 3 is not supported.
83
83
 
84
84
  Generated route overrides continue to use Automator generation config:
85
85
 
@@ -93,20 +93,21 @@ DELETE: {
93
93
 
94
94
  ConfigData `CREATE` and `UPDATE` use Automator nested request relation loading. The built-in section relation expects request bodies such as `{ "section": { "id": "section-uuid" } }`.
95
95
 
96
- The tested Swagger baseline is exact `11.4.2`. See [Migrating to 3.0](#migrating-to-30) for transaction and EventEmitter changes.
96
+ CrudConfig creates each generated service through `createDynamicService()` and `@ApiService({ entity })`, so its inherited same-entity CRUD methods satisfy the Automator 4 generated-route capability boundary. Applications do not need a wrapper or compatibility layer.
97
97
 
98
- ### Migrating to 3.0
98
+ The tested Swagger baseline remains exact `11.4.2`. See [Migrating to 4.0](#migrating-to-40) for the compatibility change.
99
99
 
100
- The upcoming 3.0 release is breaking:
100
+ ### Migrating to 4.0
101
101
 
102
- - Automator 2 compatibility is removed.
103
- - Transaction-enabled migration execution and rollback use the named `crud-config-migrations` Automator owner.
104
- - Standalone `CrudConfigService.set()` uses the named `crud-config-set` owner.
105
- - Migration config operations must receive the callback `EntityManager` through `eventManager` so they join instead of opening a nested owner.
106
- - The ConfigData before-insert EventEmitter pipeline and `@nestjs/event-emitter` dependency are removed.
107
- - The database unique constraint remains authoritative, and Automator maps duplicate writes to `409 CONFIGDATA_DUPLICATE_KEY`.
102
+ CrudConfig 4 removes Automator 3 compatibility. The CrudConfig runtime contract is otherwise unchanged:
108
103
 
109
- See the complete [3.0 migration guide](docs/guides/migrating-to-3-0/page.mdx).
104
+ - generated routes keep the same paths, payloads, and `generation.isEnabled` options;
105
+ - ConfigData relation input remains `{ "section": { "id": "section-uuid" } }`;
106
+ - transaction ownership and `eventManager` join behavior remain unchanged;
107
+ - the database schema, duplicate mapping, and EventEmitter-free runtime remain unchanged;
108
+ - no consumer wrapper or legacy compatibility wiring is introduced.
109
+
110
+ See the complete [4.0 migration guide](docs/guides/migrating-to-4-0/page.mdx). The [3.0 migration guide](docs/guides/migrating-to-3-0/page.mdx) remains available for applications upgrading from CrudConfig 2.
110
111
 
111
112
  ### Database Support
112
113
 
@@ -771,7 +772,7 @@ CrudConfigModule.register({
771
772
  });
772
773
  ```
773
774
 
774
- Automator 3 route options use `generation.isEnabled` for route generation. Relation loading uses TypeORM `relationLoadStrategy` values (`"query"` or `"join"`); the built-in ConfigData section relation uses `"query"`.
775
+ Automator 4 route options use `generation.isEnabled` for route generation. Relation loading uses TypeORM `relationLoadStrategy` values (`"query"` or `"join"`); the built-in ConfigData section relation uses `"query"`.
775
776
 
776
777
  ## 🗄️ Database Schema
777
778
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elsikora/nestjs-crud-config",
3
- "version": "3.1.0-dev.1",
3
+ "version": "4.0.0-dev.1",
4
4
  "description": "NestJS application configuration via database storage",
5
5
  "homepage": "https://github.com/ElsiKora/NestJS-Crud-Config#readme",
6
6
  "bugs": {
@@ -65,12 +65,12 @@
65
65
  "@elsikora/eslint-config": "^3.10.1",
66
66
  "@elsikora/eslint-plugin-nestjs-typed": "^3.1.0",
67
67
  "@elsikora/git-branch-lint": "^1.2.2",
68
- "@elsikora/nestjs-crud-automator": ">=3.0.2-0 <4.0.0",
68
+ "@elsikora/nestjs-crud-automator": ">=4.0.0-0 <5.0.0",
69
69
  "@nestjs/cli": "^11.0.21",
70
70
  "@nestjs/common": "^11.1.24",
71
71
  "@nestjs/core": "^11.1.24",
72
72
  "@nestjs/passport": "^11.0.5",
73
- "@nestjs/platform-fastify": "^11.1.24",
73
+ "@nestjs/platform-fastify": "11.1.24",
74
74
  "@nestjs/schematics": "^11.1.0",
75
75
  "@nestjs/swagger": "11.4.2",
76
76
  "@nestjs/testing": "^11.1.24",
@@ -117,7 +117,7 @@
117
117
  "vitest": "^4.1.8"
118
118
  },
119
119
  "peerDependencies": {
120
- "@elsikora/nestjs-crud-automator": ">=3.0.2-0 <4.0.0",
120
+ "@elsikora/nestjs-crud-automator": ">=4.0.0-0 <5.0.0",
121
121
  "@nestjs/common": ">=11.1.24",
122
122
  "@nestjs/core": ">=11.1.24",
123
123
  "@nestjs/passport": ">=11.0.5",