Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reworking artifacts #47

Merged
merged 819 commits into from
Nov 1, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
819 commits
Select commit Hold shift + click to select a range
d79a093
'update feature-importer to version 1.29.4'
vid Aug 23, 2023
37a68ac
'update domain-webpage to version 1.29.4'
vid Aug 23, 2023
c59d154
'update storage-mem to version 1.29.4'
vid Aug 23, 2023
c15afb2
'update out-review to version 1.29.4'
vid Aug 23, 2023
ac10460
'update domain-storage to version 1.29.4'
vid Aug 23, 2023
3fd7533
'update storage-fs to version 1.29.4'
vid Aug 23, 2023
e8a585e
'update out-xunit to version 1.29.4'
vid Aug 23, 2023
9b092b8
'update browser-extension to version 1.29.4'
vid Aug 23, 2023
19b9a85
'update logger-websockets to version 1.29.4'
vid Aug 23, 2023
ca25969
'update feature-recorder to version 1.29.4'
vid Aug 23, 2023
d7ea23e
avoid mains that have asterisks
vid Aug 24, 2023
1b2d55f
update
vid Aug 24, 2023
3b3fc87
pass all the failures
vid Sep 11, 2023
76ff57a
'update utils to version 1.29.5'
vid Sep 12, 2023
c66c8ff
'update core to version 1.29.5'
vid Sep 12, 2023
17d2468
'update web-server-express to version 1.29.5'
vid Sep 12, 2023
bb9a1c9
'update cli to version 1.29.5'
vid Sep 12, 2023
6ffa2a4
'update context to version 1.29.5'
vid Sep 12, 2023
665cc32
'update web-http to version 1.29.5'
vid Sep 12, 2023
2d4a667
'update parse-md to version 1.29.5'
vid Sep 12, 2023
b3863dc
'update web-playwright to version 1.29.5'
vid Sep 12, 2023
e6b3a70
'update feature-importer to version 1.29.5'
vid Sep 12, 2023
ca5cc98
'update domain-webpage to version 1.29.5'
vid Sep 12, 2023
94a4859
'update storage-mem to version 1.29.5'
vid Sep 12, 2023
9ce340b
'update out-review to version 1.29.5'
vid Sep 12, 2023
4a87041
'update domain-storage to version 1.29.5'
vid Sep 12, 2023
70d838c
'update storage-fs to version 1.29.5'
vid Sep 12, 2023
0647660
'update out-xunit to version 1.29.5'
vid Sep 12, 2023
f949184
'update browser-extension to version 1.29.5'
vid Sep 12, 2023
aa858d8
'update logger-websockets to version 1.29.5'
vid Sep 12, 2023
30e88c9
'update feature-recorder to version 1.29.5'
vid Sep 12, 2023
c1eb295
add maybe option
vid Sep 12, 2023
dc057cb
'update utils to version 1.30.0'
vid Sep 13, 2023
8cc04ee
'update core to version 1.30.0'
vid Sep 13, 2023
398c425
'update web-server-express to version 1.30.0'
vid Sep 13, 2023
45754e7
'update cli to version 1.30.0'
vid Sep 13, 2023
0895f4e
'update context to version 1.30.0'
vid Sep 13, 2023
93b940a
'update web-http to version 1.30.0'
vid Sep 13, 2023
09a8120
'update parse-md to version 1.30.0'
vid Sep 13, 2023
f82685b
'update web-playwright to version 1.30.0'
vid Sep 13, 2023
a260158
'update feature-importer to version 1.30.0'
vid Sep 13, 2023
9ae79d4
'update domain-webpage to version 1.30.0'
vid Sep 13, 2023
1050c10
'update storage-mem to version 1.30.0'
vid Sep 13, 2023
7b0f85d
'update out-review to version 1.30.0'
vid Sep 13, 2023
9384561
'update domain-storage to version 1.30.0'
vid Sep 13, 2023
fccdf8c
'update storage-fs to version 1.30.0'
vid Sep 13, 2023
2f12c4a
'update out-xunit to version 1.30.0'
vid Sep 13, 2023
325cb3a
'update browser-extension to version 1.30.0'
vid Sep 13, 2023
f9bec6f
'update logger-websockets to version 1.30.0'
vid Sep 13, 2023
4c466ec
'update feature-recorder to version 1.30.0'
vid Sep 13, 2023
e24b1bf
'update utils to version 1.30.1'
vid Sep 13, 2023
6789281
'update core to version 1.30.1'
vid Sep 13, 2023
0121a6d
'update web-server-express to version 1.30.1'
vid Sep 13, 2023
9119c39
'update cli to version 1.30.1'
vid Sep 13, 2023
9ad4cb0
'update context to version 1.30.1'
vid Sep 13, 2023
0e367c5
'update web-http to version 1.30.1'
vid Sep 13, 2023
4745786
'update parse-md to version 1.30.1'
vid Sep 13, 2023
02f044d
'update web-playwright to version 1.30.1'
vid Sep 13, 2023
2b17fd6
'update feature-importer to version 1.30.1'
vid Sep 13, 2023
0ae8dac
'update domain-webpage to version 1.30.1'
vid Sep 13, 2023
bc669ea
'update storage-mem to version 1.30.1'
vid Sep 13, 2023
65318e8
'update out-review to version 1.30.1'
vid Sep 13, 2023
9ea507d
'update domain-storage to version 1.30.1'
vid Sep 13, 2023
ecb8c1c
'update storage-fs to version 1.30.1'
vid Sep 13, 2023
b847d53
'update out-xunit to version 1.30.1'
vid Sep 13, 2023
d917f9d
'update browser-extension to version 1.30.1'
vid Sep 13, 2023
223d391
'update logger-websockets to version 1.30.1'
vid Sep 13, 2023
95ea9ac
'update feature-recorder to version 1.30.1'
vid Sep 13, 2023
882eb59
'update utils to version 1.30.2'
vid Sep 13, 2023
09633a2
'update core to version 1.30.2'
vid Sep 13, 2023
a6b01d8
'update web-server-express to version 1.30.2'
vid Sep 13, 2023
109b746
'update cli to version 1.30.2'
vid Sep 13, 2023
8cd012e
'update context to version 1.30.2'
vid Sep 13, 2023
47ab1ed
'update web-http to version 1.30.2'
vid Sep 13, 2023
f657d5e
'update parse-md to version 1.30.2'
vid Sep 13, 2023
83e0fe6
'update web-playwright to version 1.30.2'
vid Sep 13, 2023
e0e893f
'update feature-importer to version 1.30.2'
vid Sep 13, 2023
2b9dddc
'update domain-webpage to version 1.30.2'
vid Sep 13, 2023
1aa2e4a
'update storage-mem to version 1.30.2'
vid Sep 13, 2023
29337c4
'update out-review to version 1.30.2'
vid Sep 13, 2023
f69b8ea
'update domain-storage to version 1.30.2'
vid Sep 13, 2023
8b9585c
'update storage-fs to version 1.30.2'
vid Sep 13, 2023
c997993
'update out-xunit to version 1.30.2'
vid Sep 13, 2023
a7365c3
'update browser-extension to version 1.30.2'
vid Sep 13, 2023
176c694
'update logger-websockets to version 1.30.2'
vid Sep 13, 2023
f83f49b
'update feature-recorder to version 1.30.2'
vid Sep 13, 2023
9a35c6e
'update utils to version 1.30.3'
vid Sep 13, 2023
7ffd0b0
'update core to version 1.30.3'
vid Sep 13, 2023
ef131a5
'update web-server-express to version 1.30.3'
vid Sep 13, 2023
86dada3
'update cli to version 1.30.3'
vid Sep 13, 2023
9ce5b74
'update context to version 1.30.3'
vid Sep 13, 2023
f3e18ce
'update web-http to version 1.30.3'
vid Sep 13, 2023
7a12286
'update parse-md to version 1.30.3'
vid Sep 13, 2023
490f636
'update web-playwright to version 1.30.3'
vid Sep 13, 2023
9696f31
'update feature-importer to version 1.30.3'
vid Sep 13, 2023
ae30ba3
'update domain-webpage to version 1.30.3'
vid Sep 13, 2023
74f24f3
'update storage-mem to version 1.30.3'
vid Sep 13, 2023
e734f01
'update out-review to version 1.30.3'
vid Sep 13, 2023
17de258
'update domain-storage to version 1.30.3'
vid Sep 13, 2023
5c4fcfc
'update storage-fs to version 1.30.3'
vid Sep 13, 2023
cf365e0
'update out-xunit to version 1.30.3'
vid Sep 13, 2023
81b3403
'update browser-extension to version 1.30.3'
vid Sep 13, 2023
d1e1444
'update logger-websockets to version 1.30.3'
vid Sep 13, 2023
58c5ce8
'update feature-recorder to version 1.30.3'
vid Sep 13, 2023
8196588
'update utils to version 1.30.4'
vid Sep 13, 2023
28a3c60
'update core to version 1.30.4'
vid Sep 13, 2023
9fd8c05
'update web-server-express to version 1.30.4'
vid Sep 13, 2023
ccc31c3
'update cli to version 1.30.4'
vid Sep 13, 2023
63db174
'update context to version 1.30.4'
vid Sep 13, 2023
4ab4268
'update web-http to version 1.30.4'
vid Sep 13, 2023
86d8fa0
'update parse-md to version 1.30.4'
vid Sep 13, 2023
d62afda
'update web-playwright to version 1.30.4'
vid Sep 13, 2023
01cfa38
'update feature-importer to version 1.30.4'
vid Sep 13, 2023
2e31835
'update domain-webpage to version 1.30.4'
vid Sep 13, 2023
ca8f3f9
'update storage-mem to version 1.30.4'
vid Sep 13, 2023
bda2dff
'update out-review to version 1.30.4'
vid Sep 13, 2023
ae43db0
'update domain-storage to version 1.30.4'
vid Sep 13, 2023
9a6c1ce
'update storage-fs to version 1.30.4'
vid Sep 13, 2023
ce406bc
'update out-xunit to version 1.30.4'
vid Sep 13, 2023
89498a8
'update browser-extension to version 1.30.4'
vid Sep 13, 2023
edfdfbf
'update logger-websockets to version 1.30.4'
vid Sep 13, 2023
c0ca025
'update feature-recorder to version 1.30.4'
vid Sep 13, 2023
17c6309
'update utils to version 1.30.5'
vid Sep 13, 2023
c11bbba
'update core to version 1.30.5'
vid Sep 13, 2023
cceab49
'update web-server-express to version 1.30.5'
vid Sep 13, 2023
8a4d38f
'update cli to version 1.30.5'
vid Sep 13, 2023
4e42bf5
'update context to version 1.30.5'
vid Sep 13, 2023
d039917
'update web-http to version 1.30.5'
vid Sep 13, 2023
2df1e1d
'update parse-md to version 1.30.5'
vid Sep 13, 2023
3818fda
'update web-playwright to version 1.30.5'
vid Sep 13, 2023
28345d0
'update feature-importer to version 1.30.5'
vid Sep 13, 2023
6821ce5
'update domain-webpage to version 1.30.5'
vid Sep 13, 2023
27e2e33
'update storage-mem to version 1.30.5'
vid Sep 13, 2023
c747b12
'update out-review to version 1.30.5'
vid Sep 13, 2023
06a47bb
'update domain-storage to version 1.30.5'
vid Sep 13, 2023
7755c45
'update storage-fs to version 1.30.5'
vid Sep 13, 2023
cd047e2
'update out-xunit to version 1.30.5'
vid Sep 13, 2023
30a19d0
'update browser-extension to version 1.30.5'
vid Sep 13, 2023
f2f8241
'update logger-websockets to version 1.30.5'
vid Sep 13, 2023
592e28b
'update feature-recorder to version 1.30.5'
vid Sep 13, 2023
a85b2d7
'update utils to version 1.30.6'
vid Sep 13, 2023
ff98931
'update core to version 1.30.6'
vid Sep 13, 2023
88b8e32
'update web-server-express to version 1.30.6'
vid Sep 13, 2023
7921d0c
'update cli to version 1.30.6'
vid Sep 13, 2023
da95a84
'update context to version 1.30.6'
vid Sep 13, 2023
29e564f
'update web-http to version 1.30.6'
vid Sep 13, 2023
be15a38
'update parse-md to version 1.30.6'
vid Sep 13, 2023
77468f2
'update web-playwright to version 1.30.6'
vid Sep 13, 2023
a4ec3dd
'update feature-importer to version 1.30.6'
vid Sep 13, 2023
13b7789
'update domain-webpage to version 1.30.6'
vid Sep 13, 2023
7071f49
'update storage-mem to version 1.30.6'
vid Sep 13, 2023
2d42f63
'update out-review to version 1.30.6'
vid Sep 13, 2023
32300bd
'update domain-storage to version 1.30.6'
vid Sep 13, 2023
587abf6
'update storage-fs to version 1.30.6'
vid Sep 13, 2023
eaeface
'update out-xunit to version 1.30.6'
vid Sep 13, 2023
54c73ce
'update browser-extension to version 1.30.6'
vid Sep 13, 2023
4f3e900
'update logger-websockets to version 1.30.6'
vid Sep 13, 2023
2bcfa69
'update feature-recorder to version 1.30.6'
vid Sep 13, 2023
28bfe10
'update utils to version 1.30.7'
vid Sep 13, 2023
c654fea
'update core to version 1.30.7'
vid Sep 13, 2023
6822883
'update web-server-express to version 1.30.7'
vid Sep 13, 2023
e9ce2c6
'update cli to version 1.30.7'
vid Sep 13, 2023
cea5648
'update context to version 1.30.7'
vid Sep 13, 2023
225ca7d
'update web-http to version 1.30.7'
vid Sep 13, 2023
7d7d689
'update parse-md to version 1.30.7'
vid Sep 13, 2023
cead8e2
'update web-playwright to version 1.30.7'
vid Sep 13, 2023
ecf2b68
'update feature-importer to version 1.30.7'
vid Sep 13, 2023
4b65059
'update domain-webpage to version 1.30.7'
vid Sep 13, 2023
df5d900
'update storage-mem to version 1.30.7'
vid Sep 13, 2023
b3d0026
'update out-review to version 1.30.7'
vid Sep 13, 2023
f61ac17
'update domain-storage to version 1.30.7'
vid Sep 13, 2023
0684362
'update storage-fs to version 1.30.7'
vid Sep 13, 2023
cf5ec36
'update out-xunit to version 1.30.7'
vid Sep 13, 2023
ac76301
'update browser-extension to version 1.30.7'
vid Sep 13, 2023
2f5200e
'update logger-websockets to version 1.30.7'
vid Sep 13, 2023
4ade647
'update feature-recorder to version 1.30.7'
vid Sep 13, 2023
6a6fc28
fix typo
vid Sep 18, 2023
8309567
update module type
vid Sep 18, 2023
c7b6345
check for publish flag
vid Sep 18, 2023
8d1dba1
reworking artifact locations (wip)
vid Sep 18, 2023
5f48429
use async for setWorld
vid Sep 18, 2023
561e8bd
update packages
vid Sep 18, 2023
f950af6
upgrade playwright
vid Sep 20, 2023
77536e5
improve final results
vid Sep 21, 2023
3a8bd0e
change report format, cleanup
vid Sep 21, 2023
b9dd88f
improve error handling for reviews
vid Sep 21, 2023
b5b3fe3
redoing out-reviews (wip)
vid Sep 29, 2023
ba36da1
update jest to use ts-node
vid Oct 4, 2023
ebd58e1
add npm linking to external projects
vid Oct 5, 2023
c14cf16
re-working reviews (wip)
vid Oct 5, 2023
b087c76
add clean-build-watch
vid Oct 6, 2023
56d8a13
adding trace history
vid Oct 6, 2023
7531837
switching to new out-reviews, rework reviews as spa
vid Oct 11, 2023
95ca423
dashboard w rollup (wip)
vid Oct 12, 2023
3d698c5
rework router, report artifacts
vid Oct 17, 2023
037095f
improve titles, counts
vid Oct 18, 2023
ee3652c
remove obsolete
vid Oct 18, 2023
7f40e69
reset log after write
vid Oct 18, 2023
6796504
adding artifacts (wip)
vid Oct 18, 2023
565f800
fix paths
vid Oct 18, 2023
ea2cb6a
copy artifacts (wip)
vid Oct 19, 2023
45ead1e
display artifacts
vid Oct 19, 2023
39a022b
add summary type for artifacts
vid Oct 20, 2023
0e80c38
published reviews
vid Oct 20, 2023
b246c3b
use updated interface
vid Oct 20, 2023
d167f55
add TPathed for writing files, new dashboard with artifacts
vid Oct 23, 2023
41d995c
don't try to escape iframe
vid Oct 24, 2023
9391a89
add rollup-plugin-lit-css and reviews.css
vid Oct 25, 2023
e75df23
organize logger types
vid Oct 25, 2023
fb18742
add artifactfailure to messagecontext
vid Oct 25, 2023
e9210dc
display json on select
vid Oct 25, 2023
638bbf4
'update utils to version 1.31.0'
vid Oct 25, 2023
ff28b1c
'update core to version 1.31.0'
vid Oct 25, 2023
b603f7b
'update web-server-express to version 1.31.0'
vid Oct 25, 2023
ad2057c
'update cli to version 1.31.0'
vid Oct 25, 2023
d8da38d
'update context to version 1.31.0'
vid Oct 25, 2023
178eeea
'update web-http to version 1.31.0'
vid Oct 25, 2023
c3b9e72
'update parse-md to version 1.31.0'
vid Oct 25, 2023
cd9b75c
'update web-playwright to version 1.31.0'
vid Oct 25, 2023
1e1a40d
'update feature-importer to version 1.31.0'
vid Oct 25, 2023
6f7a66d
'update domain-webpage to version 1.31.0'
vid Oct 25, 2023
6510c74
'update storage-mem to version 1.31.0'
vid Oct 25, 2023
10b43c2
'update out-review to version 1.31.0'
vid Oct 25, 2023
732217a
'update domain-storage to version 1.31.0'
vid Oct 25, 2023
87c4401
'update storage-fs to version 1.31.0'
vid Oct 25, 2023
e8eca20
'update out-xunit to version 1.31.0'
vid Oct 25, 2023
7583dab
'update browser-extension to version 1.31.0'
vid Oct 25, 2023
ee08a69
'update logger-websockets to version 1.31.0'
vid Oct 25, 2023
0358879
'update feature-recorder to version 1.31.0'
vid Oct 25, 2023
5046227
adding traces - debugging endFeature
vid Oct 25, 2023
2f1df40
add $schemas, improve execution flow
vid Oct 25, 2023
2f0a382
add schema versions, include feauture names & description
vid Oct 26, 2023
20df355
'update utils to version 1.31.1'
vid Oct 26, 2023
e830bbe
'update core to version 1.31.1'
vid Oct 26, 2023
f8fa773
'update web-server-express to version 1.31.1'
vid Oct 26, 2023
a54a232
'update cli to version 1.31.1'
vid Oct 26, 2023
20e6333
'update context to version 1.31.1'
vid Oct 26, 2023
4246c9a
'update web-http to version 1.31.1'
vid Oct 26, 2023
7039fe5
'update parse-md to version 1.31.1'
vid Oct 26, 2023
edd8e36
'update web-playwright to version 1.31.1'
vid Oct 26, 2023
455de89
'update feature-importer to version 1.31.1'
vid Oct 26, 2023
7d699ab
'update domain-webpage to version 1.31.1'
vid Oct 26, 2023
a69a04c
'update storage-mem to version 1.31.1'
vid Oct 26, 2023
d17d146
'update out-review to version 1.31.1'
vid Oct 26, 2023
f173453
'update domain-storage to version 1.31.1'
vid Oct 26, 2023
f76803f
'update storage-fs to version 1.31.1'
vid Oct 26, 2023
d2bcabe
'update out-xunit to version 1.31.1'
vid Oct 26, 2023
d3690e5
'update browser-extension to version 1.31.1'
vid Oct 26, 2023
e83cd79
'update logger-websockets to version 1.31.1'
vid Oct 26, 2023
e3adbe8
'update feature-recorder to version 1.31.1'
vid Oct 26, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
331 changes: 331 additions & 0 deletions .dependency-cruiser.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,331 @@
/* eslint-disable strict */
/** @type {import('dependency-cruiser').IConfiguration} */
module.exports = {
forbidden: [
/* rules from the 'recommended' preset: */
// {
// name: 'no-circular',
// severity: 'warn',
// comment:
// 'This dependency is part of a circular relationship. You might want to revise ' +
// 'your solution (i.e. use dependency inversion, make sure the modules have a single responsibility) ',
// from: {},
// to: {
// circular: true,
// },
// },
// {
// name: 'no-orphans',
// severity: 'info',
// comment:
// "This is an orphan module - it's likely not used (anymore?). Either use it or remove it. If it's " +
// "logical this module is an orphan (i.e. it's a config file), add an exception for it in your " +
// 'dependency-cruiser configuration.',
// from: {
// orphan: true,
// pathNot: '\\.d\\.ts$',
// },
// to: {},
// },
{
name: "no-deprecated-core",
comment:
"A module depends on a node core module that has been deprecated. Find an alternative - these are " +
"bound to exist - node doesn't deprecate lightly.",
severity: "warn",
from: {},
to: {
dependencyTypes: ["core"],
path: [
"^(v8/tools/codemap)$",
"^(v8/tools/consarray)$",
"^(v8/tools/csvparser)$",
"^(v8/tools/logreader)$",
"^(v8/tools/profile_view)$",
"^(v8/tools/profile)$",
"^(v8/tools/SourceMap)$",
"^(v8/tools/splaytree)$",
"^(v8/tools/tickprocessor-driver)$",
"^(v8/tools/tickprocessor)$",
"^(node-inspect/lib/_inspect)$",
"^(node-inspect/lib/internal/inspect_client)$",
"^(node-inspect/lib/internal/inspect_repl)$",
"^(async_hooks)$",
"^(assert)$",
"^(punycode)$",
"^(domain)$",
"^(constants)$",
"^(sys)$",
"^(_linklist)$",
"^(_stream_wrap)$",
],
},
},
{
name: "not-to-deprecated",
comment:
"This module uses a (version of an) npm module that has been deprecated. Either upgrade to a later " +
"version of that module, or find an alternative. Deprecated modules are a security risk.",
severity: "warn",
from: {},
to: {
dependencyTypes: ["deprecated"],
},
},
{
name: "no-non-package-json",
severity: "error",
comment:
"This module depends on an npm package that isn't in the 'dependencies' section of your package.json. " +
"That's problematic as the package either (1) won't be available on live (2 - worse) will be " +
"available on live with an non-guaranteed version. Fix it by adding the package to the dependencies " +
"in your package.json.",
from: {},
to: {
dependencyTypes: ["npm-no-pkg", "npm-unknown"],
pathNot: "modules/.+",
},
},
{
name: "not-to-unresolvable",
comment:
"This module depends on a module that cannot be found ('resolved to disk'). If it's an npm " +
"module: add it to your package.json. In all other cases you likely already know what to do.",
severity: "error",
from: {},
to: {
couldNotResolve: true,
},
},

/* rules you might want to tweak for your specific situation: */
{
name: "not-to-test",
comment:
"This module depends on code within a folder that should only contain tests. As tests don't " +
"implement functionality this is odd. Either you're writing a test outside the test folder " +
"or there's something in the test folder that isn't a test.",
severity: "error",
from: {
pathNot: "^(test|spec)",
},
to: {
path: "^(test|spec)",
},
},
{
name: "not-to-spec",
comment:
"This module depends on a spec (test) file. The sole responsibility of a spec file is to test code. " +
"If there's something in a spec that's of use to other modules, it doesn't have that single " +
"responsibility anymore. Factor it out into (e.g.) a separate utility/ helper or a mock.",
severity: "error",
from: {},
to: {
path: "\\.spec\\.(js|ts|ls|coffee|litcoffee|coffee\\.md)$",
},
},
{
name: "not-to-dev-dep",
severity: "error",
comment:
"This module depends on an npm package from the 'devDependencies' section of your " +
"package.json. It looks like something that ships to production, though. To prevent problems " +
"with npm packages that aren't there on production declare it (only!) in the 'dependencies'" +
"section of your package.json. If this module is development only - add it to the " +
"from.pathNot re of the not-to-dev-dep rule in the dependency-cruiser configuration",
from: {
path: "^(src|app|lib)",
pathNot: "\\.spec\\.(js|ts|ls|coffee|litcoffee|coffee\\.md)$",
},
to: {
dependencyTypes: ["npm-dev"],
},
},
{
name: "optional-deps-used",
severity: "info",
comment:
"This module depends on an npm package that is declared as an optional dependency " +
"in your package.json. As this makes sense in limited situations only, it's flagged here. " +
"If you're using an optional dependency here by design - add an exception to your" +
"depdency-cruiser configuration.",
from: {},
to: {
dependencyTypes: ["npm-optional"],
},
},
],
options: {
/* conditions specifying which files not to follow further when encountered:
- path: a regular expression to match
- dependencyTypes: see https://github.com/sverweij/dependency-cruiser/blob/main/doc/rules-reference.md#dependencytypes-and-dependencytypesnot
for a complete list
*/
doNotFollow: {
// path: 'node_modules',
dependencyTypes: [
"npm",
"npm-dev",
"npm-optional",
"npm-peer",
"npm-bundled",
"npm-no-pkg",
],
},

/* conditions specifying which dependencies to exclude
- path: a regular expression to match
- dynamic: a boolean indicating whether to ignore dynamic (true) or static (false) dependencies.
leave out if you want to exclude neither (recommended!)
*/
// , exclude : {
// path: ''
// , dynamic: true
// }

/* pattern specifying which files to include (regular expression)
dependency-cruiser will skip everything not matching this pattern
*/
includeOnly: "^modules",

/* list of module systems to cruise */
// , moduleSystems: ['amd', 'cjs', 'es6', 'tsd']

/* prefix for links in html and svg output (e.g. https://github.com/you/yourrepo/blob/develop/) */
prefix: "https://github.com/facebook/react/blob/master/",

/* false (the default): ignore dependencies that only exist before typescript-to-javascript compilation
true: also detect dependencies that only exist before typescript-to-javascript compilation
"specify": for each dependency identify whether it only exists before compilation or also after
*/
// , tsPreCompilationDeps: false

/* if true combines the package.jsons found from the module up to the base
folder the cruise is initiated from. Useful for how (some) mono-repos
manage dependencies & dependency definitions.
*/
combinedDependencies: true,

/* if true leave symlinks untouched, otherwise use the realpath */
// , preserveSymlinks: false

/* Typescript project file ('tsconfig.json') to use for
(1) compilation and
(2) resolution (e.g. with the paths property)

The (optional) fileName attribute specifies which file to take (relative to
dependency-cruiser's current working directory). When not provided
defaults to './tsconfig.json'.
*/
// , tsConfig: {
// fileName: './tsconfig.json'
// }

/* Webpack configuration to use to get resolve options from.

The (optional) fileName attribute specifies which file to take (relative
to dependency-cruiser's current working directory. When not provided defaults
to './webpack.conf.js'.

The (optional) `env` and `arguments` attributes contain the parameters to be passed if
your webpack config is a function and takes them (see webpack documentation
for details)
*/
// , webpackConfig: {
// fileName: './webpack.config.js'
// , env: {}
// , arguments: {}
// }

/* How to resolve external modules - use "yarn-pnp" if you're using yarn's Plug'n'Play.
otherwise leave it out (or set to the default, which is 'node_modules')
*/
// , externalModuleResolutionStrategy: 'node_modules'
/* List of strings you have in use in addition to cjs/ es6 requires
& imports to declare module dependencies. Use this e.g. if you've
redeclared require, use a require-wrapper or use window.require as
a hack.
*/
// , exoticRequireStrings: []
// theoretically there's more extensions than just .js (a quick scan learns
// the packages folder contains .ts, .d.ts, .ls(!) and .coffee). However,
// likely they either just exist in node_modules, or are of no consequence
// as when we provide these extensions as well the number of files & dependencies
// scanned does not go up.
enhancedResolveOptions: {
extensions: [".js"],
},
progress: { type: "performance-log" },
reporterOptions: {
dot: {
/* pattern of modules that can be consolidated in the detailed
graphical dependency graph. The default pattern in this configuration
collapses everything in node_modules to one folder deep so you see
the external modules, but not the innards your app depends upon.
*/
collapsePattern: "node_modules/[^/]+",
},
archi: {
/* pattern of modules that can be consolidated in the high level
graphical dependency graph. If you use the high level graphical
dependency graph reporter (`archi`) you probably want to tweak
this collapsePattern to your situation.
*/
collapsePattern: "^(node_modules|modules|src|lib|app|test|spec)/[^/]+",

/* Options to tweak the appearance of your graph.See
https://github.com/sverweij/dependency-cruiser/blob/main/doc/options-reference.md#reporteroptions
for details and some examples. If you don't specify a theme
for 'archi' dependency-cruiser will use the one specified in the
dot section (see above), if any, and otherwise use the default one.
*/
theme: {
graph: {
/* use splines: 'ortho' for straight lines. Be aware though
graphviz might take a long time calculating ortho(gonal)
routings.
*/
splines: "ortho",
rankdir: "TD",
},
modules: [
{
criteria: { source: "modules/utils" },
attributes: { fillcolor: "#ffcccc" },
},
{
criteria: { source: "modules/cli$" },
attributes: { fillcolor: "#ccccff" },
},
{ criteria: {}, attributes: { fillcolor: "#ffffcc" } },
],
dependencies: [
{
criteria: { "rules[0].severity": "error" },
attributes: { fontcolor: "red", color: "red" },
},
{
criteria: { "rules[0].severity": "warn" },
attributes: { fontcolor: "orange", color: "orange" },
},
{
criteria: { "rules[0].severity": "info" },
attributes: { fontcolor: "blue", color: "blue" },
},
{
criteria: { resolved: "tools" },
attributes: { color: "#00770077" },
},
{
criteria: {},
attributes: { style: "solid" },
},
],
},
},
},
},
};
// generated: [email protected] on 2020-02-29T13:39:42.828Z

