Commit graph

86 commits

Author SHA1 Message Date
कारतोफ्फेलस्क्रिप्ट™ 8f8a1de3dd
feat(core): Add support for ready hooks, and credentials overwrite endpoint in workers (#6954) 2023-08-17 15:42:57 +02:00
कारतोफ्फेलस्क्रिप्ट™ bb76c18073
ci: Fix executeBatch command to fix workflow tests (no-changelog) (#6946)
This broke because [we started returning an explicit `undefined` on
error
descriptions](https://github.com/n8n-io/n8n/pull/6841/files#diff-ea9bff15fe880ac829cc642c7e72a25d2348e331e77fc060cbe11a6effb6aeaeR430)

[Test
run](https://github.com/n8n-io/n8n/actions/runs/5879776481/job/15945235163)
2023-08-16 16:53:17 +02:00
Iván Ovejero 11440bfd3c
refactor(core): Move tag collection into repository (no-changelog) (#6860)
* refactor(core): Move tag collection into repository

* Fix tests

* Address feedback

* Fix missing spot
2023-08-08 14:08:56 +02:00
Michael Auerswald 6499f42481
feat(core): Add unique id to instances (#6863)
* add serverId and workerId

* adjust id format

* fix logger init / test

* update implementation
2023-08-07 17:03:21 +02:00
Iván Ovejero e4f041815a
perf(core): Cache roles (#6803)
* refactor: Create `RoleService`

* refactor: Refactor to use service

* refactor: Move `getUserRoleForWorkflow`

* refactor: Clear out old `RoleService`

* refactor: Consolidate utils into service

* refactor: Remove unused methods

* test: Add tests

* refactor: Remove redundant return types

* refactor: Missing utility

* chore: Remove commented out bit

* refactor: Make `Db.collections.Repository` inaccessible

* chore: Cleanup

* feat: Prepopulate cache

* chore: Remove logging

* fix: Account for tests where roles are undefined

* fix: Restore `prettier.prettierPath`

* test: Account for cache enabled and disabled

* fix: Restore `Role` in `Db.collections`

* refactor: Simplify by removing `orFail`

* refactor: Rename for clarity

* refactor: Use `cacheKey` for readability

* refactor: Validate role before creation

* refacator: Remove redundant `cache` prefix

* ci: Lint fix

* test: Fix e2e
2023-08-03 08:58:36 +02:00
Iván Ovejero ffae8edce3
refactor(core): Cache workflow ownership (#6738)
* refactor: Set up ownership service

* refactor: Specify cache keys and values

* refactor: Replace util with service calls

* test: Mock service in tests

* refactor: Use dependency injection

* test: Write tests

* refactor: Apply feedback from Omar and Micha

* test: Fix tests

* test: Fix missing spot

* refactor: Return user entity from cache

* refactor: More dependency injection!
2023-07-31 11:37:09 +02:00
Iván Ovejero 72523462ea
refactor: Clear unused ESLint directives from BE packages (no-changelog) (#6798) 2023-07-31 11:00:48 +02:00
कारतोफ्फेलस्क्रिप्ट™ 6fb8a9ee39
ci: Fix linting issues (no-changelog) (#6788)
* ci: Fix linting (no-changelog)

* lintfix for nodes-base as well
2023-07-28 18:28:17 +02:00
कारतोफ्फेलस्क्रिप्ट™ e6903a87b5
refactor: Remove all references to the resetPasswordToken field (no-changelog) (#6751)
refactor: remove all references to the resetPasswordToken field (no-changelog)
2023-07-27 11:53:25 +02:00
Iván Ovejero e1e6d4a749
refactor(core): Prevent community packages queries if feature is disabled (#6728) 2023-07-25 10:22:32 +02:00
कारतोफ्फेलस्क्रिप्ट™ cc29c4da74
ci: Fix test workflows (no-changelog) (#6698)
* ci: Fix test workflows (no-changelog)

We removed `pdf-parse` in #6640, so we need to get these test PDF files from the `test-workflows` repo instead ([which has been updated to include these files](0f6ef1c804))

* remove `\n` from ids and skipList text files
2023-07-19 14:15:38 +02:00
कारतोफ्फेलस्क्रिप्ट™ f4a18ba87d
refactor(core): Refactor WorkflowStatistics code (no-changelog) (#6617)
refactor(core): Refactor WorkflowStatistics code
2023-07-18 11:28:24 +02:00
कारतोफ्फेलस्क्रिप्ट™ b895ba438a
refactor(core): Reduce boilterplate code in between tests 🧹, and fix the tests in node.js 20 (no-changelog) (#6654)
refactor(core): Reduce boilterplate code in between tests

also cleaned up some imports, and fixed the tests in node.js 20
2023-07-13 10:14:48 +02:00
Iván Ovejero 3e07ffa73e
refactor: Move CLI commands types to own dir (no-changelog) (#6658)
refactor: Move CLI commands types to own dir
2023-07-13 10:10:08 +02:00
Iván Ovejero d6b2ae0255
refactor: Stop using .d.ts files for type-collection files (no-changelog) (#6634)
refactor: Stop using `.d.ts` files for type-collection files
2023-07-10 19:35:34 +02:00
कारतोफ्फेलस्क्रिप्ट™ 8002213538 ci: Fix linting issues (no-changelog) 2023-07-06 09:28:34 +02:00
कारतोफ्फेलस्क्रिप्ट™ d97edbcffa
fix(core): Make node execution order configurable, and backward-compatible (#6507)
* fix(core): Make node execution order configurable, and backward-compatible

*  Also add new Merge-Node behaviour

*  Fix typo

* Fix lint issue

* update labels

* rename legacy to v0

* remove the unnecessary log

* default all new workflows to use v1 execution-order

* remove the controller changes

* clone default settings to avoid it getting modified

---------

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2023-07-05 18:47:34 +02:00
कारतोफ्फेलस्क्रिप्ट™ 988c4a6354 ci: executeBatch should compare JSON after serialization, to avoid inconsistencies between main and own mode 2023-06-27 10:33:21 +02:00
Jan Oberhauser 0287d5becd feat(core): Change node execution order (most top-left one first) (#6246)
* feat(core): Change node execution order (most top-left one first)

*  Fix issue with multi-output-nodes

*  Remove not needed meta-entry in test

* fix the e2e test

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-22 21:11:29 +02:00
Iván Ovejero 8c008f5d22 refactor(core)!: Remove basic-auth, external-jwt-auth, and no-auth options (#6362)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-22 20:03:47 +02:00
कारतोफ्फेलस्क्रिप्ट™ f6366160a4 feat(core): Remove conditional defaults in V1 release (#6363) 2023-06-22 19:54:32 +02:00
कारतोफ्फेलस्क्रिप्ट™ d255b094dd
fix(core): Fix import:credential on postgres (no-changelog) (#6515)
Since we switched to string ids, we don't need to update the `_seq` values for postgres.

We removed this bit for the `import:workflow` [here](https://github.com/n8n-io/n8n/pull/6345/files#diff-ff45b1d8db8d3dc67d19aa34e4d066e4156ddcd311c0b8d75a3d082009065197L230), but missed updating this file.
2023-06-22 16:54:05 +02:00
कारतोफ्फेलस्क्रिप्ट™ 8dc828b704
fix(core): Fix the db:revert command (no-changelog) (#6506) 2023-06-22 09:06:31 +02:00
Michael Auerswald c3ba0123ad
feat: Migrate integer primary keys to nanoids (#6345)
* first commit for postgres migration

* (not working)

* sqlite migration

* quicksave

* fix tests

* fix pg test

* fix postgres

* fix variables import

* fix execution saving

* add user settings fix

* change migration to single lines

* patch preferences endpoint

* cleanup

* improve variable import

* cleanup unusued code

* Update packages/cli/src/PublicApi/v1/handlers/workflows/workflows.handler.ts

Co-authored-by: Omar Ajoue <krynble@gmail.com>

* address review notes

* fix var update/import

* refactor: Separate execution data to its own table (#6323)

* wip: Temporary migration process

* refactor: Create boilerplate repository methods for executions

* fix: Lint issues

* refactor: Added search endpoint to repository

* refactor: Make the execution list work again

* wip: Updating how we create and update executions everywhere

* fix: Lint issues and remove most of the direct access to execution model

* refactor: Remove includeWorkflowData flag and fix more tests

* fix: Lint issues

* fix: Fixed ordering of executions for FE, removed transaction when saving execution and removed unnecessary update

* refactor: Add comment about missing feature

* refactor: Refactor counting executions

* refactor: Add migration for other dbms and fix issues found

* refactor: Fix lint issues

* refactor: Remove unnecessary comment and auto inject repo to internal hooks

* refactor: remove type assertion

* fix: Fix broken tests

* fix: Remove unnecessary import

* Remove unnecessary toString() call

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>

* fix: Address comments after review

* refactor: Remove unused import

* fix: Lint issues

* fix: Add correct migration files

---------

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>

* remove null values from credential export

* fix: Fix an issue with queue mode where all running execution would be returned

* fix: Update n8n node to allow for workflow ids with letters

* set upstream on set branch

* remove typo

* add nodeAccess to credentials

* fix unsaved run check for undefined id

* fix(core): Rename version control feature to source control (#6480)

* rename versionControl to sourceControl

* fix source control tooltip wording

---------

Co-authored-by: Romain Minaud <romain.minaud@gmail.com>

* fix(editor): Pay 548 hide the set up version control button (#6485)

* feat(DebugHelper Node): Fix and include in main app (#6406)

* improve node a bit

* fixing continueOnFail() ton contain error in json

* improve pairedItem

* fix random data returning object results

* fix nanoId length typo

* update pnpm-lock file

---------

Co-authored-by: Marcus <marcus@n8n.io>

* fix(editor): Remove setup source control CTA button

* fix(editor): Remove setup source control CTA button

---------

Co-authored-by: Michael Auerswald <michael.auerswald@gmail.com>
Co-authored-by: Marcus <marcus@n8n.io>

* fix(editor): Update source control docs links (#6488)

* feat(DebugHelper Node): Fix and include in main app (#6406)

* improve node a bit

* fixing continueOnFail() ton contain error in json

* improve pairedItem

* fix random data returning object results

* fix nanoId length typo

* update pnpm-lock file

---------

Co-authored-by: Marcus <marcus@n8n.io>

* feat(editor): Replace root events with event bus events (no-changelog) (#6454)

* feat: replace root events with event bus events

* fix: prevent cypress from replacing global with globalThis in import path

* feat: remove emitter mixin

* fix: replace component events with event bus

* fix: fix linting issue

* fix: fix breaking expression switch

* chore: prettify ndv e2e suite code

* fix(editor): Update source control docs links

---------

Co-authored-by: Michael Auerswald <michael.auerswald@gmail.com>
Co-authored-by: Marcus <marcus@n8n.io>
Co-authored-by: Alex Grozav <alex@grozav.com>

* fix tag endpoint regex

---------

Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Romain Minaud <romain.minaud@gmail.com>
Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
Co-authored-by: Marcus <marcus@n8n.io>
Co-authored-by: Alex Grozav <alex@grozav.com>
2023-06-20 19:13:18 +02:00
Chris Wu 1111c915f2
refactor(core): Replace lodash's "soft-deprecated" individual packages with lodash to resolve CVE (no-changelog) (#6450)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-16 16:26:35 +02:00
agobrech 3a1e96dc6d
ci: Improve Test-worklows messages (#6290)
* Update test-worklows action

* Improve error messages

* Fix output data to slack

* Fix slackmessage

* add github flag

* add slack config

* Add result to github output

* Fix output string

* Remove old comment for oauth2

* Remove console.logs

* Improve message

* Update to different slack action

* update payload

* Fix wrong json

* debugging

* Revert "update payload"

This reverts commit 4ea955c85e.

* Reverted to old slack action

* Update slack config

* Remove fallback value

* Change config name

* tests

* more tests

* tests

* Use single message

* message fixes

* Final fixes

* Correct channel

* delete slack.yml config

* keep unused Export credentials step for later

---------

Co-authored-by: Marcus <marcus@n8n.io>
2023-06-05 11:20:58 +02:00
Iván Ovejero 85500d76fb
refactor: Add deprecation notice for UM disabled mode (#6367) 2023-06-02 13:26:12 +02:00
Iván Ovejero de77762e51
refactor: Add deprecation notice for basic auth and JWT auth (#6349) 2023-06-01 11:22:29 +02:00
कारतोफ्फेलस्क्रिप्ट™ e046f656fe
feat(core): Remove all floating promises. Enforce @typescript-eslint/no-floating-promises (#6281) 2023-05-24 02:01:45 +02:00
Omar Ajoue 42c79cd6f1
fix: Initialize license in queue mode correctly (#6301) 2023-05-23 13:01:50 +02:00
कारतोफ्फेलस्क्रिप्ट™ 51c89db6dc
ci: Fix linting issue on master (no-changelog) (#6232) 2023-05-11 17:13:23 +02:00
कारतोफ्फेलस्क्रिप्ट™ 9db49d0c18
fix(core): Make sure that special polling parameters are available on community nodes as well (#6230)
This broke in 0.227.0.
2023-05-11 16:19:55 +02:00
कारतोफ्फेलस्क्रिप्ट™ 9e7b9fb443
feat(core): Improve health check (#6205)
* remove unnecesary Db re-initialization

this is from before we added `Db.init` in `WorkflowRunnerProcess`

* feat(core): Improved health check

* make health check not care about DB connections

* close DB connections, and shutdown the timer
2023-05-10 10:27:04 +02:00
Omar Ajoue fad5781635
refactor: Add deprecation notice for WEBHOOK_TUNNEL_URL (#6194) 2023-05-08 15:52:13 +02:00
Omar Ajoue 1da71645f2
refactor(core): Add deprecation notice for own mode (#6195)
* refactor: Add deprecation notice for own mode

* Undo default value change
2023-05-08 15:03:44 +02:00
Omar Ajoue 0673a39fa0
refactor: Add deprecation notice for MySQL and MariaDB (#6189)
* refactor: Add deprecation notice for MySQL and MariaDB

* Update packages/cli/src/commands/BaseCommand.ts

Co-authored-by: Cornelius Suermann <cornelius@n8n.io>

---------

Co-authored-by: Cornelius Suermann <cornelius@n8n.io>
2023-05-08 12:16:20 +02:00
Cornelius Suermann eaf7090919
fix(core): Skip license activation when instance was already activated (#6064) 2023-04-24 11:46:04 +02:00
Cornelius Suermann ab12d3e327
feat(core): Add license:info command (#6047)
* feat(core): Add license:info command

* revert changes to start.ts

* revert changes to start.ts

* fix typo
2023-04-21 17:10:10 +02:00
कारतोफ्फेलस्क्रिप्ट™ 10f8c35dbb
refactor(core): Use injectable classes for db repositories (part-1) (no-changelog) (#5953)
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2023-04-12 10:59:14 +02:00
कारतोफ्फेलस्क्रिप्ट™ 2881ee9ecc
fix(core): App should not crash with a custom rest endpoint (#5911)
fixes #5880
2023-04-06 11:35:05 +02:00
कारतोफ्फेलस्क्रिप्ट™ ddbfcc7d93
fix(core): Use table-prefixes in queries in import commands (#5887) 2023-04-03 14:32:49 +02:00
Michael Auerswald fa5bc814b0
fix(core): Deactivate active workflows during import (#5840)
* deactivate imported workflows

* improve test

* fix for combined import (and test)

* cleanup
2023-03-30 15:33:30 +02:00
कारतोफ्फेलस्क्रिप्ट™ 58fda255fe
refactor: Revert "refactor(core): Use typedi to manage EventBus singletons (#5795)" (no-changelog) (#5825)
Revert "refactor(core): Use typedi to manage EventBus singletons (no-changelog) (#5795)"

This reverts commit 522c790817.
2023-03-30 09:59:04 +02:00
कारतोफ्फेलस्क्रिप्ट™ 522c790817
refactor(core): Use typedi to manage EventBus singletons (no-changelog) (#5795) 2023-03-29 20:38:47 +02:00
agobrech 5f6183a031
ci: Improve categorisation of errors in the Test-Workflow (no-changelog) (#5772)
* Add warning messages for bad gateway and insufficient balance

* Remove console.logs

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>
2023-03-28 13:21:22 +02:00
कारतोफ्फेलस्क्रिप्ट™ 30aeeb70b4
fix(core): Ensure that all non-lazy-loaded community nodes get post-processed correctly (#5782)
If you install a community node with `polling: true`, activating a workflow with that node fails with an error: `WorkflowActivationError: There was a problem activating the workflow: "Could not get parameter "pollTimes"!"`.

You can test this by installing `n8n-nodes-rss-feed-trigger`, creating a workflow with the `RSS Trigger` node, and then trying to activate it. Activation will fail on `master`, but work as expected on this branch.
2023-03-24 17:29:56 +01:00
कारतोफ्फेलस्क्रिप्ट™ 161de110ce
fix(core): Improve community nodes loading (#5608) 2023-03-24 17:04:26 +01:00
कारतोफ्फेलस्क्रिप्ट™ c9d9069c0e
refactor(core): Stronger typing for workflow settings (no-changelog) (#5754) 2023-03-24 13:11:48 +01:00
कारतोफ्फेलस्क्रिप्ट™ e67ad29625
fix(core): Initialize queue in the webhook server as well (#5766)
fix(core): Initialize queue in the webhook server as well (no-changelog)
2023-03-24 10:47:21 +01:00
कारतोफ्फेलस्क्रिप्ट™ 9bd7529193
refactor(core): Use an IoC container to manage singleton classes [Part-2] (no-changelog) (#5690)
* use typedi for UserManagementMailer

* use typedi for SamlService

* fix typos

* use typedi for Queue

* use typedi for License

* convert some more code to use typedi
2023-03-16 15:34:13 +01:00