Releases: penpot/penpot
2.11.1
- Fix WEBP shape export on docker images Taiga #3838
2.11.0
π₯ Breaking changes & Deprecations
-
Deprecated configuration variables with the prefix
PENPOT_ASSETS_*, and will be
removed in future versions: -
The
PENPOT_ASSETS_STORAGE_BACKENDbecomesPENPOT_OBJECTS_STORAGE_BACKENDand its
values passes from (assets-fsorassets-s3) to (fsors3) -
The
PENPOT_STORAGE_ASSETS_FS_DIRECTORYbecomesPENPOT_OBJECTS_STORAGE_FS_DIRECTORY -
The
PENPOT_STORAGE_ASSETS_S3_BUCKETbecomesPENPOT_OBJECTS_STORAGE_S3_BUCKET -
The
PENPOT_STORAGE_ASSETS_S3_REGIONbecomesPENPOT_OBJECTS_STORAGE_S3_REGION -
The
PENPOT_STORAGE_ASSETS_S3_ENDPOINTbecomesPENPOT_OBJECTS_STORAGE_S3_ENDPOINT -
The
PENPOT_STORAGE_ASSETS_S3_IO_THREADSreplaced (see below) -
Add
PENPOT_NETTY_IO_THREADSandPENPOT_EXECUTOR_THREADSvariables to provide the
control over concurrency of the shared resources used by netty. Penpot uses the netty IO
threads for AWS S3 SDK and Redis/Valkey communication, and the EXEC threads to perform
out of HTTP serving threads tasks such that cache invalidation, S3 response completion,
configuration reloading and many other auxiliar tasks. By default they use a half number
if available cpus with a minumum of 2 for both executors. You should not touch that
variables unless you are know what you are doing. -
Replace the
PENPOT_STORAGE_ASSETS_S3_IO_THREADSwith a more general configuration
PENPOT_NETTY_IO_THREADSused to configure a shared netty resources across different
services which use netty internally (redis connection, S3 SDK client). This
configuration is not very commonly used so don't expected real impact on any user.
β¨ New features & Enhancements
- New composite token: Typography Taiga #10200
- Show current Penpot version Taiga #11603
- Switch several variant copies at the same time Taiga #11411
- Invitations management improvements Taiga #3479
- Alternative ways of creating variants - Button Viewport Taiga #11931
- Reorder properties for a component Taiga #10225
- File Data storage layout refactor Github #7345
- Make several queries optimization on comment threads Github #7506
π Bugs fixed
- Fix selection problems when devtools open Taiga #11950
- Fix long font names overlap Taiga #11844
- Fix paste behavior according to the selected element Taiga #11979
- Fix problem with export size Github #7160
- Fix multi level library dependencies Taiga #12155
- Fix component context menu options order in assets tab Taiga #11941
- Fix error updating library Taiga #12218
- Fix restoring a variant in another file makes it overlap the existing variant Taiga #12049
- Fix auto-width changes to fixed when switching variants Taiga #12172
- Fix component number has no singular translation string Taiga #12106
- Fix adding/removing identical text fills Taiga #12287
- Fix scroll on the inspect tab Taiga #12293
- Fix lock proportion tooltip Taiga #12326
- Fix internal Error when selecting a set by name in the token theme editor Taiga #12310
- Fix drag & drop functionality is swapping instead or reordering Taiga #12254
- Fix variants not syncronizing tokens on switch Taiga #12290
- Fix incorrect behavior of Alt + Drag for variants Taiga #12309
- Fix text override is lost after switch Taiga #12269
- Fix exporting a board crashing the app Taiga #12384
- Fix nested variant in a component doesn't keep inherited overrides Taiga #12299
- Fix selected colors not showing colors from children shapes in multiple selection Taiga #12384
- Fix scrollbar issue in design tab Taiga #12367
- Fix library update notificacions showing when they should not Taiga #12397
- Fix remove flex button doesnβt work within variant Taiga #12314
- Fix an error translation Taiga #12402
- Fix problem with certain text input in some editable labels (pages, components, tokens...) being in conflict with the drag/drop functionality Taiga #12316
- Fix not controlled theme renaming Taiga #12411
- Fix paste without selection sends the new element in the back Taiga #12382
- Fix options button does not work for comments created in the lower part of the screen Taiga #12422
- Fix problem when checking usage with removed teams Taiga #12442
- Fix focus mode persisting across page/file navigation Taiga #12469
- Fix shadow color validation Github #7705
- Fix exception on selection blend-mode using keyboard Github #7710
- Fix crash when using decimal (floating-point) values for X/Y or width/height Taiga #12543
2.10.1
β¨ New features & Enhancements
- Improve workpace file loading Github 7366
π Bugs fixed
- Fix regression with text shapes creation with Plugins API Taiga #12244
2.10.0
π Epics and highlights
- Variants
π₯ Breaking changes & Deprecations
β€οΈ Community contributions (Thank you!)
β¨ New features & Enhancements
- Add efficiency enhancements to right sidebar Github #7182
- Add defaults for artboard drawing Taiga #494
- Continuous display of distances between elements when moving a layer with the keyboard Taiga #1780
- New Number token - unitless values Taiga #10936
- New font-family token Taiga #10937
- New text case token Taiga #10942
- New text-decoration token Taiga #10941
- New letter spacing token Taiga #10940
- New font weight token Taiga #10939
- Upgrade Node to v22.18.0 Github #7283
- Upgrade the base docker image for penpot frontend to v1.29.1 Github #7283
- Create variant from an existing component Taiga #2088
- Create variant from an existing variant Taiga #8282
- Actions over a component with variants Taiga #10503
- Create a variant by dragging a component into a component with variants Taiga #8134
- Transform a variant into an individual component Taiga #8141
- Delete variant Taiga #6890
- Restore an orphaned copy of a variant Taiga #10446
- Add, Edit & Delete variant properties name and value Taiga #6892
- Retrieve variants Taiga #6888
- Retrieve variants with nested components Taiga #10277
- Create variants in bulk from existing components Taiga #7926
- Alternative ways of creating variants - Button Design Tab Taiga #10316
π Bugs fixed
- Display strokes information in inspect tab Taiga #11154
- Fix problem with booleans selection Taiga #11627
- Fix missing font when copy&paste a chunk of text Taiga #11522
- Fix bad swap slot after two swaps Taiga #11659
- Fix missing package for the
penpot_exporterDocker image GitHub #7205 - Fix issue where multiple dropdown menus could be opened simultaneously on the dashboard page Taiga #11500
- Fix font size/variant not updated when editing a text Taiga #11552
- Fix issue where Alt + arrow keys shortcut interferes with letter-spacing when moving text layers Taiga #11552
- Fix consistency issues on how font variants are visualized Taiga #11499
- Fix parsing rx and ry SVG values for rect radius Taiga #11861
- Fix misleading affordance in saved versions Taiga #11887
- Fix pasting RTF text crashes penpot Taiga #11717
- Fix navigation arrows in Libraries & Templates carousel Taiga #10609
- Fix applying tokens with zero value to size Taiga #11618
- Fix typo Taiga #11969
- Fix typo Taiga #11970
- Fix typos Taiga #11971
- Fix inconsistent naming for "Flatten" Taiga #8371
- Layout item tokens should be unapplied when moving out of a layout Taiga #11012
- Fix incorrect date displayed for support plan Taiga #11986
- Fix can't import 'borderWidth' type token #132
- Fix moving elements up or down while pressing alt Taiga Issue #11992
- Fix conflicting shortcuts (remove dec/inc line height and letter spacing) Taiga #12102
- Fix conflicting shortcuts (remove text-align shortcuts) Taiga #12047
- Fix export file with empty tokens library Taiga #12137
- Fix context menu on spacing tokens Taiga #12141
2.9.0
β€οΈ Community contributions (Thank you!)
- Clarify message when inviting existing team members to make it more user-friendly and clear which invitations will be sent. Taiga #11441 by @iprithvitharun
- Update email change confirmation message for clarity and correct grammar. GitHub #6786 by @iprithvitharun
β¨ New features & Enhancements
- Add visual indicator for new comments in the workspace Taiga #11328
- On components overrides, separate the content of the text from the rest of properties Taiga #7434
- Improve dashboard's sidebar Taiga #10700
- Change "Save color" button to primary button Taiga #9410
- Support for exif rotated images GitHub #6767
- Display Blend Mode and Layer Opacity properties in the Inspect tab Taiga #11283
- Provide CSS
mix-blend-modeproperty in code editor when present on shape Taiga #11282 - Add the option to import tokens in a .zip file. Taiga #11378
- New typography token type - font size token Taiga #10938
- Hide bounding box while editing visual effects Taiga #11576
- Improved text layer resizing: Allow double-click on text bounding box to set auto-width/auto-height Taiga #11577
- Improve text layer auto-resize: auto-width switches to auto-height on horizontal resize, and only switches to fixed on vertical resize Taiga #11578
- Add the ability to show login dialog on profile settings Github #6871
- Improve the application of tokens with object specific tokens Taiga #10209
- Add info to apply-token event Taiga #11710
- Fix double click on set name input Taiga #11747
π Bugs fixed
- Copying font size does not copy the unit Taiga #11143
- Fix text-decoration line-through that displays a wrong property value Taiga #11145
- Fix display error message on register form Taiga #11444
- Fix toggle focus mode did not restore viewport and selection upon exit GitHub #6280
- Fix problem when creating a layout from an existing layout Taiga #11554
- Fix title button from Title Case to Capitalize Taiga #11476
- Fix touchpad swipe leading to navigating back/forth GitHub #4246
- Keep color data when copying from info tab into CSS Taiga #11144
- Update HSL values to modern syntax as defined in W3C CSS Color Module Level 4 Taiga #11144
- Fix main component receives focus and is selected when using 'Show Main Component' Taiga #11402
- Fix UI theme selection from main menu Taiga #11567
- Fix duplicating pages with mainInstance shapes nested inside groups Taiga #10774
- Fix ESC key not closing Add/Manage Libraries modal Taiga #11523
- Fix copying a shadow color from info tab Taiga #11211
- Fix remove color button in the gradient editor Taiga #11623
- Fix "Copy as SVG" generates different code from the Inspect panel Taiga #11519
- Fix overriden tokens in text copies are not preserved Taiga #11486
- Fix problem when changing between flex/grid layout Taiga #11625
- Fix opacity on stroke gradients Taiga #11646
- Fix change from gradient to solid color Taiga #11648
- Fix the context menu always closes after any action Taiga #11624
- Fix X & Y position do not sincronize with tokens Taiga #11617
- Fix tooltip position after first time Taiga #11688
- Fix inconsistent ordering of pinned projects on dashboard sidebar Taiga #11674
- Fix export button width on inspect tab Taiga #11394
- Fix stroke width token application Taiga #11724
- Fix number token application on shape Taiga #11331
- Fix auto height is fixed in the HTML inspect tab for text elements Taiga #11680
2.8.1
π Bugs fixed
- Fix unexpected exception on processing old texts Github #6889
- Fix UI theme selection from main menu Taiga #11567
- Add missing migration information to file snapshots Github #686
- Fix error on inspect tab when selecting multiple shapes Taiga #11655
2.8.0
π₯ Breaking changes & Deprecations
Penpot Library
The initial prototype is completly reworked for provide a more consistent API
and to have proper validation and params decoding. All the details can be found
on its own changelog
Penpot migrate from Redis to Valkey
As Valkey is an opne-souce fork of Redis
version 7.2.4, this version of Penpot will be compatible with Redis but may diverge
in future versions. Therefore, migration from Redis to ValKey is recommended for all
on-premises instances that want to keep up to date.
β€οΈ Community contributions (Thank you!)
- Add Serbian language GitHub #5002 by crnobog69
β¨ New features & Enhancements
- Optimize profile setup flow for better user experience Taiga #10028
- Rewrite path shape data PathData encoding Taiga #8542
- Update base image for Docker Backend and Exporter to Ubuntu 24.04
- Update base image for Docker Frontend to Nginx 1.28.0
- Allow multi file token import Github #27
- Create
input*wrapper component, andlabel*,input-field*andhint-message*components Taiga #10713 - Deselect layers (and path nodes) with Ctrl+Shift+Drag Github #2509
- Copy to SVG from contextual menu Github #838
- Add styles for Inkeep Chat at workspace Taiga #10708
- Add configuration for air gapped installations with Docker
- Support system color scheme Github #5030
- Persist ruler visibility across files and reloads GitHub #4586
- Update google fonts (at 2025/05/19) Taiga 10792
- Add tooltip component to DS Taiga 9220
- Allow multi file token export Taiga #10144
- Fix problem when double click on hidden shapes Taiga #11314
π Bugs fixed
- Fix getCurrentUser for plugins api Taiga #11057
- Fix spacing / sizes of different elements in the measurements section of the design tab Taiga #11076
- Fix selection of short paths Github #4472
- Fix element positioning on the right side to adjust to grid #11073
- Fix palette is over sidebar #11160
- Fix font size input not displaying "mixed" when multiple texts are selected Taiga #11177
- Misalignments at Create account Taiga #11315
- Fix issue with importing files where flex/grid is used Taiga #11334
- Fix wrong color in the export progress bar Taiga #11299
- Fix right sidebar width overflow on long layer names Taiga #11212
- Fix comment icon fill Taiga #11388
- Fix gap on radio-buttons component Taiga #11360
- Fix button width Taiga #11394
- Fix mixed letter spacing and line height Taiga #11178
- Fix snap nodes shortcut Taiga #11054
- Fix changing a text property in a text layer does not unapply the previously applied token in the same property Taiga #11337
- Fix shortcut error pressing G+W from the View Mode Taiga #11061
- Fix entering long project name Taiga #11417
- Fix slow color picker Taiga #11019
- Fix tooltip position after click Taiga #11405
- Fix incorrect media translation on paste text with fill images Github #6845
2.7.2
π Bugs fixed
- Update plugins runtime Github #6604
- Backport from develop a minor fix that enables import of files
generated by penpot library Github #6614 - Fix copy in error message GitHub #6615
- Fix url on invitation link Taiga #11284
2.7.1
π Bugs fixed
- Fix incorrect handling of strokes with images on importing files
- Fix tokens disappearing after manual additions Taiga #11063
2.7.0
β€οΈ Community contributions (Thank you!)
- Design improvements to the Invitations page with an empty state GitHub #2608 by @iprithvitharun
β¨ New features
- Update board presets with a newer devices Taiga #10610
- Propagate "sharing a prototype" to editors and viewers Taiga #8853
- Design improvements to the Invitations page with an empty state Taiga #4554
- Duplicate token sets Taiga #10694
- Add set selection in create Token themes flow Taiga #10746
- Display indicator on not active sets Taiga #10668
π Bugs fixed
- Fix "at" icon to match all icons on app Taiga #11136
- Fix problem in viewer with the back button Taiga #10907
- Fix resize bar background on tokens panel Taiga #10811
- Fix shortcut for history version panel Taiga #11006
- Fix positioning of comment drafts when near the right / bottom edges of viewport Taiga #10534
- Fix path having a wrong selrect Taiga #10257
- Fix SVG
stroke-linecapproperty when importing SVGs Taiga #9489 - Fix position problems cutting-pasting a component Taiga #10677
- Fix design tab has a horizontal scroll Taiga #10660
- Fix long file names being clipped when longer than allowed length Taiga #10662
- Fix problem with error detail in toast Taiga #10519
- Fix view mode error when an external user tries to export something from a prototype using a shared link Taiga #10251
- Fix merge path nodes with only one node selected Taiga #9626
- Fix problem with import errors Taiga #10040
- Fix color gradient on texts Taiga Issue #7488
- Add support for self mentions Taiga #10809
- Fix team info settings alignment Taiga #10869
- Fix left sidebar horizontal scroll on nested layers Taiga #10791
- Improve error message details importing tokens Taiga Issue #10772
- Fix no selected set after Drag & Drop Github #71
- Styledictionary v5 Update Github #6283
- Fix Rename a set throws an internal error Github #78
- Fix Out of Sync Token Value & Color Picker Github #102
- Fix Color should preserve color space Github #69
- Fix cannot rename Design Token Sets when group of same name exists Taiga Issue #10773
- Fix problem when duplicating grid layout Github #6391
- Fix issue that makes workspace shortcuts stop working Taiga #11062
- Fix problem while syncing library colors and typographies Taiga #11068
- Fix problem with path edition of shapes Taiga #9496
- Fix exception on paste invalid html Taiga #11047
- Fix share button being displayed with no permissions Taiga #11086
- Fix inline styles in code tab Taiga Issue #7583
- Fix exception on returning openapi.json
- Fix json encoding of TokensLib Taiga #10994