Tomi Turtiainen
5156313074
refactor(core): Enable import/order eslint rule ( #10794 )
Test Master / install-and-build (push) Waiting to run
Test Master / Unit tests (18.x) (push) Blocked by required conditions
Test Master / Unit tests (20.x) (push) Blocked by required conditions
Test Master / Unit tests (22.4) (push) Blocked by required conditions
Test Master / Lint (push) Blocked by required conditions
Test Master / Notify Slack on failure (push) Blocked by required conditions
Benchmark Docker Image CI / build (push) Waiting to run
2024-09-12 19:07:18 +03:00
Iván Ovejero
6485ca0a4b
refactor(core): Enforce filename casing in cli
package (no-changelog) ( #10594 )
2024-08-28 17:57:46 +02:00
Iván Ovejero
f667b384c9
refactor(core): Standardize filenames in cli
(no-changelog) ( #10484 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-08-22 11:10:37 +02:00
Tomi Turtiainen
afa43e75f6
test(core): Move unit tests closer to testable components (no-changelog) ( #10287 )
2024-08-05 12:12:25 +03:00
Iván Ovejero
1608d2527b
refactor(core): Port endpoints config (no-changelog) ( #10268 )
2024-07-31 17:45:11 +02:00
Tomi Turtiainen
3d23f2f333
test(core): Fix typing issues in tests (no-changelog) ( #10244 )
2024-07-30 20:24:01 +02:00
Iván Ovejero
44ea4c73eb
refactor: Remove unused lint directives (no-changelog) ( #9842 )
2024-06-24 12:13:18 +02:00
Danny Martini
8da0d6e9ba
fix(core): Fix type errors (no-changelog) ( #9571 )
2024-05-31 14:06:13 +02:00
Csaba Tuncsik
596c472ecc
feat: RBAC ( #8922 )
...
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Val <68596159+valya@users.noreply.github.com>
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
Co-authored-by: Valya Bullions <valya@n8n.io>
Co-authored-by: Danny Martini <danny@n8n.io>
Co-authored-by: Danny Martini <despair.blue@gmail.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
Co-authored-by: oleg <me@olegivaniv.com>
Co-authored-by: Michael Kret <michael.k@radency.com>
Co-authored-by: Michael Kret <88898367+michael-radency@users.noreply.github.com>
Co-authored-by: Elias Meire <elias@meire.dev>
Co-authored-by: Giulio Andreini <andreini@netseven.it>
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: Ayato Hayashi <go12limchangyong@gmail.com>
2024-05-17 10:53:15 +02:00
कारतोफ्फेलस्क्रिप्ट™
28261047c3
feat(core): Prevent session hijacking ( #9057 )
2024-04-09 11:20:35 +02:00
कारतोफ्फेलस्क्रिप्ट™
072c3db97d
refactor(core): Rename push sessionId
to pushRef
( #8905 )
2024-04-03 13:43:14 +02:00
कारतोफ्फेलस्क्रिप्ट™
56c8791aff
refactor(core): Remove all legacy auth middleware code (no-changelog) ( #8755 )
2024-02-28 13:12:28 +01:00
Danny Martini
07e6705256
feat(core): Custom session timeout and refresh configuration ( #8342 )
2024-01-22 09:54:13 +01:00
Tomi Turtiainen
9a1cc56806
fix: Set '@typescript-eslint/return-await' rule to 'always' for node code (no-changelog) ( #8363 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2024-01-17 17:08:50 +02:00
Iván Ovejero
c08c5cc37b
refactor(core): Switch plain errors in cli
to ApplicationError
( #7857 )
...
Ensure all errors in `cli` are `ApplicationError` or children of it and
contain no variables in the message, to continue normalizing all the
errors we report to Sentry
Follow-up to: https://github.com/n8n-io/n8n/pull/7839
2023-11-29 12:25:10 +01:00
Iván Ovejero
1c6178759c
refactor(core): Reorganize error hierarchy in cli
package (no-changelog) ( #7839 )
...
Ensure all errors in `cli` inherit from `ApplicationError` to continue
normalizing all the errors we report to Sentry
Follow-up to: https://github.com/n8n-io/n8n/pull/7820
2023-11-28 10:19:27 +01:00
Ricardo Espinoza
8e0ae3cf8c
refactor: Extract Invitation routes to InvitationController (no-changelog) ( #7726 )
...
This PR:
- Creates `InvitationController`
- Moves `POST /users` to `POST /invitations` and move related test to
`invitations.api.tests`
- Moves `POST /users/:id` to `POST /invitations/:id/accept` and move
related test to `invitations.api.tests`
- Adjusts FE to use new endpoints
- Moves all the invitation logic to the `UserService`
---------
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-11-16 12:39:43 -05:00
कारतोफ्फेलस्क्रिप्ट™
3460eb5eeb
fix(core): Initialize JWT Secret before it's used anywhere ( #7707 )
...
HELP-394
2023-11-15 12:17:18 +01:00
कारतोफ्फेलस्क्रिप्ट™
acec9bad71
refactor(core): Convert OAuth1/OAuth2 routes to decorated controller classes (no-changelog) ( #5973 )
2023-11-03 17:20:54 +01:00
Iván Ovejero
62c096710f
refactor: Run lintfix
(no-changelog) ( #7537 )
...
- Fix autofixable violations
- Remove unused directives
- Allow for PascalCased variables - needed for dynamically imported or
assigned classes, decorators, routers, etc.
2023-10-27 14:15:02 +02:00
कारतोफ्फेलस्क्रिप्ट™
05586a900d
refactor(core): Make Logger a service (no-changelog) ( #7494 )
2023-10-25 16:35:22 +02:00
कारतोफ्फेलस्क्रिप्ट™
83762e051d
fix(core): Handle gzip and deflate compressed request payloads ( #7461 )
...
NODE-870
2023-10-18 21:52:15 +02:00
कारतोफ्फेलस्क्रिप्ट™
273d0913fe
feat(HTTP Request Node): Determine binary file name from content-disposition headers ( #7032 )
...
Fixes:
https://community.n8n.io/t/http-request-node-read-filename-from-content-disposition-header-when-downloading-files/13453
https://community.n8n.io/t/read-filename-from-content-disposition-header-when-downloading-files/22192
2023-09-06 12:38:37 +02:00
Iván Ovejero
fd78021b68
feat(core): Add list query middleware to credentials ( #7041 )
2023-09-04 15:00:25 +02:00
Iván Ovejero
b716241b42
feat(core): Add filtering, selection and pagination to users ( #6994 )
...
https://linear.app/n8n/issue/PAY-646
2023-08-28 16:13:17 +02:00
Iván Ovejero
2cfa6d344e
refactor: Consolidate WorkflowService.getMany()
(no-changelog) ( #6892 )
...
In scope:
- Consolidate `WorkflowService.getMany()`.
- Support non-entity field `ownedBy` for `select`.
- Support `tags` for `filter`.
- Move `addOwnerId` to `OwnershipService`.
- Remove unneeded check for `filter.id`.
- Simplify DTO validation for `filter` and `select`.
- Expand tests for `GET /workflows`.
Workflow list query DTOs:
```
filter → name, active, tags
select → id, name, active, tags, createdAt, updatedAt, versionId, ownedBy
```
Out of scope:
- Migrate `shared_workflow.roleId` and `shared_credential.roleId` to
string IDs.
- Refactor `WorkflowHelpers.getSharedWorkflowIds()`.
2023-08-22 13:19:37 +02:00
कारतोफ्फेलस्क्रिप्ट™
10c15874b2
fix(core): Restore body parsing for all content-types for non webhook routes (no-changelog)( #6911 )
...
Changes in https://github.com/n8n-io/n8n/pull/6394 removed xml body parsing for all non-webhook routes. This broken SAML endpoints as they need the XML body parser to function correctly.
2023-08-11 09:18:33 +02:00
Iván Ovejero
dceff675ec
perf(core): Add filtering and pagination to GET /workflows
( #6845 )
...
* Initial setup
* Specify max paginated items
* Simplify
* Add tests
* Add more tests
* Add migrations
* Add top-level property
* Add field selection
* Cleanup
* Rename `total` to `count`
* More cleanup
* Move query logic into `WorkflowRepository`
* Create `AbstractRepository`
* Cleanup
* Fix name
* Remove leftover comments
* Replace reference
* Add default for `rawSkip`
* Remove unneeded typing
* Switch to `class-validator`
* Simplify
* Simplify
* Type as optional
* Make typing more accurate
* Fix lint
* Use `getOwnPropertyNames`
* Use DSL
* Set schema at repo level
* Cleanup
* Remove comment
* Refactor repository methods to middleware
* Add middleware tests
* Remove old test files
* Remove generic experiment
* Reuse `reportError`
* Remove unused type
* Cleanup
* Improve wording
* Reduce diff
* Add missing mw
* Use `Container.get`
* Adjust lint rule
* Reorganize into subdir
* Remove unused directive
* Remove nodes
* Silly mistake
* Validate take
* refactor(core): Adjust index handling in new migrations DSL (no-changelog) (#6876 )
* refactor(core): Adjust index handling in new migrations DSL (no-changelog)
* Account for custom index name
* Also for dropping
* Fix `select` issue with `relations`
* Tighten validation
* Ensure `ownerId` is not added when specifying `select`
2023-08-09 12:30:02 +02:00
कारतोफ्फेलस्क्रिप्ट™
31d8f478ee
refactor(core): Parse Webhook request bodies on-demand ( #6394 )
...
Also,
1. Consistent CORS support ~on all three webhook types~ waiting webhooks never supported CORS. I'll fix that in another PR
2. [Fixes binary-data handling when request body is text, json, or xml](https://linear.app/n8n/issue/NODE-505/webhook-binary-data-handling-fails-for-textplain-files ).
3. Reduced number of middleware that each request has to go through.
4. Removed the need to maintain webhook endpoints in the auth-exception list.
5. Skip all middlewares (apart from `compression`) on Webhook routes.
6. move `multipart/form-data` support out of individual nodes
7. upgrade `formidable`
8. fix the filenames on binary-data in webhooks nodes
9. add unit tests and integration tests for webhook request handling, and increase test coverage
2023-08-01 17:32:30 +02:00
कारतोफ्फेलस्क्रिप्ट™
a76223307f
refactor(core): Load cookieParser
middleware only once (no-changelog) ( #6614 )
...
[Server.ts already explicitly loads `cookieParser`](https://github.com/n8n-io/n8n/blob/master/packages/cli/src/Server.ts#L571 )
2023-07-07 09:57:03 +02:00
Omar Ajoue
632ea275b7
refactor: Removal of request lib from the code ( #6413 )
...
* refactor: Removal of request lib from the code
2023-06-22 21:05:04 +02:00
Iván Ovejero
8c008f5d22
refactor(core)!: Remove basic-auth, external-jwt-auth, and no-auth options ( #6362 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-06-22 20:03:47 +02:00
कारतोफ्फेलस्क्रिप्ट™
e046f656fe
feat(core): Remove all floating promises. Enforce @typescript-eslint/no-floating-promises
( #6281 )
2023-05-24 02:01:45 +02:00
कारतोफ्फेलस्क्रिप्ट™
59aee2270b
fix(core): Skip auth for controllers/routes that don't use the Authorized
decorator, or use Authorized('none')
( #6106 )
2023-04-27 12:51:55 +02:00
कारतोफ्फेलस्क्रिप्ट™
1eeadc6114
refactor(core): Setup decorator based RBAC (no-changelog) ( #5787 )
2023-04-24 11:45:31 +02:00
कारतोफ्फेलस्क्रिप्ट™
10f8c35dbb
refactor(core): Use injectable classes for db repositories (part-1) (no-changelog) ( #5953 )
...
Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2023-04-12 10:59:14 +02:00
Michael Auerswald
f15f4bdcf2
feat(core): Convert eventBus controller to decorator style and improve permissions ( #5779 )
2023-03-27 12:30:03 +02: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
कारतोफ्फेलस्क्रिप्ट™
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
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
कारतोफ्फेलस्क्रिप्ट™
f58573dba3
fix(core): Do not explicitly bypass auth on urls containing .svg
( #5525 )
2023-02-21 11:52:22 +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
कारतोफ्फेलस्क्रिप्ट™
7e2f2f7453
refactor(core): Add unit tests for all external auth middlewares (no-changelog) ( #5386 )
2023-02-07 15:49:35 +01: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
Omar Ajoue
b61453d8e6
fix(core): Allow listing users when logged in (no-changelog) ( #5308 )
2023-01-31 14:18:23 +01: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
कारतोफ्फेलस्क्रिप्ट™
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
कारतोफ्फेलस्क्रिप्ट™
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
कारतोफ्फेलस्क्रिप्ट™
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