Dev Diaries

Tuesday, October 11, 2022

1.16.0 Beta - Never Gonna Give You Up

πŸ’₯ Breaking changes

  • Removed the support for v2 internal file data blob format. This version has never been documented nor set as default value so technically this is not a breaking change because we are removing a "private API".

✨ New Features

  • Improve interactions with nested boards Taiga #4054
  • Add team hero in projects dashboard Taiga #3863
  • Add zoom style to shared link Taiga #3874
  • Add dashboard creation button as placeholder Taiga #3861
  • Improve invitation flow on onboarding Taiga #3241
  • Add new text to initial modals Taiga #3458
  • Add new questions to onboarding Taiga #3462
  • Add cosmetic changes in viewer mode Taiga #3688
  • Outline highlights on layer hovering Taiga #2645 by @andrewzhurov
  • Add zoom to shape on double click up on its icon Taiga #3929 by @andrewzhurov
  • Add Libraries & Templates carousel Taiga #3860
  • Ungroup frames Taiga #4012
  • Newsletter Opt-in options for subscription categories Taiga #3242
  • Print emails to console by default if smtp is disabled
  • Add email-verification flag for enable/disable email verification
  • Make graphics thumbnails load lazy Taiga #4252
Libraries & Templates module

πŸ› Bugs fixed

  • Fix unexpected removal of guides on copy&paste frames Taiga #3887 by @andrewzhurov
  • Fix props preserving on copy&paste texts Taiga #3629 by @andrewzhurov
  • Fix unexpected layers ungrouping on moving it Taiga #3932 by @andrewzhurov
  • Fix artboards moving with comment tool selected Taiga #3938
  • Fix undo on delete page does not preserve its order Taiga #3375
  • Fix unexpected 404 on deleting library that is used by deleted files
  • Fix inconsistent message on deleting library when a library is linked from deleted files
  • Fix change multiple colors with SVG Taiga #3889
  • Fix ungroup does not work for typographies Taiga #4195
  • Fix inviting to non existing users can fail Taiga #4108
  • Fix components marked as touched when moved Taiga #4061

❀️ Community contributions by (Thank you!)

  • To @andrewzhurov for many code contributions on this release.
  • UI improvements in Project section (by @Waishnav) #2285
  • Fix fronted comments (by @lol768) #2368

Tuesday, August 16, 2022

1.15.0 Beta - Summer nights

πŸ’₯ Breaking changes

  • The PENPOT_LOGIN_WITH_LDAP environment variable is finally removed (after many version with deprecation). It is replaced with the enable-login-with-ldap flag.
  • The PENPOT_LDAP_ATTRS_PHOTO finally removed, it was unused for many versions.
  • If you are using social login (google, github, gitlab or generic OIDC) you will need to ensure to add the following flags respectivelly to let them enabled: enable-login-with-google, enable-login-with-github, enable-login-with-gitlab and enable-login-with-oidc. If not, they will remain disabled after application start independently if you set the client-id and client-sectet options.
  • The PENPOT_REGISTRATION_ENABLED is finally removed in favour of -registration flag.
  • The OIDC providers are now initialized synchronously, and if you are using the discovery mechanism of the generic OIDC integration, the start time of the application will depend on how fast the OIDC provider responds to the discovery http request.
Nested boards

✨ New Features

  • Allow for nested and rotated boards inside other boards and groups Taiga #2874
  • View mode improvements to enable access and use in different conditions Taiga #3023
  • Improved share link options. Now you can allow non-team members to comment and/or inspect Taiga #3056
  • Signin/Signup from shared link Taiga #3472
  • Support for import/export binary format Taiga #2991
  • Comments positioning Taiga #2007
  • Select all inside a group select only the objects at this group level Taiga #2382
  • Make the media maximum upload size configurable

πŸ› Bugs fixed

  • Fix recent fonts info Taiga #3953
  • Fix clipped elements affect boards and centering Taiga #3666
  • Fix intro action in multi input Taiga #3541
  • Fix team default image Taiga #3919
  • Fix problem with group coordinates #2008
  • Fix problem with line-height and texts Taiga #3578
  • Fix moving frame-guides outside frames Taiga #3839
  • Fix problem with 180 degree rotations #2082
  • Fix font rendering on grid thumbnails Taiga #3473
  • Fix Drag and drop font assets in groups Taiga #3763
  • Fix copy and paste layers order Taiga #1617

