@thi.ng/adjacency 2.0.10 → 2.1.3

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/CHANGELOG.md +110 -56
  2. package/package.json +114 -109
package/CHANGELOG.md CHANGED
@@ -1,111 +1,165 @@
1
1
  # Change Log
2
2
 
3
+ - **Last updated**: 2021-11-21T17:09:28Z
4
+ - **Generator**: [thi.ng/monopub](https://thi.ng/monopub)
5
+
3
6
  All notable changes to this project will be documented in this file.
4
- See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
7
+ See [Conventional Commits](https://conventionalcommits.org/) for commit guidelines.
8
+
9
+ **Note:** Unlisted _patch_ versions only involve non-code or otherwise excluded changes
10
+ and/or version bumps of transitive dependencies.
11
+
12
+ ## [2.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@2.1.0) (2021-11-17)
13
+
14
+ #### 🚀 Features
15
+
16
+ - Using workspaces for local tools ([bf7a404](https://github.com/thi-ng/umbrella/commit/bf7a404))
17
+ Improving the overall build ergonomics
18
+ - introduced a tools workspaces
19
+ - imported it in all needed packages/examples
20
+ - inclusive project root
5
21
 
6
- ## [2.0.10](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@2.0.9...@thi.ng/adjacency@2.0.10) (2021-11-10)
22
+ #### ♻️ Refactoring
7
23
 
8
- **Note:** Version bump only for package @thi.ng/adjacency
24
+ - testrunner to binary ([4ebbbb2](https://github.com/thi-ng/umbrella/commit/4ebbbb2))
25
+ this commit reverts (partly) changes made in:
26
+ ef346d7a8753590dc9094108a3d861a8dbd5dd2c
27
+ overall purpose is better testament ergonomics:
28
+ instead of having to pass NODE_OPTIONS with every invocation
29
+ having a binary to handle this for us.
9
30
 
31
+ ### [2.0.10](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@2.0.10) (2021-11-10)
10
32
 
33
+ #### ♻️ Refactoring
11
34
 
35
+ - update all countdown loops ([a5f374b](https://github.com/thi-ng/umbrella/commit/a5f374b))
12
36
 
37
+ ### [2.0.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@2.0.1) (2021-10-13)
13
38
 
14
- ## [2.0.9](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@2.0.8...@thi.ng/adjacency@2.0.9) (2021-11-04)
39
+ #### ♻️ Refactoring
15
40
 
16
- **Note:** Version bump only for package @thi.ng/adjacency
41
+ - update imports in all tests/pkgs ([effd591](https://github.com/thi-ng/umbrella/commit/effd591))
42
+ - update imports in all pkgs ([5fa2b6f](https://github.com/thi-ng/umbrella/commit/5fa2b6f))
43
+ - add .js suffix for all relative imports
17
44
 
45
+ # [2.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@2.0.0) (2021-10-12)
18
46
 
47
+ #### 🛑 Breaking changes
19
48
 
49
+ - major update of ALL pkgs (export maps, ESM only) ([0d1d6ea](https://github.com/thi-ng/umbrella/commit/0d1d6ea))
50
+ - BREAKING CHANGE: discontinue CommonJS & UMD versions
51
+ - only ESM modules will be published from now on
52
+ - CJS obsolete due to ESM support in recent versions of node:
53
+ - i.e. launch NodeJS via:
54
+ - `node --experimental-specifier-resolution=node --experimental-repl-await`
55
+ - in the node REPL use `await import(...)` instead of `require()`
56
+ - UMD obsolete due to widespread browser support for ESM
57
+ Also:
58
+ - normalize/restructure/reorg all package.json files
59
+ - cleanup all build scripts, remove obsolete
60
+ - switch from mocha to [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament) for all tests
20
61
 
62
+ #### ♻️ Refactoring
21
63
 
22
- ## [2.0.8](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@2.0.7...@thi.ng/adjacency@2.0.8) (2021-11-03)
64
+ - minor pkg restructure (various) ([47f88d2](https://github.com/thi-ng/umbrella/commit/47f88d2))
65
+ - update imports ([ee847e0](https://github.com/thi-ng/umbrella/commit/ee847e0))
66
+ - update all tests in _all_ pkgs ([8b582bc](https://github.com/thi-ng/umbrella/commit/8b582bc))
67
+ - update all to use [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament)
23
68
 
24
- **Note:** Version bump only for package @thi.ng/adjacency
69
+ ### [0.3.7](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.3.7) (2021-03-17)
25
70
 
71
+ #### ♻️ Refactoring
26
72
 
73
+ - dedupe OOB error handling ([84bbaaa](https://github.com/thi-ng/umbrella/commit/84bbaaa))
27
74
 
75
+ ## [0.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.3.0) (2021-02-20)
28
76
 
77
+ #### 🛑 Breaking changes
29
78
 
30
- # [2.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@1.0.5...@thi.ng/adjacency@2.0.0) (2021-10-12)
79
+ - add IGraph.degree() & impls ([9fb02ac](https://github.com/thi-ng/umbrella/commit/9fb02ac))
80
+ - BREAKING CHANGE: replace .valence() w/ more flexible .degree() methods
81
+ - add IGraph.degree() with same default behavior as .valence(),
82
+ but supporting diff degree types (in/out/inout)
83
+ - add .degree() impls for all
84
+ - remove old .valence() methods
85
+ - update tests
86
+ - major update Adjacency(Bit)Matrix classes & API ([cd71a5f](https://github.com/thi-ng/umbrella/commit/cd71a5f))
87
+ - BREAKING CHANGE: fixed order add/removeEdge(), valence(), neighbors(),
88
+ remove static methods
89
+ - update IGraph, add/update methods, return types, generics
90
+ - remove/replace static methods in Adjacency(Bit)Matrix
91
+ - add defAdjBitMatrix/defAdjMatrix
92
+ - refactor/extract/re-use .toDot() graphviz conversion
93
+ - update tests
31
94
 
95
+ #### 🚀 Features
32
96
 
33
- ### Build System
97
+ - add AdjacencyList impl & initial tests ([8f44c97](https://github.com/thi-ng/umbrella/commit/8f44c97))
34
98
 
35
- * major update of ALL pkgs (export maps, ESM only) ([0d1d6ea](https://github.com/thi-ng/umbrella/commit/0d1d6ea9fab2a645d6c5f2bf2591459b939c09b6))
99
+ #### Performance improvements
36
100
 
101
+ - pre-cache MST edge costs ([290f3a6](https://github.com/thi-ng/umbrella/commit/290f3a6))
37
102
 
38
- ### BREAKING CHANGES
103
+ #### ♻️ Refactoring
39
104
 
40
- * discontinue CommonJS & UMD versions
105
+ - update DisjointSet, add defDisjointSet() ([cfe3ed5](https://github.com/thi-ng/umbrella/commit/cfe3ed5))
106
+ - update BFS/DFS impls ([7bb045b](https://github.com/thi-ng/umbrella/commit/7bb045b))
107
+ - add one-off search bfs()/dfs() functions/syntax sugar
108
+ - update BFS to be single-source only (for more predictable results)
41
109
 
42
- - only ESM modules will be published from now on
43
- - CJS obsolete due to ESM support in recent versions of node:
44
- - i.e. launch NodeJS via:
45
- - `node --experimental-specifier-resolution=node --experimental-repl-await`
46
- - in the node REPL use `await import(...)` instead of `require()`
47
- - UMD obsolete due to widespread browser support for ESM
110
+ ## [0.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.2.0) (2020-12-22)
48
111
 
49
- Also:
50
- - normalize/restructure/reorg all package.json files
51
- - cleanup all build scripts, remove obsolete
52
- - switch from mocha to @thi.ng/testament for all tests
112
+ #### 🛑 Breaking changes
53
113
 
114
+ - fix [#256](https://github.com/thi-ng/umbrella/issues/256) replace enum w/ type alias ([88edbe1](https://github.com/thi-ng/umbrella/commit/88edbe1))
115
+ - BREAKING CHANGE: replace DegreeType w/ type alias
54
116
 
117
+ ### [0.1.67](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.1.67) (2020-12-07)
55
118
 
119
+ #### ♻️ Refactoring
56
120
 
121
+ - update type-only imports ([b8243b9](https://github.com/thi-ng/umbrella/commit/b8243b9))
57
122
 
123
+ ### [0.1.65](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.1.65) (2020-11-24)
58
124
 
59
- ## [1.0.5](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@1.0.4...@thi.ng/adjacency@1.0.5) (2021-09-03)
125
+ #### ♻️ Refactoring
60
126
 
61
- **Note:** Version bump only for package @thi.ng/adjacency
127
+ - update destructuring ([3524982](https://github.com/thi-ng/umbrella/commit/3524982))
62
128
 
63
- # [0.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@0.2.6...@thi.ng/adjacency@0.3.0) (2021-02-20)
129
+ ### [0.1.61](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.1.61) (2020-09-13)
64
130
 
65
- ### Features
131
+ #### ♻️ Refactoring
66
132
 
67
- - **adjacency:** add AdjacencyList impl & initial tests ([8f44c97](https://github.com/thi-ng/umbrella/commit/8f44c9762c0856a9b96e4548d2386eca6dcbf397))
68
- - **adjacency:** add IGraph.degree() & impls ([9fb02ac](https://github.com/thi-ng/umbrella/commit/9fb02ac7467785a0802c544cbc3100d6ac52fb87))
69
- - **adjacency:** major update Adjacency(Bit)Matrix classes & API ([cd71a5f](https://github.com/thi-ng/umbrella/commit/cd71a5fca3b2d8525c5b1c6e9032e55e39fea2dd))
133
+ - update imports, use new Fn types in various pkgs ([ced1e5d](https://github.com/thi-ng/umbrella/commit/ced1e5d))
70
134
 
71
- ### Performance Improvements
135
+ ### [0.1.35](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.1.35) (2020-04-05)
72
136
 
73
- - **adjacency:** pre-cache MST edge costs ([290f3a6](https://github.com/thi-ng/umbrella/commit/290f3a6e1f9d71ddf3bb33f4bc6e9552896903a9))
137
+ #### ♻️ Refactoring
74
138
 
75
- ### BREAKING CHANGES
139
+ - switch to non-const enums ([fd5c401](https://github.com/thi-ng/umbrella/commit/fd5c401))
76
140
 
77
- - **adjacency:** replace .valence() w/ more flexible .degree() methods
78
- - add IGraph.degree() with same default behavior as .valence(), but supporting diff degree types (in/out/inout)
79
- - add .degree() impls for all
80
- - remove old .valence() methods
81
- - update tests
82
- - **adjacency:** fixed order add/removeEdge(), valence(), neighbors(), remove static methods
83
- - update IGraph, add/update methods, return types, generics
84
- - remove/replace static methods in Adjacency(Bit)Matrix
85
- - add defAdjBitMatrix/defAdjMatrix
86
- - refactor/extract/re-use .toDot() graphviz conversion
87
- - update tests
141
+ ### [0.1.29](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.1.29) (2020-02-25)
88
142
 
89
- # [0.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@0.1.67...@thi.ng/adjacency@0.2.0) (2020-12-22)
143
+ #### ♻️ Refactoring
90
144
 
91
- ### Code Refactoring
145
+ - update type imports ([3d9ebcf](https://github.com/thi-ng/umbrella/commit/3d9ebcf))
92
146
 
93
- - **adjacency:** fix [#256](https://github.com/thi-ng/umbrella/issues/256) replace enum w/ type alias ([88edbe1](https://github.com/thi-ng/umbrella/commit/88edbe10ffe9ceb9f5e8494c9a60b8067a7d57d1))
147
+ ### [0.1.16](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.1.16) (2019-07-07)
94
148
 
95
- ### BREAKING CHANGES
149
+ #### ♻️ Refactoring
96
150
 
97
- - **adjacency:** replace DegreeType w/ type alias
151
+ - TS strictNullChecks ([b628e61](https://github.com/thi-ng/umbrella/commit/b628e61))
98
152
 
99
- ## [0.1.7](https://github.com/thi-ng/umbrella/compare/@thi.ng/adjacency@0.1.6...@thi.ng/adjacency@0.1.7) (2019-03-18)
153
+ ### [0.1.7](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.1.7) (2019-03-18)
100
154
 
101
- ### Performance Improvements
155
+ #### ⏱ Performance improvements
102
156
 
103
- - **adjacency:** update subsets() to use canonical() ([0918c5b](https://github.com/thi-ng/umbrella/commit/0918c5b))
157
+ - update subsets() to use canonical() ([0918c5b](https://github.com/thi-ng/umbrella/commit/0918c5b))
104
158
 
105
- # 0.1.0 (2019-02-17)
159
+ ## [0.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/adjacency@0.1.0) (2019-02-17)
106
160
 
107
- ### Features
161
+ #### 🚀 Features
108
162
 
109
- - **adjacency:** add bitmatrix edge counting, add/fix toDot() impls, add tests ([dae97ff](https://github.com/thi-ng/umbrella/commit/dae97ff))
110
- - **adjacency:** merge w/ unionfind pkg, add BFS, DFS, MST, DisjointSet ([2339b43](https://github.com/thi-ng/umbrella/commit/2339b43))
111
- - **adjacency:** re-import refactored adj matrices as new package ([501ea5e](https://github.com/thi-ng/umbrella/commit/501ea5e))
163
+ - merge w/ unionfind pkg, add BFS, DFS, MST, DisjointSet ([2339b43](https://github.com/thi-ng/umbrella/commit/2339b43))
164
+ - add bitmatrix edge counting, add/fix toDot() impls, add tests ([dae97ff](https://github.com/thi-ng/umbrella/commit/dae97ff))
165
+ - re-import refactored adj matrices as new package ([501ea5e](https://github.com/thi-ng/umbrella/commit/501ea5e))
package/package.json CHANGED
@@ -1,118 +1,123 @@
1
1
  {
2
- "name": "@thi.ng/adjacency",
3
- "version": "2.0.10",
4
- "description": "Sparse & bitwise adjacency matrices and related functions for directed & undirected graphs",
5
- "type": "module",
6
- "module": "./index.js",
7
- "typings": "./index.d.ts",
8
- "sideEffects": false,
9
- "repository": {
10
- "type": "git",
11
- "url": "https://github.com/thi-ng/umbrella.git"
2
+ "name": "@thi.ng/adjacency",
3
+ "version": "2.1.3",
4
+ "description": "Sparse & bitwise adjacency matrices and related functions for directed & undirected graphs",
5
+ "type": "module",
6
+ "module": "./index.js",
7
+ "typings": "./index.d.ts",
8
+ "sideEffects": false,
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/thi-ng/umbrella.git"
12
+ },
13
+ "homepage": "https://github.com/thi-ng/umbrella/tree/develop/packages/adjacency#readme",
14
+ "funding": [
15
+ {
16
+ "type": "github",
17
+ "url": "https://github.com/sponsors/postspectacular"
12
18
  },
13
- "homepage": "https://github.com/thi-ng/umbrella/tree/develop/packages/adjacency#readme",
14
- "funding": [
15
- {
16
- "type": "github",
17
- "url": "https://github.com/sponsors/postspectacular"
18
- },
19
- {
20
- "type": "patreon",
21
- "url": "https://patreon.com/thing_umbrella"
22
- }
23
- ],
24
- "author": "Karsten Schmidt <k+npm@thi.ng>",
25
- "license": "Apache-2.0",
26
- "scripts": {
27
- "build": "yarn clean && tsc --declaration",
28
- "clean": "rimraf *.js *.d.ts *.map doc",
29
- "doc": "typedoc --excludePrivate --excludeInternal --out doc src/index.ts",
30
- "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose",
31
- "doc:readme": "yarn doc:stats && ../../scripts/node-esm ../../tools/src/readme.ts",
32
- "doc:stats": "../../scripts/node-esm ../../tools/src/module-stats.ts",
33
- "pub": "yarn build && yarn publish --access public",
34
- "test": "testament test"
19
+ {
20
+ "type": "patreon",
21
+ "url": "https://patreon.com/thing_umbrella"
22
+ }
23
+ ],
24
+ "author": "Karsten Schmidt <k+npm@thi.ng>",
25
+ "license": "Apache-2.0",
26
+ "scripts": {
27
+ "build": "yarn clean && tsc --declaration",
28
+ "clean": "rimraf '*.js' '*.d.ts' '*.map' doc",
29
+ "doc": "typedoc --excludePrivate --excludeInternal --out doc src/index.ts",
30
+ "doc:ae": "mkdir -p .ae/doc .ae/temp && api-extractor run --local --verbose",
31
+ "doc:readme": "yarn doc:stats && tools:readme",
32
+ "doc:stats": "tools:module-stats",
33
+ "pub": "yarn npm publish --access public",
34
+ "test": "testament test"
35
+ },
36
+ "dependencies": {
37
+ "@thi.ng/api": "^8.3.2",
38
+ "@thi.ng/arrays": "^2.1.2",
39
+ "@thi.ng/bitfield": "^2.1.3",
40
+ "@thi.ng/dcons": "^3.1.2",
41
+ "@thi.ng/errors": "^2.1.2",
42
+ "@thi.ng/sparse": "^0.3.2"
43
+ },
44
+ "devDependencies": {
45
+ "@microsoft/api-extractor": "^7.18.19",
46
+ "@thi.ng/testament": "^0.2.2",
47
+ "@thi.ng/vectors": "^7.4.1",
48
+ "rimraf": "^3.0.2",
49
+ "tools": "^0.0.1",
50
+ "typedoc": "^0.22.9",
51
+ "typescript": "^4.5.2"
52
+ },
53
+ "keywords": [
54
+ "adjacency",
55
+ "binary",
56
+ "bitwise",
57
+ "datastructure",
58
+ "degree",
59
+ "directed",
60
+ "disjointset",
61
+ "graph",
62
+ "laplacian",
63
+ "list",
64
+ "matrix",
65
+ "neighbors",
66
+ "path",
67
+ "search",
68
+ "span",
69
+ "sparse",
70
+ "tree",
71
+ "typescript",
72
+ "undirected",
73
+ "unionfind",
74
+ "valence",
75
+ "vertex"
76
+ ],
77
+ "publishConfig": {
78
+ "access": "public"
79
+ },
80
+ "engines": {
81
+ "node": ">=12.7"
82
+ },
83
+ "files": [
84
+ "*.js",
85
+ "*.d.ts"
86
+ ],
87
+ "exports": {
88
+ ".": {
89
+ "import": "./index.js"
35
90
  },
36
- "dependencies": {
37
- "@thi.ng/api": "^8.2.0",
38
- "@thi.ng/arrays": "^2.0.8",
39
- "@thi.ng/bitfield": "^2.0.8",
40
- "@thi.ng/dcons": "^3.0.9",
41
- "@thi.ng/errors": "^2.0.6",
42
- "@thi.ng/sparse": "^0.2.8"
91
+ "./api": {
92
+ "import": "./api.js"
43
93
  },
44
- "devDependencies": {
45
- "@thi.ng/testament": "^0.1.6",
46
- "@thi.ng/vectors": "^7.1.1"
94
+ "./bfs": {
95
+ "import": "./bfs.js"
47
96
  },
48
- "keywords": [
49
- "adjacency",
50
- "binary",
51
- "bitwise",
52
- "datastructure",
53
- "degree",
54
- "directed",
55
- "disjointset",
56
- "graph",
57
- "laplacian",
58
- "list",
59
- "matrix",
60
- "neighbors",
61
- "path",
62
- "search",
63
- "span",
64
- "sparse",
65
- "tree",
66
- "typescript",
67
- "undirected",
68
- "unionfind",
69
- "valence",
70
- "vertex"
71
- ],
72
- "publishConfig": {
73
- "access": "public"
97
+ "./binary": {
98
+ "import": "./binary.js"
74
99
  },
75
- "engines": {
76
- "node": ">=12.7"
100
+ "./dfs": {
101
+ "import": "./dfs.js"
77
102
  },
78
- "files": [
79
- "*.js",
80
- "*.d.ts"
81
- ],
82
- "exports": {
83
- ".": {
84
- "import": "./index.js"
85
- },
86
- "./api": {
87
- "import": "./api.js"
88
- },
89
- "./bfs": {
90
- "import": "./bfs.js"
91
- },
92
- "./binary": {
93
- "import": "./binary.js"
94
- },
95
- "./dfs": {
96
- "import": "./dfs.js"
97
- },
98
- "./disjoint-set": {
99
- "import": "./disjoint-set.js"
100
- },
101
- "./list": {
102
- "import": "./list.js"
103
- },
104
- "./mst": {
105
- "import": "./mst.js"
106
- },
107
- "./sparse": {
108
- "import": "./sparse.js"
109
- }
103
+ "./disjoint-set": {
104
+ "import": "./disjoint-set.js"
110
105
  },
111
- "thi.ng": {
112
- "related": [
113
- "dgraph"
114
- ],
115
- "year": 2018
106
+ "./list": {
107
+ "import": "./list.js"
116
108
  },
117
- "gitHead": "5fe52419af63984ebe53032201b2a6174b9cb159"
118
- }
109
+ "./mst": {
110
+ "import": "./mst.js"
111
+ },
112
+ "./sparse": {
113
+ "import": "./sparse.js"
114
+ }
115
+ },
116
+ "thi.ng": {
117
+ "related": [
118
+ "dgraph"
119
+ ],
120
+ "year": 2018
121
+ },
122
+ "gitHead": "32cf1a96854f9bb97aca65ffa05ca862ea377059\n"
123
+ }