Commit graph

136 commits

Author SHA1 Message Date
कारतोफ्फेलस्क्रिप्ट™ f8b9b8b680
ci: Upgrade ts-jest for Typescript 5 support (no-changelog) (#5892) 2023-04-04 19:01:47 +02:00
कारतोफ्फेलस्क्रिप्ट™ a260c05fa8
fix(core): Improve axios error handling in nodes (#5891) 2023-04-03 18:37:22 +02:00
Jan Oberhauser fd48b049e5 fix: Upgrade versions in pnpm-lock.yaml (no-changelog) 2023-04-01 19:12:28 +02:00
Michael Auerswald 83aef17120
feat(core): Read ephemeral license from environment and clean up ee flags (#5808)
Co-authored-by: Cornelius Suermann <cornelius@n8n.io>
2023-03-31 13:51:38 +02:00
कारतोफ्फेलस्क्रिप्ट™ 87e979c19a
feat: Upgrade TypeScript to v5 (no-changelog) (#5755) 2023-03-30 13:59:59 +02:00
कारतोफ्फेलस्क्रिप्ट™ dc7e8c64e7
ci: Upgrade pnpm and turborepo (no-changelog) (#5820)
* ci: Upgrade pnpm to v8 (no-changelog)

* ci: Upgrade turborepo (no-changelog)
2023-03-30 11:54:37 +02:00
कारतोफ्फेलस्क्रिप्ट™ be373bb859
Revert "feat(core): Read ephemeral license from environment and cleanup ee flags (#5797)" (#5816)
Revert "feat(core): Read ephemeral license from environment and clean up ee flags (#5797)"

This reverts commit a81ca7c19c.
2023-03-29 18:00:29 +02:00
Michael Auerswald 06d7a46bdc
fix(core): Update lock file (#5801)
update lock file
2023-03-28 17:37:36 +02:00
OlegIvaniv 970c124260
test(editor): Update Cypress and configure numTestsKeptInMemory and experimentalMemoryManagement (no-changelog) (#5778)
test(editor): Update Cypress and configure `numTestsKeptInMemory` and `experimentalMemoryManagement`

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <netroy@users.noreply.github.com>
2023-03-24 16:12:26 +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
Jan Oberhauser b199947c97
ci: Upgrade sanitize-html from 2.9.0 to 2.10.0 (#5744)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-03-21 16:38:48 +01:00
कारतोफ्फेलस्क्रिप्ट™ f7401fb613
fix(core): Force-upgrade http-cache-semantics to address CVE-2022-25881 (#5733)
[GitHub Advisory](https://github.com/advisories/GHSA-rc47-6667-2j5j)
2023-03-21 14:49:35 +01:00
कारतोफ्फेलस्क्रिप्ट™ 8dd7f6e1d4
fix(core): Force-upgrade decode-uri-component to address CVE-2022-38900 (#5734)
[GitHub Advisory](https://github.com/advisories/GHSA-w573-4hg7-7wgq)
2023-03-21 14:49:27 +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
कारतोफ्फेलस्क्रिप्ट™ 4a4e2be96c
fix(core): Upgrade simple-git to address CVE-2022-25912 (#5730)
[GitHub Advisory](https://github.com/advisories/GHSA-9p95-fxvg-qgq2)
2023-03-21 09:48:55 +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
agobrech 33d9784319
fix(core): Improve axios error handling in nodes (#5699)
* fix(core): Improve axios error handling in nodes

* handle axios errors without a response (like when connection fails)

---------

Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-03-20 17:34:14 +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
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
कारतोफ्फेलस्क्रिप्ट™ eb3ba83e63
ci: Setup code-coverage reporting for frontend packages (no-changelog) (#5679) 2023-03-14 13:13:21 +01:00
Alex Grozav d253aa3e95
feat: Add Mirage.js server to enable editor-ui unit tests (#5671)
feat: add Mirage.js server to enable editor-ui unit tests
2023-03-13 11:05:08 +02:00
कारतोफ्फेलस्क्रिप्ट™ 7a4e9ef5fa
refactor: Remove n8n-core dependency in nodes-base (no-changelog) (#5649) 2023-03-09 18:13:15 +01:00
Ricardo Espinoza 6500e985ee
fix(core): Use new version of riot-tmpl in workflow package (no-changelog) (#5619)
* Use new version of riot-tmpl

* update lock file
2023-03-09 09:13:48 +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
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 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
Alex Grozav f0695827f5
feat: Migrate packages from lodash to lodash-es (no-changelog) (#5538) 2023-02-23 16:16:05 +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
कारतोफ्फेलस्क्रिप्ट™ 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
कारतोफ्फेलस्क्रिप्ट™ 510855d958
fix(core): User update endpoint should only allow updating email, firstName, and lastName (#5526) 2023-02-21 11:22:54 +01:00
Jan Oberhauser fcac1ddd9f 📚 Update CHANGELOG.md and main package.json to 0.216.0 2023-02-16 13:22:46 +01:00
Milorad FIlipović 0cf45bc4c8
fix(core): Fix data transformation function that are reported not to work properly (#5338)
* 🔥 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`
*  Using UTC to handle-dates on back-end
*  Added more unit tests for date extensions
*  Not using `JSON.stringify` to render dates
*  Using `deep-equal` library instead of our `deepCompare` function
*  Adding more tests to array extensions
*  Fixing `inBetween` extension function
*  Added tests for `.inBetween()`
*  Updating `isEven` and `isOdd` to throw for floats
*  Updating `Array.merge()` so it works without arguments
* 🔀 Fixing leftover merge confilct
*  Updating `removeFieldsContaining` and `keepFieldsContaining` to throw on empty strings
*  Fixing `pluck()` so it returns only plucked values
* ⬆️ Updating pnpm lockfile
* 👕 Fixing lint errors
*  Using workflow timezone to display dates
* ✔️ Updating tests with workflow timezone
*  Not using system timezone when creating Luxon dates
*  Updating `merge()` and `pluck()` array functions
* 🔀 Sync with `master`: Removing code that was preserved during merge
*  Updating `.pluck()` to return full array if no arguments are passed
*  Updating `keepFieldsContaining` and `merge` object functions
*  Using week as default for `date.extract()`
*  Adding more test cases for DT functions
*  Removing `Object.merge` extension function. Adding missing `deep-equal` dependency
*  Handling `toDate` case when time component is not specified
*  Using workflow's timezone to render dates in output panel, updated unit tests after removing `Object.merge` function
*  Not parsing numbers as dates
* 👕 Fixing lint errors
*  Fixing a typo
*  Making date detection more strict so only stringified dates are getting converted
* 👌 Addressing PR feedback
* 🔥 Removing leftover comment
---------

Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2023-02-15 10:50:16 +01:00
कारतोफ्फेलस्क्रिप्ट™ 83505cb0d4
ci(core): Add unit tests for "me" controller (no-changelog) (#5479) 2023-02-15 09:00:41 +01:00
कारतोफ्फेलस्क्रिप्ट™ b25c10a0e1
ci: Update the "Check Documentation URLs" workflow (no-changelog) (#5473)
* ci: Update the "Check Documentation URLs" workflow (no-changelog)

* fix the documentation url for HtmlExtract node
2023-02-14 13:00:15 +01:00
कारतोफ्फेलस्क्रिप्ट™ f7cbd6b17e
feat(editor): Upgrade to Storybook v7 (no-changelog) (#5454)
Storybook 6 + Webpack 4 are pulling in a lot of dependencies that are blocking us from supporting node 18.
2023-02-14 12:44:13 +01:00
Jan Oberhauser e705701cb0 📚 Update CHANGELOG.md and main package.json to 0.215.1 2023-02-11 09:58:35 -06:00
Jan Oberhauser 21e9af09a7 📚 Update CHANGELOG.md and main package.json to 0.215.0 2023-02-10 09:56:06 -06: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
Iván Ovejero 136b74de5e
test: Upgrade vitest (no-changelog) (#5307)
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-02-10 03:20:15 +01:00
Jan Oberhauser 69f5d6a9fd Merge branch 'n8n_0.214.3' 2023-02-09 12:44:36 -06:00
Jan Oberhauser 1c6a93feec 📚 Update CHANGELOG.md and main package.json to 0.214.3 2023-02-09 12:40:53 -06:00
Valya c7b58e0ed1
fix(core): Expression extension failing with optional chaining (#5370)
* wip

* fix: working optional chaining polyfill

* fix: polyfill optional chaining on extended functions

* test: add optional chaining tests
2023-02-09 13:57:45 +00:00
कारतोफ्फेलस्क्रिप्ट™ 172472664d
ci: Upgrade dev tooling (no-changelog) (#5424)
* Typescript
* Jest
* Turborepo
* pnpm
2023-02-09 13:52:41 +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
कारतोफ्फेलस्क्रिप्ट™ 94f2b2a26f
feat(Edit Image Node): Allow WebP as an image format (#5420) 2023-02-08 23:08:50 +01:00
Valya 9c1f827dad
feat(core): Live reload node/credential descriptions in development (no-changelog) (#4939) 2023-02-08 19:26:07 +01:00
कारतोफ्फेलस्क्रिप्ट™ 7e2f2f7453
refactor(core): Add unit tests for all external auth middlewares (no-changelog) (#5386) 2023-02-07 15:49:35 +01:00
Jan Oberhauser 9efcf19082 📚 Update CHANGELOG.md and main package.json to 0.214.2 2023-02-06 12:35:55 -06:00
Jan Oberhauser 8e428c7133 fix: Upgrade versions in pnpm-lock.yaml (no-changelog) 2023-02-06 07:52:25 -06:00