❀️ Community contributions by (Thank you!)

  • Fix unexpected removal of guides on copy&paste frames Taiga #3887 by @andrewzhurov
  • Fix props preserving on copy&paste texts Taiga #3629 by @andrewzhurov
  • Fix unexpected layers ungrouping on moving it Taiga #3932 by @andrewzhurov

Monday, June 20, 2022

1.14.0 Beta - Don't stop me now

✨ New Features

Multiple colors

πŸ› Bugs fixed

  • Fix menu file not accessible in certain conditions Taiga #3385
  • Remove deprecated menu options Taiga #3333
  • Prototype connection should be under the rules Taiga #3384

Wednesday, May 3, 2022

1.13.0 Beta - Ch-ch-ch-ch-changes

πŸ’₯ Breaking changes

  • We've changed the behaviour of the border-radius so it works as CSS that has some limits.
  • Now exported text are SVG's native `text` tag instead of paths. This could break when opening the file depending on your engine. Some SVG's may require fonts to be installed at system level.

✨ New Features

  • Search and filter layers Taiga #2564
  • Exporting big files flow Taiga #2218
  • Multiexport from main menu Taiga #520
  • Multiexport assets (aka bulk export) Taiga #520
  • Set the artboard layer fixed at the top side of the layers Taiga #2636
  • Set an artboard as the file thumbnail Taiga #1526
  • Social login redesign Taiga #2974
  • Add border radius to artboards Taiga #2056
  • Allow send multiple team invitations at once Taiga #2798
  • Persist color palette and color picker across refresh Taiga #1660
  • Ability to add multiple strokes to a shape Taiga #2778
  • Scroll to selected size in font size selector Taiga #2825
  • Add new invitations section Taiga #2797
  • Ability to add multiple fills to a shape Taiga #1394
  • Team members redesign Taiga #2283
  • New focus mode in workspace Taiga #2748
  • Changed text shapes to be displayed as natives SVG text elements Taiga #2759
  • Texts now can have strokes, multiple fills and can be used as masks
  • Add the ability to specify the attribute for retrieve the email on OIDC integration #1460
  • Allow registration with invitation token when registration is disabled
  • Add the ability to disable standard, password login Taiga #2999
  • Don't stop SVG import when an image cannot be imported #1531
  • Show Penpot color in Safari tab bar #1803
  • Added option to disable snap to pixel and improved behaviour for sub-pixel drawing Taiga #2552.
  • Delete guides while supr on hover Taiga #2823.
  • Opt-in subscription on on-premise instances Taiga #2772.
  • Optimizations in frame thumbnails Taiga #3147.
Focus mode

