कारतोफ्फेलस्क्रिप्ट™
471d7b9420
refactor(core): Move Logger to core
(no-changelog) ( #12310 )
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) Has been cancelled
2024-12-23 13:46:13 +01:00
Iván Ovejero
fe7fb41ad8
refactor(core): Fix push message type inference ( #12331 )
Test Master / install-and-build (push) Has been cancelled
Test Master / Unit tests (18.x) (push) Has been cancelled
Test Master / Unit tests (20.x) (push) Has been cancelled
Test Master / Unit tests (22.4) (push) Has been cancelled
Test Master / Lint (push) Has been cancelled
Test Master / Notify Slack on failure (push) Has been cancelled
2024-12-20 19:45:04 +01:00
Ricardo Espinoza
06f51dc7d2
refactor: Use Ask AI feature through AI services instead of hooks ( #11027 )
2024-10-09 11:24:33 -04:00
Iván Ovejero
3a9c65e1cb
refactor(core): Modernize logger service ( #11031 )
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-10-01 12:16:09 +02:00
कारतोफ्फेलस्क्रिप्ट™
6a35812f92
ci: Setup biome and pre-commit hooks for formatting (no-changelog) ( #10795 )
...
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
Co-authored-by: Tomi Turtiainen <10324676+tomi@users.noreply.github.com>
2024-09-17 15:10:22 +03:00
Iván Ovejero
460fe14ae1
chore: Upgrade to TypeScript 5.6 ( #10822 )
2024-09-16 10:29:28 +02:00
कारतोफ्फेलस्क्रिप्ट™
2f8c8448d3
refactor(core): Move push message types to a new shared package (no-changelog) ( #10742 )
2024-09-13 13:02:00 +02:00
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
कारतोफ्फेलस्क्रिप्ट™
ab9835126e
refactor(core): Use @/databases/
instead of @db/
(no-changelog) ( #10573 )
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-08-27 17:24:20 +02:00
Iván Ovejero
fd58a272e1
refactor(core): Standardize filename casing for controllers and databases (no-changelog) ( #10564 )
2024-08-27 16:44:32 +02:00
Iván Ovejero
96e69ad5f2
refactor(core): Standardize filename casing for environments and eventbus (no-changelog) ( #10527 )
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
2024-08-26 11:10:06 +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
Mutasem Aldmour
5ed2a77740
feat: Add Ask assistant behind feature flag ( #9995 )
...
Co-authored-by: Ricardo Espinoza <ricardo@n8n.io>
Co-authored-by: Milorad Filipovic <milorad@n8n.io>
2024-08-14 14:59:11 +02:00
कारतोफ्फेलस्क्रिप्ट™
33a2703429
feat(core): Allow overriding npm registry for community packages ( #10325 )
2024-08-14 09:44:19 +02:00
Csaba Tuncsik
5a9a2713b4
fix(editor): Remove "move" action from workflow and credential on community plan ( #10057 )
2024-07-18 15:34:39 +02:00
कारतोफ्फेलस्क्रिप्ट™
5887ed6498
refactor(core): Extract all Auth-related User columns into a separate entity ( #9557 )
...
Co-authored-by: Ricardo Espinoza <ricardo@n8n.io>
2024-05-31 09:40:19 +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
Iván Ovejero
7b925ab871
refactor(core): Rename ActiveWorkflowRunner
to ActiveWorkflowManager
(no-changelog) ( #9280 )
2024-05-06 17:54:05 +02:00
Iván Ovejero
7bda92cc7c
refactor(core): Use logger for packages/cli
messages (no-changelog) ( #9302 )
2024-05-03 15:24:27 +02:00
कारतोफ्फेलस्क्रिप्ट™
072c3db97d
refactor(core): Rename push sessionId
to pushRef
( #8905 )
2024-04-03 13:43:14 +02:00
कारतोफ्फेलस्क्रिप्ट™
db4a419c8d
refactor(core): Enforce authorization by default on all routes (no-changelog) ( #8762 )
2024-02-28 17:02:18 +01:00
Iván Ovejero
c4e39451db
refactor(core): Continue breaking dependency cycles (no-changelog) ( #8545 )
2024-02-06 10:08:46 +01:00
कारतोफ्फेलस्क्रिप्ट™
7c49004018
refactor(core): Use DI for eventBus code - Part 1 (no-changelog) ( #8434 )
2024-01-26 12:21:15 +01:00
कारतोफ्फेलस्क्रिप्ट™
d6deceacde
refactor(core): Remove roleId indirection (no-changelog) ( #8413 )
2024-01-24 13:38:57 +01:00
Iván Ovejero
f53c482939
perf(core): Improve caching service ( #8213 )
...
Story: https://linear.app/n8n/issue/PAY-1188
- Implement Redis hashes on the caching service, based on Micha's work
in #7747 , adapted from `node-cache-manager-ioredis-yet`. Optimize
workflow ownership lookups and manual webhook lookups with Redis hashes.
- Simplify the caching service by removing all currently unused methods
and options: `enable`, `disable`, `getCache`, `keys`, `keyValues`,
`refreshFunctionEach`, `refreshFunctionMany`, `refreshTtl`, etc.
- Remove the flag `N8N_CACHE_ENABLED`. Currently some features on
`master` are broken with caching disabled, and test webhooks now rely
entirely on caching, for multi-main setup support. We originally
introduced this flag to protect against excessive memory usage, but
total cache usage is low enough that we decided to drop this setting.
Apparently this flag was also never documented.
- Overall caching service refactor: use generics, reduce branching, add
discriminants for cache kinds for better type safety, type caching
events, improve readability, remove outdated docs, etc. Also refactor
and expand caching service tests.
Follow-up to: https://github.com/n8n-io/n8n/pull/8176
---------
Co-authored-by: Michael Auerswald <michael.auerswald@gmail.com>
2024-01-05 11:52:44 +01:00
कारतोफ्फेलस्क्रिप्ट™
f69ddcd796
refactor(core): Use Dependency Injection for all Controller classes (no-changelog) ( #8146 )
...
## Review / Merge checklist
- [x] PR title and summary are descriptive
2023-12-27 11:50:43 +01:00
Iván Ovejero
c378f60a25
refactor(core): Introduce password utility (no-changelog) ( #7979 )
...
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.
Continue breaking down `UserManagementHelper.ts`
...
#### How to test the change:
1. ...
## Issues fixed
Include links to Github issue or Community forum post or **Linear
ticket**:
> Important in order to close automatically and provide context to
reviewers
...
## Review / Merge checklist
- [ ] PR title and summary are descriptive. **Remember, the title
automatically goes into the changelog. Use `(no-changelog)` otherwise.**
([conventions](https://github.com/n8n-io/n8n/blob/master/.github/pull_request_title_conventions.md ))
- [ ] [Docs updated](https://github.com/n8n-io/n8n-docs ) or follow-up
ticket created.
- [ ] Tests included.
> A bug is not considered fixed, unless a test is added to prevent it
from happening again. A feature is not complete without tests.
>
> *(internal)* You can use Slack commands to trigger [e2e
tests](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#a39f9e5ba64a48b58a71d81c837e8227 )
or [deploy test
instance](https://www.notion.so/n8n/How-to-use-Test-Instances-d65f49dfc51f441ea44367fb6f67eb0a?pvs=4#f6a177d32bde4b57ae2da0b8e454bfce )
or [deploy early access version on
Cloud](https://www.notion.so/n8n/Cloudbot-3dbe779836004972b7057bc989526998?pvs=4#fef2d36ab02247e1a0f65a74f6fb534e ).
2023-12-11 18:23:42 +01:00
Csaba Tuncsik
c461025f70
test: Add user type of admin to E2E tests ( #7935 )
...
## Summary
Extend existing user types in the E2E database. Currently, we have only
owner and member but we need also admin
---------
Co-authored-by: Val <68596159+valya@users.noreply.github.com>
2023-12-06 14:31:06 +01:00
कारतोफ्फेलस्क्रिप्ट™
117962d473
feat(core): Update LLM applications building support (no-changelog) ( #7710 )
...
extracted out of #7336
---------
Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
Co-authored-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Alex Grozav <alex@grozav.com>
2023-11-28 16:47:28 +01:00
Iván Ovejero
2356fb0f0c
feat(core): Set up endpoint for all existing roles with license flag ( #7834 )
...
https://linear.app/n8n/issue/PAY-1034/create-endpoint-to-list-all-existing-roles
2023-11-28 14:16:47 +01:00
Michael Auerswald
cbc690907f
feat(editor): Adds a EE view to show worker details and job status ( #7600 )
...
This change expands on the command channel communication introduced
lately between the main instance(s) and the workers. The frontend gets a
new menu entry "Workers" which will, when opened, trigger a regular call
to getStatus from the workers. The workers then respond via their
response channel to the backend, which then pushes the status to the
frontend.
This introduces the use of ChartJS for metrics.
This feature is still in MVP state and thus disabled by default for the
moment.
2023-11-10 23:48:31 +01:00
कारतोफ्फेलस्क्रिप्ट™
000e76e3b4
ci(core): Reduce memory usage in tests (part-2) (no-changelog) ( #7671 )
...
This also gets rid of `Db.collection`, which was another source of
circular dependencies.
2023-11-10 15:04:26 +01:00
Iván Ovejero
442c73e63b
feat(core): Set up leader selection for multiple main instances ( #7527 )
...
https://linear.app/n8n/issue/PAY-933/set-up-leader-selection-for-multiple-main-instances
- [x] Set up new envs
- [x] Add config and license checks
- [x] Implement `MultiMainInstancePublisher`
- [x] Expand `RedisServicePubSubPublisher` to support
`MultiMainInstancePublisher`
- [x] Init `MultiMainInstancePublisher` on startup and destroy on
shutdown
- [x] Add to sandbox plans
- [x] Test manually
Note: This is only for setup - coordinating in reaction to leadership
changes will come in later PRs.
2023-10-30 16:22:32 +01:00
कारतोफ्फेलस्क्रिप्ट™
b6de910cbe
refactor(core): Abstract away InstanceSettings and encryptionKey
into injectable services (no-changelog) ( #7471 )
...
This change ensures that things like `encryptionKey` and `instanceId`
are always available directly where they are needed, instead of passing
them around throughout the code.
2023-10-23 13:39:35 +02:00
Iván Ovejero
1a661e6d00
feat(core): Integrate object store as binary data manager ( #7253 )
...
Depends on: #7225 | Story:
[PAY-848](https://linear.app/n8n/issue/PAY-848 )
This PR integrates the object store service as a new binary data manager
for Enterprise.
2023-10-05 15:25:17 +02:00
Michael Auerswald
9f797b96d8
feat(core): Add command to trigger license refresh on workers ( #7184 )
...
This PR implements the updated license SDK so that worker and webhook
instances do not auto-renew licenses any more.
Instead, they receive a `reloadLicense` command via the Redis client
that will fetch the updated license after it was saved on the main
instance
This also contains some refactoring with moving redis sub and pub
clients into the event bus directly, to prevent cyclic dependency
issues.
2023-09-17 11:05:54 +02:00
कारतोफ्फेलस्क्रिप्ट™
9d70ce3a15
ci: Fix occasionally failing MFA e2e test (no-changelog) ( #7040 )
2023-08-29 15:39:10 +02:00
Alex Grozav
ed927d34b2
feat: External Secrets storage for credentials ( #6477 )
...
Github issue / Community forum post (link here to close automatically):
---------
Co-authored-by: Romain Minaud <romain.minaud@gmail.com>
Co-authored-by: Valya Bullions <valya@n8n.io>
Co-authored-by: Csaba Tuncsik <csaba@n8n.io>
Co-authored-by: Giulio Andreini <g.andreini@gmail.com>
Co-authored-by: Omar Ajoue <krynble@gmail.com>
2023-08-25 10:33:46 +02:00
Ricardo Espinoza
2b7ba6fdf1
feat(core): Add MFA ( #4767 )
...
https://linear.app/n8n/issue/ADO-947/sync-branch-with-master-and-fix-fe-e2e-tets
---------
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in>
2023-08-23 22:59:16 -04:00
Cornelius Suermann
198a977f57
feat(core): Show a banner when running a non-prod license (no-changelog) ( #6849 )
...
* add feat:showNonProdBanner
* fix linting
* fix linting
2023-08-16 10:05:03 +02:00
Omar Ajoue
3d2f4406d7
feat(core): Debug in Editor flag (no-changelog) ( #6888 )
...
* feat(cli): Debug in Editor flag (no-changelog)
* fix: Lint issue
* chore: Use correct lock version
* fix: Remove dependency cycle
2023-08-09 16:38:17 +02:00
Omar Ajoue
63ffe67dad
feat(core): Add workflow history initial setup (no-changelog) ( #6852 )
...
* feat: Add workflow history initial setup
* fix: Add feature to missing controller
2023-08-04 12:27:06 +02:00
Iván Ovejero
e4f041815a
perf(core): Cache roles ( #6803 )
...
* refactor: Create `RoleService`
* refactor: Refactor to use service
* refactor: Move `getUserRoleForWorkflow`
* refactor: Clear out old `RoleService`
* refactor: Consolidate utils into service
* refactor: Remove unused methods
* test: Add tests
* refactor: Remove redundant return types
* refactor: Missing utility
* chore: Remove commented out bit
* refactor: Make `Db.collections.Repository` inaccessible
* chore: Cleanup
* feat: Prepopulate cache
* chore: Remove logging
* fix: Account for tests where roles are undefined
* fix: Restore `prettier.prettierPath`
* test: Account for cache enabled and disabled
* fix: Restore `Role` in `Db.collections`
* refactor: Simplify by removing `orFail`
* refactor: Rename for clarity
* refactor: Use `cacheKey` for readability
* refactor: Validate role before creation
* refacator: Remove redundant `cache` prefix
* ci: Lint fix
* test: Fix e2e
2023-08-03 08:58:36 +02:00
Milorad FIlipović
4240e76253
feat(editor): Implement new banners framework ( #6603 )
...
* ⚡ Implemented new grid row - banners
* ✨ Fixing node creator and executions sidebar position after layout update
* 💄 Added configurable round corners to the Callout component
* ⚡ Fixing mouse position detection and main tab bar position
* ⚡ Implemented basic banner component structure
* ⚡ Implemented banner state and dismiss logic
* ⚡ Fixing grid layout. Updating banners height state dynamically
* ⚡ Fix zoom to fit position, mouse position in demo mode and callout vertical alignment
* ⚡ Implementing proper trial banners logic
* 💄 Only showing execution usage data once the sidebar is fully expanded
* ✨ Implemented permanent/temporary dismiss logic for v1 flag
* ⚡ Minor refactoring of banner logic
* ⚡ Updating permanent dismiss logic to work with all banners
* 👕 Fixing linting errors
* ✔️ Updating Callout component test snapshots
* 💄 Tweaking zoom to fit position
* ✔️ Updating testing endpoints to use new store data
* ✅ Added banners unit tests
* ✔️ Fixing failing banner tests
* ✅ Added more banner tests
* ⚡ Updating banners dimensions on resize, removing leftover code
* ✔️ Removing store import from API file
* 👕 Fixing lint errors
* ⚡ Updating migration files
* ⚡ Using query parameters in migrations
* 👌 Addressing design review feedback
* ⚡ Updating upgrade plan button click
* ⚡ Updating the migrations syntax
* 👌 Updating permanent banner dismiss endpoint and back-end logic
* 👌 Refactoring trial banner component and ui store
* 👌 Addressing more points from code review
* 👌 Moving DOM logic from the store
* ✔️ Updated callout component snapshots
* 👌 Updating mysql migration file
* ✔️ Updating e2e test canvas coordinates after setting it's position to absolute
* 👌 Addressing back-end review feedback
* 👌 Improving typing around banners
* 👕 Fixing lint errors
2023-07-14 15:36:17 +02:00
OlegIvaniv
e5620ab1e4
feat(API): Implement users account quota guards ( #6434 )
...
* feat(cli): Implement users account quota guards
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Remove comment
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Address PR comments
- Getting `usersQuota` from `Settings` repo
- Revert `isUserManagementEnabled` helper
- Fix FE listing of users
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Refactor isWithinUserQuota getter and fix tests
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Revert testDb.ts changes
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Cleanup & improve types
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Fix duplicated method
* Fix failing test
* Remove `isUserManagementEnabled` completely
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Check for globalRole.name to determine if user is owner
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Fix unit tests
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Set isInstanceOwnerSetUp in specs
* Fix SettingsUserView UM
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* refactor: License typings suggestions for users quota guards (#6636 )
refactor: License typings suggestions
* Update packages/cli/src/Ldap/helpers.ts
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* Update packages/cli/test/integration/shared/utils.ts
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
* Address PR comments
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
* Use 403 for all user quota related errors
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
---------
Signed-off-by: Oleg Ivaniv <me@olegivaniv.com>
Co-authored-by: Iván Ovejero <ivov.src@gmail.com>
2023-07-12 14:11:46 +02:00
कारतोफ्फेलस्क्रिप्ट™
e33cc2c27c
Merge remote-tracking branch 'origin/master' into release/1.0.1
2023-07-05 20:01:24 +02:00
कारतोफ्फेलस्क्रिप्ट™
f0dfc3cf4e
ci: Hide v1 banner in e2e tests to fix 2-credentials.cy.ts (no-changelog)
2023-07-04 22:22:35 +02:00
कारतोफ्फेलस्क्रिप्ट™
0e071724ee
ci: Refactor e2e tests to delete boilerplate code (no-changelog) ( #6524 )
2023-06-23 00:38:12 +02:00