Changes in this Release
Highlights
- feat: Improved dashboard design and tabs
- fix: sorting by date on timesheet list view
- fix: timesheet chart timezone issue
- fix: move tasks to a different project not working on edit task screen
- fix: first user login without project fixed.
Commits
History from v3.4.12
to @
- 7c332ac [Changelog CI] Add Changelog for Version 3.5.0
- 3e5009d Update composer.lock
- 5580212 version bump
- 378864d task: additional test improvements
- 6e4ac76 task: timesheet test wait update
- 31a41df task: unit tests different wait mechanisms
- 48e0101 task: increast test timeouts
- a0487ef update tests
- 16af6e0 task: fix tests and clean up code
- 8fed5b1 task: code cleanup
- 1483e0e task: Infrastructure cleanup
- 3ada64c fix: sorting by date on timesheet list view
- 5c195d5 fix: timesheet chart timezone issue
- f87df7e fix: move tasks to a different project not working on edit task screen
- c7e155f task: fix code styles
- 82d1d98 fix: first user login without project fixed.
- 76689f0 fix: style updates for dark mode including onboarding
- 0e709a6 task: Improved handling of env config in mailer
- a902310 task: updated gridstack library
- 1438a4b task: updated gridstack library
- 9b3b4d3 feat: Improved calendar widget layout
- aa0b1cf task: update packages
- 9ec572d fix: Trusted proxies not working
- 1a47c63 task: move docker file and generation into main repo part 1
- a6b6767 task: update sentry
- 5f8cbc1 feat: Add Limit and date range to ticket getAll methods
- 806df35 feat: Improve datetimehelper and add more standard formats.
- ab86ba4 feat: Add milestone title to results query
- 9e0bcb8 task: code cleanup
- a65536a feat: Improved general UX and tabs
- 758e053 feat: Improved widget UX with content scrolling
- a0db27a feat: Improved Calendar UX
- ee20498 feat: Enhance datetime helper parser for api usage
- 93dbbbb task: Improve error handling with sentry/bugsink
- a2ff8ae task: various small improvements to datetimehelper, calendar and ticket services
- 1574983 build(deps): bump http-proxy-middleware from 2.0.6 to 2.0.9
- ab4a81a task: fix code style
- 3358e45 task: remove attribute, reorganize code
- 18291a9 fix: first login 403 issue
- 24de527 Update Plugins
- 76bf318 fix: type matching in ticket service
- 60c6272 fix: idea board selection fixes
- 5277a21 [Changelog CI] Add Changelog for Version 3.4.12
Contributors
- Marcel Folaron (43 commits)
Files
.docker/Dockerfile | 128 +
.docker/config/custom.ini | 23 +
.docker/config/nginx.conf | 86 +
.docker/config/php-fpm.conf | 28 +
.docker/config/supervisord.conf | 32 +
.docker/docker-compose.yml | 64 +
.docker/start.sh | 51 +
.github/FUNDING.yml | 3 +-
.idea/leantime-oss.iml | 5 -
.idea/php.xml | 9 +-
.phpstan/bootstrap.php | 4 +-
CHANGELOG.md | 85 +
app/Core/Configuration/AppSettings.php | 2 +-
app/Core/Configuration/Environment.php | 2 -
.../Configuration/EnvironmentServiceProvider.php | 30 +
app/Core/Configuration/laravelConfig.php | 39 +-
app/Core/Contracts/DomainModel.php | 5 -
app/Core/Controller/Frontcontroller.php | 2 +-
app/Core/Db/Repository.php | 1 +
app/Core/{Contracts => Domains}/DTO.php | 2 +-
app/Core/Domains/DomainModel.php | 5 +
.../{Contracts => Domains}/DomainRepository.php | 2 +-
app/Core/{Contracts => Domains}/DomainService.php | 2 +-
.../EventsServiceProvider.php} | 4 +-
app/Core/Http/IncomingRequest.php | 2 +-
.../RequestTypeInterface.php | 2 +-
app/Core/Language.php | 2 +-
app/Core/Mailer.php | 10 +-
app/Core/Middleware/EncryptCookies.php | 17 -
app/Core/ProviderRepository.php | 203 -
app/Core/Providers/Environment.php | 28 -
app/Core/Providers/Logging.php | 23 -
app/Core/Providers/Session.php | 79 -
app/Core/Support/Attributes/AITool.php | 24 -
app/Domain/Api/Controllers/Projects.php | 2 +-
app/Domain/Api/Controllers/Users.php | 2 +-
app/Domain/Calendar/Js/calendarController.js | 26 +-
app/Domain/Calendar/Repositories/Calendar.php | 4 +-
app/Domain/Calendar/Services/Calendar.php | 216 +-
.../Calendar/Templates/showMyCalendar.tpl.php | 19 +-
app/Domain/Canvas/Repositories/Canvas.php | 4 +-
app/Domain/Canvas/Services/Canvas.php | 6 +-
app/Domain/Cron/Controllers/Run.php | 2 +-
app/Domain/CsvImport/Templates/upload.tpl.php | 2 +-
app/Domain/Dashboard/Templates/home.blade.php | 1 +
app/Domain/Files/Repositories/Files.php | 2 +-
app/Domain/Files/Templates/browse.tpl.php | 2 +-
.../Files/Templates/submodules/showAll.sub.php | 2 +-
app/Domain/Help/Controllers/FirstLogin.php | 3 -
app/Domain/Help/Js/helperController.js | 24 +-
app/Domain/Help/Services/Helper.php | 13 +
app/Domain/Ideas/Templates/ideaDialog.tpl.php | 3 +-
app/Domain/Install/register.php | 2 +-
app/Domain/Menu/Templates/headMenu.blade.php | 5 +
app/Domain/Notifications/Services/Messengers.php | 2 +-
app/Domain/Plugins/Services/Plugins.php | 2 +-
.../Projects}/Middleware/CurrentProject.php | 4 +-
app/Domain/Projects/Repositories/Projects.php | 2 +-
app/Domain/Setting/Controllers/EditBoxLabel.php | 4 +-
app/Domain/Setting/Services/Setting.php | 2 +-
app/Domain/Strategy/Controllers/ShowBoards.php | 2 +-
app/Domain/Tickets/Controllers/MoveTicket.php | 4 +
app/Domain/Tickets/Controllers/ShowTicket.php | 2 +-
app/Domain/Tickets/Repositories/Tickets.php | 41 +-
app/Domain/Tickets/Services/Tickets.php | 179 +-
.../Tickets/Templates/showTicketModal.blade.php | 4 +-
.../Templates/submodules/ticketDetails.sub.php | 32 +-
.../Tickets/Templates/submodules/timesheet.sub.php | 2 +-
app/Domain/Timesheets/Repositories/Timesheets.php | 4 +-
app/Domain/Timesheets/Templates/showMyList.tpl.php | 2 +-
app/Domain/Users/Repositories/Users.php | 2 +-
app/Domain/Widgets/Js/Widgetcontroller.js | 15 +-
.../Templates/components/moveableWidget.blade.php | 2 +-
.../Widgets/Templates/partials/calendar.blade.php | 82 +-
.../Widgets/Templates/partials/myToDos.blade.php | 12 +-
.../Application}/AppServiceProvider.php | 2 +-
.../Application}/Application.php | 16 +-
.../Application}/Bootloader.php | 6 +-
.../Auth/AuthenticationServiceProvider.php} | 4 +-
.../Auth}/Middleware/AuthCheck.php | 5 +-
.../Auth}/Middleware/AuthenticateSession.php | 2 +-
.../Auth/Tokens/SanctumServiceProvider.php} | 4 +-
.../Bootstrap/LoadConfig.php | 24 +-
.../Bootstrap/SetRequestForConsole.php | 4 +-
.../Cache/CacheServiceProvider.php} | 6 +-
.../Cache/Redis/RedisServiceProvider.php} | 4 +-
.../Console/Application.php | 2 +-
.../Console/CliRequest.php | 2 +-
.../Console/CliServiceProvider.php} | 4 +-
.../Console/ConsoleKernel.php | 8 +-
.../Console/ConsoleSupportProvider.php} | 6 +-
.../Database/DatabaseManager.php | 2 +-
.../Database/DatabaseServiceProvider.php} | 6 +-
.../Encryption}/EncryptionServiceProvider.php | 2 +-
.../Exceptions/ExceptionHandler.php | 9 +-
.../Exceptions/HandleExceptions.php | 4 +-
.../Exceptions/ReportableHandler.php | 2 +-
.../Exceptions/WhoopsHandler.php | 2 +-
.../Files}/FileSystemServiceProvider.php | 2 +-
app/{Core => Infrastructure/Files}/Fileupload.php | 2 +-
app/{Core => Infrastructure}/Http/ApiRequest.php | 4 +-
.../Http/Client/ApiClient.php | 2 +-
app/{Core => Infrastructure}/Http/HtmxRequest.php | 4 +-
app/{Core => Infrastructure}/Http/HttpKernel.php | 37 +-
.../Http}/Middleware/InitialHeaders.php | 3 +-
.../Http}/Middleware/RequestRateLimiter.php | 4 +-
.../Http}/Middleware/SetCacheHeaders.php | 2 +-
.../Http}/Middleware/TrimStrings.php | 2 +-
.../Http}/Middleware/TrustProxies.php | 18 +-
.../Http/RequestTypes}/ApiRequestType.php | 5 +-
.../Http/RequestTypes}/HtmxRequestType.php | 5 +-
.../Http/RequestTypes}/RequestTypeDetector.php | 2 +-
.../Installation}/Middleware/Installed.php | 3 +-
.../Installation}/Middleware/Updated.php | 3 +-
.../Plugins}/Middleware/LoadPlugins.php | 3 +-
.../Plugins/PluginManager.php | 2 +-
app/{Core => Infrastructure/Plugins}/Plugins.php | 3 +-
.../Plugins/PluginsServiceProvider.php} | 4 +-
app/Infrastructure/README.md | 4 +
.../Routing/FrontcontrollerServiceProvider.php} | 4 +-
.../Routing/Middleware}/RateLimiter.php | 2 +-
.../Sessions}/Middleware/StartSession.php | 6 +-
.../Sessions}/PathManifestRepository.php | 2 +-
.../Sessions/SessionServiceProvider.php | 54 +
.../Support/Avatarcreator.php | 2 +-
app/{Core => Infrastructure}/Support/Build.php | 2 +-
.../Support/DateTimeHelper.php | 93 +-
app/{Core => Infrastructure}/Support/Format.php | 3 +-
.../Support/LoadMacrosServiceProvider.php} | 5 +-
app/{Core => Infrastructure}/Support/StrMacros.php | 2 +-
.../UI}/TemplateServiceProvider.php | 2 +-
.../UI/ThemeServiceProvider.php} | 4 +-
.../UI/ViewsServiceProvider.php} | 8 +-
.../i18n/LanguageServiceProvider.php} | 4 +-
.../i18n}/Middleware/Localization.php | 2 +-
app/Language/en-US.ini | 6 +
app/Plugins | 2 +-
app/Views/Templates/layouts/entry.blade.php | 2 +-
app/Views/Templates/sections/footer.blade.php | 32 +-
app/Views/Templates/sections/header.blade.php | 34 +-
app/helpers.php | 10 +-
bin/leantime | 2 +-
blocklist.json | 7 +-
bootstrap/app.php | 8 +-
composer.json | 9 +-
composer.lock | 1926 +++---
package-lock.json | 6658 +++++++++-----------
package.json | 6 +-
public/assets/css/components/calendar.css | 547 +-
public/assets/css/components/dropdowns.css | 6 +-
public/assets/css/components/forms.css | 10 +
public/assets/css/components/kanban.css | 6 -
public/assets/css/components/mermaid.css | 61 +
public/assets/css/components/mobile.css | 16 +-
public/assets/css/components/nav.css | 3 +-
public/assets/css/components/structure.css | 16 +-
public/assets/css/components/style.default.css | 42 +-
public/assets/css/components/tables.css | 26 -
public/assets/css/components/tourBoxes.css | 1 +
public/assets/css/libs/fullcalendar.css | 114 +-
public/assets/css/libs/gridstack-extra.css | 373 --
public/assets/css/libs/gridstack.min.css | 294 +-
public/assets/js/app/core/modals.js | 4 +-
public/assets/less/main.less | 1 +
public/dist/mix-manifest.json | 33 +-
public/index.php | 2 +-
public/theme/default/css/dark.css | 15 +-
public/theme/default/css/light.css | 3 +-
public/theme/minimal/css/dark.css | 3 +-
public/theme/minimal/css/light.css | 3 +-
tests/Acceptance/API/ApiCest.php | 4 +-
tests/Acceptance/TicketsCest.php | 14 +-
tests/Acceptance/TimesheetCest.php | 8 +-
tests/Acceptance/bootstrap.php | 2 +-
tests/Support/Helper/Acceptance.php | 2 +-
tests/Support/Helper/Api.php | 2 +-
tests/Support/Helper/Unit.php | 2 +-
tests/Support/Page/Acceptance/Install.php | 18 +-
tests/Unit/TestCase.php | 2 +-
tests/Unit/app/Core/ApiClientTest.php | 2 +-
tests/Unit/app/Core/ApplicationUrlTest.php | 6 +-
tests/Unit/app/Core/Support/AvatarcreatorTest.php | 2 +-
tests/Unit/app/Core/Support/CarbonMacrosTest.php | 122 +
tests/Unit/app/Core/Support/DateTimeHelperTest.php | 290 +
tests/Unit/app/Core/Support/FormatTest.php | 2 +-
.../app/Domain/Api/Controllers/JsonrpcTest.php | 6 +-
tests/bootstrap.php | 2 +-
webpack.mix.js | 6 +-
188 files changed, 6645 insertions(+), 6308 deletions(-)