πŸ› Bugs fixed

  • Constraints are not well assigned when default and multiselection Taiga #3069.
  • Duplicate artboards create new flows if needed Taiga #2221.
  • Fix paste shapes while editing text Taiga #2396.
  • Round the size values on handoff to two decimals Taiga #3227
  • Fix blend modes ignored in component updates Taiga #2626
  • Fix internal error when hoverin over shape Taiga #3237
  • Fix mouse leave in handoff close overlay animation breaks Taiga #3173
  • Fix different behaviour during image drag Taiga #2279
  • Fix hidden file name on import Taiga #3172
  • Fix unneccessary scrollbars at the color list Taiga #3211
  • "Show in exports" is showing in multiselections Taiga #3194
  • Edit file name navigates to the file workspace Taiga #3183
  • Fix scroll into view behind fixed element Taiga #3170
  • Fix sidebar icon in viewer mode Taiga #3184
  • Fix send to back several shapes at a time Taiga #3077
  • Fix duplicate multi selected elements Taiga #3155
  • Fix add fills to artboard modify children Taiga #3151
  • Avoid numeric inputs to allow big numbers Taiga #2858
  • Fix component contex menu size Taiga #2480
  • Add shadow to artboard make it lose the fill Taiga #3139
  • Avoid numeric inputs to change its value without focusing them Taiga #3140
  • Fix comments modal when changing pages Taiga #2597
  • Copy paste inside a text layer leaves pasted text transparent Taiga #3096
  • On dashboard enter on empty search refresh the page Taiga #2597
  • Pencil cursor changes when activated Taiga #2276
  • Fix icon placement in Mixed message Taiga #3037
  • Fix scroll in comment section Taiga #3068
  • Remove a decimal sets value to 0 Taiga #3059
  • Go to style library file to edit in a new tab Taiga #2639
  • Inner shadow with border not working properly Taiga #2883
  • Fix ellipsis in long page names Taiga #2962
  • Fix color palette animation Taiga #2852
  • Fix display code icon on preview hover Taiga #2838
  • Fix crash on iOS when displaying viewer #1522
  • Fix problem when importing a SVG with text #1532
  • Fix problem when adding shadows to imported text #Taiga 3057
  • Fix problem when importing SVG's with uses with overriding properties #Taiga 2884
  • Fix inconsistency with radius in SVG an CSS #1587
  • Fix clickable area in layers #1680
  • Fix problems with trackpad zoom and scroll in MacOS #1161
  • Fix problem with copy/paste in Safari #1209
  • Fix paste ordering for frames not being respected Taiga #3097
  • Improved command support for MacOS Taiga #2789
  • Fix shift+2 shortcut in MacOS with non-english keyboards Taiga #3038
  • Some fixes to SVG imports Taiga #3122 #1720 Taiga #2884
  • Fix drag guides to delete target area #1679
  • Fix undo when rotating groups Taiga #3136
  • Fix component name in sidebar widget Taiga #3144
  • Fix resize rotated shape with top&down constraints Taiga #3167
  • Fix multi user not working Taiga #3195
  • Fix guides are not duplicated with the artboard Taiga #3072

Monday, February 28, 2022

1.12.0 Beta - Walk On The Wild Guides

✨ New Features

Guides

πŸ› Bugs fixed

❀️ Community contributions by (Thank you!)

  • Cleanup unused static images (by @rhcarvalho) #1561
  • Compress static images to save space (by @rhcarvalho) #1562

Wednesday, January 26, 2022

1.11.0 Beta - Sweet Dreams (Are Made of This)

✨ New Features

Animations

πŸ› Bugs fixed

  • Fix remove gradient if any when applying color from library Taiga #2299.
  • Fix Enter as key action to exit edit path Taiga #2444.
  • Fix add fill color from palette to groups and components Taiga #2313.
  • Fix default project name in all languages Taiga #2280.
  • Fix line-height and letter-spacing inputs to allow negative values Taiga #2381.
  • Fix typo in Handoff tooltip Taiga #2428.
  • Fix crash when pressing Shift+1 on empty file #1435.
  • Fix masked group resize strange behavior Taiga #2317.
  • Fix problems when exporting all artboards Taiga #2234.
  • Fix problems with team management #1353
  • Fix problem when importing in shared libraries #1362
  • Fix problem with join nodes #1422
  • After team onboarding importing a file will import into the team drafts Taiga #2408
  • Fix problem exporting shapes from handoff mode Taiga #2386
  • Fix lock/hide elements in context menu when multiples shapes selected Taiga #2340
  • Fix problem with booleans Taiga #2356
  • Fix line-height/letter-spacing inputs behaviour Taiga #2331
  • Fix dotted style in strokes Taiga #2312
  • Fix problem when resizing texts inside groups Taiga #2310
  • Fix problem with multiple exports Taiga #2468
  • Allow import to continue from recoverable failures #1412
  • Improved behaviour on text options when not text is selected Taiga #2390
  • Fix decimal numbers in export viewbox Taiga #2290
  • Right click over artboard name to open its menu Taiga #1679
  • Make the default session cookue use SameSite=Lax instead of Strict (causes some issues in latest versions of Chrome).
  • Fix "open in new tab" on dashboard Taiga #2235
  • Changing pages while comments activated will not close the panel #1350
  • Fix navigate comments in right sidebar Taiga #2163
  • Fix keep name of component equal to the shape name Taiga #2341
  • Fix lossing changes when changing selection and an input was already changed Taiga #2329
  • Fix blur input field when click on viewport Taiga #2164
  • Fix default page id in workspace Taiga #2205
  • Fix problem when importing a file with grids Taiga #2314
  • Fix problem with imported svgs with filters Taiga #2478
  • Fix issues when updating selrect in paths Taiga #2366
  • Fix scroll jumps in handoff mode Taiga #2383
  • Fix handoff text with opacity Taiga #2384
  • Restored rules color Taiga #2460
  • Fix thumbnail not taking frame blending mode Taiga #2301
  • Fix import/export with SVG edge cases Taiga #2389
  • Avoid modifying component when moving into a group Taiga #2534
  • Show correctly group types label in handoff Taiga #2482
  • Display view mode buttons always centered in viewer #Taiga 2466
  • Fix default profile image generation issue Taiga #2601