5 changes: 4 additions & 1 deletion .eslintrc.json → .eslintrc.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
{
module.exports = {
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": "latest",
"project": "./modules/tsconfig.settings.json",
"tsconfigRootDir": __dirname,
"sourceType": "module"
},
"plugins": ["@typescript-eslint"],
"extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
"rules": {
"@typescript-eslint/no-unused-vars": "warn",
"@typescript-eslint/no-floating-promises": ["error"],
"prefer-const": "warn"
},
"env": {
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,4 +57,5 @@ use this command to see available options:

* [Feature structure](docs/feature_structure.md)
* [Developing new modules](docs/new_modules.md)
* [Developing Haibun](docs/develop_haibun.md)
* [Developing Haibun](docs/develop_haibun.md)
* [Debugging steppers](docs/stepping.md)
2 changes: 2 additions & 0 deletions docs/develop_haibun.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ Each module can be developed independently using:

`npm test` or `npm run test-watch`

You may need to `export NODE_OPTIONS=--experimental-vm-modules`.

## Developing modules and Haibun core together

To develop your own separate module while developing Haibun modules, use:
Expand Down
2 changes: 1 addition & 1 deletion docs/new_modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ const FilesExist = class FilesExist extends AStepper implements IHasOptions, IRe
};
storage?: AStorage;
async setWorld(world: TWorld, steppers: AStepper[]) {
super.setWorld(world, steppers);
await super.setWorld(world, steppers);
this.storage = findStepperFromOption(steppers, this, this.getWorld().extraOptions, STORAGE);
}
steps = {
Expand Down
17 changes: 17 additions & 0 deletions docs/stepping.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@

## Debugging steppers

A number of features are built in to help debugging steppers, which can be used in combination. For example:

`HAIBUN_TRACE=true HAIBUN_CLI=true HAIBUN_O_WEBPLAYWRIGHT_HEADLESS=false HAIBUN_STAY=failure npm run test`

will create trace files (by default, under 'capture').
`HAIBUN_STAY=failure` will leave haibun and any current steppers running after execution
in a cli,
which can be used to inspect the environment.
A default `haibun` context object is available.

Another technique, when debugging browser selectors,
is to try the selector in the browser console,
using the built-in `$x` xpath evaluator (Chrome browsers).

Loading
Loading