Skip to content

Commit 0bc301d

Browse files
authored
Merge pull request #42 from ngneat/stability-upgrades
Stability Upgrades
2 parents de7fd3b + e97996a commit 0bc301d

File tree

7 files changed

+295
-188
lines changed

7 files changed

+295
-188
lines changed

.github/workflows/nx-affected-deploy.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@ jobs:
1515
runs-on: ubuntu-latest
1616

1717
steps:
18-
- name: Use Node.js 16.x
19-
uses: actions/setup-node@v1
18+
- name: Use Node.js 24.x
19+
uses: actions/setup-node@v4
2020
with:
21-
node-version: "16.x"
22-
- uses: actions/checkout@v2
21+
node-version: "24.x"
22+
- uses: actions/checkout@v4
2323
with:
2424
fetch-depth: 0
2525
- run: git fetch origin main

.github/workflows/nx-affected-tests.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,14 @@ jobs:
1616

1717
strategy:
1818
matrix:
19-
node-version: [16.x]
19+
node-version: [24.x]
2020

2121
steps:
2222
- name: Use Node.js ${{ matrix.node-version }}
23-
uses: actions/setup-node@v1
23+
uses: actions/setup-node@v4
2424
with:
2525
node-version: ${{ matrix.node-version }}
26-
- uses: actions/checkout@v2
26+
- uses: actions/checkout@v4
2727
with:
2828
fetch-depth: 0
2929
- run: git fetch origin main
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Changelog
2+
3+
## [3.0.0] - 2026-02-13
4+
5+
### ⚠ BREAKING CHANGES
6+
7+
- **Strict Typing**: Public service methods now have strict argument and return types. Consumers relying on implicit `any` may face compilation errors.
8+
- **Error Handling**: `addNewRelation` now throws an error instead of swallowing it. Applications must handle potential errors when adding invalid relations.
9+
- **Immutability**: The service now uses immutable state updates. `getCurrentDagModel()` returns a reference that will not be mutated by subsequent service operations.
10+
11+
### Features
12+
13+
- **Performance**: Converted recursive methods (`convertArrayToDagModel`, `removeItem`, `getNodeDepth`) to iterative implementations to prevent stack overflows with deep graphs.
14+
- **Modernization**: Updated array handling to use modern ES6+ syntax (`flat()`, `map()`, `filter()`).
15+
16+
### Bug Fixes
17+
18+
- Fixed swallowed stack traces in `addNewRelation`.
19+
- Fixed in-place mutation of arrays in `addItem`, `addRelation`, `removeItem`, and `insertNode`.

libs/dag-manager-service/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@ngneat/dag",
3-
"version": "2.0.0",
3+
"version": "3.0.0",
44
"homepage": "https://ngneat-dag-demo.netlify.app/",
55
"description": "An Angular service for managing directed acyclic graphs",
66
"bugs": {

0 commit comments

Comments
 (0)