⬆️ Deps updated

  • Update devenv docker image dependencies.

❀️ Community contributions by (Thank you!)


Wednesday, November 10, 2021

1.10.0 Beta - Breaking the habit

πŸ’₯ Breaking changes

  • The initial project / data mechanism (not documented) has been disabled. Is the mechanism used for creating initial project on user signup. With the new onboarding approach, this subsystem is no longer needed and is disabled.

✨ New Features

  • Enhance corner radius behavior Taiga #2190.
  • Allow preserve scroll position in interactions Taiga task #1998.
  • Add new onboarding modals.

πŸ› Bugs fixed

  • Fix problem with exporting before the document is saved Taiga #2189.
  • Fix undo stacking when changing color from color-picker Taiga #2191.
  • Fix pages dropdown in viewer Taiga #2087.
  • Fix problem when exporting texts with gradients or opacity Taiga #2200.
  • Fix problem with view mode comments Taiga #2226.
  • Disallow to create a component when already has one Taiga #2237.
  • Add ellipsis in long labels for input fields Taiga #2224
  • Fix problem with text rendering on export Taiga #2223
  • Fix problem when flattening booleans losing styles Taiga #2217
  • Add shortcuts to boolean icons popups Taiga #2220
  • Fix a worker error when transforming a rectangle into path.
  • Fix max/min values for opacity fields Taiga #2183
  • Fix viewer comment position when zoom applied Taiga #2240
  • Remove change style on hover for options Taiga #2172
  • Fix problem in viewer with dropdowns when comments active #1303
  • Add placeholder to create shareable link
  • Fix project files count not refreshing correctly after import Taiga #2216
  • Remove button after import process finish Taiga #2215
Penpot is now Beta

❀️ Community contributions by (Thank you!)

  • To the translation community for the hard work on making penpot available on so many languages.

Wednesday, October 27, 2021

1.9.0 Alpha - Careful, With That Axe, Eugene πŸŽƒ

πŸ’₯ Breaking changes

  • Some stroke-caps can change behaviour.
  • Text display bug fix could potentialy make some texts jump a line.

✨ New Features

  • Add boolean shapes: intersections, unions, difference and exclusions Taiga #748.
  • Add advanced prototyping Taiga #244.
  • Add multiple flows Taiga #2091.
  • Change order of the teams menu so it's in the joined time order.
  • Adds progress report to importing process.
Advanced interactions

