Commit graph

2057 commits

Author SHA1 Message Date
Michael Auerswald 47ee357059
feat(core): Improve ldap/saml toggle and tests (#5771)
* improve ldap/saml toggle and tests

* import cleanup

* reject regular login users when saml is enabled

* lint fix
2023-03-24 17:46:06 +01: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
Michael Auerswald d33a1ac1e9
fix(core): Assign properties.success earlier to set executionStatus correctly (#5773)
assign properties.success earlier
2023-03-24 12:53:43 +01:00
github-actions[bot] 136f752dbc
🚀 Release 0.221.2 (#5774)
Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-03-24 12:47:49 +01:00
Michael Auerswald 6c7772a0b3 fix(core): Assign properties.success earlier to set executionStatus correctly 2023-03-24 12:44:49 +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
github-actions[bot] 1663319c1f
🚀 Release 0.221.1 (#5767)
Co-authored-by: netroy <netroy@users.noreply.github.com>
2023-03-24 07:30:14 +01:00
कारतोफ्फेलस्क्रिप्ट™ 163859b87a fix(core): Initialize queue in the webhook server as well 2023-03-23 20:30:56 +01:00
Csaba Tuncsik d78a41db54
feat: Execution custom data saving and filtering (#5496)
* wip: workflow execution filtering

* fix: import type failing to build

* fix: remove console.logs

* feat: execution metadata migrations

* fix(editor): Move global executions filter to its own component

* fix(editor): Using the same filter component in workflow level

* fix(editor): a small housekeeping

* checking workflowId in filter applied

* fix(editor): update filter after resolving merge conflicts

* fix(editor): unify empy filter status

* feat(editor): add datetime picker to filter

* feat(editor): add meta fields

* fix: fix button override in datepicker panel

* feat(editor): add filter metadata

* feat(core): add 'startedBefore' execution filter prop

* feat(core): add 'tags' execution query filter

* Revert "feat(core): add 'tags' execution query filter"

This reverts commit a7b968081c.

* feat(editor): add translations and tooltip and counting selected filter props

* fix(editor): fix label layouts

* fix(editor): update custom data docs link

* fix(editor): update custom data tooltip position

* fix(editor): update tooltip text

* refactor: Ignore metadata if not enabled by license

* fix(editor): Add paywall states to advanced execution filter

* refactor: Save custom data also for worker mode

* fix: Remove duplicate migration name from list

* fix(editor): Reducing filter complexity and add debounce to text inputs

* fix(editor): Remove unused import, add comment

* fix(editor): simplify event listener

* fix: Prevent error when there are running executions

* test(editor): Add advanced execution filter basic unit test

* test(editor): Add advanced execution filter state change unit test

* fix: Small lint issue

* feat: Add indices to speed up queries

* feat: add customData limits

* refactor: put metadata save in transaction

* chore: remove unneed comment

* test: add tests for execution metadata

* fix(editor): Fixes after merge conflict

* fix(editor): Remove unused import

* wordings and ui fixes

* fix(editor): type fixes

* feat: add code node autocompletions for customData

* fix: Prevent transaction issues and ambiguous ID in sql clauses

* fix(editor): Suppress requesting current executions if metadata is used in filter (#5739)

* fix(editor): Suppress requesting current executions if metadata is used in filter

* fix(editor): Fix arrows for select in popover

* refactor: Improve performance by correcting database indices

* fix: Lint issue

* test: Fix broken test

* fix: Broken test

* test: add call data check for saveExecutionMetadata test

---------

Co-authored-by: Valya Bullions <valya@n8n.io>
Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: Romain Minaud <romain.minaud@gmail.com>
2023-03-23 18:07:46 +01:00
कारतोफ्फेलस्क्रिप्ट™ 4c583e2be4
ci: Fix saml.api.test.ts (no-changelog) (#5764) 2023-03-23 16:54:35 +01:00
Jan Oberhauser 15412b2b2b Merge tag 'n8n@0.221.0' 2023-03-23 16:08:56 +01:00
Cornelius Suermann 573bc8bcea
docs: Refer to docker.n8n.io/n8nio/n8n for pulling n8n docker images (no-changelog) (#5763) 2023-03-23 15:38:01 +01:00
github-actions[bot] 5dd92c6b94
🚀 Release 0.221.0 (#5726) 2023-03-23 15:37:49 +01:00
Michael Auerswald 4498c6013d
fix(core): Persist CurrentAuthenticationMethod setting change (#5762)
* limit user invites when saml is enabled

* persist CurrentAuthenticationMethod
2023-03-23 15:13:05 +01:00
Michael Auerswald 57748b71e5
feat(core): Limit user invites when SAML is enabled (#5761)
limit user invites when saml is enabled
2023-03-23 15:12:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ a70e639c75 fix(core): Require Auth on icons and nodes/credentials types static files (no-changelog) (#5745) 2023-03-23 12:57:22 +01:00
Michael Auerswald ac18c0b9eb
fix(core): Return SAML service provider urls with config (#5759)
return sp urls with config
2023-03-23 10:42:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ 5dda3f2c61
fix(core): Require Auth on icons and nodes/credentials types static files (no-changelog) (#5745) 2023-03-22 14:22:50 +01:00
Manish Dhanwal 40aacf9279
feat(core): Make OAuth2 error handling consistent with success handling (#5555)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-03-22 12:53:49 +01:00
Michael Auerswald b6d8a0f985
fix(core): Remove circular refs from Code and push msg (#5741)
* remove circular refs from code items (and lint fixes)

* cleanup

---------

* add some tests

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-03-21 15:34:30 +01:00
कारतोफ्फेलस्क्रिप्ट™ 34d7fcc27e
ci: Fix linting issues on master (no-changelog) (#5740) 2023-03-21 12:11:59 +01:00
कारतोफ्फेलस्क्रिप्ट™ 469ce32957
fix(core): Upgrade luxon to address CVE-2023-22467 (#5731)
[GitHub Advisory](https://github.com/advisories/GHSA-3xq5-wjfh-ppjc)
2023-03-21 09:50:29 +01:00
कारतोफ्फेलस्क्रिप्ट™ fd81c74251
fix(core): Upgrade sqlite3 to address CVE-2022-43441 (#5732)
[GitHub Advisory](https://github.com/advisories/GHSA-jqv5-7xpx-qj74)
2023-03-21 09:48:22 +01:00
कारतोफ्फेलस्क्रिप्ट™ 564bc03d3f
fix(core): Upgrade convict to address CVE-2023-0163 (#5729)
fix(core): upgrade convict to address CVE-2023-0163

also, do not allow passing any cli arguments to config.
2023-03-21 09:47:50 +01:00
Csaba Tuncsik 6916628a9f
feat(editor): SSO login button (#5615)
* feat(editor): SSO login button

* feat(editor): SSO login button

* feat(editor): SSO login button
2023-03-17 21:07:08 +01:00
Michael Auerswald e0ea97af8d
fix(core): Fix calling error workflows in main mode recovery (#5698)
* fix calling error workflows in main mode recovery

* cleanup

* remove WorkflowExecuteAdditionalData export from index

* revert refactor to fix test

* Update index.ts

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>
2023-03-17 18:02:49 +01:00
कारतोफ्फेलस्क्रिप्ट™ 6242cac53b
ci: Refactor cli tests to speed up CI (no-changelog) (#5718)
* ci: Refactor cli tests to speed up CI (no-changelog)

* upgrade jest to address memory leaks
2023-03-17 17:24:05 +01:00
Michael Auerswald be172cb720
fix(core): Return saml attributes after connection test (#5717)
return saml attributes for test
2023-03-17 15:56:51 +01:00
Michael Auerswald a28396ee91
fix(core): Fix telemetry execution status for manual workflows executions (#5712)
fix telemetry execution status
2023-03-17 11:02:48 +01:00
Csaba Tuncsik 7a352efff9
fix(editor): Fix execution list item selection (#5606)
* fix(editor): Fix execution list item selection

* fix(editor): Delete only selected executions

* fix(editor): Fix clear selection

* fix(editor): Fix clear selection

* fix(editor): Fix clear selection

* feat(editor): Add select all existing executions checkbox

* fix(editor): Do not mark later loaded executions selected

* test(editor): Add execution list unit test

* fix(editor): Fix selection

* test(editor): update execution selection test

* fix(editor): Handle UI state when there is no execution

* fix(editor): Remove unnecessary logic

* test(editor): Add more execution list unit tests and fake data generation

* test(editor): Add more execution list unit tests

* test(editor): Simplifying test setup

* chore: update pnpm lock after resolving merge conflocts

* chore: fix package version

* fix: Improved executions deletion to prevent crashing and fixed removal of failed executions

* fix: Add comment to clarify why change was needed

* fix: fix executions list bug when selecting all and changing filter

* fix: fix execution lists running execution showing up on different workflow id

* fix(editor): Deleting an execution while all are selected

* fix(editor): Deleting an execution while all are selected

---------

Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
2023-03-17 06:18:23 +01:00
Ricardo Espinoza 3718612bd7
test(core): Use instance owner instead of owner shell for SAML tests (no-changelog) (#5706)
Use instance owner instead of owner shell
2023-03-16 15:34:28 +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
github-actions[bot] ca91d2b712
🚀 Release 0.220.0 (#5704) 2023-03-16 14:49:21 +01:00
कारतोफ्फेलस्क्रिप्ट™ b4e60c3b47
refactor: Rewrite workflow public-api tests to avoid timeouts (no-changelog) (#5696) 2023-03-15 14:24:09 +01:00
Michael Auerswald ef07528cc2
feat(core): Improve SAML connection test (#5680)
* improve saml test

* cleanup

* remove unused SamlConfiguration types
2023-03-13 19:47:57 +01:00
Michael Auerswald c6ba0bd8de
feat(core): Convert saml controller to decorator style (#5653) (no-changelog) 2023-03-10 19:19:52 +01:00
कारतोफ्फेलस्क्रिप्ट™ 90afa5e55f
fix(core): Initialize License and LDAP in the correct order (#5673) 2023-03-10 19:05:51 +01:00
कारतोफ्फेलस्क्रिप्ट™ 3831201aaf
ci: Setup code-coverage reporting (no-changelog) (#5669) 2023-03-10 16:53:05 +01:00
Jan Oberhauser dc0e052c83 Merge tag 'n8n@0.219.1' 2023-03-10 13:54:26 +01:00
github-actions[bot] a881512b49
🚀 Release 0.219.1 (#5668) 2023-03-10 13:30:40 +01:00
Jan Oberhauser dd93c0890b Merge tag 'n8n@0.219.0' 2023-03-09 18:38:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ 7a4e9ef5fa
refactor: Remove n8n-core dependency in nodes-base (no-changelog) (#5649) 2023-03-09 18:13:15 +01:00
github-actions[bot] 40a6ab814d
🚀 Release 0.219.0 (#5659) 2023-03-09 18:04:39 +01:00
कारतोफ्फेलस्क्रिप्ट™ 1979eb8a9c
fix(core): Fix issues with LDAP reset and LDAP init (no-changelog) (#5657)
* fix(core): Ldap reset should recreate the default config

* fix(core): init ldap before registering the routes for it
2023-03-09 16:24:44 +01:00
कारतोफ्फेलस्क्रिप्ट™ d872866add
feat(core): Allow using middlewares with decorators on a per-route basis (no-changelog) (#5656) 2023-03-09 15:08:48 +01:00
कारतोफ्फेलस्क्रिप्ट™ 356e916194
refactor(core): Convert more routes to use the decorator pattern (no-changelog) (#5611)
* move nodeTypes api to a controller class
* move tags api to a controller class
* move LDAP routes to a controller class
* move nodes routes to a controller class
2023-03-09 14:42:13 +01:00
Michael Auerswald 6f27b445ca
feat(core): Refactor and add SAML preferences for service provider instance (#5637)
* create SP through parameters instead of metadata

* refactor SAML prefs and add SP configurations
2023-03-09 09:08:23 +01:00
Michael Auerswald 419969c0d7
fix(core): Rename advancedFilters to advancedExecutionFilters (#5643)
rename advancedFilters to advancedExecutionFilters
2023-03-07 18:35:52 +01:00
Michael Auerswald 0b5ef09e7c
feat(core): Add advancedFilters feature flag (#5638)
adds advancedFilters feature flag
2023-03-07 14:18:10 +01:00
कारतोफ्फेलस्क्रिप्ट™ 45ccdd3bb5
fix(core): Allow serving icons for custom nodes with npm scoped names (#5626) 2023-03-06 13:36:47 +01:00
Michael Auerswald ca66ec8f4d
feat(core): Add SAML XML validation (#5600)
* consolidate SSO settings

* update saml settings

* fix type error

* limit user changes when saml is enabled

* add test

* add toggle endpoint and fetch metadata

* rename enabled param

* add handling of POST saml login request

* add config test endpoint

* adds saml XML validation

* add comment

* protect test endpoint

* improve ignoreSSL and some cleanup

* fix wrong schema used

* remove console.log
2023-03-06 09:44:25 +01:00
कारतोफ्फेलस्क्रिप्ट™ 3c57062571
refactor: Fix some typos (no-changelog) (#5616) 2023-03-03 18:49:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ 4e244937c9
refactor: catch doesn't need to have a param (no-changelog) (#5614) 2023-03-03 18:18:49 +01:00
Michael Auerswald 523fa71705
feat(core): Add SAML post and test endpoints (#5595)
* consolidate SSO settings

* update saml settings

* fix type error

* limit user changes when saml is enabled

* add test

* add toggle endpoint and fetch metadata

* rename enabled param

* add handling of POST saml login request

* add config test endpoint
2023-03-03 10:19:43 +01:00
Michael Auerswald b5179597f3
feat(core): Limit user changes when saml is enabled (#5577)
* consolidate SSO settings

* update saml settings

* fix type error

* limit user changes when saml is enabled

* add test
2023-03-03 10:05:30 +01:00
github-actions[bot] a91b631411
🚀 Release 0.218.0 (#5601)
* 🚀 Release 0.218.0

* Update Changelog

---------

Co-authored-by: janober <janober@users.noreply.github.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2023-03-02 17:32:52 +01:00
OlegIvaniv 0004dc7ee8
ci(editor): Run e2e tests in parallel and improve build caching (#5445)
* WIP: Cypress parallel CI run test

* Trigger action on branch push

* Change build artifacts path

* Make sure to checkout the repo for testing job

* Use Cypress action for installing

* Lock cypress action userd version

* Skip node install step since we're using cypress node16 container

* Let Cypress handle pnpm install

* Use setup-node action for caching pnpm

* Set CYPRESS_CACHE_FOLDER

* Set CYPRESS_CACHE_FOLDER

* Manually cache pnpm store

* Dont fix pnpm version

* Use caching action also in testing job

* Zip packages dist before uploading the artifacts and change caching key

* Use absolute build paths for zipping job

* Use zip command in action

* Use tar for zipping packages

* Debuggin directory ls

* Debugging caching of modules

* Attempt to fix permissions issue

* Porivde Cypress executable via `CYPRESS_RUN_BINARY`

* Cache /github/home

* Adjust caching keys

* Debug: search for cypress exec

* Debugging: List dirs

* Use pnpm install action to install node_modules

* Do not log /home/runner

* Use node_modules/.bin Cypress binary

* Use absolute path to nodue modules

* Run Cypress via custom command

* Try with patched cypress action

* Revert logging

* Manually specify cypress config file

* Use absolute paths

* Fix cypress config name

* Debug print cypress config

* Remove debugging, increase to 4 containers

* Increase amount of containers

* Add env-version matrix

* Replace node14 with node18 in testing matrix

* Remove debugging and add node 14

* Use just node14

* Use cypress:base and remove browser req

* Give more general timeouts

* Try with node16

* Change cache directive position

* Replace zip artifact upload with cache

* Cache full packages not just dist

* Test with variable inputs

* Add commit info message

* Remove wrongly commited code

* Allow WF API dispatch

* Try Chrome browser again for comparison

* Include Monaco in the build

* Make e2e workflow re-usable

* Comment out invalid reusable workflow args

* Use electron and add node 14 run

* Fix env arg

* Provide custom ci-build-id

* Refactor remaining e2e workflow to use reusable action

* Remove single matrix directive

* Refactor ci-pull-req

* Make lint job dependant on test jobs

* Disable debugging job

* Make containers dynamic

* Cleanup & install git for linting action

* Use regular buntu image for PR linting

* Debugging failing tests

* Remove fixed spec name

* Debug e2e env var

* Do not use realkeypress which crashes electron runner

* Debugging

* chore: remove console

* chore: remove console

* test: remove node 14 tests

* test: replace test branch with master

* test: use tests in current branch

* test: use relative path

* chore: clean up

* test: only trigger on approval

* ci: update test PR

* ci: use curr branch

* ci: only run 14 on schedule, not for slack command

* ci: only run test on approval

* ci: clean up branch, rename step

* ci: rename steps

* ci: clean up cancel

* ci: clean up env var

* ci: set var

* ci: use chromef

* ci: use electron

* chore: add console log

* chore: add console log

* ci: update to string

* ci: set all env options

* test: build

* ci: fix step issue

* Fix failing tests & upgrade to Cypress 12

* Allow WF dispatch of e2e reusable

* Fix wrong naming in e2e-tests workflow

* Redeploy

* Fix tests

* Fix NDV tests and remove skipping of webhooks execution tests

* Fix clipboard read command

* Fix execution failing tests

* Reset before each 15 and 3

* Fix flaky tests

* Cleanup and log envs

* Test fixes

* Default owner spec fixes

* Get rid of CYPRESS_RUN_ENV

* Increase amount of containers, cleanup and add mock for credentials test call

* Cleanup & fix PR tests unit tests

* Wait for WF to loade in sharing spec

* Do linting and unit tests first

* Use frozen lockfile

* Revert back ci pull request jobs order

* Refine credential input selector and move cy.waitForLoad to correct position in 15-scheduler spec

* test: build

* Wait for WF execution instead of arbitraty timeout in WF execution spec, change order of jobs for ci pull request

* Fix flaky 3-default owner spec and wait for execution list to load in 20-workflow-executions

* Use setup node action

* Remove caching for lint/unit tests

* Experiment with parallel test & lint on ci

* Provide cache key dynamically

* Run e2e in parallel on pr

* Only run node14 e2e on daily schedule

* Make sure to generate generate new ci-build-id on re-runs

* Remove debugging prints

* Address PR comments

* Rename custom onBeforeUnload handler

* Make sure 19-execution spec waits for wf to load properly before import fixtures

---------

Co-authored-by: Mutasem <mutdmour@gmail.com>
2023-03-02 16:50:21 +01:00
Michael Auerswald 31cc8de829
feat(core): Add SAML settings and consolidate LDAP under SSO (#5574)
* consolidate SSO settings

* update saml settings

* fix type error
2023-03-02 09:00:51 +01:00
Jan Oberhauser 3172ea376e Merge tag 'n8n@0.217.2' 2023-02-27 13:07:35 +01:00
github-actions[bot] 948b37592f
🚀 Release 0.217.2 (#5573) 2023-02-27 12:42:56 +01:00
कारतोफ्फेलस्क्रिप्ट™ a19ec6ac94
fix(core): Revert isPending check on the user entity (#5571) 2023-02-27 12:35:59 +01:00
कारतोफ्फेलस्क्रिप्ट™ 43eec66828 fix(core): Revert isPending check on the user entity (#5571) 2023-02-27 12:35:29 +01:00
Csaba Tuncsik 51eedaccd4 fix(core): Fix Filtering of Workflow by Tags (#5570) 2023-02-27 12:35:01 +01:00
कारतोफ्फेलस्क्रिप्ट™ 2137ae23d7 fix(core): Fix execution pruning queries (#5562)
* fix(core): Execution pruning should delete query should use the `OR` operator

* fix(core): Prune executions in a chunk to avoid sqlite error "Expression tree is too large"

* reduce the memory usage during execution pruning
2023-02-27 12:35:01 +01:00
Csaba Tuncsik ea2035b510
fix(core): Fix Filtering of Workflow by Tags (#5570) 2023-02-27 12:25:45 +01:00
Michael Auerswald 40a934bbb4
feat(core): Add SAML login setup (#5515)
* initial commit with sample data

* basic saml setup

* cleanup console logs

* limit saml endpoints through middleware

* basic login and token issue

* saml service and cleanup

* refactor and create user

* get/set saml prefs

* fix authentication issue

* redirect to user details

* merge fix

* add generated password to saml user

* update user from attributes where possible

* refactor and fix creating new user

* rename saml prefs key

* minor cleanup

* Update packages/cli/src/config/schema.ts

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

* Update packages/cli/src/config/schema.ts

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

* Update packages/cli/src/controllers/auth.controller.ts

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

* code review changes

* fix default saml enabled

* remove console.log

* fix isSamlLicensed

---------

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-02-24 20:37:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ 88de6613bd
fix(core): Fix execution pruning queries (#5562)
* fix(core): Execution pruning should delete query should use the `OR` operator

* fix(core): Prune executions in a chunk to avoid sqlite error "Expression tree is too large"

* reduce the memory usage during execution pruning
2023-02-24 18:02:34 +01:00
github-actions[bot] 9735188195
🚀 Release 0.217.1 (#5565) 2023-02-24 16:21:55 +01:00
Omar Ajoue b30db10d89 fix: Prevent executions from displaying as running forever (#5563)
* fix: Prevent executions from displaying as running forever

* fix: Correct migration query
2023-02-24 16:16:24 +01:00
github-actions[bot] a72ef21817
🚀 Release 0.217.0 (#5553) 2023-02-23 18:21:17 +01:00
OlegIvaniv 0fbb3f0f02
fix(core): Do not remove empty output connections arrays in PurgeInvalidWorkflowConnections migration (#5546)
fix(cli): Do not remove empty output connections arrays in PurgeInvalidWorkflowConnections migration
2023-02-22 14:20:06 +01:00
Michael Auerswald 17eff4d7d6
fix(core): Fix execution status filters (#5533)
* fix status filters

* fix countfilter

* add migrations to backfill status

* fix migrations
2023-02-21 21:44:46 +01:00
कारतोफ्फेलस्क्रिप्ट™ 52f740b9e8
refactor(core): Use an IoC container to manage singleton classes [Part-1] (no-changelog) (#5509)
* add typedi

* convert ActiveWorkflowRunner into an injectable service

* convert ExternalHooks into an injectable service

* convert InternalHooks into an injectable service

* convert LoadNodesAndCredentials into an injectable service

* convert NodeTypes and CredentialTypes into an injectable service

* convert ActiveExecutions into an injectable service

* convert WaitTracker into an injectable service

* convert Push into an injectable service

* convert ActiveWebhooks and  TestWebhooks into an injectable services

* handle circular references, and log errors when a circular dependency is found
2023-02-21 19:21:56 +01:00
Jan Oberhauser b44526cd49 Merge tag 'n8n@0.216.1' 2023-02-21 18:47:26 +01:00
github-actions[bot] 7400c35a48
🚀 Release 0.216.1 (#5531)
* 🚀 Release 0.216.1

* fix(core): Do not allow arbitrary path traversal in the credential-translation endpoint (#5522)

* fix(core): Do not allow arbitrary path traversal in BinaryDataManager (#5523)

* fix(core): User update endpoint should only allow updating email, firstName, and lastName (#5526)

* fix(core): Do not explicitly bypass auth on urls containing `.svg` (#5525)

* 📚 Update CHANGELOG.md

---------

Co-authored-by: janober <janober@users.noreply.github.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2023-02-21 14:24:02 +01:00
कारतोफ्फेलस्क्रिप्ट™ fe782c8f6a ci: Setup a semi-automated release process (no-changelog) (#5504)
* ci: Setup a semi-automated release process (no-changelog)

* create tag/release before deleting the temporary branch
2023-02-21 14:16:04 +01:00
कारतोफ्फेलस्क्रिप्ट™ 3ae005cafe
ci: Setup a semi-automated release process (no-changelog) (#5504)
* ci: Setup a semi-automated release process (no-changelog)

* create tag/release before deleting the temporary branch
2023-02-21 14:04:35 +01:00
कारतोफ्फेलस्क्रिप्ट™ f58573dba3
fix(core): Do not explicitly bypass auth on urls containing .svg (#5525) 2023-02-21 11:52:22 +01:00
कारतोफ्फेलस्क्रिप्ट™ 510855d958
fix(core): User update endpoint should only allow updating email, firstName, and lastName (#5526) 2023-02-21 11:22:54 +01:00
कारतोफ्फेलस्क्रिप्ट™ eef2574067
fix(core): Do not allow arbitrary path traversal in BinaryDataManager (#5523) 2023-02-21 11:21:17 +01:00
कारतोफ्फेलस्क्रिप्ट™ f0f8d59fee
fix(core): Do not allow arbitrary path traversal in the credential-translation endpoint (#5522) 2023-02-21 11:21:04 +01:00
Mutasem Aldmour 26a20ed47e
feat: Support feature flag evaluation server side (#5511)
* feat(editor): roll out schema view

* feat(editor): add posthog tracking

* refactor: use composables

* refactor: clean up console log

* refactor: clean up impl

* chore: clean up impl

* fix: fix demo var

* chore: add comment

* refactor: clean up

* chore: wrap error func

* refactor: clean up import

* refactor: make store

* feat: enable rudderstack usebeacon, move event to unload

* chore: clean up alert

* refactor: move tracking from hooks

* fix: reload flags on login

* fix: add func to setup

* fix: clear duplicate import

* chore: add console to tesT

* chore: add console to tesT

* fix: try reload

* chore: randomize instnace id for testing

* chore: randomize instnace id for testing

* chore: add console logs for testing

* chore: move random id to fe

* chore: use query param for testing

* feat: update PostHog api endpoint

* feat: update rs host

* feat: update rs host

* feat: update rs endpoints

* refactor: use api host for BE events as well

* refactor: refactor out posthog client

* feat: add feature flags to login

* feat: add feature flags to login

* feat: get feature flags to work

* feat: add created at to be events

* chore: add todos

* chore: clean up store

* chore: add created at to identify

* feat: add posthog config to settings

* feat: add bootstrapping

* chore: clean up

* chore: fix build

* fix: get dates to work

* fix: get posthog to recognize dates

* chore: refactor

* fix: update back to number

* fix: update key

* fix: get experiment evals to work

* feat: add posthog to signup router

* feat: add feature flags on sign up

* chore: clean up

* fix: fix import

* chore: clean up loading script

* feat: add timeout, fix: script loader

* fix: test timeout and get working on 8080

* refactor: move out posthog

* feat: add experiment tracking

* fix: clear tracked on reset

* fix: fix signup bug

* fix: handle errors when telmetry is disabled

* refactor: remove redundant await

* fix: add back posthog to telemetry

* test: fix test

* test: fix test

* test: add tests for posthog client

* lint: fix

* fix: fix issue with slow decide endpoint

* lint: fix

* lint: fix

* lint: fix

* lint: fix

* chore: address PR feedback

* chore: address PR feedback

* feat: add onboarding experiment
2023-02-21 11:35:35 +03:00
Omar Ajoue 75a094a8c0
fix: Fixes an issue when saving an active workflow without triggers would cause n8n to be stuck (#5513)
fix: Allow saving and editing when an active workflow is saved without triggers
2023-02-20 12:22:27 +01:00
Ahsan Virani db702932f3
feat(core): Add configurable execution history limit (#5505)
* Prune execution data when more than cofnfigured limit

* use stricter typings

* use `pruneDataMaxCount`

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-02-20 10:28:38 +01:00
कारतोफ्फेलस्क्रिप्ट™ 561882f599
refactor(core): Improve instance owner setup and add unit tests (no-changelog) (#5499)
* refactor(core): Avoid fetching all workflows and credentials for the owner setup screen

* refactor(core): Add unit tests for the owner controller
2023-02-17 10:59:09 +01:00
कारतोफ्फेलस्क्रिप्ट™ 12104bc4a3
refactor(core): Delete unused GET /me endpoint (no-changelog) (#5498) 2023-02-17 10:58:48 +01:00
Michael Auerswald d143f3f2ec
feat(core): Add execution runData recovery and status field (#5112)
* adds ExecutionEvents view modal to ExecutionList

* fix time rendering and remove wf column

* checks for unfinished executions and fails them

* prevent re-setting stoppedAt for execution

* some cleanup / manually create rundata after crash

* quicksave

* remove Threads lib, log worker rewrite

* cleanup comment

* fix sentry destination return value

* test for tests...

* run tests with single worker

* fix tests

* remove console log

* add endpoint for execution data recovery

* lint cleanup and some refactoring

* fix accidental recursion

* remove cyclic imports

* add rundata recovery to Workflowrunner

* remove comments

* cleanup and refactor

* adds a status field to executions

* setExecutionStatus on queued worker

* fix onWorkflowPostExecute

* set waiting from worker

* get crashed status into frontend

* remove comment

* merge fix

* cleanup

* catch empty rundata in recovery

* refactor IExecutionsSummary and inject nodeExecution Errors

* reduce default event log size to 10mb from 100mb

* add per node execution status

* lint fix

* merge and lint fix

* phrasing change

* improve preview rendering and messaging

* remove debug

* Improve partial rundata recovery

* fix labels

* fix line through

* send manual rundata to ui at crash

* some type and msg push fixes

* improve recovered item rendering in preview

* update workflowStatistics on recover

* merge fix

* review fixes

* merge fix

* notify eventbus when ui is back up

* add a small timeout to make sure the UI is back up

* increase reconnect timeout to 30s

* adjust recover timeout and ui connection lost msg

* do not stop execution in editor after x reconnects

* add executionRecovered push event

* fix recovered connection not green

* remove reconnect toast and  merge existing rundata

* merge editor and recovered data for own mode
2023-02-17 10:54:07 +01:00
Michael Auerswald 3a9c257f55
feat(core): Add saml feature flag (#5494)
adds saml feature flag
2023-02-16 15:05:39 +01:00
Jan Oberhauser 12ae095154 🔖 Release n8n@0.216.0 2023-02-16 12:18:57 +00:00
Jan Oberhauser f3f026cb5e ⬆️ Set n8n-core@0.155.0, n8n-editor-ui@0.182.0, n8n-nodes-base@0.214.0 and n8n-workflow@0.137.0 on n8n 2023-02-16 12:18:57 +00:00
Mutasem Aldmour 3de49e8f78
feat: Update telemetry api endpoints (#5482)
* feat: update PostHog api endpoint

* feat: update rs host

* feat: update rs host

* feat: update rs endpoints

* refactor: use api host for BE events as well
2023-02-16 15:07:08 +03:00
Csaba Tuncsik a2c6ea9e11
fix(core): Remove unnecessary info from GET /workflows response (#5311)
* fix(core): Remove unnecessary info from `GET /workflows` response

* fix(core): Remove unnecessary info from `GET /workflows` response

* fix(core): Remove credentials from `GET /workflows` response

* fix(core): Update unit tests for `GET /workflows` response

* fix(core): Remove `usedCredentials` from `GET /workflows` response

* fix(core): Update unit tests for `GET /workflows` response

* fix(core): remove nodes from getMany

* fix(core): remove unnecessary owner props from workflow list items

* fix(core): fix lint error

* fix(core): remove unused function

* fix(core): simplifying ownerId usage

* fix(core): trim down the query for workflow listing
2023-02-16 10:36:24 +01:00
कारतोफ्फेलस्क्रिप्ट™ a9f08fc5ba
fix(core): Fix issues with community node installation (no-changelog) (#5481)
This fixes the following issues:
* After a community node is installed, we were not calling `postProcessLoaders`, which was causing a bunch of unexpected behaviors, and sometimes even crashes. This was only happening in the session where the package was installed. After a crash, the restarted service was working without these issues.
* After a community node is installed, the icon for the nodes and credentials were missing in the UI, as we were creating one icons route per installed package at startup, and this did not handle newly installed packages. restarting the service fixes this issue as well.

Fixes https://community.n8n.io/t/showing-weird-count-on-community-nodes/23035
2023-02-15 16:09:53 +01:00
कारतोफ्फेलस्क्रिप्ट™ 83505cb0d4
ci(core): Add unit tests for "me" controller (no-changelog) (#5479) 2023-02-15 09:00:41 +01:00
कारतोफ्फेलस्क्रिप्ट™ a6c59fcbc2
fix(core): Use stricter typing on queries in cli commands (no-changelog) (#5476)
This has been broken since TypeORM upgrade

Fixes:
https://linear.app/n8n/issue/ENG-50
https://community.n8n.io/t/execute-command-stdout/22994
2023-02-14 17:05:53 +01:00
Jan Oberhauser 0ba5573162 🔖 Release n8n@0.215.2 2023-02-14 10:10:30 +00:00
कारतोफ्फेलस्क्रिप्ट™ 4dc458eca5
fix(core): Fix the issue with test webhooks getting removed incorrectly (no-changelog) (#5466)
This broke because of the change [here](https://github.com/n8n-io/n8n/pull/5443/files#diff-b386248ff00977749c873ed85821c241b773e9740d7e7adf94e05b73b350ed74L152).
`finally` block is called even if there is a `return` in the `try` block, and this is causing the test webhook to be removed, even when it shouldn't be removed.
2023-02-13 16:16:53 +01:00
Jan Oberhauser 8f25073a22 🔖 Release n8n@0.215.1 2023-02-11 15:53:54 +00:00
Jan Oberhauser 1627f8b444 ⬆️ Set n8n-core@0.154.1, n8n-editor-ui@0.181.1, n8n-nodes-base@0.213.1 and n8n-workflow@0.136.1 on n8n 2023-02-11 15:53:54 +00:00
Jan Oberhauser 339655611f
fix(core): Fix issue that worker and webhook service close directly (#5461) 2023-02-11 09:46:10 -06:00
agobrech 309c995364
test: Change workflows to test from safe list to skip list (#5457)
* Remove check by safe list to skip list

* add an option to skip using statistics events

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-02-10 17:11:06 +01:00
Jan Oberhauser 231b690605 🔖 Release n8n@0.215.0 2023-02-10 15:46:55 +00:00
Jan Oberhauser ffc88977ef ⬆️ Set n8n-core@0.154.0, n8n-editor-ui@0.181.0, n8n-nodes-base@0.213.0 and n8n-workflow@0.136.0 on n8n 2023-02-10 15:46:55 +00:00
कारतोफ्फेलस्क्रिप्ट™ 9a331ec7b6
fix(core): Stop using unbound calls to stopProcess (no-changelog) (#5456) 2023-02-10 16:34:39 +01:00
Omar Ajoue a2e2ec5442
test: Add tests for ActiveWorkflowRunner class (#5278) 2023-02-10 15:24:20 +01:00
कारतोफ्फेलस्क्रिप्ट™ 538984dc2f
feat(core): Add support for WebSockets as an alternative to Server-Sent Events (#5443)
Co-authored-by: Matthijs Knigge <matthijs@volcano.nl>
2023-02-10 15:02:47 +01:00
कारतोफ्फेलस्क्रिप्ट™ 5194513850
refactor(core): Delete duplicate code across all commands (#5452) 2023-02-10 14:59:20 +01:00
Jan Oberhauser 69f5d6a9fd Merge branch 'n8n_0.214.3' 2023-02-09 12:44:36 -06:00
Jan Oberhauser c278f010ef 🔖 Release n8n@0.214.3 2023-02-09 12:38:05 -06:00
Jan Oberhauser 48740f8763 ⬆️ Set n8n-editor-ui@0.180.3 on n8n 2023-02-09 12:36:56 -06:00
Omar Ajoue 7fc96571e0 fix: MySQL migration parses database contents if necessary (fix for MariaDB) (#5441) 2023-02-09 11:29:43 -06:00
OlegIvaniv b57ec1d6ab fix(editor): Prevent creation of input connections for nodes without input slot (#5425)
* fix(editor): Prevent creation of input connections for nodes without input

* WIP: Workflow checks service and controller

* fix: Created SQLite migration to remove broken connections

* Cleanup & add mysql/posgres migrations

* Linter fixes

* Unify the migration scripts

* Escape migration workflow_entity

* Wrap the migration in try/catch and do not parse nodes and connection if mysql/postgres

* Do migration changes also fro mysql

* refactor: Wrap only the necessary call in try catch block

---------

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-02-09 11:29:34 -06:00
Omar Ajoue 2eb72a6c9f
fix: MySQL migration parses database contents if necessary (fix for MariaDB) (#5441) 2023-02-09 18:15:20 +01:00
OlegIvaniv 018f8a3510
fix(editor): Prevent creation of input connections for nodes without input slot (#5425)
* fix(editor): Prevent creation of input connections for nodes without input

* WIP: Workflow checks service and controller

* fix: Created SQLite migration to remove broken connections

* Cleanup & add mysql/posgres migrations

* Linter fixes

* Unify the migration scripts

* Escape migration workflow_entity

* Wrap the migration in try/catch and do not parse nodes and connection if mysql/postgres

* Do migration changes also fro mysql

* refactor: Wrap only the necessary call in try catch block

---------

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-02-09 16:04:26 +01:00
agobrech fdf47a96de
fix(core): Fix import command for workflows with old format(pre UM) (#5403)
* Replace invalid credentials when importing workflows

* Remove useless console.logs
2023-02-09 15:24:09 +01:00
कारतोफ्फेलस्क्रिप्ट™ 172472664d
ci: Upgrade dev tooling (no-changelog) (#5424)
* Typescript
* Jest
* Turborepo
* pnpm
2023-02-09 13:52:41 +01:00
कारतोफ्फेलस्क्रिप्ट™ 0fb4d7fc19
fix(core): Stop creating icons directories (no-changelog) (#5431)
forgot to remove this in https://github.com/n8n-io/n8n/pull/5419
2023-02-09 11:45:32 +01:00
कारतोफ्फेलस्क्रिप्ट™ 52cb185637
refactor(core): Upgrade typeorm (no-changelog) (#5423)
[Now we can use aggregate functions directly over the repository API](https://github.com/typeorm/typeorm/pull/9737)
2023-02-09 10:44:07 +01:00
Valya 9c1f827dad
feat(core): Live reload node/credential descriptions in development (no-changelog) (#4939) 2023-02-08 19:26:07 +01:00
कारतोफ्फेलस्क्रिप्ट™ f23fb92696
fix(core): Stop copying icons to cache (#5419)
Fixes 

- https://github.com/n8n-io/n8n/issues/4973
- https://github.com/n8n-io/n8n/issues/5274
- https://community.n8n.io/t/starting-n8n-fails-with-ebusy-error/21243
- https://community.n8n.io/t/problem-executing-workflow-ebusy-resource-busy-or-locked-copyfile/21280

Replaces

- https://github.com/n8n-io/n8n/pull/5052
- https://github.com/n8n-io/n8n/pull/5401
2023-02-08 18:57:43 +01:00
Omar Ajoue 5e3e70b83b
feat: Change desktop UM experience (#5312)
* refactor: Hide prompt for desktop

* feat: add email field to personalization modal

* fix: update survey interfaces

* chore: enable personalization survey email key display condition

* feat: add users page upsell for desktop client

* feat: disable UM on desktop where possible

* refactor: Have a single function to decide whether UM is enabled

* feat: update community nodes upsell link

---------

Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: krynble <omar@n8n.io>
Co-authored-by: freyamade <freya@n8n.io>
2023-02-08 11:42:22 +02:00
Omar Ajoue c8245b9f87
fix: Error workflow now correctly checks for subworkflow permissions (#5390) 2023-02-07 17:40:36 +01:00
कारतोफ्फेलस्क्रिप्ट™ 7e2f2f7453
refactor(core): Add unit tests for all external auth middlewares (no-changelog) (#5386) 2023-02-07 15:49:35 +01:00
कारतोफ्फेलस्क्रिप्ट™ 3a435f7057
fix(core): Disable transactions on sqlite migrations that use PRAGMA foreign_keys (#5392)
`PRAGMA foreign_keys` is [a no-op within a sqlite transaction](https://www.sqlite.org/pragma.html#pragma_foreign_keys).
This causes cascade deletes to happen when we create a new user table, and drop the old user table.
2023-02-07 15:14:59 +01:00
Michael Auerswald dd652c0b0d
ci: Add E2E test for scheduled trigger (#5391)
* scheduler e2e test and switch to main mode

* adjust e2e options

* rolling back config changes
2023-02-07 12:41:44 +01:00
कारतोफ्फेलस्क्रिप्ट™ 58b0cf66b5
fix(core): Do not block app startup by telemetry (no-changelog) (#5387) 2023-02-07 12:10:16 +01:00
Jan Oberhauser 91d9f2d202 🔖 Release n8n@0.214.2 2023-02-06 17:59:09 +00:00
Jan Oberhauser 7ec3d93435 ⬆️ Set n8n-editor-ui@0.180.2 and n8n-nodes-base@0.212.2 on n8n 2023-02-06 17:59:09 +00:00
Jan Oberhauser 6b7408d255 🔖 Release n8n@0.214.1 2023-02-06 13:16:12 +00:00
Jan Oberhauser 5ede2180e6 ⬆️ Set n8n-editor-ui@0.180.1 and n8n-nodes-base@0.212.1 on n8n 2023-02-06 13:16:11 +00:00
कारतोफ्फेलस्क्रिप्ट™ a115baa1ac
fix(core): CORS middleware should not process the entire handler chain on OPTIONS requests (no-changelog) (#5368)
fix(core): CORS middleware should not process the entire handler chain on OPTIONS requests
2023-02-06 12:43:50 +01:00
Jan Oberhauser 90b373621f 🔖 Release n8n@0.214.0 2023-02-03 14:38:42 +00:00
Jan Oberhauser 26cc16ad90 ⬆️ Set n8n-core@0.153.0, n8n-editor-ui@0.180.0, n8n-nodes-base@0.212.0 and n8n-workflow@0.135.0 on n8n 2023-02-03 14:38:41 +00:00
OlegIvaniv 6985500a7d
fix(core): Fix populating of node custom api call options (#5347)
* feat(core): Fix populating of node custom api call options

* lint fixes

* Adress PR comments

* Add e2e test and only inject custom API options for latest version

* Make sure to injectCustomApiCallOption for the latest version of node

* feat(cli): Move apiCallOption injection to LoadNodesAndCredentials and add e2e tests to check for custom nodes credentials

* Load nodes and credentials fixtures from a single place

* Console warning if credential is invalid during customApiOptions injection
2023-02-03 13:14:59 +01:00
कारतोफ्फेलस्क्रिप्ट™ 4dab2fec49
fix(core): Add missing schema keys for LDAP (no-changelog) (#5348) 2023-02-03 12:50:08 +01:00
कारतोफ्फेलस्क्रिप्ट™ 56326cb317
fix(core): Use custom cache control only on editor-ui assets (no-changelog) (#5346) 2023-02-03 11:27:24 +01:00
OlegIvaniv 616074158c
fix(core): Revert custom API option injecting (#5345)
Revert "feat(core): Fix populating of node custom api call options (#5303)"

This reverts commit e58bc41d24.
2023-02-02 20:03:45 +01:00
Omar Ajoue b5154d9be5
fix: Prevent unnecessarily touching updatedAt when n8n starts (#5340)
* Include MariaDB in exception list

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>
2023-02-02 17:01:45 +01:00
freya 6ca49f9d54
fix(core): Prevent shared user details being saved alongside execution data (#5334)
* 🔨 - Remove `shared` key from execution save data

* 👕 - Using import type where needed

* remove console.log

* 🔨 - Create new clean workflowData instead of removing shared

If IWorkflowBase changes in future, TS will error out here ensuring it's kept up to date

* 🔨 - use lodash.pick for less verbosity

* 🔨 - fix lodash imports
2023-02-02 15:27:00 +00:00
कारतोफ्फेलस्क्रिप्ट™ 93a2dac063
fix(core): Fix env file config loading (no-changelog) (#5339)
* fix(core): Do not trim config values read from files (no-changelog)

* do not use config.load. it does not work
2023-02-02 15:34:29 +01:00
OlegIvaniv e58bc41d24
feat(core): Fix populating of node custom api call options (#5303)
* feat(core): Fix populating of node custom api call options

* lint fixes

* Adress PR comments

* Add e2e test and only inject custom API options for latest version

* Make sure to injectCustomApiCallOption for the latest version of node
2023-02-02 14:53:08 +01:00
कारतोफ्फेलस्क्रिप्ट™ 6cba652ff9
fix(core): Load config values from files using _FILE env variables (no-changelog) (#5335)
This broke in https://github.com/n8n-io/n8n/pull/5283/
2023-02-02 14:01:55 +01:00
Iván Ovejero 6d811f0d9f
feat(editor): Completions for extensions in expression editor (#5130)
* 🔥 Remove test extensions

* 🚧 Add test description

* 📘 Expand types

*  Export extensions

*  Export collection

*  Mark all proxies

* ✏️ Rename for clarity

*  Export from barrel

*  Create datatype completions

*  Mount datatype completions

* 🧪 Adjust tests

*  Add `path` prop

* 🔥 Remove `()` from completion labels

*  Filter out completions for pseudo-proxies

* 🐛 Fix method error

*  Add metrics

* ✏️ Improve naming

*  Start completion on empty resolvable

*  Implement completion previews

*  Break out completion manager

*  Implement in expression editor modal

* ✏️ Improve naming

*  Filter out irrelevant completions

*  Add preview hint

* ✏️ Improve comments

* 🎨 Style preview hint

*  Expand `hasNoParams`

*  Add spacing for readability

*  Add error codes

* ✏️ Add comment

* 🐛 Fix Esc behavior

*  Parse Unicode

*  Throw on invalid `DateTime`

*  Fix second root completion detection

*  Switch message at completable prefix position

* 🐛 Fix function names for non-dev build

* 🐛 Fix `json` handling

* 🔥 Comment out previews

* ♻️ Apply feedback

* 🔥 Remove extensions

* 🚚 Rename extensions

*  Adjust some implementations

* 🔥 Remove dummy extensions

* 🐛 Fix object regex

* ♻️ Apply feedback

* ✏️ Fix typos

* ✏️ Add `fn is not a function` message

* 🔥 Remove check

*  Add `isNotEmpty` for objects

* 🚚 Rename `global` to `alpha`

* 🔥 Remove `encrypt`

*  Restore `is not a function` error

*  Support `week` on `extract()`

* 🧪 Fix tests

*  Add validation to some string extensions

*  Validate number arrays in some extensions

* 🧪 Fix tests

* ✏️ Improve error message

*  Revert extensions framework changes

* 🧹 Previews cleanup

*  Condense blank completions

*  Refactor dollar completions

*  Refactor non-dollar completions

*  Refactor Luxon completions

*  Refactor datatype completions

*  Use `DATETIMEUNIT_MAP`

* ✏️ Update test description

*  Revert "Use `DATETIMEUNIT_MAP`"

This reverts commit 472a77df5c.

* 🧪 Add tests

* ♻️ Restore generic extensions

* 🔥 Remove logs

* 🧪 Expand tests

*  Add `Math` completions

* ✏️ List breaking change

*  Add doc tooltips

* 🐛 Fix node selector regex

* 🐛 Fix `context` resolution

* 🐛 Allow dollar completions in args

*  Make numeric array methods context-dependent

* 📝 Adjust docs

* 🐛 Fix selector ref

*  Surface error for valid URL

* 🐛 Disallow whitespace in `isEmail` check

* 🧪 Fix test for `isUrl`

*  Add comma validator in `toFloat`

*  Add validation to `$jmespath()`

*  Revert valid URL error

*  Adjust `$jmespath()` validation

* 🧪 Adjust `isUrl` test

*  Remove `{}` and `[]` from compact

* ✏️ Update docs

* 🚚 Rename `stripTags` to `removeTags`

*  Do not inject whitespace inside resolvable

*  Make completions aware of `()`

* ✏️ Add note

*  Update sorting

*  Hide active node name from node selector

* 🔥 Remove `length()` and its aliases

*  Validate non-zero for `chunk`

* ✏️ Reword all error messages

* 🐛 Fix `$now` and `$today`

*  Simplify with `stripExcessParens`

*  Fold luxon into datatype

* 🧪 Clean up tests

* 🔥 Remove tests for removed methods

* 👕 Fix type

* ⬆️ Upgrade lang pack

*  Undo change to `vitest` command

* 🔥 Remove unused method

*  Separate `return` line

* ✏️ Improve description

* 🧪 Expand tests for initial-only completions

* 🧪 Add bracket-aware completions

*  Make check for `all()` stricter

* ✏️ Adjust explanatory comments

* 🔥 Remove unneded copy

* 🔥 Remove outdated comment

*  Make naming consistent

* ✏️ Update comments

*  Improve URL scheme check

* ✏️ Add comment

* 🚚 Move extension

* ✏️ Update `BREAKING-CHANGES.md`

* ✏️ Update upcoming version

* ✏️ Fix grammar

* ✏️ Shorten message

* 🐛 Fix `Esc` behavior

* 🐛 Fix `isNumeric`

*  Support native methods

* 🧪 Skip Pinia tests

* ✏️ Shorten description

* 🔥 Remove outdated comment

* 🧪 Unskip Pinia tests

* ✏️ Add comments

* 🧪 Expand tests to natives

* ✏️ Add clarifying comments

*  Use `setTimeout` to make telemetry non-blocking

* 🐛 Account for no active node in cred modal

*  Resolve without workflow

* 🔥 Remove `Esc` handling on NDV

*  Use `isDateTime`

* 🚚 Move `unique` to next phase

This array extension takes optional args.

*  Merge export

* 🧪 Fix tests

*  Restore check

* ✏️ Make breaking change description more accurate

* 🧪 Fix e2e tests
2023-02-02 12:35:38 +01:00
कारतोफ्फेलस्क्रिप्ट™ ee210e8507
feat(core): Set custom Cache-Control headers for static assets (#5322) 2023-02-02 12:15:46 +01:00
कारतोफ्फेलस्क्रिप्ट™ 8f5f1c3aa5
fix(Mailchimp Trigger Node): Fix webhook recreation (#5328) 2023-02-02 01:00:24 +01:00
कारतोफ्फेलस्क्रिप्ट™ 0de6dc92d7
fix(core): Revert back to console logging in config (no-changelog) (#5319)
broke in https://github.com/n8n-io/n8n/pull/5283
2023-02-01 11:15:00 +01:00
Omar Ajoue b61453d8e6
fix(core): Allow listing users when logged in (no-changelog) (#5308) 2023-01-31 14:18:23 +01:00
Omar Ajoue c7e9a4375f
refactor: Reduce payload size when fetching workflows to prevent memory issues (#5293) 2023-01-31 11:09:33 +01:00
कारतोफ्फेलस्क्रिप्ट™ 5cb7e5007d
feat(core): Export OpenAPI spec for external tools (#5294)
The generated spec is available at /api/v1/openapi.yml
2023-01-30 17:38:31 +01:00
freya 4bd9ed675e
refactor: Clean up workflow stats test file (#5282)
* 🔨 - Use .spyOn for UserManagment

* 🔨 - Remove a no longer needed test

* 🔨 - Refactored and cleaned up workflowstats tests

* 🔨 - Clean up unused imports / lines
2023-01-30 16:34:26 +00:00
कारतोफ्फेलस्क्रिप्ट™ 72249e0de8
refactor(core): Load and validate all config at startup (no-changelog) (#5283) 2023-01-30 14:42:30 +01:00
Jan Oberhauser 97126a3a56 🔖 Release n8n@0.213.0 2023-01-27 15:33:49 +00:00
Jan Oberhauser 5f867d1b45 ⬆️ Set n8n-core@0.152.0, n8n-editor-ui@0.179.0, n8n-nodes-base@0.211.0 and n8n-workflow@0.134.0 on n8n 2023-01-27 15:33:48 +00:00
Iván Ovejero 2ca959b383
refactor: Integrate consistent-type-imports in BE packages (no-changelog) (#5270) 2023-01-27 14:56:56 +01:00
कारतोफ्फेलस्क्रिप्ट™ 845f0f9d20
refactor(core): Switch over all user-management routes to use decorators (#5115) 2023-01-27 11:19:47 +01:00
Iván Ovejero 0a7ea89633
fix: Fix formatting/linting for CI (no-changelog) (#5264)
* ⬆️ Upgrade Prettier

* 📦 Update `pnpm-lock.yaml`

* 🎨 Format all packages

* 🔧 Specify `prettierPath`
2023-01-27 10:18:15 +01:00
Alex Grozav 99e35f1e94
feat(editor): Update design-system and editor dependencies (no-changelog) (#5188) 2023-01-27 02:09:30 +01:00
कारतोफ्फेलस्क्रिप्ट™ 7e229a3d38
fix(core): Do not crash express app on unhandled rejected promises (#5252) 2023-01-26 12:10:09 +01:00
कारतोफ्फेलस्क्रिप्ट™ 68e4083bbd
fix(core): Validate numeric ids in the public API (#5251)
This was incorrectly changed in https://github.com/n8n-io/n8n/pull/5041
2023-01-26 11:46:00 +01:00
कारतोफ्फेलस्क्रिप्ट™ c8a146ba31
ci: Fix CI timeout issues (no-changelog) (#5250) 2023-01-26 11:44:50 +01:00
कारतोफ्फेलस्क्रिप्ट™ 21579a8a2a
fix(core): Handle missing binary metadata in download urls (#5242) 2023-01-25 10:19:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ ac460aa841
ci: Simplify DB truncate in tests (no-changelog) (#5243) 2023-01-25 10:02:28 +01:00
Ricardo Espinoza 0c70a40317
feat(core): Add LDAP support (#3835) 2023-01-25 02:18:39 +01:00
कारतोफ्फेलस्क्रिप्ट™ 259296c5c9
fix(core): Upsert credentials and workflows in the import:* commands (#5231) 2023-01-24 19:05:23 +01:00
कारतोफ्फेलस्क्रिप्ट™ a86c9a628b
refactor(core): Add support for implicit schema in postgres migrations (#5233) 2023-01-24 10:55:20 +01:00
Jan Oberhauser 004adc180f 🔖 Release n8n@0.212.1 2023-01-23 17:15:28 +00:00
Jan Oberhauser b47940604d ⬆️ Set n8n-core@0.151.2, n8n-editor-ui@0.178.1, n8n-nodes-base@0.210.1 and n8n-workflow@0.133.2 on n8n 2023-01-23 17:15:27 +00:00
कारतोफ्फेलस्क्रिप्ट™ bd14ec1110
ci: Fix typing issues in cli tests (no-changelog) (#5227) 2023-01-23 17:41:55 +01:00
Iván Ovejero fcbf4fd587
fix(core): Make pindata with webhook responding on last node manual-only (#5223)
 Add manual check
2023-01-23 12:22:05 +01:00
Michael Auerswald 4f89fb4d4d
fix(core): Fix onWorkflowPostExecute not being called (#5224)
fix onWorkflowPostExecute
2023-01-23 11:53:00 +01:00
Omar Ajoue c5245dd387
fix: Add schema to postgres migrations (hotfix) (#5218)
* fix: Add schema to postgres migrations
2023-01-23 10:16:20 +01:00
Iván Ovejero 7aa65315cc
test: Skip some syslog tests (no-changelog) (#5206)
:test: Skip some syslog tests
2023-01-20 11:02:53 +01:00
agobrech 6e391755e4
fix(core): Fix url in error handelling for the error Trigger (#5201)
* Add workflow id to url in error message

* fix mock message for manual execution

* Fix url missing 's'
2023-01-19 17:56:31 +01:00
Jan Oberhauser 3eed566e9b 🔖 Release n8n@0.212.0 2023-01-19 14:10:40 +00:00
Jan Oberhauser 69ab256301 ⬆️ Set n8n-editor-ui@0.178.0 and n8n-nodes-base@0.210.0 on n8n 2023-01-19 14:10:39 +00:00
Michael Auerswald 9b032d68bc
feat(core): Add Prometheus metrics for n8n events and api invocations (experimental) (#5177)
* create prometheus metrics from events

* feat(core): Add more Prometheus metrics (experimental) (#5187)

* refactor(core): Add Prometheus labels to relevant metrics

* feat(core): Add more Prometheus metrics (experimental)

* add 'v' prefix to value of version label

Co-authored-by: Cornelius Suermann <cornelius@n8n.io>
2023-01-19 12:11:31 +01:00
Cornelius Suermann e36112a6d4
fix(core): Fix migration (no-changelog) (#5186)
* fix(core): Fix migration (no-changelog)

* revert previous fix and apply correct one
2023-01-18 15:42:09 +01:00
Jan Oberhauser 9ede87da02 🔖 Release n8n@0.211.2 2023-01-17 15:14:55 +00:00
Jan Oberhauser f593eacea3 ⬆️ Set n8n-nodes-base@0.209.2 on n8n 2023-01-17 15:14:55 +00:00
Iván Ovejero c0268f572f
fix(core): Restore community nodes installation (#5180)
🐛 Fix check for community nodes not installing
2023-01-17 16:04:58 +01:00
Jan Oberhauser 26be3963a8 🔖 Release n8n@0.211.1 2023-01-16 14:47:16 +00:00
Jan Oberhauser 1513fb824f ⬆️ Set n8n-core@0.151.1, n8n-editor-ui@0.177.1, n8n-nodes-base@0.209.1 and n8n-workflow@0.133.1 on n8n 2023-01-16 14:47:15 +00:00
कारतोफ्फेलस्क्रिप्ट™ 97969fc815
fix: Upgrade jsonwebtoken to address CVE-2022-23540 (#5116) 2023-01-13 18:24:59 +01:00
कारतोफ्फेलस्क्रिप्ट™ 0a5ab560b1
refactor: Upgrade typeorm to 0.3.x (#5151) 2023-01-13 18:12:22 +01:00
Jan Oberhauser a223e6b9f7 🔖 Release n8n@0.211.0 2023-01-13 16:20:25 +00:00
Jan Oberhauser e4e761825e ⬆️ Set n8n-core@0.151.0, n8n-editor-ui@0.177.0, n8n-nodes-base@0.209.0 and n8n-workflow@0.133.0 on n8n 2023-01-13 16:20:24 +00:00
Michael Auerswald e845eb33f9
fix(core): Remove threads pkg, rewrite log writer worker (#5134) 2023-01-13 15:39:25 +01:00
कारतोफ्फेलस्क्रिप्ट™ 14a61f6ab1
fix: Upgrade class-validator to address CVE-2019-18413 (#5139) 2023-01-12 13:06:18 +01:00
कारतोफ्फेलस्क्रिप्ट™ a9fb393e1a
fix: DB revert command shouldn't run full migrations before each revert (#5131) 2023-01-11 18:29:31 +01:00
कारतोफ्फेलस्क्रिप्ट™ 62cce2e518
fix: Run every DB migration inside a transaction (#5129)
* always each DB migrations in a transaction

* `VACUUM` isn't allowed inside transactions.

* `PRAGMA foreign_keys` are automatically toggled before and after every down migration
2023-01-11 18:29:05 +01:00
कारतोफ्फेलस्क्रिप्ट™ a573db2ef7
fix: Report app startup and DB migration errors to Sentry (#5127) 2023-01-11 18:28:35 +01:00
Michael Auerswald 62d06b1e6e
fix(core): Fixes event msg confirmations if no subscribers present (#5118)
* adds ExecutionEvents view modal to ExecutionList

* fix time rendering and remove wf column

* checks for unfinished executions and fails them

* prevent re-setting stoppedAt for execution

* removing UI changes but keeping eventbus fixes

* remove comment
2023-01-11 14:09:09 +01:00
कारतोफ्फेलस्क्रिप्ट™ 0e955760a1
refactor: On workflow deletion, cascade delete all entities associated with it (#5102) 2023-01-10 09:23:44 +01:00
Jan Oberhauser e950192a19 🔖 Release n8n@0.210.2 2023-01-09 13:23:18 +00:00
Jan Oberhauser ec6aac1795 ⬆️ Set n8n-core@0.150.1, n8n-editor-ui@0.176.2, n8n-nodes-base@0.208.2 and n8n-workflow@0.132.1 on n8n 2023-01-09 13:23:18 +00:00
Omar Ajoue a43e3e4112
fix: Do not attempt to save statistics data for unsaved workflows (#5106)
* fix: Do not attempt to save data for unsaved workflows
2023-01-09 12:49:27 +01:00
कारतोफ्फेलस्क्रिप्ट™ 6d0f2bff7f
fix: Remove anonymous ID from tracking calls (#5099) 2023-01-06 15:35:30 +01:00
कारतोफ्फेलस्क्रिप्ट™ 1acc7fea89
refactor(core): Add more overloads for string-type node parameters (no-changelog) (#5101)
* refactor(core): Add more overloads for string-type node parameter (no-changelog)

continued from https://github.com/n8n-io/n8n/pull/4797

* include binaryPropertyOutput
2023-01-06 15:09:32 +01:00
कारतोफ्फेलस्क्रिप्ट™ c4df2049a8
fix: Stop OOM crashes in Execution Data pruning (#5095)
* fix: Stop OOM crashed in Execution Data pruning

Currently while pruning execution data, we are loading all the data in memory. For instances where there are thousands of executions, this causes the container to run out of memory.
Since ids is all we need, we should only query for ids.

* query for Executions only when ids are actually needed for pruning binary data

in default mode the binary data is in the database, and will get pruned along with the executions.
2023-01-06 11:42:58 +01:00
Jan Oberhauser 6e8fadb361 🔖 Release n8n@0.210.1 2023-01-05 17:20:20 +00:00
Jan Oberhauser 26e4f653f9 ⬆️ Set n8n-editor-ui@0.176.1 and n8n-nodes-base@0.208.1 on n8n 2023-01-05 17:20:19 +00:00
कारतोफ्फेलस्क्रिप्ट™ d77523bd31
fix: Pass in the correct server reference to external hooks (no-changelog) (#5094)
* fix: Pass in the correct server reference to external hooks (no-changelog)

* use the correct reference
2023-01-05 16:56:27 +01:00
Alex Grozav 2327563c44
feat: Add user management invite links without SMTP set up (#5084)
* feat: update n8n-users-list to no longer use preset list of actions

* feat: prepared users settings for invite links feature

* refactor: Return invite link URLs when inviting users (#5079)

* refactor: Return invite link URLs when inviting users

* test: Refactor and add tests to mailer

* feat: Add FE inviteAcceptUrl integration (#5085)

* feat: update n8n-users-list to no longer use preset list of actions

* feat: prepared users settings for invite links feature

* feat: add integration with new inviteAcceptUrl changes

* feat: Add inviteAcceptUrl to user list for pending users

Co-authored-by: Alex Grozav <alex@grozav.com>

* fix conflicts

* fix lint issue

* test: Make sure inviteAcceptUrl is defined

* feat: update smtp setup suggestion

* feat: add invite link summary when inviting multiple users

* refactor: Add telemetry flag for when email is sent

* fix: add email_sent correctly to telemetry event

* feat: move SMTP info-tip to invite modal

Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-01-05 17:10:08 +02:00
Omar Ajoue 11a46a4cbc
fix: Remove annonymous ID (no-changelog) (#5093) 2023-01-05 14:59:21 +01:00
Jan Oberhauser 4d9b9e1b7e 🔖 Release n8n@0.210.0 2023-01-05 13:21:41 +00:00
Jan Oberhauser d4d6779e22 ⬆️ Set n8n-core@0.150.0, n8n-editor-ui@0.176.0, n8n-nodes-base@0.208.0 and n8n-workflow@0.132.0 on n8n 2023-01-05 13:21:40 +00:00
Jan Oberhauser 93da026c0d
fix(core): Fix OAuth credential creation via API (#5064)
* fix(core): Fix OAuth credential creation via API

* Fix tests
2023-01-05 07:06:37 -06:00
Iván Ovejero d548161632
feat(core): Security audit (#5034)
*  Implement security audit

*  Use logger

* 🧪 Fix test

*  Switch logger with stdout

* 🎨 Set new logo

*  Fill out Public API schema

* ✏️ Fix typo

*  Break dependency cycle

*  Add security settings values

* 🧪 Test security settings

*  Add publicly accessible instance warning

*  Add metric to CLI command

* ✏️ Fix typo

* 🔥 Remove unneeded path alias

* 📘 Add type import

* 🔥 Remove inferrable output type

*  Set description at correct level

*  Rename constant for consistency

*  Sort URLs

*  Rename local var

*  Shorten name

* ✏️ Improve phrasing

*  Improve naming

*  Fix casing

* ✏️ Add docline

* ✏️ Relocate comment

*  Add singular/plurals

* 🔥 Remove unneeded await

* ✏️ Improve test description

*  Optimize with sets

*  Adjust post master merge

* ✏️ Improve naming

*  Adjust in spy

* 🧪 Fix outdated instance test

* 🧪 Make diagnostics check consistent

*  Refactor `getAllExistingCreds`

*  Create helper `getNodeTypes`

* 🐛 Fix `InternalHooksManager` call

* 🚚 Rename `execution` to `nodes` risk

*  Add options to CLI command

*  Make days configurable

* :revert: Undo changes to `BaseCommand`

*  Improve CLI command UX

*  Change no-report return value

Empty array to trigger empty state on FE.

*  Add empty check to `reportInstanceRisk`

* 🧪 Extend Jest `expect`

* 📘 Augment `jest.Matchers`

* 🧪 Set extend as setup file

* 🔧 Override lint rule for `.d.ts`

*  Use new matcher

*  Update check

* 📘 Improve typings

*  Adjust instance risk check

* ✏️ Rename `execution` → `nodes` in Public API schema

* ✏️ Add clarifying comment

* ✏️ Fix typo

*  Validate categories in CLI command

* ✏️ Improve naming

* ✏️ Make audit reference consistent

* 📘 Fix typing

*  Use `finally` in CLI command
2023-01-05 13:28:40 +01:00
freya 59004fe7bb
fix(core): Fixes issue with workflow lastUpdated field (#5015)
Fixed issue causing workflow updated field to be affected by statistics data
2023-01-05 12:16:40 +00:00
कारतोफ्फेलस्क्रिप्ट™ 5d746c4a83
fix: Apply credential overwrites recursively (#5072)
This ensures that overwrites defined for a parent credential type also applies to all credentials extending it.
2023-01-04 18:16:48 +01:00
कारतोफ्फेलस्क्रिप्ट™ 8b19fdd5f0
refactor: Delete a lot of unused and duplicate code in Server and WebhookServer (#5080)
* store n8n version string in a const and use that everywhere

* reduce code duplication between Server and WebhookServer

* unify redis checks

* fix linting
2023-01-04 11:38:48 +01:00
Michael Auerswald b67f803cbe
feat: Add global event bus (#4860)
* fix branch

* fix deserialize, add filewriter

* add catchAll eventGroup/Name

* adding simple Redis sender and receiver to eventbus

* remove native node threads

* improve eventbus

* refactor and simplify

* more refactoring and syslog client

* more refactor, improved endpoints and eventbus

* remove local broker and receivers from mvp

* destination de/serialization

* create MessageEventBusDestinationEntity

* db migrations, load destinations at startup

* add delete destination endpoint

* pnpm merge and circular import fix

* delete destination fix

* trigger log file shuffle after size reached

* add environment variables for eventbus

* reworking event messages

* serialize to thread fix

* some refactor and lint fixing

* add emit to eventbus

* cleanup and fix sending unsent

* quicksave frontend trial

* initial EventTree vue component

* basic log streaming settings in vue

* http request code merge

* create destination settings modals

* fix eventmessage options types

* credentials are loaded

* fix and clean up frontend code

* move request code to axios

* update lock file

* merge fix

* fix redis build

* move destination interfaces into workflow pkg

* revive sentry as destination

* migration fixes and frontend cleanup

* N8N-5777 / N8N-5789 N8N-5788

* N8N-5784

* N8N-5782 removed event levels

* N8N-5790 sentry destination cleanup

* N8N-5786 and refactoring

* N8N-5809 and refactor/cleanup

* UI fixes and anonymize renaming

* N8N-5837

* N8N-5834

* fix no-items UI issues

* remove card / settings label in modal

* N8N-5842 fix

* disable webhook auth for now and update ui

* change sidebar to tabs

* remove payload option

* extend audit events with more user data

* N8N-5853 and UI revert to sidebar

* remove redis destination

* N8N-5864 / N8N-5868 / N8N-5867 / N8N-5865

* ui and licensing fixes

* add node events and info bubbles to frontend

* ui wording changes

* frontend tests

* N8N-5896 and ee rename

* improves backend tests

* merge fix

* fix backend test

* make linter happy

* remove unnecessary cfg / limit  actions to owners

* fix multiple sentry DSN and anon bug

* eslint fix

* more tests and fixes

* merge fix

* fix workflow audit events

* remove 'n8n.workflow.execution.error' event

* merge fix

* lint fix

* lint fix

* review fixes

* fix merge

* prettier fixes

* merge

* review changes

* use loggerproxy

* remove catch from internal hook promises

* fix tests

* lint fix

* include review PR changes

* review changes

* delete duplicate lines from a bad merge

* decouple log-streaming UI options from public API

* logstreaming -> log-streaming for consistency

* do not make unnecessary api calls when log streaming is disabled

* prevent sentryClient.close() from being called if init failed

* fix the e2e test for log-streaming

* review changes

* cleanup

* use `private` for one last private property

* do not use node prefix package names.. just yet

* remove unused import

* fix the tests

because there is a folder called `events`, tsc-alias is messing up all imports for native events module.
https://github.com/justkey007/tsc-alias/issues/152

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-01-04 09:47:48 +01:00
Thomas S 0ec66bfb42
feat(core): Add compatibility to redis > 6 ACLs system using username in queue-mode (#5048)
feat(redis): add compatibility to redis > 6 ACLs system using username

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-01-03 11:45:03 +01:00
कारतोफ्फेलस्क्रिप्ट™ 3754c5c734
fix: Fix executions bulk deletion (#5074)
since QueryBuilder api doesn't use entity field transforms, we should remove the usage of QueryBuilder wherever there is a filter on a transformed column.
2023-01-03 10:58:34 +01:00
कारतोफ्फेलस्क्रिप्ट™ ee28213538
refactor: Use string ids on Credentials, Workflows, Tags, and Executions DB entities (#5041) 2023-01-02 17:42:32 +01:00
कारतोफ्फेलस्क्रिप्ट™ a455cce7e6
perf: Lazy-load public-api dependencies to reduce baseline memory usage (#5049)
* refactor: Load swagger and openapi dependencies conditionally

* disable public api in tests to reduce heal usage

* update the link and text in SettingsApiView when swagger ui is disabled
2023-01-02 12:14:58 +01:00
कारतोफ्फेलस्क्रिप्ट™ b828cb31d6
perf: Lazy-load queue-mode and analytics dependencies (#5061)
* refactor: lazy load ioredis and bull

* upgrade bull and hiredis

* refactor: lazy load posthog, rudderstack, and sentry

* upgrade Sentry sdk
2023-01-02 12:14:39 +01:00
कारतोफ्फेलस्क्रिप्ट™ 1a6f7a1e0d
perf: Prevent oclif from loading ts-node and typescript (#5047) (no-changelog)
Prevent oclif from loading ts-node and typescript
2022-12-29 12:23:33 +01:00
Iván Ovejero d9b98fc8be
refactor: Lint for no unneeded backticks (#5057) (no-changelog)
*  Create rule `no-unneeded-backticks`

* 👕 Enable rule

*  Run rule on `cli`

*  Run rule on `core`

*  Run rule on `workflow`

*  Rule rule on `design-system`

*  Run rule on `node-dev`

*  Run rule on `editor-ui`

*  Run rule on `nodes-base`
2022-12-29 12:20:43 +01:00
Jan Oberhauser d783a5a21f 🔖 Release n8n@0.209.4 2022-12-28 21:54:22 +00:00
Jan Oberhauser c242809698 ⬆️ Set n8n-editor-ui@0.175.4 on n8n 2022-12-28 21:54:21 +00:00
Jan Oberhauser ab82864065 🔖 Release n8n@0.209.3 2022-12-27 15:22:23 +00:00
Jan Oberhauser cd3f80f133 ⬆️ Set n8n-core@0.149.2, n8n-editor-ui@0.175.3, n8n-nodes-base@0.207.2 and n8n-workflow@0.131.2 on n8n 2022-12-27 15:22:22 +00:00
कारतोफ्फेलस्क्रिप्ट™ 6efbac307f
fix(core): Non owner should be permitted to use their own credentials (#5036) 2022-12-27 09:09:43 -06:00
Iván Ovejero d113977b10
feat(core): Implement webhook-only manual execution (#4960)
*  Implement webhook-only manual execution

* ♻️ Apply feedback
2022-12-27 12:50:50 +01:00
कारतोफ्फेलस्क्रिप्ट™ a229788d4b
ci: Fix linting issues on master (no-changelog) (#5030)
* make CI logs less noisy. suppress linting warning

* fix linting issues
2022-12-23 19:09:52 +01:00
Jan Oberhauser e38865eb7d 🔖 Release n8n@0.209.2 2022-12-23 17:01:12 +00:00
Jan Oberhauser b40e38e555 ⬆️ Set n8n-editor-ui@0.175.2 on n8n 2022-12-23 17:01:09 +00:00
Omar Ajoue 4651147096
refactor: Add missing schema keys (no-changelog) (#5028) 2022-12-23 16:24:11 +01:00
Omar Ajoue 8881ba8d4a
test: Add test case for when policy is set to any and fix a few others (#5019)
* 🚨 - testing subworkflow policies

* test: Add test case for workflow policy 'any'

* refactor: Remove unnecessary information in tests

* test: Improve types and lint

* fix: Add not throw to tests

* fix: Adding missing await statements

Co-authored-by: freyamade <freya@n8n.io>
2022-12-23 15:23:36 +01:00
Cornelius Suermann eeac4768e5
fix(core): Update license SDK to v1.8.0 (no-changelog) (#5023) 2022-12-23 15:01:21 +01:00
Omar Ajoue bb0eedada9
perf: Improve workflows list performance (#5021)
* spike: Improve workflow list performance

* fix: Correcting override behavior

* refactor: Remove unnecessary promise

* remove duplicate code

* remove the `async` that is breaking the listings page

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2022-12-23 13:58:34 +01:00
Jan Oberhauser 4b3aebdd6a 🔖 Release n8n@0.209.1 2022-12-22 18:34:10 +00:00
Jan Oberhauser 9f2e306eaf ⬆️ Set n8n-core@0.149.1, n8n-editor-ui@0.175.1, n8n-nodes-base@0.207.1 and n8n-workflow@0.131.1 on n8n 2022-12-22 18:34:09 +00:00
freya 789682763c
test: Ensure all subworkflow execution policies are tested (#5010) 2022-12-22 17:28:23 +00:00
कारतोफ्फेलस्क्रिप्ट™ 0333b053ee
fix: Fix the linting issue on master (no-changelog) (#5013)
* get rid of the "`parseForESLint` from parser `@typescript-eslint/parser` is invalid" errors

* fix the formatting issue
2022-12-22 09:42:07 -06:00
Omar Ajoue 746e8487d2
fix: Issue with credentials and workflows not being matched correctly due to incorrect typing (#5011)
* fix: Always return ids as strings
2022-12-22 16:09:06 +01:00
कारतोफ्फेलस्क्रिप्ट™ 365ffec3b2
fix: Make tests pass on MySQl and Postgres (no-changelog) (#5005) 2022-12-22 11:13:22 +01:00
Omar Ajoue 87d8865ad3
fix: Restore missing tags in workflow retrieve (#5004) 2022-12-22 10:16:27 +01:00
कारतोफ्फेलस्क्रिप्ट™ 0a416eebea
fix: Remove circular dependencies from cli tests (no-changelog) (#5000)
* fix typescript errors in cli

* remove circular dependencies from cli tests
2022-12-22 10:14:15 +01:00
कारतोफ्फेलस्क्रिप्ट™ 17f13b3b6e
ci: Setup eslint-import-resolver-typescript for improved TS linting (#4996)
* Setup stricter linting for typescript

* make `import/no-unresolved` an error everywhere

* use prettier to format `.vscode/settings.default.json`

* address PR comments
2022-12-22 09:55:39 +01:00
Jan Oberhauser e472f4f3b1 🔖 Release n8n@0.209.0 2022-12-21 16:39:27 +00:00
Jan Oberhauser e52de82a26 ⬆️ Set n8n-core@0.149.0, n8n-editor-ui@0.175.0, n8n-nodes-base@0.207.0 and n8n-workflow@0.131.0 on n8n 2022-12-21 16:39:27 +00:00
Omar Ajoue 25e9f0817a
refactor: Workflow sharing bug bash fixes (#4888)
* fix: Prevent workflows with only manual trigger from being activated

* fix: Fix workflow id when sharing from workflows list

* fix: Update sharing modal translations

* fix: Allow sharees to disable workflows and fix issue with unique key when removing a user

* refactor: Improve error messages and change logging level to be less verbose

* fix: Broken user removal transfer issue

* feat: Implement workflow sharing BE telemetry

* chore: temporarily add sharing env vars

* feat: Implement BE telemetry for workflow sharing

* fix: Prevent issues with possibly missing workflow id

* feat: Replace WorkflowSharing flag references (no-changelog) (#4918)

* ci: Block all external network calls in tests (no-changelog) (#4930)

* setup nock to prevent tests from making any external requests

* mock all calls to posthog sdk

* feat: Replace WorkflowSharing flag references (no-changelog)

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>

* refactor: Remove temporary feature flag for workflow sharing

* refactor: add sharing_role to both manual and node executions

* refactor: Allow changing name, position and disabled of read only nodes

* feat: Overhaul dynamic translations for local and cloud (#4943)

* feat: Overhaul dynamic translations for local and cloud

* fix: remove type casting

* chore: remove unused translations

* fix: fix workflow sharing translation

* test: Fix broken test

* refactor: remove unnecessary import

* refactor: Minor code improvements

* refactor: rename dynamicTranslations to contextBasedTranslationKeys

* fix: fix type imports

* refactor: Consolidate sharing feature check

* feat: update cred sharing unavailable translations

* feat: update upgrade message when user management not available

* fix: rename plan names to Pro and Power

* feat: update translations to no longer contain plan names

* wip: subworkflow permissions

* feat: add workflowsFromSameOwner caller policy

* feat: Fix subworkflow permissions

* shared entites should check for role when deleting users

* refactor: remove circular dependency

* role filter shouldn't be an array

* fixed role issue

* fix: Corrected behavior when removing users

* feat: show instance owner credential sharing message only if isnt sharee

* feat: update workflow caller policy caller ids labels

* feat: update upgrade plan links to contain instance ids

* fix: show check errors below creds message only to owner

* fix(editor): Hide usage page on cloud

* fix: update credential validation error message for sharee

* fix(core): Remove duplicate import

* fix(editor): Extending deployment types

* feat: Overhaul contextual translations (#4992)

feat: update how contextual translations work

* refactor: improve messageing for subworkflow permissions

* test: Fix issue with user deletion and transfer

* fix: Explicitly throw error message so it can be displayed in UI

Co-authored-by: Alex Grozav <alex@grozav.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>
Co-authored-by: freyamade <freya@n8n.io>
Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
2022-12-21 16:42:07 +01:00
कारतोफ्फेलस्क्रिप्ट™ e225c3190e
fix: View option for binary-data shouldn't download the file on Chrome/Edge (#4995)
* delete unused code

* fix: Do not set the `Content-Disposition` header when viewing binary files

* remove the duplicate styles.

these already exist in BinaryDataDisplayEmbed.vue
2022-12-21 13:30:51 +01:00
कारतोफ्फेलस्क्रिप्ट™ 5db9c46043
ci: Break most of the circular dependencies in code (no-changelog) (#4990) 2022-12-21 10:46:26 +01:00
Csaba Tuncsik 0da338f9b5
feat(editor): Add usage and plan pages (#4819)
* feat(editor): Usage and plan page (#4793)

feat(editor): usage and plan page

* feat(editor): Update Usage and plan page (#4842)

* feat(editor): usage and plan store

* feat(editor): usage and plan page updates

* feat(editor): usage and plan add buttons and alert

* tes(editor): usage and plan store

* tes(editor): usage remove refresh button and add link to view plans

* tes(editor): usage use info tip

* tes(editor): usage info style

* feat(editor): Get quotas data (#4866)

feat(editor): get quotas data

* feat(editor): In-app experience (#4875)

* feat: Add license quotas endpoint

* feat: Add trigger count to workflow activation process

* refactor: Get quotas from db

* feat: Add license information

*  - finalised GET /license endpoint

* 🔨 - getActiveTriggerCount return 0 instead of null

* 🐛 - ignore manualTrigger when counting active triggers

*  - add activation endpoint

*  - added renew endpoint

* 🔨 - added return type interfaces

* 🔨 - handle license errors where methods are called

* 🔨 - rename function to match name from lib

* feat(editor): usage add plans buttons logic

* 🚨 - testing new License methods

* feat(editor): usage add more business logic

* chore(editor): code formatting

* 🚨 - added license api tests

* fix(editor): usage store

* fix(editor): usage update translations

* feat(editor): usage add license activation modal

* feat(editor): usage change subscription app url

* feat(editor): usage add contact us link

* feat(editor): usage fix modal width

*  - Add renewal tracking metric

*  - add license data to pulse event

* 🔨 - set default triggercount on entity model

*  - add db migrations for mysql and postgres

* fix(editor): Usage api call data processing and error handling

* fix(editor): Usage fix activation query key

* 🚨 - add initDb to telemetry tests

* 🔨 - move getlicensedata to licenseservice

* 🔨 - return 403 instead of 404 to non owners

* 🔨 - move owner checking to middleware

* 🐛 - fixed incorrectly returned error from middleware

* 🐛 - using mock instead of test db for pulse tests

* fix(editor): Usage fix activation and add success messages

* fix(editor): Usage should not renew activation right after activation

* 🚨 - skipping failing pulse tests for now

* fix(editor): Usage add telemetry calls and apply design review outcomes

* feat(editor): Hide usage page according to BE flag

* feat(editor): Usage modify key activation flow

* feat(editor): Usage change subscription app url

* feat(editor): Usage add telemetry for manage plan

* feat(editor): Usage extend link url query params

* feat(editor): Usage add line chart if there is a workflow limit

* feat(editor): Usage remove query after key activation redirection

* fix(editor): Usage handle limit exceeded workflow chart, add focus to input when modal opened

* fix(editor): Usage activation can return router promise when removing query

* fix(editor): Usage and plan design review

* 🐛 - fix renew endpoint hanging issue

* 🐛 - fix license activation bug

* fix(editor): Usage proper translation for plans and/or editions

* fix(editor): Usage apply David's review results

* fix(editor): Usage page set as default and first under Settings

* fix(editor): Usage open subscription app in new tab

* fix(editor): Usage page having key query param a plan links

* test: Fix broken test

* fix(editor): Usage page address review

* 🧪 Flush promises on telemetry tests

*  Extract helper with `setImmediate`

* 🔥 Remove leftovers

*  Use Adi's helper

* refactor: Comment broken tests

* refactor: add Tenant id to settings

* feat: add environment to license endpoints

* refactor: Move license environment to general settings

* fix: fix routing bug

* fix(editor): Usage page some code review changes and formatting

* fix(editor): Usage page remove direct usage of reusable translation keys

* fix(editor): Usage page async await instead of then

* fix(editor): Usage page show some content only if network requests in component mounted were successful

* chore(editor): code formatting

* fix(editor): Usage checking license environment

* feat(editor): Improve license activation error messages (no-changelog) (#4958)

* fix(editor): Usage changing activation error title

* remove unnecessary import

* fix(editor): Usage refactor notification showing

* fix(editor): Usage using notification directly in store actions

Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: freyamade <freya@n8n.io>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Mutasem <mutdmour@gmail.com>
Co-authored-by: Cornelius Suermann <cornelius@n8n.io>

* fix(editor): Usage change mounted lifecycle logic

* fix(editor): Usage return after successful activation in mounted

* fix: remove console log

* test: fix tests related to settings (#4979)

Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: freyamade <freya@n8n.io>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Mutasem <mutdmour@gmail.com>
Co-authored-by: Cornelius Suermann <cornelius@n8n.io>
Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com>
2022-12-20 10:52:01 +01:00
freya 60b14116f0
refactor(core): Ensure getSharedWorkflowIds returns string[] instead of number[] (#4971)
* 🔨 - getSharedWorkflowIds returns string[]

* 🔨 - update the sharedWorkflow function in public api

* 🔨 - update existing code to handle new data type

* simplify code

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2022-12-19 17:53:36 +01:00
Jan Oberhauser 6e33bd38cb 🔖 Release n8n@0.208.1 2022-12-19 14:18:36 +00:00
Jan Oberhauser 982b5cec3b ⬆️ Set n8n-core@0.148.1, n8n-editor-ui@0.174.1 and n8n-nodes-base@0.206.1 on n8n 2022-12-19 14:18:34 +00:00
कारतोफ्फेलस्क्रिप्ट™ 323bd78067
fix: Enable crash journal only in production mode (no-changelog) (#4948)
* consolidate various `NODE_ENV` checks in the `cli` package

* enable crash journal only in production
2022-12-16 15:27:49 +01:00
Jan Oberhauser 20616e7af7 ⬆️ Set n8n-workflow@0.130.0 on multiple packages 2022-12-16 07:45:28 -06:00
Jan Oberhauser 1725898c7b 🔖 Release n8n@0.208.0 2022-12-16 13:26:51 +00:00
Jan Oberhauser 4ddc787585 ⬆️ Set n8n-core@0.148.0, n8n-editor-ui@0.174.0 and n8n-nodes-base@0.206.0 on n8n 2022-12-16 13:26:51 +00:00
कारतोफ्फेलस्क्रिप्ट™ 6127c958f5
fix: Do not crash the server when Telemetry is blocked via DNS (#4947)
* do not crash the process on unhandled axios errors

* postHog.capture does not return a promise
2022-12-16 13:23:24 +01:00
Valya fe0f982437
feat: Hide credentials password values (#4868)
* feat: redact password field values in credentials

* feat: disable expanding password fields

* fix: redacting credentials without a valid type

This only seems to be a thing in testing?
2022-12-15 13:31:06 +00:00
Michael Kret efa4c56757
fix(core): Fix for Google and Microsoft generic OAuth2 credentials 2022-12-15 10:54:34 +02:00
कारतोफ्फेलस्क्रिप्ट™ d5b06ab3d6
ci: Block all external network calls in tests (no-changelog) (#4930)
* setup nock to prevent tests from making any external requests

* mock all calls to posthog sdk
2022-12-14 15:28:41 +01:00
freya 0f40ca39ba
feat(core): Allow for hiding usage page via environment (#4899) 2022-12-13 13:59:22 +00:00
Jan Oberhauser de4b4bee9b 🔖 Release n8n@0.207.1 2022-12-13 13:18:03 +00:00
Jan Oberhauser f5bba9cf31 ⬆️ Set n8n-editor-ui@0.173.1 and n8n-nodes-base@0.205.1 on n8n 2022-12-13 13:18:03 +00:00
कारतोफ्फेलस्क्रिप्ट™ 91e9a88e3a
fix: Ensure parent directory exists before copying over the icons to generated static directory (#4865)
fix: Ensure parent directory exists before copying over the icon to generated static directory.

This fixes the issue of icons not showing up for custom nodes that use a package-name with a `/` in them.
2022-12-12 16:41:18 +01:00
Jan Oberhauser 2958729863 🔖 Release n8n@0.207.0 2022-12-12 14:59:11 +00:00
Jan Oberhauser 2ef5fea802 ⬆️ Set n8n-core@0.147.0, n8n-editor-ui@0.173.0, n8n-nodes-base@0.205.0 and n8n-workflow@0.129.0 on n8n 2022-12-12 14:59:11 +00:00
Cornelius Suermann ebad81a68b
fix: Use license-sdk v1.6.1 (#4872)
* fix: use license-sdk v1.6.1

* commit pnpm-lock-yaml
2022-12-09 10:58:49 +01:00
कारतोफ्फेलस्क्रिप्ट™ 593354b6d8
fix: Increase workflow reactivation max timeout to 1 day (#4869) 2022-12-09 09:52:37 +01:00
कारतोफ्फेलस्क्रिप्ट™ 4cb4c5e818
fix: Stop returning UNKNOWN ERROR in the response if an actual error message is available (#4859) 2022-12-08 13:32:33 +01:00
Omar Ajoue 5156328c34
fix: Issue listing executions with Postgres (#4856) 2022-12-08 10:49:48 +01:00
OlegIvaniv 1c36c37a12
test(editor): Fix flaky e2e tests (#4779)
* test(editor): Fix default-owner and credentials saving e2e specs

* test(editor): fix webhook node test

* test(editor): add cy command for browser permissions

* test(editor): add cy command for reading clipboard

* Fix 3-default-owner spec

* Resolve review comments

* Merge spec

* Fix http node and expression editor modal specs

* Add optional param to credentials modal saving action to wait for the test endpoint

* Improve sidebar items clicking and increase credentials saving timeout

* Rename http e2e spec to fix ordering

* Fix pasting and copying of nodes e2e spec

* Make sure to only access error.cause if it exists

* Wait longer for the keyboard press

* Make sure to focus the body when typing

* Try type delay

* Use meta key based on the running platform

* Fix flaky workflowTagElements getter

Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
2022-12-07 18:16:38 +01:00
कारतोफ्फेलस्क्रिप्ट™ 7e1a13f9b2
fix: Upgrade sse-channel to mitigate CVE-2019-10744 (#4835)
sse-channel 4 removed CORS support, that's why we need to handle CORS for `/push` ourselves now.
2022-12-07 15:13:36 +01:00
Jan Oberhauser 86c18939b7 🔖 Release n8n@0.206.1 2022-12-07 11:48:58 +00:00
Jan Oberhauser 85d08628b4 ⬆️ Set n8n-core@0.146.1, n8n-editor-ui@0.172.1, n8n-nodes-base@0.204.1 and n8n-workflow@0.128.1 on n8n 2022-12-07 11:48:58 +00:00
Omar Ajoue 2ad62bcd44
fix: Remove unnecessary console message (no-changelog) (#4848)
* refactor: Remove unnecessary console message (no-changelog)

* fix: Broken test now passing
2022-12-07 12:40:38 +01:00
Jan Oberhauser 365e73e0c3 🔖 Release n8n@0.206.0 2022-12-06 19:50:22 +00:00
Jan Oberhauser b19051caf5 ⬆️ Set n8n-core@0.146.0, n8n-editor-ui@0.172.0, n8n-nodes-base@0.204.0 and n8n-workflow@0.128.0 on n8n 2022-12-06 19:50:19 +00:00
कारतोफ्फेलस्क्रिप्ट™ 85241fd230
fix: Make nodes.exclude and nodes.include work with lazy-loaded nodes (#4833) 2022-12-06 19:15:15 +01:00
freya 1722c6b0c5
feat(core): Workflow Execution Statistics (#4200)
Add recording and reporting of workflow execution statistics
2022-12-06 14:55:40 +00:00
कारतोफ्फेलस्क्रिप्ट™ 9485e2f12a
fix: Enable source-maps on WorkflowRunnerProcess in own mode (#4832) 2022-12-06 12:16:49 +01:00
Omar Ajoue 4813da547d
refactor: Reactivate workflow locking (#4770)
* feat: Reenable workflow locking

Co-authored-by: freyamade <freya@n8n.io>
Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
2022-12-06 09:25:39 +01:00
Michael Kret 7aefed46dc
fix(core): OAuth2 scopes does not save 2022-12-05 18:28:34 +02:00
Iván Ovejero 5d75e6ceb3
fix(core): Fix partial execution with pinned data on child node run (#4764)
🐛 Fix partial execution with pinned data on child node run
2022-12-05 10:09:31 +01:00
Jan Oberhauser bdeaab4f92 🔖 Release n8n@0.205.0 2022-12-02 09:16:59 +00:00
Jan Oberhauser d8b18750c1 ⬆️ Set n8n-core@0.145.0, n8n-editor-ui@0.171.0, n8n-nodes-base@0.203.0 and n8n-workflow@0.127.0 on n8n 2022-12-02 09:16:59 +00:00
कारतोफ्फेलस्क्रिप्ट™ 2ce62917da
fix: Credential overwrites should take precedence over credential default values (#4782)
fix: Credential overwrites should take precedence over default values
2022-12-02 09:46:19 +01:00
Michael Kret 7cb5dc2aa5
fix(core): OAuth2 scope saved to DB fix 2022-12-01 15:08:02 +02:00
कारतोफ्फेलस्क्रिप्ट™ 8698e02079
fix: Register community nodes as known nodes (no-changelog) (#4775) 2022-11-30 18:17:57 +01:00
freya ddf787c087
fix(core): Ensure executions list is properly filtered for all users (#4765)
Also updates executions API to have EE version
2022-11-30 13:00:28 +00:00
कारतोफ्फेलस्क्रिप्ट™ 0a7a2f3e41
fix: Lazy load nodes for credentials testing (#4760) 2022-11-30 10:28:18 +01:00
Omar Ajoue 47b9d22ed5
fix: Change the currentUserHasAccess flag behavior (no-changelog) (#4763) 2022-11-29 15:54:24 +01:00
Alex Grozav 3d15c52bd7
feat: Update workflow hash change copy (no-changelog) (#4742) 2022-11-28 22:05:19 +02:00
कारतोफ्फेलस्क्रिप्ट™ aac207a947
feat: Reduce initial memory spike at server startup (no-changelog) (#4735)
* feat: Reduce initial memory spike at server startup (no-changelog)

This changes the frontend types generation to generate less garbage for the GC to collect.

* switch to stream pipelines for writing all the static files

and, move all static file generation before the server starts
2022-11-28 17:41:44 +01:00
Omar Ajoue 540f6e0abd
refactor: Upgrade license package version and create tenant id variable (no-changelog) (#4744) 2022-11-28 17:39:34 +01:00
कारतोफ्फेलस्क्रिप्ट™ 1579d05fd1
refactor: Trim down the response on the Workflows listing endpoint (#4726)
* fix: Avoid hashing workflows in the listing page

* stop returning full nodes data on the listings page when sharing is enabled

* fix the relations array for workflow listing

* add a comment explaining the hash skipping hack
2022-11-25 14:20:28 +01:00
Ahsan Virani 78c66f16d6
fix(core): Mark binary data to be deleted when pruning executions (#4713)
* Mark binary data to be deleted when pruning executions

* eslint

* make pruneExecutionData async

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2022-11-25 10:48:02 +01:00
Mutasem Aldmour 95b97078e8
test: Add e2e tests for workflow/credential migrations when enabling UM (#4719)
* add tests

* ci: Setup cypress tasks for resetting DB, and setting up an owner

* add test tests to check for settings

* add more tests

* clean up

* rename tag

* update test id

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2022-11-24 23:22:09 +01:00
कारतोफ्फेलस्क्रिप्ट™ e409813ea9
ci: Setup cypress tasks for resetting DB, and setting up an owner (#4717)
* ci: Setup cypress tasks for resetting DB, and setting up an owner

* address Ivan's comments
2022-11-24 18:32:00 +01:00
कारतोफ्फेलस्क्रिप्ट™ 07e4743a3e
refactor(core): Reduce memory usage in the Webhook node (#4640)
use file streaming to pass webhook binaries around
2022-11-24 16:54:43 +01:00
Jan Oberhauser 63b3cda760 🔖 Release n8n@0.204.0 2022-11-24 15:48:12 +00:00
Jan Oberhauser e1ff7330c4 ⬆️ Set n8n-core@0.144.0, n8n-editor-ui@0.170.0, n8n-nodes-base@0.202.0 and n8n-workflow@0.126.0 on n8n 2022-11-24 15:48:12 +00:00
कारतोफ्फेलस्क्रिप्ट™ 500775de69
ci: Make end-to-end testing independent of development environments (no-changelog) (#4709)
* use user-folder override consistently everywhere, including for the `.cache` folder

* use consistent config for e2e tesing, skipping config loading from env and config files

* simplify all the cypress commands, and run all e2e tests on master
2022-11-24 12:49:01 +01:00
Omar Ajoue ee6ac5d341
fix: Disable workflow locking due to issues (#4708)
* fix: Disable workflow locking due to issues
2022-11-24 09:52:24 +01:00
कारतोफ्फेलस्क्रिप्ट™ b6c57e19fc
feat(core): Lazy-load nodes and credentials to reduce baseline memory usage (#4577) 2022-11-23 16:20:28 +01:00
कारतोफ्फेलस्क्रिप्ट™ f63cd3b89e
fix: Invalid credentials should throw 401 and not 500 (no-changelog) (#4703)
fix: invalid credentials should throw 401 and not 500

I missed to add these in https://github.com/n8n-io/n8n/pull/4691

I've checked not that there are no other cases of http errors that aren't using error classes. This was the last one.
2022-11-23 16:03:47 +01:00
Omar Ajoue 36dc5f0e66
refactor: Add credential information to workflow list (no-changelog) (#4700) 2022-11-23 15:34:17 +01:00
Omar Ajoue 7b00d6e731
feat: Implement runtine check for enterprise features (no-changelog) (#4676)
* feat: Implement runtine check for enterprise features
2022-11-22 14:24:29 +01:00
Iván Ovejero 78119c9f22
refactor: Consolidate .prettierignore patterns (no-changelog) (#4692)
*  Consolidate Prettier ignore patterns

*  Let Prettier select file types to format

* 🎨 Apply formatting
2022-11-22 14:11:29 +01:00
कारतोफ्फेलस्क्रिप्ट™ 0b754a4f85
refactor: Improve error logging/reporting for cli (#4691)
* use response error classes instead of `ResponseError` everywhere

* improve error logging in dev mode or when telemetry is disabled
2022-11-22 14:00:36 +01:00
Omar Ajoue ad6c6f60a1
refactor: Improve warnings and error messages to users about sharing (#4687) (no-changelog)
* refactor: Improve warnings and error messages to users about sharing
2022-11-22 13:05:51 +01:00
कारतोफ्फेलस्क्रिप्ट™ 772ec78349
fix(core): Use CredentialsOverwrites when testing credentials (#4675)
* fix(cli): use CredentialsOverwrites in credentials testing

* fix(editor-ui): do not set credential properties if they have been overwritten
2022-11-22 10:08:35 +01:00
Omar Ajoue 4c423762d6
refactor: Adjust credential endpoints permissions (#4656) (no-changelog)
* refactor: Adjust credential endpoints permissions
2022-11-22 08:37:52 +01:00
कारतोफ्फेलस्क्रिप्ट™ de5b0b03fe
feat: Use longer stack-traces when error-reporting is enabled (#4674) 2022-11-21 17:54:29 +01:00
कारतोफ्फेलस्क्रिप्ट™ c0e13c2a8f
fix: Workflow activation should not crash if one of the credential is invalid (#4671)
fix: workflow activation should not crash if one of the credential is invalid

fixes https://sentry.io/organizations/n8nio/issues/3755260584
2022-11-21 15:51:23 +01:00
Mutasem Aldmour 30e5d3d04c
feat(core): Add license support to n8n (#4566)
* add sdk

* add license manager

* type fix

* add basic func

* store to db

* update default

* activate license

* add sharing flag

* fix setup

* clear license

* update conosle log to info

* refactor

* use npm dependency

* update error logs

* add simple test

* add license tests

* update tests

* update pnpm package

* fix error handling types

* Update packages/cli/src/config/schema.ts

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

* make feature enum

* add warning

* update sdk

* Update packages/cli/src/config/schema.ts

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

Co-authored-by: Cornelius Suermann <cornelius@n8n.io>
2022-11-21 15:41:24 +01:00
Jan Oberhauser 3bf7175994 🔖 Release n8n@0.203.1 2022-11-18 13:13:34 +00:00
Jan Oberhauser 6972b8569c ⬆️ Set n8n-nodes-base@0.201.1 on n8n 2022-11-18 13:13:34 +00:00
Omar Ajoue e1a491edce
refactor: Forbid access to workflows when enterprise features is unavailable (#4635) (no-changelog)
* refactor: Forbid access to workflows when enterprise features is unavailable
2022-11-18 13:07:39 +01:00
Jan Oberhauser 4d58951a06 🔖 Release n8n@0.203.0 2022-11-17 18:19:01 +01:00
Jan Oberhauser fdaba921ea ⬆️ Set n8n-core@0.143.0, n8n-editor-ui@0.169.0, n8n-nodes-base@0.201.0 and n8n-workflow@0.125.0 on n8n 2022-11-17 18:14:27 +01:00
Omar Ajoue b4cec38ee8
fix: Add missing content type to controllers (no-changelog) (#4617)
* fix: add missing content type to controllers

* refactor: use ResponseHelper instead of fixing content type

* fix: remove res.send calls
2022-11-16 14:13:36 +01:00
Alex Grozav 531a290fad
fix: Remove env vars from schema (no-changelog) (#4610) 2022-11-15 14:34:39 +02:00
Alex Grozav 898c25fd7e
feat: Add workflow sharing functionality and permissions (#4370)
* feat(editor): extract credentials view into reusable layout components for workflows view

* feat(editor): add workflow card and start work on empty state

* feat: add hoverable card and finish workflows empty state

* fix: undo workflows response interface changes

* chore: fix linting issues.

* fix: remove enterprise sharing env schema

* fix(editor): fix workflows resource view when sharing is enabled

* fix: change owner tag design and order

* feat: add personalization survey on workflows page

* fix: update component snapshots

* feat: refactored workflow card to use workflow-activator properly

* fix: fix workflow activator and proptypes

* fix: hide owner tag for workflow card until sharing is available

* fix: fixed ownedBy and sharedWith appearing for workflows list

* feat: update tags component design

* refactor: change resource filter select to n8n-user-select

* fix: made telemetry messages reusable

* chore: remove unused import

* refactor: fix component name casing

* refactor: use Vue.set to make workflow property reactive

* feat: add support for clicking on tags for filtering

* chore: fix tags linting issues

* fix: fix resources list layout when title words are very long

* refactor: add active and inactive status text to workflow activator

* fix: fix credentials and workflows sorting when name contains leading whitespace

* fix: remove wrongfully added style tag

* feat: add translations and storybook examples for truncated tags

* fix: remove enterprise sharing env from schema

* refactor: fix workflows module and workflows field store naming conflict

* feat: add workflow share button and open dummy modal

* feat: add workflow sharing modal (in progress)

* feat: add message when sharing disabled

* feat: add sharing messages based on flags

* feat: add workflow sharing api integration and readonly state handling

* fix: change how foreign credentials are handled

* refactor: migrate newly added workflow sharing store methods to pinia

* fix: update foreign credentials handler and add executable prop to node-settings

* fix: fix credentials display issue caused by addCredentials override

* fix: fix various issues when sharing from empty state

* fix: update node duplication credentials

* fix: revert defautl values for sharing env

* feat: hide share button behind feature flag

* chore: add env variable for sharing feature (testing only)

* fix: change enterprise-edition component casing
2022-11-15 14:25:04 +02:00
Iván Ovejero e7316c588f
refactor(core): Enable interim updates check (#4582)
*  Enable interim updates check

*  Set default value

*  Undo default value, keep as sentinel

* 🧪 Unskip tests
2022-11-14 15:38:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ 0148631d28
build: Upgrade some of the backend dev-tooling (no-changelog) (#4589)
* upgrade ts-node

* move tslint and typescript to a single place

* source-map-support should be loaded in the `n8n` bin script, and not in core

* upgrade jest

* Support only node.js 14, 16, or 18
2022-11-14 15:37:32 +01:00
Alex Grozav c1bcc47cb5
fix: Fix inferred type of X cannot be named error after pnpm update (no-changelog) (#4585)
* fix: Fix inferred type of X cannot be named error after pnpm update

* preserve symlinks for `cli`

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2022-11-11 17:05:21 +01:00
Iván Ovejero d35d63a855
feat(core): Add credential runtime checks and prevent tampering in manual run (#4481)
*  Create `PermissionChecker`

*  Adjust helper

* 🔥 Remove superseded helpers

*  Use `PermissionChecker`

* 🧪 Add test for dynamic router switching

*  Simplify checks

*  Export utils

*  Add missing `init` method

* 🧪 Write tests for `PermissionChecker`

* 📘 Update types

* 🧪 Fix tests

*  Set up `runManually()`

*  Refactor to reuse methods

* 🧪 Clear shared tables first

* 🔀 Adjust merge

*  Adjust imports
2022-11-11 11:14:45 +01:00
Jan Oberhauser faff1faaa8 🔖 Release n8n@0.202.1 2022-11-10 20:56:51 +00:00
Jan Oberhauser 5eec6f7f45 ⬆️ Set n8n-core@0.142.1, n8n-editor-ui@0.168.1, n8n-nodes-base@0.200.1 and n8n-workflow@0.124.1 on n8n 2022-11-10 20:56:49 +00:00
कारतोफ्फेलस्क्रिप्ट™ b2201d0c77
fix: Disable some error tracking (#4579)
* fix: remove error tracking for Circular reference in deepCopy

* fix: remove error tracking on crash detection
2022-11-10 21:44:31 +01:00
Jan Oberhauser e2b3ceadc8 🔖 Release n8n@0.202.0 2022-11-10 15:48:19 +00:00
Jan Oberhauser 9d5a779d6e ⬆️ Set n8n-core@0.142.0, n8n-editor-ui@0.168.0, n8n-nodes-base@0.200.0 and n8n-workflow@0.124.0 on n8n 2022-11-10 15:48:17 +00:00
Iván Ovejero 953457ad86
fix(core): Streamline multiple pinned triggers behavior (#4569)
🐛 Fix multiple pinned triggers behavior
2022-11-10 14:03:14 +01:00
कारतोफ्फेलस्क्रिप्ट™ 736777385c
feat: Switch from npm to pnpm (#4429) 2022-11-09 17:32:05 +01:00
कारतोफ्फेलस्क्रिप्ट™ 698d96a617
refactor: Setup typescript project references across workflow, core, and cli (#4519)
* refactor: use consistent folder structure across workflow, core, and cli

* setup typescript project references across workflow, core, and cli
2022-11-09 15:25:00 +01:00
Iván Ovejero 026fb50512
feat(core): Add ownership, sharing and credential details to GET /workflows (#4510)
*  Abstract into `getMany()`

*  Use `getMany()` from free controller

*  Use `getMany()` from paid controller

* 🧪 Add tests

* 🧪 Fix tests

*  Add credential usage info

* 🧪 Update tests

*  Add type and adjust test
2022-11-08 17:52:42 +01:00
कारतोफ्फेलस्क्रिप्ट™ 2425c10b2b
feat(API): Report unhandled app crashes to Sentry (#4548)
* SIGTERM/SIGINT should only be handled once

* move error-handling initialization to commands

* create a new `sleep` function in workflow utils

* detect crashes and report them to Sentry
2022-11-08 17:06:00 +01:00
Michael Kret 479644a499
refactor(core): Update rule typescript-eslint/no-unused-vars to not error when variable starts with _ (#4523)
*  rule and fixes

*  clean up
2022-11-08 15:28:21 +01:00
Valya ebf17e1827
refactor: make IPollFunctions emit consistent with trigger emit (#4201)
* refactor: make IPollFunctions emit consistent with trigger emit

* refactor: re-add underscores to poll emits

* chore: update emit override message
2022-11-08 13:29:20 +00:00
Iván Ovejero 5d73b6e48a
fix(core): Fix manual execution of pinned trigger on main mode (#4535)
🐛 Fix manual execution of pinned trigger on main mode
2022-11-08 09:40:05 +01:00
Iván Ovejero 157e8e0cc8
refactor(core): Skip interim updates check (no-changelog) (#4536)
 Skip interim updates check
2022-11-07 17:33:35 +01:00
कारतोफ्फेलस्क्रिप्ट™ 1c98f97e9e
ci: Revert support for node.js 18 (#4518) (#4537)
Revert "ci: Start supporting node.js 18 (#4518)"

This reverts commit 9ee292cd17.
2022-11-07 17:23:08 +01:00
कारतोफ्फेलस्क्रिप्ट™ 9ee292cd17
ci: Start supporting node.js 18 (#4518)
* ci: start supporting node.js 18

Node.js 18 becomes the active LTS on 2022-10-25, as Node.js 16 goes into maintenance mode.
https://github.com/nodejs/Release#release-schedule

* continue using node 16 for production images

* node 16 for debian and base images as well for now
2022-11-07 15:51:57 +01:00
कारतोफ्फेलस्क्रिप्ट™ f5c20803d7
fix(API): Do not use names for typeorm connections (#4532)
fix(API): do not use names for typeorm connections
2022-11-07 10:07:50 +01:00
कारतोफ्फेलस्क्रिप्ट™ 4517c4a90a
fix: Database config should resolve entities and migrations folder relative to it's path (no-changelog) (#4527)
dbconfig should resolve entities and migrations folder relative to itself
2022-11-04 18:45:37 +01:00
कारतोफ्फेलस्क्रिप्ट™ 41cb0eec6e
feat(API): Set up error tracking using Sentry (#4394)
* feat(cli): Setup error tracking using Sentry

* make error reporting available in the workflows package

* address some of the PR comments

* create a ErrorReporterProxy like LoggerProxy

* remove the `captureError` helper. use ErrorReporterProxy directly

* fix linting issues

* remove ErrorReporterProxy warnings in tests

* check for NODE_ENV === 'production' instead

* IErrorReporter -> ErrorReporter

* ErrorReporterProxy.getInstance() -> ErrorReporter

* allow capturing stacks in warnings as well

* make n8n debugging consistent with `npm start`

* IReportingOptions -> ReportingOptions

* use consistent signature for `error` and `warn`

* use Logger instead of console.log
2022-11-04 17:34:47 +01:00
कारतोफ्फेलस्क्रिप्ट™ eb3fffd203
refactor: consolidate database configs (#4522)
* consolidate db configs

* allow using custom file-name for the sqlite db

* remove the unused `logging` config. it's overwritten in Db.ts
2022-11-04 14:23:58 +01:00
Jan Oberhauser 0b75253f50 🔖 Release n8n@0.201.0 2022-11-02 17:28:15 +00:00
Jan Oberhauser 913296fe20 ⬆️ Set n8n-core@0.141.0, n8n-editor-ui@0.167.0, n8n-nodes-base@0.199.0 and n8n-workflow@0.123.0 on n8n 2022-11-02 17:28:14 +00:00
Iván Ovejero 2b5613ed68
fix(core): fix workflow hasing for MySQL (#4491)
* 🐛 Alphabetize node keys

* 🔥 Remove excess braces
2022-11-01 13:51:13 +01:00