4.0.0 (2026-02-13)
Breaking changes
Due to changes in the JasperReports itself, older jrxml files have become incompatible with the newer version of the library and all the examples had to be updated with the JasperReports studio. For details, please see:
Then to update your files, you should do:
- Copy all jrxml fiels into one folder with their parent folder as prefix (e.g. some/path/someReportType/exampleReport.jrxml -> someReportType_exampleReport.jrxml).
- Create a new JasperReports project in Jasper Studio.
- Import files from the folder (Import -> filesystem -> ...).
- Right-click on a project -> JasperReports -> Update JasperReports files.
- Export project files.
- Copy the files back to their original place.
Major Update
Spring is upgraded to version 7
New feature
- #3979 Correct geodetic scale denominator calculation (@sbrunner, @Copilot, @fdiazcarsi)
- #3856 Add WebP support (@sbrunner)
- #3803 Handle HTTP 200 responses with no image for coverage task when failOnError enabled (@arnaudboudier-sogelink)
- #3882 Handle 204 no content for SingleImageLayer (@arnaudboudier-sogelink)
- #3978 Add CONTEXT_PATH support for sub-path deployments (@sbrunner, @spike83)
Documentation
Tests
Tests added or updated
Dependency update
- #3761 Update to Java 21 (@sebr72)
- #3683 Update pre-commit hook renovatebot/pre-commit-hooks to v41 (master) (@renovate[bot])
- #3758 Update dependency org.mockito:mockito-core to v5.19.0 (master) (@renovate[bot])
- #3824 Update pre-commit hook renovatebot/pre-commit-hooks to v41.168.1 (master) (@renovate[bot])
- #3825 Update pre-commit hook renovatebot/pre-commit-hooks to v41.168.4 (master) (@renovate[bot])
- #3718 Update dependency camptocamp/gs-renovate-config-preset to v1.4.1 (master) (@renovate[bot])
- #3757 Update CI dependencies (master) (@renovate[bot])
- #3734 Update dependency com.github.spotbugs:spotbugs-annotations to v4.9.4 (master) (@renovate[bot])
- #3864 Update all patch/minor versions (master) (@renovate[bot])
- #3823 Update geotools to v34 (master) (major) (@renovate[bot])
- #3906 Update CI dependencies (master) (@renovate[bot])
- #3817 Update dependency com.github.spotbugs:spotbugs-annotations to v4.9.8 (master) (@renovate[bot])
- #3940 Update tomcat Docker tag to v11 (master) (@renovate[bot])
- #3905 Update all patch/minor versions (master) (@renovate[bot])
- #3849 Update dependency camptocamp/gs-renovate-config-preset to v1.5.1 (master) (@renovate[bot])
- #3753 Update dependency com.github.spotbugs:spotbugs-annotations to v4.9.6 (master) (@renovate[bot])
- #3872 Update pre-commit hook renovatebot/pre-commit-hooks to v42.29.3 (master) (@renovate[bot])
- #3806 Update dependency c2cciutils to v1.7.5 (master) (@renovate[bot])
- #3826 Update pre-commit hook renovatebot/pre-commit-hooks to v41.168.5 (master) (@renovate[bot])
- #3961 Update pre-commit hook renovatebot/pre-commit-hooks to v43 (master) (@renovate[bot])
- #3938 Update actions/cache action to v5 (master) (@renovate[bot])
- #3920 Update dependency camptocamp/gs-renovate-config-preset to v1.7.0 (master) (@renovate[bot])
- #3778 Update CI dependencies (master) (@renovate[bot])
- #3821 Update actions/upload-artifact action to v5 (master) (@renovate[bot])
- #3959 Update CI dependencies (master) (@renovate[bot])
- #3707 Update geotools to v33.2 (master) (@renovate[bot])
- #3969 Update dependency camptocamp/gs-renovate-config-preset to v1.8.1 (master) (@renovate[bot])
- #3831 Update dependency camptocamp/gs-renovate-config-preset to v1.5.0 (master) (@renovate[bot])
- #3885 Gradle 9 (@lanseg)
- #3963 Update pre-commit hook renovatebot/pre-commit-hooks to v43.0.9 (master) (@renovate[bot])
- #3958 Update all patch/minor versions (master) (@renovate[bot])
- #3818 Update CI dependencies (master) (@renovate[bot])
- #3682 Update CI dependencies (master) (@renovate[bot], @geo-ghci-int[bot])
- #3877 Update pre-commit hook renovatebot/pre-commit-hooks to v42.29.4 (master) (@renovate[bot])
- #3706 Update CI dependencies (master) (@renovate[bot])
- #3820 Update geotools to v33.3 (master) (@renovate[bot])
- #3684 Update dependency camptocamp/gs-renovate-config-preset to v1.3.2 (master) (@renovate[bot])
- #3936 Update geotools to v34.2 (master) (@renovate[bot])
- #3694 Update dependency camptocamp/gs-renovate-config-preset to v1.4.0 (master) (@renovate[bot])
- #3867 Update CI dependencies (master) (major) (@renovate[bot])
- #3970 Update dependency camptocamp/gs-renovate-config-preset to v1.8.5 (master) (@renovate[bot])
- #3907 Update CI dependencies (master) (major) (@renovate[bot])
- #3695 Update pre-commit hook sbrunner/hooks to v1.5.0 (master) (@renovate[bot])
- #3742 Update gradle (master) (@renovate[bot])
- #3960 Update gradle (master) (@renovate[bot])
- #3816 Update all patch/minor versions (master) (@renovate[bot])
- #3937 Update gradle (master) (@renovate[bot])
- #3759 Update CI dependencies (master) (major) (@renovate[bot])
- #3795 Update tomcat Docker tag to v9.0.109-jre21-temurin-jammy (master) (@renovate[bot])
- #3745 Update gradle (master) (@renovate[bot])
- #3676 Update dependency camptocamp/gs-renovate-config-preset to v1.2.3 (master) (@renovate[bot])
- #3726 Update own packages (master) (@renovate[bot])
- #3719 Update pre-commit hook sbrunner/hooks to v1.6.0 (master) (@renovate[bot])
- #3794 Update dependency io.sentry:sentry-logback to v8.23.0 (master) (@renovate[bot])
- #3723 Update dependency camptocamp/gs-renovate-config-preset to v1.4.2 (master) (@renovate[bot])
- #3869 Update pre-commit hook renovatebot/pre-commit-hooks to v42.28.0 (master) (@renovate[bot])
- #3822 Update dependency net.logstash.logback:logstash-logback-encoder to v9 (master) (@renovate[bot])
- #3779 Update all patch/minor versions (master) (@renovate[bot])
- #3935 Update CI dependencies (master) (@renovate[bot])
- #3866 Update geotools to v34.1 (master) (@renovate[bot])
- #3897 Spring7 migration (@cmangeat, @lanseg, @geo-ghci-int[bot])
- #3798 Update dependency c2cciutils to v1.7.4 (master) (@renovate[bot])
- #3934 Update all patch/minor versions (master) (@renovate[bot])
- #3743 Update gradle (master) (@renovate[bot], @sbrunner)
- #3710 Update Tomcat image (@jwkaltz)
- #3754 Update groovy monorepo to v5 (master) (major) (@renovate[bot])
- #3865 Update CI dependencies (master) (@renovate[bot])
- #3852 Update dependency camptocamp/gs-renovate-config-preset to v1.6.0 (master) (@renovate[bot])
- #3709 Jasperreport 7 migration (@lanseg, @geo-ghci-int[bot])
- #3733 Update all patch/minor versions (master) (@renovate[bot], @sbrunner)
- #3819 Update dependency python to v3.14.0 (master) (@renovate[bot])
Chore
Changes that shouldn't affect the users like continuous integration updates
- #3730 fix(3725): Updated jdk version for jitpack to jdk17 (@lanseg)
- #3949 Fix missing HibernateAccounting class (@lanseg, @sebr72)
- #3780 CI updates (@sbrunner)
- #3717 Update
renovate.json5with the new versions (@sbrunner) - #3787 CI updates (@sbrunner)
- #3799 Migrate Java 5 - 17 code to Java 21 (@sebr72)
- #3677 CI updates (@sbrunner)
- #3971 Audit Update Renovate configuration (@geo-ghci-int[bot])
- #3557 Allow delta between completed job status registered stats (@cmangeat, @geo-ghci-int[bot])
- #3724 CI updates (@sbrunner)
- #3769 Resolve Gradle 8 build deprecation warnings (@lanseg)
- #3741 Renovate: Separate Gradle updates (@sbrunner)