πŸ› Bugs fixed

  • Enhance duplicating prototype connections behaviour Taiga #2093.
  • Fix color and typographies refs lost when duplicated file Taiga #2165.
  • Fix problem with overflow dropdown on stroke-cap #1216.
  • Fix menu context for single element nested in components #1186.
  • Fix error screen when operations over comments fail #1219.
  • Fix undo problem when changing typography/color from library #1230.
  • Fix problem with text margin while rendering #1231.
  • Fix problem with masked texts on exporting Taiga #2116.
  • Fix text editor enter behaviour with centered texts Taiga #2126.
  • Fix residual stroke on imported svg Taiga #2125.
  • Add links for terms of service and privacy policy in register checkbox Taiga #2020.
  • Allow three character hex and web colors in color picker hex input #1184.
  • Allow lowercase search for fonts #1180.
  • Fix group renaming problem Taiga #1969.
  • Fix export group with shadows on children Taiga #2036.
  • Fix zoom context menu in viewer Taiga #2041.
  • Fix stroke caps adjustments in relation with stroke size Taiga #2123.
  • Fix problem duplicating paths Taiga #2147.
  • Fix problem inheriting attributes from SVG root when importing Taiga #2124.
  • Fix problem with lines and inside/outside stroke Taiga #2146.
  • Add stroke width in selection calculation Taiga #2146.
  • Fix shift+wheel to horizontal scrolling in MacOS #1217.
  • Fix path stroke is not working properly with high thickness Taiga #2154.
  • Fix bug with transformation operations Taiga #2155.
  • Fix bug in firefox when a text box is inside a mask Taiga #2152.
  • Fix problem importing components Taiga #2151.
  • Fix problem with masking images in viewer #1238.
  • Fix project renaming issue (and some other related to the same underlying bug).
  • Fix internal exception on audit log persistence layer.
  • Set proper environment variable on docker images for chrome executable.
  • Fix internal metrics on websocket connections.

Wednesday, September 8, 2021

1.8.0 Alpha - My own summer

πŸ’₯ Breaking changes

  • This release includes a new approach for handling share links, and this feature is incompatible with the previous one. This means that all the public share links generated previously will stop working.

✨ New Features

  • Add tooltips to color picker tabs Taiga #1814.
  • Add styling to the end point of any open paths Taiga #1107.
  • Allow to zoom with ctrl + middle button Taiga #1428.
  • Auto placement of duplicated objects Taiga #1386.
  • Enable penpot SVG metadata only when exporting complete files Taiga #1914.
  • Export to PDF all artboards of one page Taiga #1895.
  • Go to a undo step clicking on a history element of the list Taiga #1374.
  • Increment font size by 10 with shift+arrows 1047.
  • New shortcut to detach components Ctrl+Shift+K Taiga #1799.
  • Set email inputs to type "email", to aid keyboard entry Taiga #1921.
  • Use shift+move to move element orthogonally #823.
  • Use space + mouse drag to pan, instead of only space Taiga #1800.
  • Add many improvements to text tool.
Stroke caps

πŸ› Bugs fixed

  • Process numeric input changes only if the value actually changed.
  • Prevent adding numeric suffix to layer names when not needed Taiga #1929.
  • Prevent deleting or moving the drafts project Taiga #1935.
  • Fix problem with zoom and selection Taiga #1919
  • Fix problem with borders on shape export #1092
  • Fix thumbnail cropping issue Taiga #1964
  • Fix repeated fetch on file selection Taiga #1933
  • Fix rename typography on text options Taiga #1963
  • Fix problems with order in groups Taiga #1960
  • Fix SVG components preview #1134
  • Fix group renaming problem Taiga #1969
  • Add scroll bar to Teams menu Taiga #1894.
  • Fix repeated names when duplicating artboards or groups Taiga #1892.
  • Fix properly messages lifecycle on navigate.
  • Fix handling repeated names on duplicate object trees.
  • Fix group naming on group creation.
  • Fix some issues in svg transformation.
  • Fix issue related to the GC and images in path shapes.
  • Fix issue on the shape order on some undo operations.
  • Fix issue on undo page deletion.
  • Fix some issues related to constraints.

⬆️ Deps updated

  • Update frontend build tooling.

❀️ Community contributions by (Thank you!)

  • eduayme #1129.
  • soultipsy #1100.

Monday, July 14, 2021

1.7.0 Alpha - Import to be wild

✨ New Features

  • Allow nested asset groups Taiga #1716.
  • Allow to ungroup assets Taiga #1719.
  • Allow to rename assets groups Taiga #1721.
  • Component constraints (left, right, left and right, center, scale...) Taiga #1125.
  • Export elements to PDF Taiga #519.
  • Memorize collapse state of assets in panel Taiga #1718.
  • Headers button sets and menus review Taiga #1663.
  • Preserve components if possible, when pasted into a different file Taiga #1063.
  • Add the ability to offload file data to a cheaper storage when file becomes inactive.
  • Import/Export Penpot files from dashboard.
  • Double click won't make a shape a path until you change a node Taiga #1796
  • Incremental area selection #779
