Commit Graph

3062 Commits

Author SHA1 Message Date
Andrey Antukh c214cc1544 🐛 Do not process runner result if no result returned 2025-11-04 12:44:38 +01:00
Andrey Antukh eaabe54c4b 💄 Check the runner task exists as first condition 2025-11-04 12:44:38 +01:00
Andrey Antukh cbae3dca34 Simplify the approach for return streamable body
Removing unnecesary syntax overhead with simplier abstraction
2025-11-04 10:56:05 +01:00
Andrey Antukh 8307b699bf 🐛 Remove a race condition on file export
Caused when file is deleted in the middle of an exportation. The
current export process is not transactional, and on file deletion
several queries can start return not-found exception because of
concurrent file deletion.

With the changes on this PR we allow query deleted files internally
on the exportation process and make it resilent to possible
concurrent deletion.
2025-11-04 10:56:05 +01:00
Andrey Antukh cd6865f54b ⬆️ Update yetti dependency
Bugfixes
2025-11-04 10:56:05 +01:00
Andrey Antukh 88493f6805
🐛 Fix incorrect query for subscription editors (#7672)
Default teams should be present on the query results
2025-11-03 16:14:24 +01:00
Andrey Antukh 83763b46ce Add RPC methods for manage deleted files
This includes: get already deletedf files, restore deleted files
and permanently delete files marked for deletion.
2025-10-31 16:07:23 +01:00
Andrey Antukh 1ddc196484 Make the get-projects return deleted projects
And adapt the frontend code to properly filter
deleted projects on appropriate pages
2025-10-31 16:07:23 +01:00
Andrey Antukh 37d4844518 💄 Add minor cosmetic changes to get-project-files rpc method 2025-10-31 16:07:23 +01:00
Andrey Antukh 76e610dd06 🔥 Remove duplicated functions from file tests namespace 2025-10-31 16:07:23 +01:00
Andrey Antukh f53935f5df Merge remote-tracking branch 'origin/staging' into develop 2025-10-31 12:13:29 +01:00
Andrey Antukh f3805e3b70 🐛 Fix regression on sending quote notification email 2025-10-31 10:56:33 +01:00
Alonso Torres 942e3300dd
🐛 Fix problem when checking usage with removed teams (#7638) 2025-10-31 09:22:31 +01:00
Alejandro Alonso 6a2029ca3b
🐛 Fix error comment message after the demo account creation (#7615) 2025-10-31 08:56:34 +01:00
Pablo Alba 0882c448f6 📎 Cleanup log files 2025-10-23 14:34:26 +02:00
Alejandro Alonso 1e248c7177 🐛 Fix demo accounts creation 2025-10-23 13:45:11 +02:00
Pablo Alba 04542e1e66
Add variants to plugins API 2025-10-23 10:52:10 +02:00
Alejandro Alonso 36c986d8e8 🐛 Fix file doesn’t open after deleting the library used in it 2025-10-23 09:51:10 +02:00
alonso.torres 068caf2784 Merge remote-tracking branch 'origin/staging' into develop 2025-10-21 11:19:21 +02:00
Alejandro Alonso 9e17a0e65d 🐛 Fix unread comments 2025-10-21 09:30:01 +02:00
Marina López f5761066a9
Merge pull request #7511 from penpot/marina-improve-users-give-feedback
 Improve the way users give us feedback
2025-10-17 10:19:34 +02:00
Andrey Antukh fbbee98c3d Add proper backend integration of for new feedback form 2025-10-17 09:40:27 +02:00
Andrey Antukh 95f58ffda5 Allow add attachements on emails 2025-10-17 09:39:58 +02:00
Andrey Antukh 42c416e3cb 📎 Add user feedback defaults to backend scripts/_env 2025-10-17 09:39:58 +02:00
Alejandro Alonso 2c5abb0cbf
Merge pull request #7506 from penpot/niwinz-staging-hotfix-6-comments-threads
 Add minor comment threads queries optimization
2025-10-15 12:04:42 +02:00
Andrey Antukh 7f6bffdbfc Add minor comment threads queries optimization 2025-10-15 11:45:24 +02:00
Andrey Antukh e0dd8247d4 Merge branch 'main' into staging 2025-10-15 11:25:36 +02:00
Alejandro Alonso aec4464749
Merge pull request #7498 from penpot/niwinz-staging-hotfix-4
 Make worker subsystem more resilent to redis restarts
2025-10-15 10:39:04 +02:00
Alejandro Alonso 1d14644250
Merge pull request #7494 from penpot/niwinz-staging-hotfix-3
 Use system clock for check invitation expiration
2025-10-15 10:23:48 +02:00
Alejandro Alonso fad148e6a6 📎 Reorder jvm opts on _env 2025-10-15 10:15:06 +02:00
Andrey Antukh 17376dfa3f Add mark-file-as-trimmed srepl helper 2025-10-14 19:04:02 +02:00
Andrey Antukh 8d65e1cc94 Simplify reset-password srepl helper 2025-10-14 19:04:02 +02:00
Andrey Antukh 25521b18ff Make the restriction errors report as warning to logging 2025-10-14 19:04:02 +02:00
Andrey Antukh 5ae173f01c Make worker subsystem more resilent to redis restarts 2025-10-14 15:48:54 +02:00
Andrey Antukh f7b3913c71 Use system clock for check invitation expiration
instead of db time
2025-10-14 13:35:50 +02:00
Andrey Antukh a4192ce835 🐛 Fix incorrect file data migration from db to legacy-db 2025-10-13 18:41:02 +02:00
Andrey Antukh d3e28a8307 🐛 Set correct name to tokens lib data reader 2025-10-13 18:41:02 +02:00
Andrey Antukh fc35dc77ce 🐛 Enable migrations on calculate file library summary 2025-10-13 14:52:39 +02:00
Andrey Antukh d07e00da21 🐛 Fix incorrect filtering of unread comment threads
Do not return threads for deleted files
2025-10-13 14:52:39 +02:00
Andrey Antukh c4cd665594 📎 Enable redis-cache flag on devenv start scripts 2025-10-13 12:32:29 +02:00
Andrey Antukh 1eb6f33bdd Enable optional caching of results for file summary RPC methods 2025-10-13 12:32:29 +02:00
Andrey Antukh 62dffd30a4 ♻️ Refactor redis internal API
The main idea behind this refactor is make the
API less especialized for specific use of out internal
submidules and make it more general and usable
for more general purposes (per example cache)
2025-10-13 12:32:29 +02:00
Andrey Antukh 12a4934c41 Allow pass :load-data? false to get-file 2025-10-13 12:32:29 +02:00
Alejandro Alonso 2b7bd8fa5c 🐛 Fix deleted files are accesible 2025-10-13 12:24:05 +02:00
Andrey Antukh 5717708b56 ♻️ Refactor file storage
Make it more scallable and make it easily extensible
2025-10-13 12:24:05 +02:00
Andrey Antukh 27bed84543 Improve netty io executor shutdown 2025-10-13 12:24:05 +02:00
Andrey Antukh c6529f9585 🐛 Fix corner case on worker runner 2025-10-13 12:24:05 +02:00
Andrey Antukh 0aadc3b6b3 Add management shared key authentication 2025-10-13 11:49:58 +02:00
Andrey Antukh 1b9deecefc
Make the binfile import process more resilient (#7464)
on small inconsistencies on file media object references
2025-10-13 11:13:10 +02:00
Andrey Antukh cea0143327 Add extra tenant validation for virtual clock dbg pannel 2025-10-07 18:21:13 +02:00
Andrey Antukh 2c1a8b59ba Add client header check middleware
As an additional csrf protection for API requests
2025-10-07 12:47:14 +02:00
Andrey Antukh 47d9c6f282 Add sec-fetch metadata middleware support 2025-10-07 12:47:14 +02:00
Andrey Antukh 14d53c224f 🔥 Remove unused auth-data cookie asignation 2025-10-07 12:47:12 +02:00
Alejandro Alonso e0f9bbb23f
Merge pull request #7432 from penpot/niwinz-develop-virtual-clock
🎉 Add virtual clock support
2025-10-07 12:27:49 +02:00
Marina López fede63ac0b Update Design System template in carousel 2025-10-07 12:14:12 +02:00
Andrey Antukh 61d9b57bc7 ♻️ Refactor internal tokens API
Mainly make it receive the whol cfg/system instead only props. This
makes the api more flexible for a future extending without the need
to change the api again.
2025-10-07 12:08:00 +02:00
Andrey Antukh bd63598185 🎉 Add virtual clock implementation 2025-10-07 12:08:00 +02:00
Andrey Antukh 683db071d6 Merge remote-tracking branch 'origin/staging' into develop 2025-10-06 12:09:57 +02:00
Andrey Antukh 54bb879cb6 📎 Add several missing imports on repl related namespaces 2025-10-06 09:38:01 +02:00
Andrey Antukh b72704e54b Set explicit no-buffering for sse responses 2025-10-06 09:19:48 +02:00
Andrey Antukh 365ce25996 Merge remote-tracking branch 'origin/staging' into develop 2025-10-01 10:50:19 +02:00
Andrey Antukh 9f2dc06c95 Add missing srepl helper for disable objects-map feat 2025-10-01 08:10:37 +02:00
Pablo Alba cd9ba482e3
🐛 Load dependant libraries, and don't allow unload them 2025-09-30 09:55:21 +02:00
Andrey Antukh de25a24a6d 🐛 Fix backend repl start issue with jdk 24 2025-09-29 13:35:48 +02:00
Andrey Antukh 2d364dde5c Add several minor enhacements to features subsystem
Mainly fixes the team non-inheritable features handling and
removes unnecesary/duplicate checks.
2025-09-29 13:23:16 +02:00
Andrey Antukh c892a9f254 Integrate objects-map usage on backend and frontend 2025-09-29 13:23:16 +02:00
Andrey Antukh 5ffb7ae2ec Add warning on using deprecated storage config 2025-09-29 13:23:01 +02:00
Andrey Antukh 27945ace65 Revert deprecated storage config cleaning 2025-09-29 13:23:01 +02:00
María Valderrama e39bf0b439
Invitations management improvements (#7230)
*  Invitations management improvements

* 📎 Change invite email subject

* 📎 Update icon usage

* ♻️ Fix css file

---------

Co-authored-by: Eva Marco <evamarcod@gmail.com>
2025-09-29 13:18:57 +02:00
Andrey Antukh e1519f0ee4 Integrate objects-map usage on backend and frontend 2025-09-29 12:07:48 +02:00
Andrey Antukh 42d03a0325 📎 Add several missing imports on repl related namespaces 2025-09-29 12:06:56 +02:00
Andrey Antukh 0346c48b03 Add several minor enhacements to features subsystem
Mainly fixes the team non-inheritable features handling and
removes unnecesary/duplicate checks.
2025-09-29 12:06:56 +02:00
Andrey Antukh c1058c7fdb ♻️ Add minor refactor for internal concurrency model
Replace general usage of virtual threads with platform threads
and use virtual threads for lightweight procs such that websocket
connections. This decision is made mainly because virtual threads
does not appear on thread dumps in an easy way so debugging issues
becomes very difficult.

The threads requirement of penpot for serving http requests
is not very big so having so this decision does not really affects
the resource usage.
2025-09-26 14:35:06 +02:00
Andrey Antukh 9d907071aa
⬆️ Update dependencies (#7330)
* ⬆️ Update to JDK25 on the devenv

* ⬆️ Update dependencies

* 🔥 Remove unused flag from devenv backend startup scripts

*  Enable shenandoah gc on backend scripts/repl
2025-09-26 13:43:43 +02:00
Andrey Antukh 59f7ede4ff 🐛 Add migration for properly decode all position data on text shapes 2025-09-23 11:34:24 +02:00
Andrés Moya 8954b05d76
🐛 Fix error exporting a file with deleted tokens (#7356) 2025-09-22 17:41:31 +02:00
Andrey Antukh 0b346e02ff 🐛 Fix incorrect options pass on decode-file 2025-09-22 11:30:42 +02:00
Andrey Antukh 85c1750706
🐛 Fix backend last migration naming (#7333) 2025-09-17 10:47:14 +02:00
Andrey Antukh ca19d4deeb ⬆️ Update postgresql jdbc dependency 2025-09-12 14:28:14 +02:00
Andrey Antukh dfceccca3d ⬆️ Update aws s3 sdk version
This transitivelly updates the netty library version
that comes with fixes for several security issues
2025-09-12 14:28:14 +02:00
Pablo Alba 06441063f2 Add "advanced" events to variants 2025-09-08 15:33:14 +02:00
Pablo Alba 307e06372b 🎉 Activate variants for everyone 2025-09-01 09:58:14 +02:00
Andrey Antukh c2e7f9dc42
⬆️ Update base deps (#7207) 2025-08-28 12:50:39 +02:00
Andrey Antukh 45be4769d7 Merge remote-tracking branch 'origin/staging' into develop 2025-08-27 13:19:06 +02:00
Andrey Antukh a114e9adb0 Add logging for management update-customer method 2025-08-27 12:02:39 +02:00
Andrey Antukh 5fed5fa158 Add transactions support on management api 2025-08-27 12:00:03 +02:00
Andrey Antukh 6c8873c7f5 🐛 Ensure for-update locking is used on updating profile props 2025-08-27 11:59:35 +02:00
Andrey Antukh 37b0c4adc0 🐛 Add support fror ::db/for-update on sql ns 2025-08-27 11:58:42 +02:00
Andrey Antukh c35bb6e09a 🎉 Add loadable weak map impl for libraries loading on validation and migration 2025-08-26 09:03:25 +02:00
Andrey Antukh fa2b0bd67c Don't migrate libraries on accessing them on file data migrations
We don't migrate the libraries for avoid cascade migration; it is not ideal
but it reduces the total of the required memory needed for process a single
file migration that requires libraries to be loaded.
2025-08-26 08:15:45 +02:00
Andrey Antukh c759afc10d 🔥 Remove unnecessary and broken unique-editors field
From the get-teams rpc method response
2025-08-25 11:33:34 +02:00
Andrey Antukh 2846b80cf7 Add rpc methods for obtain editors 2025-08-25 10:53:12 +02:00
Andrey Antukh ad0ef82ffc 🎉 Add management http api 2025-08-25 10:53:12 +02:00
Alejandro Alonso 643621a389
Merge pull request #7119 from penpot/niwinz-develop-type-hints
 Add several performance enhancements
2025-08-20 12:58:43 +02:00
Andrey Antukh 575342b3bb ♻️ Use direct schemas instead of references
Only a very common use, basic types schemas should be used as
reference (with namespaced keywords)
2025-08-20 12:33:07 +02:00
Andrey Antukh b472a8ab19 Add general improvement to openapi and js-like doc output 2025-08-20 09:41:01 +02:00
Andrey Antukh 2b83d0d0e9 Add generative test case for openapi json serialization
This will prevent possible regression on introducing schemas without
generators or schema with generators that can't be serialized to json.
2025-08-20 09:38:57 +02:00
Andrey Antukh 911ac263fa 🐛 Use ::sm/any instead of any for get-file-fragment rpc method schema
The usage of `any?` predicate as-is uses the standard any generator that
causes to generate java.lang.Character instances created that are not
properly serialiable to JSON. The `::sm/any` schema delimits the
generator to a commonly known serializable types on json.
2025-08-20 09:38:55 +02:00
Andrey Antukh 17ec360720 Add several missing type hints for avoid reflection and autoboxing 2025-08-18 13:03:10 +02:00
Andrey Antukh 50aa6ff306 Remove reflection calls on binfile v3 code 2025-08-18 13:03:10 +02:00