Releases: Leantime/leantime
Leantime v3.7.1
Bug Fixes
- Sprint Creation/Edit Crash — Fixed TypeError when creating or editing sprints caused by incorrect object casting (#3231)
- Milestone Timeline Drag Not Saving — Implemented missing
bulkUpdateSortIndex()repository method so milestone sort order persists after drag-and-drop (#3250) - Subtask Description Showing Parent Content — Fixed TipTap editor overwriting subtask textarea with parent ticket description when opening subtask from a modal (#3263)
- Plugin Details Page Crash — Fixed
htmlspecialchars()error when marketplace plugin reviews contain array/object data; added defensive null-coalescing for API response fields (#3241) - Calendar Widget Day Selector — Day selector buttons are now hidden in month/week/list views where they had no effect; only shown in day view (#3238, #3239)
- Timer Not Updating — Stopwatch in header now polls every 60 seconds when a timer is running so elapsed time stays current (#3228)
- Pasted Images 404 — Added redirect from legacy
/download.phpURLs to the new/files/getendpoint (#3266) - Modal Crash on Second Open — Added guard for
jQuery.nmManualavailability between modal close/reinit cycles (#3265) - TipTap Toolbar Missing on HTMX Load — Added polling retry for toolbar module when editor initializes before the toolbar script has evaluated (#3267)
- TipTap Image Resize — Added custom image resize extension with corner drag handles (#3268)
- TipTap HTML Source Edit — Added source code toggle button to the toolbar for viewing/editing raw HTML (#3269)
- Embedded Content Broken — Expanded CSP
frame-srcand per-provider sandbox attributes for Google Docs, Figma, Miro, and other embed providers - Timesheet Edit Timezone Crash — Fixed 500 error in EditTime controller caused by calling
setTimezone()on an already-formatted string (#3248, thanks @robinson-j16)
Files
What's Changed
Other Changes
- Update cs-CZ.ini by @phavel in #3246
- Update German translations for various phrases by @SG-785 in #3242
- feat(calendar): Add extensible Connect Calendar and Calendar Settings modals by @gloriafolaron in #3218
- feat: Complete Tiptap editor migration with modern Wiki/Docs redesign by @gloriafolaron in #3229
- Add Group by Parent Task by @TechHutTV in #3245
- build(deps): bump lodash from 4.17.21 to 4.17.23 by @dependabot[bot] in #3206
- build(deps-dev): bump webpack from 5.99.7 to 5.105.0 by @dependabot[bot] in #3240
- feat: notification preferences, strategy relabeling, cross-DB SQL fix by @gloriafolaron in #3251
- build(deps): bump qs from 6.14.1 to 6.14.2 by @dependabot[bot] in #3256
- chore(deps): bump markdown-it from 14.1.0 to 14.1.1 by @dependabot[bot] in #3257
- chore(deps): bump katex from 0.16.9 to 0.16.21 by @dependabot[bot] in #3258
- Fix 6 v3.7.0 bugs: broken images, modal crash, toolbar race, image resize, HTML source edit, embed sandbox by @marcelfolaron in #3270
- fix: resolve timezone crash in EditTime controller by @robinson-j16 in #3264
- Fix 6 bugs: sprint creation, milestone drag, subtask description, plugin details, calendar widget, timer by @marcelfolaron in #3271
- Fix/v370 bug batch 3231 3250 3263 3241 3238 3228 by @marcelfolaron in #3272
- build(deps): bump ajv from 8.17.1 to 8.18.0 by @dependabot[bot] in #3261
New Contributors
- @SG-785 made their first contribution in #3242
- @TechHutTV made their first contribution in #3245
- @robinson-j16 made their first contribution in #3264
Full Changelog: v3.6.2...v3.7.1
Leantime v3.7.0
Version: 3.7.0
Highlights
New Rich Text Editor — TinyMCE Replaced by Tiptap
The legacy TinyMCE editor has been completely removed and replaced with a modern Tiptap-based editor across all rich text areas including ticket descriptions, comments, wiki articles, and notes.
- Slash commands — type
/for quick access to headings, lists, tables, columns, and more - @mentions — tag team members directly in any editor with automatic notifications
- Column layouts — multi-column content with sidebar layouts
- Font family & size selection in the toolbar
- Text color & highlighting on the main toolbar
- Math formula support via bundled KaTeX
- Code blocks with syntax highlighting
- Tables, task lists, subscript/superscript, typography extensions
- Full mobile responsiveness — touch-optimized editing on all devices
- Copilot extension hooks — foundation for AI-assisted writing
- Modern Apple-like toolbar styling
Wiki Redesign
- New 3-panel layout — modern navigation, content, and properties panels
- Audit-based activity feed — track article changes with scrollable history
- Milestone dropdown — assign articles to milestones directly from the wiki view
- Icon picker & tags — improved alignment and usability
- Standardized font sizes and polished status pills
- Improved responsive layout
Notification Improvements
- Per-project muting — silence notifications for specific projects
- Event-type filtering — choose which notification categories you receive
- Improved notification delivery and performance
Calendar Extensibility
- Connect Calendar modal — extensible UI for linking external calendars
- Calendar Settings modal — centralized calendar configuration
- Updated modals to match system UI conventions
- Improved security and extensibility hooks
PostgreSQL Support (Experimental)
- Initial PostgreSQL compatibility alongside MySQL/MariaDB
- New SchemaBuilder for cross-database schema management
castAs()helper for cross-database CAST operationswrapColumn()helper replacing double-quoted SQL identifiers- Fixed MySQL-specific CAST types across repositories
New Features
- Group by Parent Task — new grouping option in To-Do views with root parent resolution for ticket hierarchy
- Comment Reactions — HTMX-based emoji reactions on comments (like, love, celebrate, funny, etc.)
- Strategy module relabeled to mission-driven language
Performance
- Event dispatcher and filter pipeline optimizations
- Template and theme rendering caching improvements
- Localization middleware performance gains
- Install/update check short-circuits for faster page loads
Bug Fixes
- Fixed idea board internationalization issues
- Fixed goal KPI progress calculation
- Fixed milestone collapse behavior
- Fixed calendar duplicate events
- Fixed editor toolbar and border-radius inconsistencies
- Fixed slash menu viewport positioning at screen edges
- Fixed @mention notification delivery
Localization
- Updated Czech (cs-CZ) translations
- Updated German (de-DE) translations
Dependency Updates
- katex 0.16.9 → 0.16.21
- lodash 4.17.21 → 4.17.23
- markdown-it 14.1.0 → 14.1.1
- qs 6.14.1 → 6.14.2
- webpack 5.99.7 → 5.105.0
- Added 27 Tiptap packages + lowlight for the new editor
Breaking Changes
- TinyMCE removed — all rich text editing now uses Tiptap. Existing content renders without changes, but any custom TinyMCE plugins or editor extensions will need to be rewritten for the Tiptap API.
All Changes
- 22792d90e: Expand blocklist with Tailwind classes
- 3d8cd65f6: Refactor Calendar & Wiki UIs; add calendar hook
- 61d244d9f: speed improvements
- 366631d58: Update Tickets.php
- e879f4e8d: improved notifications
- b062a0a73: manifest and plugin index
- 8576fafb9: fix(db): add cross-database castAs() helper and fix MySQL/PostgreSQL CAST incompatibilities
- 1b2f54474: fixes
- 85946b821: bug fixes
- 400361778: build(deps): bump qs from 6.14.1 to 6.14.2
- 631588752: chore(deps): bump markdown-it from 14.1.0 to 14.1.1
- cd2fcff8d: chore(deps): bump katex from 0.16.9 to 0.16.21
- bdfdfd048: build(deps-dev): bump webpack from 5.99.7 to 5.105.0
- cff6ca0d9: style: round title input corners and remove editor double-box on focus
- c90027082: chore: update Plugins submodule (Tiptap editor migration)
- 2b9073d3e: refactor(editor): remove all TinyMCE references from core domains
- 3ad52b074: fix(db): replace double-quoted SQL identifiers with cross-database wrapColumn()
- 3f9f899e7: feat(strategy): relabel StrategyPro plugin to mission-driven language
- 77f63d26b: feat(notifications): add per-project muting and event-type filtering
- 8d24c2568: chore: Update Plugins submodule (notes widget button restyle)
- 4f8612dfd: fix(tiptap): Enable toolbar and polish styling for Notes editor
- 4430f1ba1: fix(tiptap): Fix wiki toolbar attachment and comment editor border-radius
- d453a0c50: style(tiptap): Polish editor borders, spacing, and variant classes
- 3295901f1: fix: Replace CAST AS TEXT/INTEGER with MySQL-compatible types
- 047299177: fix: MySQL compatibility for dual-database support
- 7ae97f836: fix: security, architecture, and code quality improvements for Tiptap PR
- d6467c6b6: fix(calendar): improve security, controller patterns, and extensibility
- 7866d5001: Add PostgreSQL compatibility & DB query fixes
- 54fa56de9: Fix image tag in README.md
- 7f469e7cc: Implement root parent resolution for ticket grouping
- ccba534cb: Fix multiple bugs: idea board i18n, goal KPI progress, milestone collapse, calendar duplicates
- b18aa49c5: Update cs-CZ.ini
- 641947538: Add "Group by Parent Task" option to To-Do views
- 88951d977: Update German translations for various phrases
- 6a44aca84: Add PostgreSQL support and SchemaBuilder
- 41bb2b5b3: style(wiki): Standardize font sizes, polish status pills, and fix milestone dropdown
- 0f366ce60: feat(tiptap): Add column slash commands, sidebar layouts, and delete controls
- e25a01fc2: feat(wiki): Fix icon picker, tags alignment, and activity feed scroll
- a35b715fa: feat(wiki): Add audit-based activity feed, polish properties panel
- 211bde1bb: feat(wiki): Add milestone dropdown and improve responsive layout
- 4e8ed01aa: feat(wiki): Redesign wiki view w...
Leantime v3.6.2
Changes in this Release
History from `` to @
Commits
Contributors
Files
What's Changed
Other Changes
- Fix timer not starting after v3.6.0 update by @gloriafolaron in #3215
- fix(db): Fix zp_entity_relationship table migration issues by @gloriafolaron in #3221
Full Changelog: v3.6.0...v3.6.2
Leantime v3.6.1
What's Changed
Other Changes
- Fix timer not starting after v3.6.0 update by @gloriafolaron in #3215
- fix(db): Fix zp_entity_relationship table migration issues by @gloriafolaron in #3221
Full Changelog: v3.6.0...v3.6.1
Leantime v3.6.0
Highlights
Kanban Board Improvements
- Collapsible Swimlanes - Collapse swimlane rows to show compact ticket views with balanced layouts
- Horizontal Swimlane Headers - New layout with status breakdowns and sticky headers
- Quick-Add Form - Faster ticket creation directly from the kanban board with keyboard shortcuts
- Due Date GroupBy - New grouping option for organizing tickets by due date
- Optimistic UI Updates - Smoother card movements with immediate visual feedback
- Cross-Swimlane Movement - Improved ticket dragging between swimlanes with progress bar updates
Accessibility (WCAG 2.1 AA Compliance)
- Improved contrast ratios and focus indicators throughout the application
- Better support for low vision users in dark mode and grayscale
- Comprehensive accessibility improvements for custom input components (dropdowns, date pickers, etc.)
- TinyMCE editor accessibility fix for screen readers
New Features
- Multiple Collaborators - Assign multiple collaborators to a single ticket
- Ticket Modified Timestamp - Track when tickets were last modified
- Notebook Colors - Add colors to notebooks for better organization
- Timesheet Filters - Filter timesheets by ticket and invoiced status
- News Toggle - Option to disable pulling external news
API & Mobile
- Timezone-safe date handling for mobile time entries
- Improved JSON-RPC response handling and acceptance tests
- Better API authentication for all endpoints
Localization
- New Russian translation (ru-RU)
- New Ukrainian translation (uk-UA)
- Updated Chinese (zh-CN) and Polish (pl-PL) translations
Performance & Stability
- Refactored repositories to use Laravel query builder enabling support for postgress db
- Removed CPU-heavy CSS animations
- Efficient database connection management
- Fixed schema update gap for safer database migrations
- Daily plugin license checks (reduced from more frequent)
Bug Fixes
- Fixed 2FA QR code generation
- Fixed milestone filter not working correctly
- Fixed modal responsiveness on smaller screens
- Fixed plugin details view when plugins have reviews
- Fixed title not populating in certain scenarios
- Fixed LDAP type hardening
- Fixed installer with different database configurations
What's Changed
Other Changes
- Feature/invoiced filter in show all timesheets by @jeppekroghitk in #3094
- Feature/ticket filter in show all timesheets by @jeppekroghitk in #3093
- Fixed typo in timesheets showAll template by @jeppekroghitk in #3098
- update readme.md by @borghiste in #3101
- build(deps): bump sha.js from 2.4.11 to 2.4.12 by @dependabot[bot] in #3102
- build(deps): bump mermaid from 11.6.0 to 11.10.0 by @dependabot[bot] in #3100
- docs: remove duplicated PHP Extensions list by @agilgur5 in #3108
- Update CHANGELOG.md by @Stup4400OFF in #3105
- fix: title not populated (#3121) by @hhawkinsau in #3122
- Action/version bump by @taj54 in #3112
- fix: correct path in version bump workflow by @taj54 in #3126
- build(deps): bump brace-expansion by @dependabot[bot] in #3103
- Update polish translation by @KaminskiDaniell in #3143
- Set Ticket modified field on create and update by @tuj in #3142
- Update sample.env by @ThighCandy in #3162
- Added Russian translation for ru-RU.ini by @shklyarik in #3155
- Prevent ticket autosave across new tickets by @jeppekroghitk in #3137
- feat: Add multiple collaborators to a ticket by @Akashsah2003 in #3157
- This pull request improves the Simplified Chinese localization by @ashanzzz in #3170
- add uk-UA translation by @and-ri in #3171
- build(deps): bump node-forge from 1.3.1 to 1.3.2 by @dependabot[bot] in #3176
- Update pl-PL.ini by @Webajt in #3189
- build(deps-dev): bump glob from 10.4.5 to 10.5.0 by @dependabot[bot] in #3169
- build(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 by @dependabot[bot] in #3179
- build(deps): bump qs and express by @dependabot[bot] in #3191
- fix: store updated db version instead of final target version to prevent potential issues with an update which fails half way a serie of updates by @cbos in #3192
- build(deps): bump qs and body-parser by @dependabot[bot] in #3193
- Add timezone-safe date handling for mobile API by @gloriafolaron in #3200
- Feature/cloud sync accessibility kanban by @marcelfolaron in #3205
New Contributors
- @borghiste made their first contribution in #3101
- @agilgur5 made their first contribution in #3108
- @Stup4400OFF made their first contribution in #3105
- @hhawkinsau made their first contribution in #3122
- @taj54 made their first contribution in #3112
- @tuj made their first contribution in #3142
- @ThighCandy made their first contribution in #3162
- @shklyarik made their first contribution in #3155
- @Akashsah2003 made their first contribution in #3157
- @ashanzzz made their first contribution in #3170
- @and-ri made their first contribution in #3171
- @Webajt made their first contribution in #3189
- @cbos made their first contribution in #3192
Full Changelog: v3.5.11...v3.6.0
Leantime v3.5.12
Changes in this Release
fix: issue with new invoice filter
fix: Remove cpu heavy animations
feat: Altered Timesheets repo method getAll to take invempl as 0
feat: Changed invempl from being a checkbox to be a select
feat: Added handling of invempl as a selected
feat: Changed default of ticketFilter to be -1 to align with the rest
feat: Modified projectFilter to better align with current functionality
feat: Ensured that setting ticketFilter cannot result in an empty query by accident
feat: Added ticketFilter to timesheets/showAll
What's Changed
Other Changes
- Feature/invoiced filter in show all timesheets by @jeppekroghitk in #3094
- Feature/ticket filter in show all timesheets by @jeppekroghitk in #3093
Full Changelog: v3.5.11...v3.5.12
Leantime v3.5.11
Highlights
- Fix for API Key authentication not working when url path was not api/jsonrpc preventing mcp from working
- Removed transitions to improve rendering performance
What's Changed
c920c63 Merge pull request #3080 from Leantime/dependabot/npm_and_yarn/multi-96c788614a
0605649 Merge pull request #3089 from MeatyFresh/patch-3
35b14e3 Clear out previously defined sections
b24b38b feat/fix: Remove css transitions as they reduce performance on various browsers.
c461c48 feat: Ensure efficient use of database connections
f44ccd8 fix: api authentication not working when request was anything other than /api/jsonrpc
4b643bf build(deps): bump on-headers and compression
0b1ec69 task: update gitignore
Other Changes
- Clear out previously defined sections in web.config to resolve 500 on / by @MeatyFresh in #3089
- build(deps): bump on-headers and compression by @dependabot[bot] in #3080
Full Changelog: v3.5.10...v3.5.11
Leantime v3.5.10
Highlights
- Fixed various bugs (https://github.com/Leantime/leantime/milestone/19?closed=1)
- Allow group changes on dashboard task hierarchy
- improved file name handling
What's Changed
09731cd fix: company managers should only be able to change projects in their own org
5c88b82 task: version bump
c98aa02 feat: group changes via drag and drop
bae8cfe task: remove junie file
27553ea task: update unit test
4d88d5d task: improve claude code prompt
781e6a3 task: code cleanup
3857ca2 fix: resolve issue with composer loading for phar plugins
7105207 fix: improved filename sanitizer
8b03391 fix: datetime formatting issue on project settings
ebdf2bd fix: delete goal board issue
981b103 fix: error when saving idea without title
eb1c076 fix: Ensure api users remain on project after save
5b54b2d fix: typos
6abbdc0 feat: allow setting redis db
dfae805 fix: edge case where autosave retention of editor is too long
4f43795 task: add class to appsLink menu point
063fe14 fix: load more ticket loader unset variable
036c0ff Merge branch 'master' of https://github.com/Leantime/leantime
db98d25 fix: Fix exception handler when logger facade not available
6850290 task: update packages
1a02581 feat: Improve ticket search query
1dd92a4 Applied coding standards
36d47e9 Made it possible to get all comments
ae8fdca Fixed JSON RPC acceptance tests
a7b3147 Updated type declaration for id parameter
11bcaeb fix: revert sql based limit setting in todo widget since we need to verify done/open tasks afterwards
9c30c28 Merge branch 'master' of https://github.com/Leantime/leantime
4ddb8b7 fix: broken twoFA qr code generation fixed
Full Changelog: v3.5.9...v3.5.10
Leantime v3.5.9
Changes in this Release
History from v3.5.8 to @
Commits
- c72d3d9 [Changelog CI] Add Changelog for Version 3.5.9
- 1f45dc0 task: version bump
- 2c0279a task: reduce plugin route loader prority in even call stack so that config updates load before route files
- 4dd0895 feat: allow removing all new line characters from string sanitizer
- bb31269 task: Update php-mcp to latest version
- f9749e8 [Changelog CI] Add Changelog for Version 3.5.8
- 8de91c0 [Changelog CI] Add Changelog for Version 3.5.7
Contributors
- Marcel Folaron (4 commits)
Files
.idea/leantime-oss.iml | 1 +
CHANGELOG.md | 19 ++
app/Core/Configuration/AppSettings.php | 2 +-
app/Core/Routing/RouteLoader.php | 4 +-
app/Core/Support/String/SanitizeForLLM.php | 7 +-
composer.json | 4 +-
composer.lock | 421 +++++++++++++++++------------
package-lock.json | 4 +-
package.json | 2 +-
public/dist/mix-manifest.json | 32 +--
10 files changed, 296 insertions(+), 200 deletions(-)
Leantime v3.5.8
Changes in this Release
History from v3.5.7 to @
Commits
- f9749e8 [Changelog CI] Add Changelog for Version 3.5.8
- 7474171 task: version bump
- 99275ca fix: allow loading commands from phar files
- 1c49f48 [Changelog CI] Add Changelog for Version 3.5.7
Contributors
- Marcel Folaron (2 commits)
Files
CHANGELOG.md | 29 +++++++++++++++++++++
app/Core/Configuration/AppSettings.php | 2 +-
app/Core/Console/ConsoleKernel.php | 46 ++++++++++++++++++++++++++++++++++
app/Plugins | 2 +-
package-lock.json | 4 +--
package.json | 2 +-
public/dist/mix-manifest.json | 32 +++++++++++------------
7 files changed, 96 insertions(+), 21 deletions(-)