Component constraints

βš’οΈ Minor improvements

  • Decrease default bulk buffers on storage tasks.
  • Reduce file_change preserve interval to 24h.

πŸ› Bugs fixed

  • Process numeric input changes only if the value actually changed.
  • Remove unnecessary redirect from history when user goes to workspace from dashboard Taiga #1820.
  • Detach shapes from deleted assets Taiga #1850.
  • Fix tooltip position on view application Taiga #1819.
  • Fix dashboard navigation on moving file to other team Taiga #1817.
  • Fix workspace header presence styles and invalid link Taiga #1813.
  • Fix color-input wrong behavior (on workspace page color) Taiga #1795.
  • Fix file contextual menu in shared libraries at dashboard Taiga #1865.
  • Fix problem with paths editing after flip #1040
  • Don't allow rename drafts project.
  • Fix custom font deletion task.
  • Fix custom font rendering on exporting shapes.
  • Fix font loading on viewer app.
  • Fix problem when moving files with drag & drop.
  • Fix unexpected exception on searching without term.
  • Properly handle nil values on update-shapes function.
  • Replace frame term usage by artboard on viewer app.
  • Fix problem with merge and join nodes #990
  • Fix problem with empty path editing.
  • Fix problem with create component.
  • Fix problem with move-objects.
  • Fix problem with merge and join nodes.
  • Add better auth module logging.
  • Add missing email scope to OIDC backend.
  • Add missing cause prop on error logging.
  • Fix empty font-family handling on custom fonts page.
  • Fix incorrect unicode code points handling on draft-to-penpot conversion.
  • Fix some problems with paths.
  • Fix unexpected exception on duplicate project.
  • Fix unexpected exception when user leaves typography name empty.
  • Improve error report on uploading invalid image to library.
  • Minor fix on previous commit.
  • Minor improvements on svg uploading on libraries.
  • Add safety check on reg-objects change impl.
  • Fix custom fonts embedding issue.
  • Fix dashboard ordering issue.
  • Fix problem when creating a component with empty data.
  • Fix problem with moving shapes into frames.
  • Fix problems with mov-objects.
  • Fix unexpected exceptions related to rounding integers.
  • Fix wrong type usage on libraries changes.
  • Improve editor lifecycle management.
  • Make the navigation async by default.

Monday, May 24, 2021

1.6.0 Alpha - Born to run

New Features

  • Add improved workspace font selector Taiga US #292.
  • Add option to interactively scale text Taiga #1527.
  • Add performance improvements on dashboard data loading.
  • Add performance improvements to indexes handling on workspace.
  • Add the ability to upload/use custom fonts (and automatically generate all needed webfonts) Taiga US #292.
  • Transform shapes to path on double click.
  • Translate automatic names of new files and projects.
  • Use shift instead of ctrl/cmd to keep aspect ratio Taiga #1697.
Upload custom fonts

Bugs fixed

  • Remove interactions when the destination artboard is deleted Taiga #1656.
  • Fix problem with fonts that ends with numbers #940.
  • Fix issues on group rendering.
  • Fix problem with text editing auto-height Taiga #1683.
  • Fix problem undo/redo.
  • Fix problem with close-path command #917.
  • Fix wrong query for obtain the profile default project-id.
  • Fix problems with empty paths and shortcuts #923.
  • Fix issue with bitmap image clipboard.
  • Fix issue when removing all path points.
  • Increase default team invitation token expiration to 48h.
  • Fix wrong error message when an expired token is used.

Deps updates

  • Update exporter dependencies (puppeteer), that fixes some unexpected exceptions.
  • Update string manipulation library.

Breaking changes

  • The OIDC setting PENPOT_OIDC_SCOPES has changed the default semantics. Before this configuration added scopes to the default set. Now it replaces it, so use with care, because penpot requires at least name and email props found on the user info object.

