कारतोफ्फेलस्क्रिप्ट™ and GitHub
b6c8a0c413
refactor(core): Reduce code duplication in DB config (no-changelog) ( #8679 )
2024-02-20 14:28:53 +01:00
a743a40376
feat(API): Add tag support to public API ( #8588 )
...
Co-authored-by: Jesús Burgers <jesus.burgers@chakray.co.uk >
Co-authored-by: Jesús Burgers <43568066+jburgers-chakray@users.noreply.github.com >
2024-02-09 15:10:03 +00:00
Cornelius Suermann and GitHub
cd151f1ba9
feat: Include totalUsers in usage metrics during license renewal (no-changelog) ( #8598 )
2024-02-09 14:15:05 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
8e392cfc1d
feat(core): Migrate to n8n's typeorm fork ( #8590 )
2024-02-08 15:13:29 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
40eee3aa49
ci(core): Avoid slow bcrypt calls in tests (no-changelog) ( #8570 )
2024-02-07 17:56:02 +01:00
Iván Ovejero and GitHub
c4e39451db
refactor(core): Continue breaking dependency cycles (no-changelog) ( #8545 )
2024-02-06 10:08:46 +01:00
Iván Ovejero and GitHub
dc5ec8f946
refactor(core): Streamline flows in multi-main mode (no-changelog) ( #8446 )
2024-02-05 09:26:55 +01:00
Iván Ovejero and GitHub
92f939f827
fix(core): Fix workflow tagging failure due to unique constraint check ( #8505 )
2024-02-02 12:36:55 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
5832d3ca46
fix(core): Fix PermissionChecker.check, and add additional unit tests ( #8528 )
2024-02-02 12:21:53 +01:00
dac511b710
refactor(core): Modernize credentials controllers and services (no-changelog) ( #8488 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in >
2024-01-31 09:48:48 +01:00
9e93980957
fix(core): Prevent calling internal hook email event if emailing is disabled ( #8462 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in >
2024-01-29 16:15:30 +01:00
Iván Ovejero and GitHub
db48bdd6d1
fix(core): Handle zero execution statistics on metrics collection during license renewal ( #8463 )
2024-01-26 17:50:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
c70fa66e76
refactor(core): Use DI for WorkflowRunner (no-changelog) ( #8372 )
2024-01-26 13:49:39 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
7c49004018
refactor(core): Use DI for eventBus code - Part 1 (no-changelog) ( #8434 )
2024-01-26 12:21:15 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
d6deceacde
refactor(core): Remove roleId indirection (no-changelog) ( #8413 )
2024-01-24 13:38:57 +01:00
Iván Ovejero and GitHub
c0bc94c78f
refactor(core): Finish removing UserManagementHelper (no-changelog) ( #8418 )
2024-01-23 13:58:31 +01:00
Iván Ovejero and GitHub
a0a1830696
feat(core): Email recipients on resource shared ( #8408 )
2024-01-23 12:03:59 +01:00
ae06fdeb62
fix(core): Fix update workflow cli command being unable to activate all workflows ( #8412 )
...
Co-authored-by: Daniel Schröder <daniel.schroeder@skriptfabrik.com >
2024-01-23 10:59:06 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
913c8c6b0c
feat(core): Upgrade oclif (no-changelog) ( #8381 )
2024-01-22 18:25:36 +01:00
d597c2ab29
feat: Extend collection of usage metrics during license renewal (no-changelog) ( #8369 )
...
Co-authored-by: Iván Ovejero <ivov.src@gmail.com >
2024-01-22 12:29:28 +01:00
Iván Ovejero and GitHub
f35d4fcbd8
refactor(core): Simplify OrchestrationService (no-changelog) ( #8364 )
2024-01-22 11:16:29 +01:00
Tomi Turtiainen and GitHub
99457019f7
feat: Nudge users to become template creators if eligible ( #8357 )
2024-01-17 19:07:34 +02:00
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 and GitHub
2eb829a6b4
refactor(core): Use DI in execution services (no-changelog) ( #8358 )
2024-01-17 15:42:19 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
7cdbb424e3
refactor(core): Move methods from WorkflowHelpers into various workflow services (no-changelog) ( #8348 )
2024-01-17 10:16:13 +01:00
Iván Ovejero and GitHub
7bb2d1799e
refactor(core): Consolidate executions controllers (no-changelog) ( #8349 )
2024-01-16 16:52:21 +01:00
3c2a4000ae
refactor(core): Use DI for LDAP code (no-changelog) ( #8248 )
...
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in >
2024-01-15 09:01:48 -05:00
Iván Ovejero and GitHub
1a0e285553
feat(core): Implement inter-main communication for test webhooks in multi-main setup ( #8267 )
2024-01-12 11:48:58 +01:00
Omar Ajoue and GitHub
8a7c629ea1
fix: Store workflow settings when saving an execution ( #8288 )
2024-01-10 14:20:37 +00:00
Iván Ovejero and GitHub
0dabe5c74e
fix: Fix user reinvites on FE and BE ( #8261 )
2024-01-09 13:52:34 +01:00
Tomi Turtiainen and GitHub
8affdf680d
fix: Hide cred setup button from canvas (no-changelog) ( #8255 )
2024-01-08 13:59:04 +02:00
Iván Ovejero and GitHub
90c065e999
refactor(core): Convert workflows controller to DI (no-changelog) ( #8253 )
2024-01-08 12:54:23 +01:00
Iván Ovejero and GitHub
f2939568cf
perf(core): Optimize workflow activation errors ( #8242 )
...
At https://github.com/n8n-io/n8n/pull/8213 we introduced Redis hashes
for workflow ownership and manual webhooks...
- to remove clutter from multiple related keys at the top level,
- to improve performance by preventing serializing-deserializing, and
- to guarantee atomicity during concurrent updates in multi-main setup.
Workflow activation errors can also benefit from this. Added test
coverage as well.
To test manually, create a workflow with a trigger with an invalid
credential, edit the workflow's `active` column to `true`, and restart.
The activation error should show as a red triangle on canvas and in the
workflow list.
2024-01-05 13:06:42 +01:00
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
कारतोफ्फेलस्क्रिप्ट™ and GitHub
cfe9525dd4
fix(core): Better input validation for the changeRole endpoint ( #8189 )
...
also refactored the code to
1. stop passing around `scope === 'global'`, since this code can be used
only for changing globalRole.
2. leak less details when input validation fails.
## Review / Merge checklist
- [x] PR title and summary are descriptive
- [x] Tests included
2024-01-03 09:33:35 +01:00
Iván Ovejero and GitHub
ece48d6a13
refactor(core): Unify workflow controllers (no-changelog) ( #8175 )
...
Combine EE workflows controller into main workflows controller,
protecting paid functionality behind feature flag checks.
2023-12-29 14:23:58 +01:00
Iván Ovejero and GitHub
e418d42450
refactor(core): Move typeorm operators from various sources into repositories (no-changelog) ( #8174 )
...
Follow-up to: #8165
2023-12-28 13:14:10 +01:00
2c6ffb0153
fix(core): Minor improvements to multi-main setup (no-changelog) ( #8012 )
...
- Move webhook, poller and trigger activation logs closer to activation
event
- Enrich response of `/debug/multi-main-setup`
- Ensure workflow updates broadcast activation state changes only if
state changed
- Fix bug on workflow activation after leadership change
- Ensure debug controller is not available in production
---------
Co-authored-by: Omar Ajoue <krynble@gmail.com >
2023-12-27 16:55:01 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
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
कारतोफ्फेलस्क्रिप्ट™ and GitHub
4007163651
refactor(core): Delete unused code, and fix typings in tests (no-changelog) ( #8142 )
2023-12-22 15:41:29 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
021add0f39
refactor(core): Move active workflows endpoints to a decorated controller class (no-changelog) ( #8101 )
...
This is a continuation of migrating all rest endpoints to decorated controller classes
2023-12-22 11:28:42 +01:00
Iván Ovejero and GitHub
9ac8825a67
refactor(core): Move error execution creation to execution service (no-changelog) ( #8006 )
...
Continue breaking down legacy helpers.
Note: `getUserById` is unused.
2023-12-21 14:15:46 +01:00
Iván Ovejero and GitHub
38d1336fa7
refactor: Add telemetry for RBAC (no-changelog) ( #8056 )
...
https://linear.app/n8n/issue/PAY-1142
2023-12-19 17:02:52 +01:00
कारतोफ्फेलस्क्रिप्ट™ and GitHub
a63d94f28c
refactor(core): Move license endpoints to a decorated controller class (no-changelog) ( #8074 )
2023-12-19 12:13:19 +01:00
Iván Ovejero and GitHub
73d400a1bf
refactor(core): Inject dependencies into workflow services (no-changelog) ( #8066 )
...
Inject dependencies into workflow services (no-changelog)
Up next:
- ~~Make workflow services injectable~~ #8033
- ~~Inject dependencies into workflow services~~ (current)
- Consolidate workflow controllers into one
- Make workflow controller injectable
- Inject dependencies into workflow controller
2023-12-18 16:10:30 +01:00
1e7a309e63
refactor(core): Make workflow services injectable (no-changelog) ( #8033 )
...
Refactor static workflow service classes into DI-compatible classes
Context: https://n8nio.slack.com/archives/C069HS026UF/p1702466571648889
Up next:
- Inject dependencies into workflow services
- Consolidate workflow controllers into one
- Make workflow controller injectable
- Inject dependencies into workflow controller
---------
Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <aditya@netroy.in >
2023-12-15 12:59:56 +01:00
Iván Ovejero and GitHub
c5e6ba8cdd
fix(core): Restore workflow ID during execution creation ( #8031 )
...
## Summary
Restore workflow ID during execution creation removed by [this
PR](https://github.com/n8n-io/n8n/pull/8002/files#diff-c8cbb62ca9ab2ae45e5f565cd8c63fff6475809a6241ea0b90acc575615224af ).
The missing workflow ID, and more generally the fact that `workflow.id`
is optional when it should not be, causes `PermissionChecker.check` to
misreport a credential as inaccessible when it should be accessible.
More generally, start reporting ID-less workflows so we can root them
out and prevent this at type level.
## Related tickets and issues
https://n8nio.slack.com/archives/C035KBDA917/p1702539465555529
2023-12-14 18:13:12 +01:00
Iván Ovejero and GitHub
53c0b49d15
fix(core): Initialize queue once in queue mode ( #8025 )
...
We're initializing the queue twice because of a [bad
merge](https://github.com/n8n-io/n8n/pull/7303/commits/2c6347453806f69b9941389773c14cd0afdd7173 ).
No associated known bugs but no need to init the queue twice. We should
follow up by investigating if any pending bugs can be associated to
this.
2023-12-14 16:16:12 +01:00
Iván Ovejero and GitHub
7b5d0a9546
refactor(core): Introduce import service (no-changelog) ( #8001 )
...
Consolidate import logic into import service.
Also fixes:
- https://linear.app/n8n/issue/PAY-1086
- https://github.com/n8n-io/n8n/issues/7881
-
https://community.n8n.io/t/cli-workflow-imports-failing-after-upgrade-to-v1-18-0/33780
- https://linear.app/n8n/issue/PAY-221
- https://github.com/n8n-io/n8n/issues/5477
- https://community.n8n.io/t/export-workflows-with-tags-got-created/6161
2023-12-13 10:00:21 +01:00
Iván Ovejero and GitHub
d0e44d450f
feat(core): Add multi-main setup debug endpoint (no-changelog) ( #7991 )
...
## Summary
Provide details about your pull request and what it adds, fixes, or
changes. Photos and videos are recommended.
Adi's idea here to help diagnose:
https://n8nio.slack.com/archives/C069KJBJ8HE/p1702300349277609?thread_ts=1702299930.728029&cid=C069KJBJ8HE
...
#### 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-12 15:18:32 +01:00