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

build(nx): setup workspace & migrate packages #476

Closed
wants to merge 147 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
147 commits
Select commit Hold shift + click to select a range
b6f7742
build(nx): setup initial workspace & packages
marcus-sa Sep 10, 2023
de4f5a0
chore: cleanup package.json & scripts
marcus-sa Sep 10, 2023
efaf0ca
chore(deps): use pnpm instead of npm
marcus-sa Sep 10, 2023
20b3fc6
build(core-rxjs,event,ui-library,desktop-ui,api-console-gui): migrate…
marcus-sa Sep 10, 2023
8c1e721
chore(deps): add missing node-gyp-build dependency
marcus-sa Sep 11, 2023
1754722
build: improve nx-resolve-packages rollup plugin by marking packages …
marcus-sa Sep 11, 2023
84fbdce
build: remove peer-deps-external rollup plugin
marcus-sa Sep 11, 2023
4039632
build(bson): migrate to nx
marcus-sa Sep 11, 2023
ab0f4e1
build(crypto): migrate to nx
marcus-sa Sep 11, 2023
8f3aca1
build(api-console-api): migrate to nx
marcus-sa Sep 11, 2023
ee386a7
build(api-console-module): migrate to nx
marcus-sa Sep 11, 2023
7197efb
build(app): migrate to nx
marcus-sa Sep 11, 2023
cf60fd7
build(benchmark): move to examples
marcus-sa Sep 11, 2023
92a7843
build(broker): migrate to nx
marcus-sa Sep 11, 2023
88dc09f
build(example-app): move to examples
marcus-sa Sep 11, 2023
d7c5974
build(framework,framework-debug-api): migrate to nx
marcus-sa Sep 11, 2023
1d94198
build(framework-examples): move to examples
marcus-sa Sep 11, 2023
b2d7053
build(framework,framework-integration): move to integration tests to …
marcus-sa Sep 11, 2023
2dd07fd
build(framework-debug-api): migrate to nx
marcus-sa Sep 11, 2023
947f09b
build(fs): migrate to nx
marcus-sa Sep 11, 2023
e96bd41
build(http): migrate to nx
marcus-sa Sep 11, 2023
9bef4ec
build(logger): migrate to nx
marcus-sa Sep 11, 2023
38c817e
build(mongo): migrate to nx
marcus-sa Sep 11, 2023
4d0b1b8
build(mysql): migrate to nx
marcus-sa Sep 11, 2023
3bf0b77
build(orm): migrate to nx
marcus-sa Sep 11, 2023
ad1b4a7
build(orm-browser): migrate to nx
marcus-sa Sep 11, 2023
4994a74
build(orm-browser-example): move to examples
marcus-sa Sep 11, 2023
6ae86c3
build(orm-browser-api): migrate to nx
marcus-sa Sep 11, 2023
07cdd3a
build(orm-browser-module): migrate to nx
marcus-sa Sep 11, 2023
01acfa4
build(orm-integration): migrate to nx
marcus-sa Sep 11, 2023
5276b73
build(postgres): migrate to nx
marcus-sa Sep 11, 2023
027915b
build(rpc): migrate to nx
marcus-sa Sep 11, 2023
4c60474
build(rpc-tcp): migrate to nx
marcus-sa Sep 11, 2023
f6fcec6
chore: remove unused package skeleton
marcus-sa Sep 11, 2023
1e2729e
build(sql): migrate to nx
marcus-sa Sep 11, 2023
66d0578
build(sqlite): migrate to nx
marcus-sa Sep 11, 2023
1dbbe46
build(stopwatch): migrate to nx
marcus-sa Sep 11, 2023
5e8248b
build(template): migrate to nx
marcus-sa Sep 11, 2023
c57ca9b
build(topsort): migrate to nx
marcus-sa Sep 11, 2023
37c7087
build(type-angular): migrate to nx
marcus-sa Sep 11, 2023
d158e62
build(vite): migrate to nx
marcus-sa Sep 11, 2023
df21c1d
build(workflow): migrate to nx
marcus-sa Sep 11, 2023
48db3d6
build(angular-universal): migrate to nx
marcus-sa Sep 11, 2023
17ce109
feat: add nx-webpack-plugin package
marcus-sa Sep 11, 2023
5354e5d
build(event): fix circular peer dependency
marcus-sa Sep 11, 2023
4be7552
build(core-rxjs): fix circular peer dependency
marcus-sa Sep 11, 2023
2ef42b7
build(core-rxjs): temporary fix for core-rxjs import
marcus-sa Sep 11, 2023
06b09e2
build(desktop-ui): migrate to nx
marcus-sa Sep 11, 2023
baa07c3
build(ui-library): migrate to nx
marcus-sa Sep 11, 2023
b22482b
build(api-console-gui): attempt to get it working
marcus-sa Sep 11, 2023
2e36df1
fix(sql): package.json exports
marcus-sa Sep 11, 2023
6ea77f3
fix(orm): package.json exports
marcus-sa Sep 11, 2023
3afc806
fix(broker): core-rxjs import
marcus-sa Sep 11, 2023
5f1c79d
fix(core-rxjs): remove js extension from imports
marcus-sa Sep 11, 2023
80d22bc
fix(desktop-ui): asset icon urls in scss
marcus-sa Sep 11, 2023
a8081d0
chore(deps): add object-inspect
marcus-sa Sep 11, 2023
b18c4ca
build(api-console-gui): migrate to nx
marcus-sa Sep 11, 2023
c96119b
build(orm-browser-gui): migrate to nx
marcus-sa Sep 11, 2023
27fb91d
build(framework-debug-gui): migrate to nx
marcus-sa Sep 11, 2023
94acf8e
fix(api-console-module,framework,orm-browser,orm-browser-module): fin…
marcus-sa Sep 11, 2023
e820e92
build(api-console-gui,framework-debug-gui,orm-browser-gui): remove bu…
marcus-sa Sep 11, 2023
ea53f46
build(framework): fix imports
marcus-sa Sep 11, 2023
b0bc172
build(desktop-ui): improve dx
marcus-sa Sep 11, 2023
7da7802
build(ui-library): improve dx
marcus-sa Sep 11, 2023
01018b9
build(deps): add sqlstring
marcus-sa Sep 11, 2023
13847a3
chore: ignore tmp folder
marcus-sa Sep 11, 2023
ac87a14
build(create-app): migrate to nx
marcus-sa Sep 11, 2023
c494647
fix(type-compiler): Node InferType did not pass test 'isEntityName'
marcus-sa Aug 9, 2023
01fb5f4
chore: remove nx-webpack-plugin package
marcus-sa Sep 11, 2023
93b2034
test(crypto): use correct name
marcus-sa Sep 11, 2023
995f6d2
ci: add workflows
marcus-sa Sep 11, 2023
1a10fa1
ci: don't install type compiler during npm postinstall script
marcus-sa Sep 11, 2023
82311f2
ci: remove main.yml workflow
marcus-sa Sep 11, 2023
47ec559
ci(nx): set main branch name to master
marcus-sa Sep 11, 2023
352d131
chore(mongo): remove unused file
marcus-sa Sep 11, 2023
6e881c0
chore: remove fs package
marcus-sa Sep 11, 2023
362e59b
build(orm-browser): remove shebang
marcus-sa Sep 11, 2023
0212dc3
ci: install compiler during test & build jobs
marcus-sa Sep 11, 2023
29c5f3a
build(broker): improve dx
marcus-sa Sep 11, 2023
5f3db3d
build: set tsconfig target to es2022
marcus-sa Sep 12, 2023
d94266a
test(broker): allow js
marcus-sa Sep 12, 2023
e2d687d
test(http): fix implicitly typed buffer arrays
marcus-sa Sep 12, 2023
ec61bae
chore(deps): bump typescript, ng-packagr & angular versions
marcus-sa Sep 12, 2023
9ffdea6
build: reuse angular compiler options and disable typescript version …
marcus-sa Sep 12, 2023
669e326
chore(deps): upgrade @angular/router version
marcus-sa Sep 12, 2023
3915412
build: get rid of redundant tsconfig.build.json
marcus-sa Sep 12, 2023
f2afdfe
ci: test postgres
marcus-sa Sep 12, 2023
2ed5e24
ci: test mysql
marcus-sa Sep 12, 2023
fdbefaf
ci: test mongo
marcus-sa Sep 12, 2023
e78aebd
ci: test sqlite
marcus-sa Sep 12, 2023
d1a5533
ci: fix indentation
marcus-sa Sep 12, 2023
ee52d3d
ci: fix test-mongo job
marcus-sa Sep 12, 2023
f7d7470
test(mongo): fix import
marcus-sa Sep 12, 2023
10bc55e
ci: remove mysql 5 version for test
marcus-sa Sep 12, 2023
f5eb1c1
build(orm-integration): remove jest imports
marcus-sa Sep 12, 2023
abd12bc
test(framework-debug-gui,orm-browser-gui): add missing test-setup.ts …
marcus-sa Sep 12, 2023
c336dd0
chore(deps): add better-sqlite3 dependency
marcus-sa Sep 12, 2023
e3e0ac1
chore: improve scripts/install-compiler.mjs
marcus-sa Sep 12, 2023
09a95db
test(ui-library,orm-browser-gui,framework-debug-gui,desktop-ui,api-co…
marcus-sa Sep 12, 2023
11815ef
fix(framework): import commands.cjs instead of commands.esm
marcus-sa Sep 12, 2023
e074f12
test(create-app): allow js
marcus-sa Sep 12, 2023
066fb62
test(create-app): allow js and ignore src/files
marcus-sa Sep 12, 2023
7afee8a
test(rpc): fix core-rxjs import
marcus-sa Sep 12, 2023
5801edc
test(orm): fix index.js import
marcus-sa Sep 12, 2023
8009915
test: don't test *.test.ts files
marcus-sa Sep 13, 2023
ca084e6
test(api-console-module,orm-browser-module): depends on gui library
marcus-sa Sep 13, 2023
ff6777b
build: make sure package.json name matches import source in nx-resolv…
marcus-sa Sep 13, 2023
9e04ea6
test(framework): allow js
marcus-sa Sep 13, 2023
7533690
test(framework): fix rpcServerMock types
marcus-sa Sep 13, 2023
32dd6db
test(framework): depends on framework-debug-gui
marcus-sa Sep 13, 2023
7600273
build(template): fix tsconfig jsxImportSource
marcus-sa Sep 13, 2023
6a356e1
build(framework): add tsconfig.build.json
marcus-sa Sep 13, 2023
f075063
ci: improve print-affected.yml
marcus-sa Sep 13, 2023
3fc4738
build: rename nx-resolve-local-packages rollup plugin to nx-resolve-d…
marcus-sa Sep 13, 2023
7b0e786
build(sql,framework): import @deepkit/sql instead of @deepkit/sql/com…
marcus-sa Sep 13, 2023
07fec84
test(framework): skip RpcServer tests in application-server test suite
marcus-sa Sep 13, 2023
58a9564
test(framework): delete empty test files
marcus-sa Sep 13, 2023
22ab510
fix(type): ensure types have names before comparing in isSameType fun…
marcus-sa Sep 10, 2023
40c4e0b
Revert "ci: improve print-affected.yml"
marcus-sa Sep 13, 2023
b5d1822
ci: update nx cache restore keys
marcus-sa Sep 13, 2023
961e101
test(framework-debug-gui): remove unused test suite
marcus-sa Sep 13, 2023
6b29020
ci: improve build-test-lint.yml
marcus-sa Sep 13, 2023
360e33c
build: preserve shebang
marcus-sa Sep 13, 2023
37e3961
build(nx): use absolute paths instead of relative paths for resolving…
marcus-sa Sep 13, 2023
50491bd
build: resolve dist package paths in emitted declaration files
marcus-sa Sep 14, 2023
8e1d97e
build: remove unused fs entry in tsconfig paths
marcus-sa Sep 14, 2023
5a706c6
build: enable reflection in package.json
marcus-sa Sep 14, 2023
4e02913
build: suppress irrelevant rollup warnings
marcus-sa Sep 14, 2023
9b7ffbe
build: add type-compiler as an implicit dependency
marcus-sa Sep 14, 2023
ce895cd
build(type-spec): disable reflection
marcus-sa Sep 14, 2023
0da9c57
build: add scripts
marcus-sa Sep 14, 2023
ec13af2
chore: add node-modules-linking example app
marcus-sa Sep 14, 2023
2892261
fix(http): use dynamic import instead of require for @deepkit/template
marcus-sa Sep 16, 2023
be7b1b6
fix(type-compiler): resolve dist path before @deepkit/type-compiler
marcus-sa Sep 16, 2023
76ae998
fix(create-app): copy sync usage
marcus-sa Sep 16, 2023
b598048
feat: nx-webpack-plugin package
marcus-sa Sep 16, 2023
52d40cc
build: add nx tag package to packages
marcus-sa Sep 16, 2023
b58643f
build: add nx tag example to examples
marcus-sa Sep 17, 2023
0cbada6
chore: .npmignore packages/create-app/src/files
marcus-sa Sep 17, 2023
7e7be85
build: ignore rollup circular dependency warnings
marcus-sa Sep 17, 2023
ae39a67
build(node-modules-linking): fix
marcus-sa Sep 17, 2023
472f60a
build(mongo,mysql,postgres,sqlite): add database tag to nx project
marcus-sa Sep 18, 2023
1af0cfe
build(node-modules-linking): add missing implicit dependencies
marcus-sa Sep 29, 2023
dd16eb2
ci: fix running affected tests for packages
marcus-sa Sep 29, 2023
0e1eccd
test(type,template): skip failing tests
marcus-sa Sep 29, 2023
3575be3
Merge remote-tracking branch 'master' into 'build/nx'
marcus-sa Oct 2, 2023
8f0fb7b
Update jsdoc.spec.ts
marcus-sa Oct 2, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .env.build
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
NODE_ENV=development
2 changes: 2 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
node_modules
dist
187 changes: 187 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,187 @@
{
"root": true,
"ignorePatterns": ["**/*"],
"plugins": ["@nx", "import", "@angular-eslint/eslint-plugin"],
"overrides": [
{
"files": "*.json",
"parser": "jsonc-eslint-parser",
"rules": {}
},
{
"files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
"rules": {
"@nx/enforce-module-boundaries": [
"error",
{
"enforceBuildableLibDependency": true,
"allow": [],
"depConstraints": [
{
"sourceTag": "*",
"onlyDependOnLibsWithTags": ["*"]
}
]
}
]
}
},
{
"files": ["*.ts", "*.tsx"],
"extends": ["plugin:@nx/typescript"],
"rules": {
"@typescript-eslint/typedef": ["error"],
"@angular-eslint/component-class-suffix": "error",
"@angular-eslint/component-selector": [
"error",
{
"type": "element",
"prefix": "app",
"style": "kebab-case"
}
],
"@angular-eslint/directive-class-suffix": "error",
"@angular-eslint/directive-selector": [
"error",
{
"type": "attribute",
"prefix": "app",
"style": "camelCase"
}
],
"@angular-eslint/no-input-rename": "error",
"@angular-eslint/no-output-on-prefix": "error",
"@angular-eslint/no-output-rename": "error",
"@angular-eslint/use-pipe-transform-interface": "error",
"@typescript-eslint/consistent-type-definitions": "error",
"@typescript-eslint/dot-notation": "off",
"@typescript-eslint/explicit-member-accessibility": [
"off",
{
"accessibility": "explicit"
}
],
"@typescript-eslint/indent": "error",
"@typescript-eslint/member-delimiter-style": [
"error",
{
"multiline": {
"delimiter": "semi",
"requireLast": true
},
"singleline": {
"delimiter": "semi",
"requireLast": false
}
}
],
"@typescript-eslint/member-ordering": "error",
"@typescript-eslint/naming-convention": [
"error",
{
"selector": "variable",
"format": [
"camelCase",
"UPPER_CASE"
],
"leadingUnderscore": "forbid",
"trailingUnderscore": "forbid"
}
],
"@typescript-eslint/no-empty-function": "off",
"@typescript-eslint/no-empty-interface": "error",
"@typescript-eslint/no-inferrable-types": "off",
"@typescript-eslint/no-misused-new": "error",
"@typescript-eslint/no-non-null-assertion": "error",
"@typescript-eslint/no-shadow": [
"error",
{
"hoist": "all"
}
],
"@typescript-eslint/no-unused-expressions": "off",
"@typescript-eslint/no-use-before-define": "error",
"@typescript-eslint/prefer-function-type": "error",
"@typescript-eslint/quotes": [
"error",
"single"
],
"@typescript-eslint/semi": [
"error",
"always"
],
"@typescript-eslint/type-annotation-spacing": "error",
"@typescript-eslint/unified-signatures": "error",
"arrow-body-style": "error",
"brace-style": [
"error",
"1tbs"
],
"constructor-super": "error",
"curly": "off",
"dot-notation": "off",
"eol-last": "error",
"eqeqeq": [
"error",
"smart"
],
"guard-for-in": "error",
"id-denylist": "off",
"id-match": "off",
"import/no-deprecated": "warn",
"indent": "off",
"max-len": [
"error",
{
"code": 180
}
],
"no-bitwise": "error",
"no-caller": "error",
"no-console": "off",
"no-debugger": "error",
"no-empty": "off",
"no-empty-function": "off",
"no-eval": "error",
"no-fallthrough": "error",
"no-new-wrappers": "error",
"no-shadow": "off",
"no-throw-literal": "error",
"no-trailing-spaces": "off",
"no-undef-init": "error",
"no-underscore-dangle": "off",
"no-unused-expressions": "off",
"no-unused-labels": "error",
"no-use-before-define": "off",
"no-var": "error",
"prefer-const": "error",
"quotes": "off",
"radix": "error",
"semi": "off",
"@typescript-eslint/tslint/config": [
"error",
{
"rules": {
"use-host-property-decorator": true,
"use-input-property-decorator": true,
"use-life-cycle-interface": true,
"use-output-property-decorator": true
}
}
]
}
},
{
"files": ["*.js", "*.jsx"],
"extends": ["plugin:@nx/javascript"],
"rules": {}
},
{
"files": ["*.spec.ts", "*.spec.tsx", "*.spec.js", "*.spec.jsx"],
"env": {
"jest": true
},
"rules": {}
}
]
}
62 changes: 62 additions & 0 deletions .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Setup
description: ''

inputs:
node-version:
description: Node.js version
required: true
default: 18.17.0

pnpm-version:
description: pnpm version
required: true
default: 8.7.4

runs:
using: 'composite'
steps:
- uses: pnpm/action-setup@v2
name: Install pnpm
with:
version: ${{ inputs.pnpm-version }}

- uses: actions/setup-node@v3
name: Install Node.js
with:
node-version: ${{ inputs.node-version }}
registry-url: https://registry.npmjs.org
cache: pnpm

- name: Install dependencies
run: pnpm install
shell: bash
env:
CI: 'true'

- name: Set GITHUB_BRANCH and NX_BRANCH environment variable in pull request
if: github.event_name == 'pull_request'
shell: bash
run: |
echo "GITHUB_BRANCH=${{ github.head_ref }}" >> $GITHUB_ENV
echo "NX_BRANCH=${{ github.head_ref }}" >> $GITHUB_ENV

- name: Set GITHUB_BRANCH and NX_BRANCH environment variable
if: github.event_name != 'pull_request'
shell: bash
run: |
echo "GITHUB_BRANCH=${{ github.ref_name }}" >> $GITHUB_ENV
echo "NX_BRANCH=${{ github.ref_name }}" >> $GITHUB_ENV

- name: Derive appropriate SHAs for base and head for `nx affected` commands
uses: nrwl/nx-set-shas@v3
with:
main-branch-name: master

- name: Cache Nx
uses: actions/cache@v2
with:
path: node_modules/.cache/nx
key: cache-nx-${{ env.NX_BASE }}-${{ env.NX_HEAD }}
restore-keys: |
cache-nx-2-${{ env.NX_BASE }}-
cache-nx-2-
Loading
Loading