Wednesday, May 05, 2021

1.5.0 Alpha - Smells like release spirit

New Features

  • Add integration with gitpod.io (an online IDE) #807
  • Allow basic math operations in inputs Taiga 1383
  • Autocomplete color names in hex inputs Taiga 1596
  • Allow to group assets (components and graphics) Taiga #1289
  • Change icon of pinned projects Taiga 1298
  • Internal: refactor of http client, replace internal xhr usage with more modern Fetch API.
  • New features for paths: snap points on edition, add/remove nodes, merge/join/split nodes. Taiga #907
  • Add OpenID-Connect support.
  • Reimplement social auth providers on top of the generic openid impl.
New path features

Bugs fixed

  • Fix problem with pan and space #811
  • Fix issue when parsing exponential numbers in paths
  • Remove legacy system user and team #843
  • Fix ordering of copy pasted objects Taiga #1618
  • Fix problems with blending modes #837
  • Fix problem with zoom an selection rect #845
  • Fix problem displaying team statistics #859
  • Fix problems with text editor selection Taiga #1546
  • Fix problem when opening the context menu in dashboard at the bottom #856
  • Fix problem when clicking an interactive group in view mode #863
  • Fix visibility of pages in sitemap when changing page Taiga #1618
  • Fix visual problem with group invite Taiga #1290
  • Fix issues with promote owner panel Taiga #763
  • Allow use library colors when defining gradients Taiga #1614

Breaking changes

  • Translations refactor: now penpot uses gettext instead of a custom JSON, and each locale has its own separated file. All translations should be contributed via the weblate.org service.

Community contributions by (Thank you!)


Wednesday, April 07, 2021

1.4.0 Alpha - Sweet release o'mine

New Features

  • Add blob-encoding v3 (uses ZSTD+transit) #738
  • Add http caching layer on top of Query RPC.
  • Add layer opacity and blend mode to shapes Taiga #937
  • Add more chinese translations #726
  • Add native support for text-direction (RTL, LTR & auto).
  • Add several enhancements in shape selection Taiga #1195
  • Add thumbnail in memory caching mechanism.
  • Add turkish translation strings #759, #794
  • Duplicate and move files and projects Taiga #267
  • Hide viewer navbar on fullscreen Taiga #1375
  • Import SVG will create Penpot's shapes Taiga #1006
  • Improve french translations #731
  • Reimplement workspace presence (remove database state).
  • Remember last visited team when you re-enter the application Taiga #1376
  • Rename artboard with double click on the title Taiga #1392
  • Replace Slate-Editor with DraftJS Taiga #1346
  • Set proper page title Taiga #1377
Blend modes feature

Bugs fixed

  • Disable buttons in view mode for users without permissions Taiga #1328
  • Fix broken profile and profile options form.
  • Fix calculate size of some animated gifs Taiga #1487
  • Fix error with the "Navigate to" button on prototypes Taiga #1268
  • Fix issue when undo after changing the artboard of a shape Taiga #1304
  • Fix issue with Alt key in distance measurement #672
  • Fix issue with blending modes in masks Taiga #1476
  • Fix issue with blocked shapes Taiga #1480
  • Fix issue with comments styles on dashboard Taiga #1405
  • Fix issue with default square grid Taiga #1344
  • Fix issue with enter key shortcut #775
  • Fix issue with enter to edit paths Taiga #1481
  • Fix issue with mask and flip #715
  • Fix issue with masks interactions outside bounds #718
  • Fix issue with middle mouse button press moving the canvas when not moving mouse #717
  • Fix issue with resolved comments Taiga #1406
  • Fix issue with rotated blur Taiga #1370
  • Fix issue with rotation degree input #741
  • Fix issue with system shortcuts and application #737
  • Fix issue with team management in dashboard Taiga #1475
  • Fix issue with typographies panel cannot be collapsed #707
  • Fix text selection in comments #745
  • Update Work-Sans font #744
  • Fix issue with recent files not showing Taiga #1493
  • Fix issue when promoting to owner Taiga #1494
  • Fix cannot click on blocked elements in viewer Taiga #1430
  • Fix SVG not showing properties at code Taiga #1437
  • Fix shadows when exporting groups Taiga #1495
  • Fix drag-select when renaming layer text Taiga #1307
  • Fix layout problem for editable selects Taiga #1488
  • Fix artboard title wasn't move when resizing Taiga #1479
  • Fix titles in viewer thumbnails too long Taiga #1474
  • Fix when right click on a selected text shows artboard contextual menu Taiga #1226

Deps updates

  • Update backend to JDK16.
  • Update exporter nodejs to v14.16.0

Community contributions by (Thank you!)


Monday, March 01, 2021

1.3.0 Alpha - Before the (alpha release) storm

New Features

  • Add emailcatcher and ldap test containers to devenv. #506
  • Add major refactor of internal pubsub/redis code; improves scalability and performance #640
  • Add more chinese transtions #687
  • Add more presets for artboard #654
  • Add optional loki integration #645
  • Add proper http session lifecycle handling.
  • Allow to set border radius of each rect corner individually
  • Bounce & Complaint handling #635
  • Disable groups interactions when holding "Ctrl" key (deep selection)
  • New action in context menu to "edit" some shapes (binded to key "Enter")
Border radius feature

Bugs fixed

  • Add more improvements to french translation strings #591
  • Add some missing database indexes (mainly improves performance on large databases on file-update rpc method, and some background tasks).
  • Disables filters in masking elements (problem with Firefox rendering)
  • Drawing tool will have priority over resize/rotate handlers Taiga #1225
  • Fix broken bounding box on editing paths Taiga #1254
  • Fix corner cases on invitation/signup flows.
  • Fix errors on onboarding file Taiga #1287
  • Fix infinite recursion on logout.
  • Fix issues with frame selection Taiga #1300, Taiga #1255
  • Fix local fonts error #691
  • Fix problem width handoff code generation Taiga #1204
  • Fix problem with indices refreshing on page changes #646
  • Have language change notification written in the new language Taiga #1205
  • Hide register screen when registration is disabled #598
  • Properly handle errors on github, gitlab and ldap auth backends.
  • Properly mark profile auth backend (on first register/ auth with 3rd party auth provider).
  • Refactor LDAP auth backend.

Community contributions by (Thank you!)


Monday, February 15, 2021

1.2.0 Alpha - A love story between users and core team

New Features

  • Add horizontal/vertical flip
  • Add images lock proportions by default #541, #609
  • Add new blob storage format (Zstd+nippy)
  • Add user feedback form
  • Improve French translations
  • Improve component testing
  • Increase default deletion delay to 7 days
  • Show a pixel grid when zoom greater than 800% #519
  • Fix behavior of select all command when there are objects outside frames Taiga #1209
Flip feature

Bugs fixed

  • Fix 404 when access shared link #615
  • Fix 500 when requestion password reset
  • Fix Problems when transforming path shapes Taiga #1170
  • Fix apply a color to a text selection from color palette was not working Taiga #1189
  • Fix issues when moving shapes outside groups Taiga #1138
  • Fix ldap function called on login click
  • Fix logo icon in viewer should go to dashboard Taiga #1149
  • Fix ordering when restoring deleted shapes in sync Taiga #1163
  • Fix problem when editing text immediately after creating Taiga #1207
  • Fix problem when pasting URL's copied from the browser url bar Taiga #1187
  • Fix problem with multiple selection and groups Taiga #1128
  • Fix problem with red handler indicator on resize Taiga #1188
  • Fix show correct error when google auth is disabled Taiga #1119
  • Fix text alignment in preview #594
  • Fix unexpected exception when uploading image Taiga #1120
  • Fix updates on collaborative editing not updating selection rectangles Taiga #1127
  • Make the team deletion deferred (in the same way other objects)

Community contributions by (Thank you!)


Thursday, February 4, 2021

1.1.0 Alpha

  • Bugfixing and stabilization post-launch
  • Some changes to the register flow
  • Improved MacOS shortcuts and helpers
  • Small changes to shape creation

Tuesday, February 2, 2021

1.0.0 Alpha

  • First alpha release of Penpot
View more on Github releases