From af36cff35aeb836b7cc0b17bfbebd27013f99e55 Mon Sep 17 00:00:00 2001 From: Alex B <45384811+AB-xdev@users.noreply.github.com> Date: Thu, 5 Sep 2024 11:34:24 +0200 Subject: [PATCH 01/60] Update config.yml --- .github/ISSUE_TEMPLATE/config.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index b6fb79b1..3694b3d1 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,4 +1,7 @@ contact_links: + - name: 🍃 Leaflet docs + url: https://leafletjs.com/reference.html + about: "Consolidate this when you have questions about Leaflet itself (and not our Vaadin component)" - name: 💬 Contact support url: https://xdev.software/en/services/support about: "If you need support as soon as possible or/and you can't wait for any pull request" From 2bcb4a61f538a3c53ca56bce2f126cde5bd2eff2 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sun, 15 Sep 2024 02:36:42 +0000 Subject: [PATCH 02/60] Update dependency org.apache.maven.plugins:maven-gpg-plugin to v3.2.6 --- template-placeholder/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index b7475cf2..dce6e136 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -199,7 +199,7 @@ org.apache.maven.plugins maven-gpg-plugin - 3.2.5 + 3.2.6 sign-artifacts From b19e86c698c87195c5083d75f1ad12899225c4c3 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Fri, 20 Sep 2024 02:31:06 +0000 Subject: [PATCH 03/60] Update org.springframework.boot.version to v3.3.4 --- template-placeholder-demo/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index fd6bc929..30f120e4 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -31,7 +31,7 @@ 24.4.11 - 3.3.3 + 3.3.4 From 8decad5faed282665afb841e7fe2f4684bce679a Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Fri, 20 Sep 2024 02:31:08 +0000 Subject: [PATCH 04/60] Update vaadin.version to v24.4.12 --- template-placeholder-demo/pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index fd6bc929..1d942887 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -29,7 +29,7 @@ software.xdev.vaadin.Application - 24.4.11 + 24.4.12 3.3.3 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 8760af4d..1311deaf 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -49,7 +49,7 @@ UTF-8 - 24.4.11 + 24.4.12 From 40303d45140e9c23761f8d34c8a4dcabd0fb266a Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Thu, 26 Sep 2024 02:34:18 +0000 Subject: [PATCH 05/60] Update dependency com.mycila:license-maven-plugin to v4.6 --- template-placeholder/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index dce6e136..b43ab124 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -103,7 +103,7 @@ com.mycila license-maven-plugin - 4.5 + 4.6 ${project.organization.url} From 8903c1e55a93f0930848716f675a89b5ec13ed87 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Thu, 26 Sep 2024 02:35:22 +0000 Subject: [PATCH 06/60] Update dependency com.mycila:license-maven-plugin to v4.6 --- template-placeholder/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 1311deaf..7e3fcfc7 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -125,7 +125,7 @@ com.mycila license-maven-plugin - 4.5 + 4.6 ${project.organization.url} From 697242e9e3cb9b87f38e5b1c5f3ff7fbc2e200f6 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Fri, 27 Sep 2024 02:35:16 +0000 Subject: [PATCH 07/60] Update dependency com.fasterxml.jackson.core:jackson-databind to v2.18.0 --- vaadin-maps-leaflet-flow/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vaadin-maps-leaflet-flow/pom.xml b/vaadin-maps-leaflet-flow/pom.xml index e624f3b4..9aa54a24 100644 --- a/vaadin-maps-leaflet-flow/pom.xml +++ b/vaadin-maps-leaflet-flow/pom.xml @@ -108,7 +108,7 @@ com.fasterxml.jackson.core jackson-databind - 2.17.2 + 2.18.0 From e8c174842b28c3cc0a58f5b4e98fde4698fec9c0 Mon Sep 17 00:00:00 2001 From: AB Date: Fri, 27 Sep 2024 12:31:14 +0200 Subject: [PATCH 08/60] We don't use hilla -> We don't need hilla --- template-placeholder-demo/pom.xml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index af2b753b..bed91737 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -61,6 +61,12 @@ com.vaadin vaadin-core + + + com.vaadin + hilla-dev + + software.xdev @@ -72,6 +78,12 @@ com.vaadin vaadin-spring-boot-starter + + + com.vaadin + hilla + + From 52afc82afa1383dceb1fc069d5a54665574ff37f Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Fri, 27 Sep 2024 10:37:22 +0000 Subject: [PATCH 09/60] Update net.sourceforge.pmd to v7.6.0 --- pom.xml | 4 ++-- template-placeholder/pom.xml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index ce23a37a..91a9617a 100644 --- a/pom.xml +++ b/pom.xml @@ -82,12 +82,12 @@ net.sourceforge.pmd pmd-core - 7.5.0 + 7.6.0 net.sourceforge.pmd pmd-java - 7.5.0 + 7.6.0 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index b43ab124..5d5a7057 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -284,12 +284,12 @@ net.sourceforge.pmd pmd-core - 7.5.0 + 7.6.0 net.sourceforge.pmd pmd-java - 7.5.0 + 7.6.0 From c0330dd690196d61ae8d2f0617b933b400d5303d Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sat, 28 Sep 2024 02:32:00 +0000 Subject: [PATCH 10/60] Update dependency org.apache.maven.plugins:maven-gpg-plugin to v3.2.7 --- template-placeholder/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 5d5a7057..4ca51ad4 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -199,7 +199,7 @@ org.apache.maven.plugins maven-gpg-plugin - 3.2.6 + 3.2.7 sign-artifacts From 40edee3f6942a2d0498d8b1ea7c5f2a2de509539 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Mon, 30 Sep 2024 02:38:20 +0000 Subject: [PATCH 11/60] Update dependency com.puppycrawl.tools:checkstyle to v10.18.2 --- pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 91a9617a..035f4751 100644 --- a/pom.xml +++ b/pom.xml @@ -45,7 +45,7 @@ com.puppycrawl.tools checkstyle - 10.18.1 + 10.18.2 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 5d5a7057..571ef918 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -247,7 +247,7 @@ com.puppycrawl.tools checkstyle - 10.18.1 + 10.18.2 From 2ce9319db9fdcdb5b987ea325f45d5089477e75c Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Wed, 2 Oct 2024 02:33:50 +0000 Subject: [PATCH 12/60] Update dependency org.apache.maven.plugins:maven-javadoc-plugin to v3.10.1 --- template-placeholder/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 5d5a7057..c08df719 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -143,7 +143,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.10.0 + 3.10.1 attach-javadocs From 6901c1d9e214be084e95c7ea944950b3c97c467b Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Wed, 2 Oct 2024 02:34:32 +0000 Subject: [PATCH 13/60] Update vaadin.version to v24.4.13 --- template-placeholder-demo/pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index bed91737..5c0e324b 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -29,7 +29,7 @@ software.xdev.vaadin.Application - 24.4.12 + 24.4.13 3.3.4 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 25093921..542d2277 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -49,7 +49,7 @@ UTF-8 - 24.4.12 + 24.4.13 From 19677120b4d32e04a41b3d19089c9431afadd2b2 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Wed, 9 Oct 2024 02:32:36 +0000 Subject: [PATCH 14/60] Update lycheeverse/lychee-action action to v2 --- .github/workflows/broken-links.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/broken-links.yml b/.github/workflows/broken-links.yml index 96af7986..c17c3978 100644 --- a/.github/workflows/broken-links.yml +++ b/.github/workflows/broken-links.yml @@ -18,7 +18,7 @@ jobs: - name: Link Checker id: lychee - uses: lycheeverse/lychee-action@v1 + uses: lycheeverse/lychee-action@v2 - name: Find already existing issue id: find-issue From 029bf2fcedbcfd9186ce49a8de7a7ab7c3b09ea6 Mon Sep 17 00:00:00 2001 From: AB Date: Mon, 21 Oct 2024 08:56:12 +0200 Subject: [PATCH 15/60] Don't fail on broken links --- .github/workflows/broken-links.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/broken-links.yml b/.github/workflows/broken-links.yml index c17c3978..48265e89 100644 --- a/.github/workflows/broken-links.yml +++ b/.github/workflows/broken-links.yml @@ -19,6 +19,8 @@ jobs: - name: Link Checker id: lychee uses: lycheeverse/lychee-action@v2 + with: + fail: false # Don't fail on broken links, create an issue instead - name: Find already existing issue id: find-issue From 9ad20ee188ec4d6f55b3ae187386009ed58a8f81 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 22 Oct 2024 02:34:23 +0000 Subject: [PATCH 16/60] Update dependency org.apache.maven.plugins:maven-project-info-reports-plugin to v3.8.0 --- template-placeholder/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index fa368399..e963c1b1 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -95,7 +95,7 @@ org.apache.maven.plugins maven-project-info-reports-plugin - 3.7.0 + 3.8.0 From 009f795f2baf9ac819c4891d297ae5cc2c78534a Mon Sep 17 00:00:00 2001 From: Alex B <45384811+AB-xdev@users.noreply.github.com> Date: Thu, 24 Oct 2024 14:04:20 +0200 Subject: [PATCH 17/60] Initial commit --- LICENSE | 201 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 201 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..261eeb9e --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. From efcd43e6d935ffb84ea540561128bc5173923517 Mon Sep 17 00:00:00 2001 From: AB Date: Thu, 24 Oct 2024 14:14:33 +0200 Subject: [PATCH 18/60] Init --- .gitattributes | 5 + .github/.lycheeignore | 2 + .github/ISSUE_TEMPLATE/bug_report.yml | 68 +++++ .github/ISSUE_TEMPLATE/config.yml | 4 + .github/ISSUE_TEMPLATE/enhancement.yml | 32 +++ .github/ISSUE_TEMPLATE/question.yml | 31 ++ .github/labels.yml | 38 +++ .github/workflows/broken-links.yml | 45 +++ .github/workflows/sync-labels.yml | 24 ++ .github/workflows/update-from-template.yml | 318 +++++++++++++++++++++ CHANGELOG.md | 0 LICENSE | 2 +- SECURITY.md | 5 + renovate.json5 | 4 + 14 files changed, 577 insertions(+), 1 deletion(-) create mode 100644 .gitattributes create mode 100644 .github/.lycheeignore create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/enhancement.yml create mode 100644 .github/ISSUE_TEMPLATE/question.yml create mode 100644 .github/labels.yml create mode 100644 .github/workflows/broken-links.yml create mode 100644 .github/workflows/sync-labels.yml create mode 100644 .github/workflows/update-from-template.yml create mode 100644 CHANGELOG.md create mode 100644 SECURITY.md create mode 100644 renovate.json5 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..0f9f33e7 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,5 @@ +# Auto detect text files and perform LF normalization +* text=auto + +# Force sh files to have LF +*.sh text eol=lf diff --git a/.github/.lycheeignore b/.github/.lycheeignore new file mode 100644 index 00000000..972ca610 --- /dev/null +++ b/.github/.lycheeignore @@ -0,0 +1,2 @@ +# Ignorefile for broken link check +localhost diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 00000000..68299d5d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,68 @@ +name: 🐞 Bug +description: Create a bug report for something that is broken +labels: [bug] +body: + - type: markdown + attributes: + value: | + Thank you for reporting a bug. + + Please fill in as much information as possible about your bug so that we don't have to play "information ping-pong" and can help you immediately. + + - type: checkboxes + id: checklist + attributes: + label: "Checklist" + options: + - label: "I am able to reproduce the bug with the [latest version](https://github.com/xdev-software/template-placeholder/releases/latest)" + required: true + - label: "I made sure that there are *no existing issues* - [open](https://github.com/xdev-software/template-placeholder/issues) or [closed](https://github.com/xdev-software/template-placeholder/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to." + required: true + - label: "I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise." + required: true + - label: "This issue contains only one bug." + required: true + + - type: input + id: app-version + attributes: + label: Affected version + description: "In which version did you encounter the bug?" + placeholder: "x.x.x" + validations: + required: true + + - type: textarea + id: steps-to-reproduce + attributes: + label: Steps to reproduce the bug + description: | + What did you do for the bug to show up? + + If you can't cause the bug to show up again reliably (and hence don't have a proper set of steps to give us), please still try to give as many details as possible on how you think you encountered the bug. + placeholder: | + 1. Use '...' + 2. Do '...' + validations: + required: true + + - type: textarea + id: expected-behavior + attributes: + label: Expected behavior + description: | + Tell us what you expect to happen. + + - type: textarea + id: actual-behavior + attributes: + label: Actual behavior + description: | + Tell us what happens with the steps given above. + + - type: textarea + id: additional-information + attributes: + label: Additional information + description: | + Any other relevant information you'd like to include diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..b6fb79b1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,4 @@ +contact_links: + - name: 💬 Contact support + url: https://xdev.software/en/services/support + about: "If you need support as soon as possible or/and you can't wait for any pull request" diff --git a/.github/ISSUE_TEMPLATE/enhancement.yml b/.github/ISSUE_TEMPLATE/enhancement.yml new file mode 100644 index 00000000..75231293 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/enhancement.yml @@ -0,0 +1,32 @@ +name: ✨ Feature/Enhancement +description: Suggest a new feature or enhancement +labels: [enhancement] +body: + - type: markdown + attributes: + value: | + Thank you for suggesting a new feature/enhancement. + + - type: checkboxes + id: checklist + attributes: + label: "Checklist" + options: + - label: "I made sure that there are *no existing issues* - [open](https://github.com/xdev-software/template-placeholder/issues) or [closed](https://github.com/xdev-software/template-placeholder/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to." + required: true + - label: "I have taken the time to fill in all the required details. I understand that the feature request will be dismissed otherwise." + required: true + - label: "This issue contains only one feature request/enhancement." + required: true + + - type: textarea + id: description + attributes: + label: Description + validations: + required: true + + - type: textarea + id: additional-information + attributes: + label: Additional information diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml new file mode 100644 index 00000000..6ecd6ad5 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/question.yml @@ -0,0 +1,31 @@ +name: ❓ Question +description: Ask a question +labels: [question] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to fill out this form! + + - type: checkboxes + id: checklist + attributes: + label: "Checklist" + options: + - label: "I made sure that there are *no existing issues* - [open](https://github.com/xdev-software/template-placeholder/issues) or [closed](https://github.com/xdev-software/template-placeholder/issues?q=is%3Aissue+is%3Aclosed) - which I could contribute my information to." + required: true + - label: "I have taken the time to fill in all the required details. I understand that the question will be dismissed otherwise." + required: true + + - type: textarea + id: what-is-the-question + attributes: + label: What is/are your question(s)? + validations: + required: true + + - type: textarea + id: additional-information + attributes: + label: Additional information + description: "Any other information you'd like to include - for instance logs, screenshots, etc." diff --git a/.github/labels.yml b/.github/labels.yml new file mode 100644 index 00000000..325f4ce8 --- /dev/null +++ b/.github/labels.yml @@ -0,0 +1,38 @@ +# Default +## Required for template +- name: bug + description: "Something isn't working" + color: 'd73a4a' +- name: enhancement + description: New feature or request + color: '#a2eeef' +- name: question + description: Information is requested + color: '#d876e3' +## Others +- name: duplicate + description: This already exists + color: '#cfd3d7' +- name: good first issue + description: Good for newcomers + color: '#7057ff' +- name: help wanted + description: Extra attention is needed + color: '#008672' +- name: invalid + description: "This doesn't seem right" + color: '#e4e669' +# Custom +- name: automated + description: Created by an automation + color: '#000000' +- name: "can't reproduce" + color: '#e95f2c' +- name: customer-requested + description: Was requested by a customer of us + color: '#068374' +- name: stale + color: '#ededed' +- name: waiting-for-response + description: If no response is received after a certain time the issue will be closed + color: '#202020' diff --git a/.github/workflows/broken-links.yml b/.github/workflows/broken-links.yml new file mode 100644 index 00000000..48265e89 --- /dev/null +++ b/.github/workflows/broken-links.yml @@ -0,0 +1,45 @@ +name: Broken links + +on: + workflow_dispatch: + schedule: + - cron: "23 23 * * 0" + +permissions: + issues: write + +jobs: + link-checker: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - run: mv .github/.lycheeignore .lycheeignore + + - name: Link Checker + id: lychee + uses: lycheeverse/lychee-action@v2 + with: + fail: false # Don't fail on broken links, create an issue instead + + - name: Find already existing issue + id: find-issue + run: | + echo "number=$(gh issue list -l 'bug' -l 'automated' -L 1 -S 'in:title \"Link Checker Report\"' -s 'open' --json 'number' --jq '.[].number')" >> $GITHUB_OUTPUT + env: + GH_TOKEN: ${{ github.token }} + + - name: Close issue if everything is fine + if: env.lychee_exit_code == 0 && steps.find-issue.outputs.number != '' + run: gh issue close -r 'not planned' ${{ steps.find-issue.outputs.number }} + env: + GH_TOKEN: ${{ github.token }} + + - name: Create Issue From File + if: env.lychee_exit_code != 0 + uses: peter-evans/create-issue-from-file@v5 + with: + issue-number: ${{ steps.find-issue.outputs.number }} + title: Link Checker Report + content-filepath: ./lychee/out.md + labels: bug, automated diff --git a/.github/workflows/sync-labels.yml b/.github/workflows/sync-labels.yml new file mode 100644 index 00000000..ff880f07 --- /dev/null +++ b/.github/workflows/sync-labels.yml @@ -0,0 +1,24 @@ +name: Sync labels + +on: + push: + branches: develop + paths: + - .github/labels.yml + + workflow_dispatch: + +permissions: + issues: write + +jobs: + labels: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + sparse-checkout: .github/labels.yml + + - uses: EndBug/label-sync@v2 + with: + config-file: .github/labels.yml diff --git a/.github/workflows/update-from-template.yml b/.github/workflows/update-from-template.yml new file mode 100644 index 00000000..3ad8e88d --- /dev/null +++ b/.github/workflows/update-from-template.yml @@ -0,0 +1,318 @@ +name: Update from Template + +# This workflow keeps the repo up to date with changes from the template repo (REMOTE_URL) +# It duplicates the REMOTE_BRANCH (into UPDATE_BRANCH) and tries to merge it into +# this repos default branch (which is checked out here) +# Note that this requires a PAT (Personal Access Token) - at best from a servicing account +# PAT permissions: read:discussion, read:org, repo, workflow +# Also note that you should have at least once merged the template repo into the current repo manually +# otherwise a "refusing to merge unrelated histories" error might occur. + +on: + schedule: + - cron: '55 2 * * 1' + workflow_dispatch: + inputs: + no_automatic_merge: + type: boolean + description: 'No automatic merge' + default: false + +env: + UPDATE_BRANCH: update-from-template + UPDATE_BRANCH_MERGED: update-from-template-merged + REMOTE_URL: https://github.com/xdev-software/base-template.git + REMOTE_BRANCH: master + +permissions: + contents: write + pull-requests: write + +jobs: + update: + runs-on: ubuntu-latest + outputs: + update_branch_merged_commit: ${{ steps.manage-branches.outputs.update_branch_merged_commit }} + create_update_branch_merged_pr: ${{ steps.manage-branches.outputs.create_update_branch_merged_pr }} + steps: + - uses: actions/checkout@v4 + with: + # Required because otherwise there are always changes detected when executing diff/rev-list + fetch-depth: 0 + # If no PAT is used the following error occurs on a push: + # refusing to allow a GitHub App to create or update workflow `.github/workflows/xxx.yml` without `workflows` permission + token: ${{ secrets.UPDATE_FROM_TEMPLATE_PAT }} + + - name: Init Git + run: | + git config --global user.email "111048771+xdev-gh-bot@users.noreply.github.com" + git config --global user.name "XDEV Bot" + + - name: Manage branches + id: manage-branches + run: | + echo "Adding remote template-repo" + git remote add template ${{ env.REMOTE_URL }} + + echo "Fetching remote template repo" + git fetch template + + echo "Deleting local branches that will contain the updates - if present" + git branch -D ${{ env.UPDATE_BRANCH }} || true + git branch -D ${{ env.UPDATE_BRANCH_MERGED }} || true + + echo "Checking if the remote template repo has new commits" + git rev-list ..template/${{ env.REMOTE_BRANCH }} + + if [ $(git rev-list --count ..template/${{ env.REMOTE_BRANCH }}) -eq 0 ]; then + echo "There are no commits new commits on the template repo" + + echo "Deleting origin branch(es) that contain the updates - if present" + git push -f origin --delete ${{ env.UPDATE_BRANCH }} || true + git push -f origin --delete ${{ env.UPDATE_BRANCH_MERGED }} || true + + echo "create_update_branch_pr=0" >> $GITHUB_OUTPUT + echo "create_update_branch_merged_pr=0" >> $GITHUB_OUTPUT + exit 0 + fi + + echo "Found new commits on the template repo" + + echo "Creating update branch" + git branch ${{ env.UPDATE_BRANCH }} template/${{ env.REMOTE_BRANCH }} + git branch --unset-upstream ${{ env.UPDATE_BRANCH }} + + echo "Pushing update branch" + git push -f -u origin ${{ env.UPDATE_BRANCH }} + + echo "Getting base branch" + base_branch=$(git branch --show-current) + echo "Base branch is $base_branch" + echo "base_branch=$base_branch" >> $GITHUB_OUTPUT + + echo "Trying to create auto-merged branch ${{ env.UPDATE_BRANCH_MERGED }}" + git branch ${{ env.UPDATE_BRANCH_MERGED }} ${{ env.UPDATE_BRANCH }} + git checkout ${{ env.UPDATE_BRANCH_MERGED }} + + echo "Merging branch $base_branch into ${{ env.UPDATE_BRANCH_MERGED }}" + git merge $base_branch && merge_exit_code=$? || merge_exit_code=$? + if [ $merge_exit_code -ne 0 ]; then + echo "Auto merge failed! Manual merge required" + echo "::notice ::Auto merge failed - Manual merge required" + + echo "Cleaning up failed merge" + git merge --abort + git checkout $base_branch + git branch -D ${{ env.UPDATE_BRANCH_MERGED }} || true + + echo "Deleting auto-merge branch - if present" + git push -f origin --delete ${{ env.UPDATE_BRANCH_MERGED }} || true + + echo "create_update_branch_pr=1" >> $GITHUB_OUTPUT + echo "create_update_branch_merged_pr=0" >> $GITHUB_OUTPUT + exit 0 + fi + + echo "Post processing: Trying to automatically fill in template variables" + find . -type f \ + -not -path "./.git/**" \ + -not -path "./.github/workflows/update-from-template.yml" -print0 \ + | xargs -0 sed -i "s/template-placeholder/${GITHUB_REPOSITORY#*/}/g" + + git status + git add --all + + if [[ "$(git status --porcelain)" != "" ]]; then + echo "Filled in template; Committing" + + git commit -m "Fill in template" + fi + + echo "Pushing auto-merged branch" + git push -f -u origin ${{ env.UPDATE_BRANCH_MERGED }} + + echo "update_branch_merged_commit=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT + + echo "Restoring base branch $base_branch" + git checkout $base_branch + + echo "create_update_branch_pr=0" >> $GITHUB_OUTPUT + echo "create_update_branch_merged_pr=1" >> $GITHUB_OUTPUT + echo "try_close_update_branch_pr=1" >> $GITHUB_OUTPUT + + - name: Create/Update PR update_branch + if: steps.manage-branches.outputs.create_update_branch_pr == 1 + env: + GH_TOKEN: ${{ secrets.UPDATE_FROM_TEMPLATE_PAT }} + run: | + gh_pr_up() { + gh pr create -H "${{ env.UPDATE_BRANCH }}" "$@" || (git checkout "${{ env.UPDATE_BRANCH }}" && gh pr edit "$@") + } + gh_pr_up -B "${{ steps.manage-branches.outputs.base_branch }}" \ + --title "Update from template" \ + --body "An automated PR to sync changes from the template into this repo" + + # Ensure that only a single PR is open (otherwise confusion and spam) + - name: Close PR update_branch + if: steps.manage-branches.outputs.try_close_update_branch_pr == 1 + env: + GH_TOKEN: ${{ secrets.UPDATE_FROM_TEMPLATE_PAT }} + run: | + gh pr close "${{ env.UPDATE_BRANCH }}" || true + + - name: Create/Update PR update_branch_merged + if: steps.manage-branches.outputs.create_update_branch_merged_pr == 1 + env: + GH_TOKEN: ${{ secrets.UPDATE_FROM_TEMPLATE_PAT }} + run: | + gh_pr_up() { + gh pr create -H "${{ env.UPDATE_BRANCH_MERGED }}" "$@" || (git checkout "${{ env.UPDATE_BRANCH_MERGED }}" && gh pr edit "$@") + } + gh_pr_up -B "${{ steps.manage-branches.outputs.base_branch }}" \ + --title "Update from template (auto-merged)" \ + --body "An automated PR to sync changes from the template into this repo" + + # Wait a moment so that checks of PR have higher prio than following job + sleep 3 + + # Split into two jobs to help with executor starvation + auto-merge: + needs: [update] + if: needs.update.outputs.create_update_branch_merged_pr == 1 + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + # Required because otherwise there are always changes detected when executing diff/rev-list + fetch-depth: 0 + # If no PAT is used the following error occurs on a push: + # refusing to allow a GitHub App to create or update workflow `.github/workflows/xxx.yml` without `workflows` permission + token: ${{ secrets.UPDATE_FROM_TEMPLATE_PAT }} + + - name: Init Git + run: | + git config --global user.email "111048771+xdev-gh-bot@users.noreply.github.com" + git config --global user.name "XDEV Bot" + + - name: Checking if auto-merge for PR update_branch_merged can be done + id: auto-merge-check + env: + GH_TOKEN: ${{ secrets.UPDATE_FROM_TEMPLATE_PAT }} + run: | + not_failed_conclusion="skipped|neutral|success" + not_relevant_app_slug="dependabot|github-pages|sonarcloud" + + echo "Waiting for checks to start..." + sleep 40s + + for i in {1..20}; do + echo "Checking if PR can be auto-merged. Try: $i" + + echo "Checking if update-branch-merged exists" + git fetch + if [[ $(git rev-parse origin/${{ env.UPDATE_BRANCH_MERGED }}) ]]; then + echo "Branch still exists; Continuing..." + else + echo "Branch origin/${{ env.UPDATE_BRANCH_MERGED }} is missing" + exit 0 + fi + + echo "Fetching checks" + cs_response=$(curl -sL \ + --fail-with-body \ + --connect-timeout 60 \ + --max-time 120 \ + -H "Accept: application/vnd.github+json" \ + -H "Authorization: Bearer $GH_TOKEN" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + https://api.github.com/repos/${{ github.repository }}/commits/${{ needs.update.outputs.update_branch_merged_commit }}/check-suites) + + cs_data=$(echo $cs_response | jq '.check_suites[] | { conclusion: .conclusion, slug: .app.slug, check_runs_url: .check_runs_url }') + echo $cs_data + + if [[ -z "$cs_data" ]]; then + echo "No check suite data - Assuming that there are no checks to run" + + echo "perform=1" >> $GITHUB_OUTPUT + exit 0 + fi + + cs_failed=$(echo $cs_data | jq --arg x "$not_failed_conclusion" 'select ((.conclusion == null or (.conclusion | test($x))) | not)') + if [[ -z "$cs_failed" ]]; then + echo "No check failed so far; Checking if relevant checks are still running" + + cs_relevant_still_running=$(echo $cs_data | jq --arg x "$not_relevant_app_slug" 'select (.conclusion == null and (.slug | test($x) | not))') + if [[ -z $cs_relevant_still_running ]]; then + echo "All relevant checks finished - PR can be merged" + + echo "perform=1" >> $GITHUB_OUTPUT + exit 0 + else + echo "Relevant checks are still running" + echo $cs_relevant_still_running + fi + else + echo "Detected failed check" + echo $cs_failed + + echo "perform=0" >> $GITHUB_OUTPUT + exit 0 + fi + + echo "Waiting before next run..." + sleep 30s + done + + echo "Timed out - Assuming executor starvation - Forcing merge" + echo "perform=1" >> $GITHUB_OUTPUT + + - name: Auto-merge update_branch_merged + if: steps.auto-merge-check.outputs.perform == 1 + run: | + echo "Getting base branch" + base_branch=$(git branch --show-current) + echo "Base branch is $base_branch" + + echo "Fetching..." + git fetch + if [[ $(git rev-parse origin/${{ env.UPDATE_BRANCH_MERGED }}) ]]; then + echo "Branch still exists; Continuing..." + else + echo "Branch origin/${{ env.UPDATE_BRANCH_MERGED }} is missing" + exit 0 + fi + + expected_commit="${{ needs.update.outputs.update_branch_merged_commit }}" + actual_commit=$(git rev-parse origin/${{ env.UPDATE_BRANCH_MERGED }}) + if [[ "$expected_commit" != "$actual_commit" ]]; then + echo "Branch ${{ env.UPDATE_BRANCH_MERGED }} contains unexpected commit $actual_commit" + echo "Expected: $expected_commit" + + exit 0 + fi + + echo "Ensuring that current branch $base_branch is up-to-date" + git pull + + echo "Merging origin/${{ env.UPDATE_BRANCH_MERGED }} into $base_branch" + git merge origin/${{ env.UPDATE_BRANCH_MERGED }} && merge_exit_code=$? || merge_exit_code=$? + if [ $merge_exit_code -ne 0 ]; then + echo "Unexpected merge failure $merge_exit_code - Requires manual resolution" + + exit 0 + fi + + if [[ "${{ inputs.no_automatic_merge }}" == "true" ]]; then + echo "Exiting due no_automatic_merge" + + exit 0 + fi + + echo "Pushing" + git push + + echo "Cleaning up" + git branch -D ${{ env.UPDATE_BRANCH }} || true + git branch -D ${{ env.UPDATE_BRANCH_MERGED }} || true + git push -f origin --delete ${{ env.UPDATE_BRANCH }} || true + git push -f origin --delete ${{ env.UPDATE_BRANCH_MERGED }} || true diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 00000000..e69de29b diff --git a/LICENSE b/LICENSE index 261eeb9e..ccaa2b3a 100644 --- a/LICENSE +++ b/LICENSE @@ -186,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright [yyyy] [name of copyright owner] + Copyright 2024 XDEV Software Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 00000000..34b9514d --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,5 @@ +# Security Policy + +## Reporting a Vulnerability + +Please report a security vulnerability [on GitHub Security Advisories](https://github.com/xdev-software/template-placeholder/security/advisories/new). diff --git a/renovate.json5 b/renovate.json5 new file mode 100644 index 00000000..11a77b2a --- /dev/null +++ b/renovate.json5 @@ -0,0 +1,4 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "rebaseWhen": "behind-base-branch" +} From 473ce31f9b4826136dd560129d55c54039760e22 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sat, 26 Oct 2024 02:32:51 +0000 Subject: [PATCH 19/60] Update dependency org.apache.maven.plugins:maven-checkstyle-plugin to v3.6.0 --- pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 035f4751..a0329331 100644 --- a/pom.xml +++ b/pom.xml @@ -40,7 +40,7 @@ org.apache.maven.plugins maven-checkstyle-plugin - 3.5.0 + 3.6.0 com.puppycrawl.tools diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index e963c1b1..e669be06 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -242,7 +242,7 @@ org.apache.maven.plugins maven-checkstyle-plugin - 3.5.0 + 3.6.0 com.puppycrawl.tools From f2c6db40b00a1554cae8eacb6eaec25bc8dbd039 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sat, 26 Oct 2024 02:32:52 +0000 Subject: [PATCH 20/60] Update dependency org.apache.maven.plugins:maven-jxr-plugin to v3.6.0 --- pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 035f4751..aa6b8cba 100644 --- a/pom.xml +++ b/pom.xml @@ -99,7 +99,7 @@ org.apache.maven.plugins maven-jxr-plugin - 3.5.0 + 3.6.0 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index e963c1b1..323c61d5 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -301,7 +301,7 @@ org.apache.maven.plugins maven-jxr-plugin - 3.5.0 + 3.6.0 From 216f4650d7cd90671ddb7513de3934300bac3dd4 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sat, 26 Oct 2024 02:32:54 +0000 Subject: [PATCH 21/60] Update net.sourceforge.pmd to v7.7.0 --- pom.xml | 4 ++-- template-placeholder/pom.xml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 035f4751..e68ab403 100644 --- a/pom.xml +++ b/pom.xml @@ -82,12 +82,12 @@ net.sourceforge.pmd pmd-core - 7.6.0 + 7.7.0 net.sourceforge.pmd pmd-java - 7.6.0 + 7.7.0 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index e963c1b1..63c5a416 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -284,12 +284,12 @@ net.sourceforge.pmd pmd-core - 7.6.0 + 7.7.0 net.sourceforge.pmd pmd-java - 7.6.0 + 7.7.0 From f798625deb74bec76b0e070dd7c3fd7ecacea34b Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sun, 27 Oct 2024 02:38:11 +0000 Subject: [PATCH 22/60] Update dependency com.puppycrawl.tools:checkstyle to v10.19.0 --- pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 035f4751..ae44704b 100644 --- a/pom.xml +++ b/pom.xml @@ -45,7 +45,7 @@ com.puppycrawl.tools checkstyle - 10.18.2 + 10.19.0 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index e963c1b1..eba8ad3f 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -247,7 +247,7 @@ com.puppycrawl.tools checkstyle - 10.18.2 + 10.19.0 From d13b2dee2e89f9270e954d48669fe2f506248e4a Mon Sep 17 00:00:00 2001 From: AB Date: Mon, 28 Oct 2024 15:09:18 +0100 Subject: [PATCH 23/60] Changes for PMD 7.7 --- .config/pmd/ruleset.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.config/pmd/ruleset.xml b/.config/pmd/ruleset.xml index 667f74e5..7a03f17c 100644 --- a/.config/pmd/ruleset.xml +++ b/.config/pmd/ruleset.xml @@ -151,5 +151,12 @@ + + + + + + + From a2d6ebcb76f8c23a6bcf35da8f98d2905f425d3c Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 29 Oct 2024 02:39:53 +0000 Subject: [PATCH 24/60] Update dependency org.apache.maven.plugins:maven-pmd-plugin to v3.26.0 --- pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 97e1ff13..a62886a6 100644 --- a/pom.xml +++ b/pom.xml @@ -70,7 +70,7 @@ org.apache.maven.plugins maven-pmd-plugin - 3.25.0 + 3.26.0 true true diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 62a6b63e..454ddcc8 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -272,7 +272,7 @@ org.apache.maven.plugins maven-pmd-plugin - 3.25.0 + 3.26.0 true true From 572b34a84fe1848fa972c612a14ed22f41690b56 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 29 Oct 2024 02:41:37 +0000 Subject: [PATCH 25/60] Update org.springframework.boot.version to v3.3.5 --- template-placeholder-demo/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index 5c0e324b..02d62d69 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -31,7 +31,7 @@ 24.4.13 - 3.3.4 + 3.3.5 From b91f8d8aaf1fbae446256afce1d8993e570337ec Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 29 Oct 2024 02:41:41 +0000 Subject: [PATCH 26/60] Update vaadin.version to v24.5.2 --- template-placeholder-demo/pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index 5c0e324b..53c931f8 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -29,7 +29,7 @@ software.xdev.vaadin.Application - 24.4.13 + 24.5.2 3.3.4 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 03d24725..ba4dd488 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -49,7 +49,7 @@ UTF-8 - 24.4.13 + 24.5.2 From 9e9f2a9ee7866ba0f992e87cb0678ab7c4ebbc7f Mon Sep 17 00:00:00 2001 From: AB Date: Wed, 30 Oct 2024 09:11:40 +0100 Subject: [PATCH 27/60] Tighten timeouts --- .github/workflows/broken-links.yml | 1 + .github/workflows/sync-labels.yml | 1 + .github/workflows/update-from-template.yml | 2 ++ 3 files changed, 4 insertions(+) diff --git a/.github/workflows/broken-links.yml b/.github/workflows/broken-links.yml index 48265e89..8f98f1ad 100644 --- a/.github/workflows/broken-links.yml +++ b/.github/workflows/broken-links.yml @@ -11,6 +11,7 @@ permissions: jobs: link-checker: runs-on: ubuntu-latest + timeout-minutes: 15 steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/sync-labels.yml b/.github/workflows/sync-labels.yml index ff880f07..c9d7ec78 100644 --- a/.github/workflows/sync-labels.yml +++ b/.github/workflows/sync-labels.yml @@ -14,6 +14,7 @@ permissions: jobs: labels: runs-on: ubuntu-latest + timeout-minutes: 10 steps: - uses: actions/checkout@v4 with: diff --git a/.github/workflows/update-from-template.yml b/.github/workflows/update-from-template.yml index ba0bf090..cb318451 100644 --- a/.github/workflows/update-from-template.yml +++ b/.github/workflows/update-from-template.yml @@ -31,6 +31,7 @@ permissions: jobs: update: runs-on: ubuntu-latest + timeout-minutes: 60 outputs: update_branch_merged_commit: ${{ steps.manage-branches.outputs.update_branch_merged_commit }} create_update_branch_merged_pr: ${{ steps.manage-branches.outputs.create_update_branch_merged_pr }} @@ -180,6 +181,7 @@ jobs: needs: [update] if: needs.update.outputs.create_update_branch_merged_pr == 1 runs-on: ubuntu-latest + timeout-minutes: 60 steps: - uses: actions/checkout@v4 with: From 02fc7af8377fd12b1d825b378cdd4d0c0a3e3b3d Mon Sep 17 00:00:00 2001 From: AB Date: Wed, 30 Oct 2024 09:13:09 +0100 Subject: [PATCH 28/60] Tighten timeouts --- .github/workflows/check-build.yml | 3 +++ .github/workflows/release.yml | 5 +++++ .github/workflows/sonar.yml | 2 ++ .github/workflows/test-deploy.yml | 1 + 4 files changed, 11 insertions(+) diff --git a/.github/workflows/check-build.yml b/.github/workflows/check-build.yml index 2ac65305..c8966a7b 100644 --- a/.github/workflows/check-build.yml +++ b/.github/workflows/check-build.yml @@ -26,6 +26,7 @@ env: jobs: build: runs-on: ubuntu-latest + timeout-minutes: 30 strategy: matrix: @@ -72,6 +73,7 @@ jobs: checkstyle: runs-on: ubuntu-latest + timeout-minutes: 15 if: ${{ github.event_name != 'pull_request' || !startsWith(github.head_ref, 'renovate/') }} strategy: @@ -94,6 +96,7 @@ jobs: pmd: runs-on: ubuntu-latest + timeout-minutes: 15 if: ${{ github.event_name != 'pull_request' || !startsWith(github.head_ref, 'renovate/') }} strategy: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0bf3805c..236c0f59 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -14,6 +14,7 @@ permissions: jobs: check-code: runs-on: ubuntu-latest + timeout-minutes: 30 steps: - uses: actions/checkout@v4 @@ -48,6 +49,7 @@ jobs: prepare-release: runs-on: ubuntu-latest needs: [check-code] + timeout-minutes: 10 outputs: upload_url: ${{ steps.create_release.outputs.upload_url }} steps: @@ -109,6 +111,7 @@ jobs: publish-maven: runs-on: ubuntu-latest needs: [prepare-release] + timeout-minutes: 60 steps: - uses: actions/checkout@v4 @@ -140,6 +143,7 @@ jobs: publish-pages: runs-on: ubuntu-latest needs: [prepare-release] + timeout-minutes: 15 steps: - uses: actions/checkout@v4 @@ -169,6 +173,7 @@ jobs: after-release: runs-on: ubuntu-latest needs: [publish-maven] + timeout-minutes: 10 steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml index b38f0d82..df6dbb7e 100644 --- a/.github/workflows/sonar.yml +++ b/.github/workflows/sonar.yml @@ -27,6 +27,7 @@ jobs: token-check: runs-on: ubuntu-latest if: ${{ !(github.event_name == 'pull_request' && startsWith(github.head_ref, 'renovate/')) }} + timeout-minutes: 5 outputs: hasToken: ${{ steps.check-token.outputs.has }} steps: @@ -40,6 +41,7 @@ jobs: runs-on: ubuntu-latest needs: token-check if: ${{ needs.token-check.outputs.hasToken }} + timeout-minutes: 30 steps: - uses: actions/checkout@v4 with: diff --git a/.github/workflows/test-deploy.yml b/.github/workflows/test-deploy.yml index e3ed038b..03f5339e 100644 --- a/.github/workflows/test-deploy.yml +++ b/.github/workflows/test-deploy.yml @@ -9,6 +9,7 @@ env: jobs: publish-maven: runs-on: ubuntu-latest + timeout-minutes: 60 steps: - uses: actions/checkout@v4 From 89a6b057d3436a931931105459f573100590d250 Mon Sep 17 00:00:00 2001 From: AB Date: Wed, 30 Oct 2024 10:30:45 +0100 Subject: [PATCH 29/60] Update check-build.yml --- .github/workflows/check-build.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check-build.yml b/.github/workflows/check-build.yml index c8966a7b..08181168 100644 --- a/.github/workflows/check-build.yml +++ b/.github/workflows/check-build.yml @@ -73,8 +73,8 @@ jobs: checkstyle: runs-on: ubuntu-latest - timeout-minutes: 15 if: ${{ github.event_name != 'pull_request' || !startsWith(github.head_ref, 'renovate/') }} + timeout-minutes: 15 strategy: matrix: @@ -96,8 +96,8 @@ jobs: pmd: runs-on: ubuntu-latest - timeout-minutes: 15 if: ${{ github.event_name != 'pull_request' || !startsWith(github.head_ref, 'renovate/') }} + timeout-minutes: 15 strategy: matrix: From 71f1b1dab2fbc93df1efd3870c88ea14f82de9d5 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Fri, 1 Nov 2024 02:39:13 +0000 Subject: [PATCH 30/60] Update dependency com.puppycrawl.tools:checkstyle to v10.20.0 --- pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index a62886a6..8e85badb 100644 --- a/pom.xml +++ b/pom.xml @@ -45,7 +45,7 @@ com.puppycrawl.tools checkstyle - 10.19.0 + 10.20.0 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 454ddcc8..08cadb5e 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -247,7 +247,7 @@ com.puppycrawl.tools checkstyle - 10.19.0 + 10.20.0 From d7b7b8a7dc4f464a641062cd3ff41b9af4394302 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sun, 3 Nov 2024 02:38:33 +0000 Subject: [PATCH 31/60] Update dependency org.apache.maven.plugins:maven-javadoc-plugin to v3.11.1 --- template-placeholder/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 454ddcc8..e1b6b3c5 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -143,7 +143,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.10.1 + 3.11.1 attach-javadocs From 2ba6ca1feb8a402fc716d000511e76af9e645235 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 5 Nov 2024 07:38:58 +0000 Subject: [PATCH 32/60] Update vaadin.version to v24.5.3 --- template-placeholder-demo/pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index f38b8fa0..207d75c8 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -29,7 +29,7 @@ software.xdev.vaadin.Application - 24.5.2 + 24.5.3 3.3.5 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index b4e0af87..cfc858a1 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -49,7 +49,7 @@ UTF-8 - 24.5.2 + 24.5.3 From 77c249bce5ddf2d76769ec39f7c03c2c3d9bd76f Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 5 Nov 2024 07:40:34 +0000 Subject: [PATCH 33/60] Update dependency com.fasterxml.jackson.core:jackson-databind to v2.18.1 --- vaadin-maps-leaflet-flow/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vaadin-maps-leaflet-flow/pom.xml b/vaadin-maps-leaflet-flow/pom.xml index cb79211e..ae38f8e7 100644 --- a/vaadin-maps-leaflet-flow/pom.xml +++ b/vaadin-maps-leaflet-flow/pom.xml @@ -108,7 +108,7 @@ com.fasterxml.jackson.core jackson-databind - 2.18.0 + 2.18.1 From 39f622898239f1116a8b7758eb7941f7c243eb2c Mon Sep 17 00:00:00 2001 From: AB Date: Tue, 5 Nov 2024 09:32:01 +0100 Subject: [PATCH 34/60] Change scope of vaadin-core to prevent conflicts --- template-placeholder/pom.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index cfc858a1..e30a9de4 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -103,6 +103,8 @@ com.vaadin vaadin-core + + provided From d7926e6ce40ec7ee03e218a4eb8433b15d6c1c7e Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Fri, 8 Nov 2024 02:32:23 +0000 Subject: [PATCH 35/60] Update dependency com.puppycrawl.tools:checkstyle to v10.20.1 --- pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 8e85badb..d069dc67 100644 --- a/pom.xml +++ b/pom.xml @@ -45,7 +45,7 @@ com.puppycrawl.tools checkstyle - 10.20.0 + 10.20.1 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index e5957151..2155875b 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -247,7 +247,7 @@ com.puppycrawl.tools checkstyle - 10.20.0 + 10.20.1 From 8d16f5b86c6eb6a269cddd1fa31671f920a90c94 Mon Sep 17 00:00:00 2001 From: AB Date: Mon, 11 Nov 2024 08:55:26 +0100 Subject: [PATCH 36/60] Update CheckStyle version --- .idea/checkstyle-idea.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.idea/checkstyle-idea.xml b/.idea/checkstyle-idea.xml index eb3fcd83..5f35e018 100644 --- a/.idea/checkstyle-idea.xml +++ b/.idea/checkstyle-idea.xml @@ -1,7 +1,7 @@ - 10.15.0 + 10.20.1 JavaOnlyWithTests true true From 92e17bd3b40c73865aaa3c400b8f067548e9ca4b Mon Sep 17 00:00:00 2001 From: AB Date: Mon, 11 Nov 2024 13:14:27 +0100 Subject: [PATCH 37/60] Revert "Change scope of vaadin-core to prevent conflicts" This reverts commit 39f622898239f1116a8b7758eb7941f7c243eb2c. This is not working as the Vaadin Maven Plugin otherwise throws errors during prepare-frontend like: ``Failed to execute goal com.vaadin:vaadin-maven-plugin:24.5.3:prepare-frontend (default) on project vaadin-simple-grid-filter: Could not execute prepare-frontend goal. Error occured during goal execution: Cannot invoke "java.lang.Class.isInterface()" because the return value of "org.reflections.Reflections.forClass(String, java.lang.ClassLoader[])" is null`` Fixes https://github.com/xdev-software/vaadin-simple-grid-filter/issues/20 --- template-placeholder/pom.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index e30a9de4..cfc858a1 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -103,8 +103,6 @@ com.vaadin vaadin-core - - provided From 0c403ee9031ac3160c3e40f5b20e4e64c7677bf3 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Wed, 13 Nov 2024 02:33:23 +0000 Subject: [PATCH 38/60] Update vaadin.version to v24.5.4 --- template-placeholder-demo/pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index 207d75c8..46680472 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -29,7 +29,7 @@ software.xdev.vaadin.Application - 24.5.3 + 24.5.4 3.3.5 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index ef2a15a2..548ad712 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -49,7 +49,7 @@ UTF-8 - 24.5.3 + 24.5.4 From d12ec222a2886eae2ba545ce8f58f27e01bb99f8 Mon Sep 17 00:00:00 2001 From: AB Date: Fri, 22 Nov 2024 13:22:07 +0100 Subject: [PATCH 39/60] Generate sources and javadoc during package and not verify This should prevent javadoc problems during release or similar situations --- template-placeholder/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 2155875b..3a5bc8e9 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -147,7 +147,7 @@ attach-javadocs - verify + package jar @@ -165,7 +165,7 @@ attach-sources - verify + package jar-no-fork From f77e826e68172378b54556547c1e386afa1c6abf Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sat, 23 Nov 2024 02:35:51 +0000 Subject: [PATCH 40/60] Update org.springframework.boot.version to v3.4.0 --- template-placeholder-demo/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index 46680472..c2a2313b 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -31,7 +31,7 @@ 24.5.4 - 3.3.5 + 3.4.0 From 976063d2a46ac5fcb748af514cc3662bd7597793 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Wed, 27 Nov 2024 02:38:41 +0000 Subject: [PATCH 41/60] Update vaadin.version to v24.5.6 --- template-placeholder-demo/pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index 46680472..2add59e7 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -29,7 +29,7 @@ software.xdev.vaadin.Application - 24.5.4 + 24.5.6 3.3.5 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index dc4bd108..7543f254 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -49,7 +49,7 @@ UTF-8 - 24.5.4 + 24.5.6 From 2ec98d3be8a62afc571859f21eb96015ac636bc2 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sat, 30 Nov 2024 02:36:45 +0000 Subject: [PATCH 42/60] Update net.sourceforge.pmd to v7.8.0 --- pom.xml | 4 ++-- template-placeholder/pom.xml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index d069dc67..0c03cd51 100644 --- a/pom.xml +++ b/pom.xml @@ -82,12 +82,12 @@ net.sourceforge.pmd pmd-core - 7.7.0 + 7.8.0 net.sourceforge.pmd pmd-java - 7.7.0 + 7.8.0 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 3a5bc8e9..2269f3f6 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -284,12 +284,12 @@ net.sourceforge.pmd pmd-core - 7.7.0 + 7.8.0 net.sourceforge.pmd pmd-java - 7.7.0 + 7.8.0 From 6b853f13e48fc5e15d102f56523929a7f1ffd22a Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sun, 1 Dec 2024 02:47:14 +0000 Subject: [PATCH 43/60] Update dependency com.puppycrawl.tools:checkstyle to v10.20.2 --- pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index d069dc67..5068c8f5 100644 --- a/pom.xml +++ b/pom.xml @@ -45,7 +45,7 @@ com.puppycrawl.tools checkstyle - 10.20.1 + 10.20.2 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 3a5bc8e9..8a9db791 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -247,7 +247,7 @@ com.puppycrawl.tools checkstyle - 10.20.1 + 10.20.2 From 07c48c88ff590329bd1a38e2a384845a71ad5791 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sun, 8 Dec 2024 02:43:59 +0000 Subject: [PATCH 44/60] Update dependency org.apache.maven.plugins:maven-javadoc-plugin to v3.11.2 --- template-placeholder/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 9ac769d5..abbbb534 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -143,7 +143,7 @@ org.apache.maven.plugins maven-javadoc-plugin - 3.11.1 + 3.11.2 attach-javadocs From 94e21493243c3cc4812c260af202249351c15fd1 Mon Sep 17 00:00:00 2001 From: AB Date: Mon, 9 Dec 2024 09:27:36 +0100 Subject: [PATCH 45/60] Remove duplicated save action Does the same/less as ``localCanBeFinal`` --- .idea/saveactions_settings.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/.idea/saveactions_settings.xml b/.idea/saveactions_settings.xml index 506f17eb..848c311a 100644 --- a/.idea/saveactions_settings.xml +++ b/.idea/saveactions_settings.xml @@ -9,7 +9,6 @@ diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 75f0b852..bf536758 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -284,12 +284,12 @@ net.sourceforge.pmd pmd-core - 7.8.0 + 7.9.0 net.sourceforge.pmd pmd-java - 7.8.0 + 7.9.0 From 5c0db241e0a8f72ea39ccbb3fc72bb588b6363e6 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Sun, 29 Dec 2024 02:39:21 +0000 Subject: [PATCH 51/60] Update dependency com.puppycrawl.tools:checkstyle to v10.21.1 --- pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index eac619a1..bff5bedd 100644 --- a/pom.xml +++ b/pom.xml @@ -45,7 +45,7 @@ com.puppycrawl.tools checkstyle - 10.21.0 + 10.21.1 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index 75f0b852..850be814 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -247,7 +247,7 @@ com.puppycrawl.tools checkstyle - 10.21.0 + 10.21.1 From e766b6028269da2c4cad4819b6881c6a080052b9 Mon Sep 17 00:00:00 2001 From: AB Date: Mon, 13 Jan 2025 10:32:59 +0100 Subject: [PATCH 52/60] Add information about leaflet static resources Should fix #485 --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 42718a3c..896ec2f3 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,11 @@ To get started it's recommended to have a look at the [demo](./vaadin-maps-leafl ## Installation [Installation guide of the latest release](https://github.com/xdev-software/vaadin-maps-leaflet-flow/releases/latest#Installation) +#### Static resources +Please note that Leaflet uses a few default icons for various components (e.g. Markers).
+These are also shipped with the library and can be found inside [``META-INF/resources``](./vaadin-maps-leaflet-flow/src/main/resources/META-INF/resources/).
+You might have to fine tune your security configuration to allow these. + #### Compatibility with Vaadin | Vaadin version | vaadin-maps-leaflet-flow version | | --- | --- | From f68855568eab3638eb026c173dfaf67abe7f8b09 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 14 Jan 2025 02:30:32 +0000 Subject: [PATCH 53/60] Update dependency com.fasterxml.jackson.core:jackson-databind to v2.18.2 --- vaadin-maps-leaflet-flow/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vaadin-maps-leaflet-flow/pom.xml b/vaadin-maps-leaflet-flow/pom.xml index b3890b81..78d94d4d 100644 --- a/vaadin-maps-leaflet-flow/pom.xml +++ b/vaadin-maps-leaflet-flow/pom.xml @@ -108,7 +108,7 @@ com.fasterxml.jackson.core jackson-databind - 2.18.1 + 2.18.2 From b098b053f4258f3a9082da6cafd39223a20aa004 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Tue, 14 Jan 2025 02:30:36 +0000 Subject: [PATCH 54/60] Update dependency org.apache.commons:commons-text to v1.13.0 --- vaadin-maps-leaflet-flow/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vaadin-maps-leaflet-flow/pom.xml b/vaadin-maps-leaflet-flow/pom.xml index b3890b81..61442457 100644 --- a/vaadin-maps-leaflet-flow/pom.xml +++ b/vaadin-maps-leaflet-flow/pom.xml @@ -114,7 +114,7 @@ org.apache.commons commons-text - 1.12.0 + 1.13.0 From 9201f18d41b208e2feb6249d3d2a5fae8ca9c705 Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Wed, 15 Jan 2025 02:30:08 +0000 Subject: [PATCH 55/60] Update vaadin.version to v24.6.2 --- template-placeholder-demo/pom.xml | 2 +- template-placeholder/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index dc0f4fa5..a037780a 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -29,7 +29,7 @@ software.xdev.vaadin.Application - 24.5.8 + 24.6.2 3.4.0 diff --git a/template-placeholder/pom.xml b/template-placeholder/pom.xml index f88b8ff6..2d90d7ce 100644 --- a/template-placeholder/pom.xml +++ b/template-placeholder/pom.xml @@ -49,7 +49,7 @@ UTF-8 - 24.5.8 + 24.6.2 From 90d8e94bd7770da46707ffba981d11639b4e2358 Mon Sep 17 00:00:00 2001 From: AB Date: Tue, 21 Jan 2025 17:01:28 +0100 Subject: [PATCH 56/60] Overwrite gh-pages by default --- .github/workflows/release.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 236c0f59..43767e8e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -169,6 +169,7 @@ jobs: with: github_token: ${{ secrets.GITHUB_TOKEN }} publish_dir: ./${{ env.PRIMARY_MAVEN_MODULE }}/target/site + force_orphan: true after-release: runs-on: ubuntu-latest From ba7860246731ab0e2905c47081e5078befd2804d Mon Sep 17 00:00:00 2001 From: XDEV Renovate Bot Date: Fri, 24 Jan 2025 02:30:33 +0000 Subject: [PATCH 57/60] Update org.springframework.boot.version to v3.4.2 --- template-placeholder-demo/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/template-placeholder-demo/pom.xml b/template-placeholder-demo/pom.xml index dc0f4fa5..b392294b 100644 --- a/template-placeholder-demo/pom.xml +++ b/template-placeholder-demo/pom.xml @@ -31,7 +31,7 @@ 24.5.8 - 3.4.0 + 3.4.2 From 008fa3939ace5f475a83d04972f1a444535db7fc Mon Sep 17 00:00:00 2001 From: AB Date: Fri, 24 Jan 2025 10:37:06 +0100 Subject: [PATCH 58/60] Add support for WMS Fixes #486 --- CHANGELOG.md | 4 + .../maps/leaflet/flow/demo/ComplexDemo.java | 29 ++- .../layer/raster/LAbstractTileLayer.java | 36 ++++ .../raster/LAbstractTileLayerOptions.java | 165 ++++++++++++++++++ .../maps/leaflet/layer/raster/LTileLayer.java | 3 +- .../layer/raster/LTileLayerOptions.java | 144 +-------------- .../leaflet/layer/raster/LTileLayerWMS.java | 39 +++++ .../layer/raster/LTileLayerWMSOptions.java | 128 ++++++++++++++ 8 files changed, 400 insertions(+), 148 deletions(-) create mode 100644 vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LAbstractTileLayer.java create mode 100644 vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LAbstractTileLayerOptions.java create mode 100644 vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMS.java create mode 100644 vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMSOptions.java diff --git a/CHANGELOG.md b/CHANGELOG.md index 15f7ffd5..7c08f793 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 4.4.1 +* Added support for [WMS](https://leafletjs.com/reference.html#tilelayer-wms) #486 +* Updated dependencies + ## 4.4.0 * Added support for [GeoJSON](https://leafletjs.com/reference.html#geojson) and [FeatureGroup](https://leafletjs.com/reference.html#featuregroup) #438 * Add "draggable" property to LMarkerOptions #413 (thanks to @ChristianHoesel) diff --git a/vaadin-maps-leaflet-flow-demo/src/main/java/software/xdev/vaadin/maps/leaflet/flow/demo/ComplexDemo.java b/vaadin-maps-leaflet-flow-demo/src/main/java/software/xdev/vaadin/maps/leaflet/flow/demo/ComplexDemo.java index cc1f6ec4..187ecfbc 100644 --- a/vaadin-maps-leaflet-flow-demo/src/main/java/software/xdev/vaadin/maps/leaflet/flow/demo/ComplexDemo.java +++ b/vaadin-maps-leaflet-flow-demo/src/main/java/software/xdev/vaadin/maps/leaflet/flow/demo/ComplexDemo.java @@ -33,6 +33,8 @@ import software.xdev.vaadin.maps.leaflet.layer.LLayerGroup; import software.xdev.vaadin.maps.leaflet.layer.raster.LImageOverlay; import software.xdev.vaadin.maps.leaflet.layer.raster.LTileLayer; +import software.xdev.vaadin.maps.leaflet.layer.raster.LTileLayerWMS; +import software.xdev.vaadin.maps.leaflet.layer.raster.LTileLayerWMSOptions; import software.xdev.vaadin.maps.leaflet.layer.raster.LVideoOverlay; import software.xdev.vaadin.maps.leaflet.layer.raster.LVideoOverlayOptions; import software.xdev.vaadin.maps.leaflet.layer.ui.LMarker; @@ -89,9 +91,26 @@ public ComplexDemo() "https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png", 16, "Map data: © OpenStreetMap contributors, SRTM | Map style: © SRTM | Map style: © OpenTopoMap (CC-BY-SA" ); + final LTileLayerWMS tlWMS = new LTileLayerWMS( + this.reg, + "https://ows.mundialis.de/services/service?", + "TOPO-WMS,OSM-Overlay-WMS", + 11, + "© OpenStreetMap contributors, " + + "Terrestris/Mundialis" + ); + final LTileLayerWMS tlWMSUSWeatherData = new LTileLayerWMS( + this.reg, + "https://mesonet.agron.iastate.edu/cgi-bin/wms/nexrad/n0r.cgi", + new LTileLayerWMSOptions() + .withLayers("nexrad-n0r-900913") + .withFormat("image/png") + .withTransparent(true) + .withAttribution("Weather data © 2012 IEM Nexrad") + ); final LDivIcon divIconInfo = new LDivIcon(this.reg, new LDivIconOptions() .withHtml(""" @@ -177,7 +196,7 @@ public ComplexDemo() .addLayer(tlOSM) .addLayer(lLayerGroupPlaces); - this.addControls(tlOSM, tlOSMHOT, tlTopo, lLayerGroupPlaces, lLayerGroupFood); + this.addControls(tlOSM, tlOSMHOT, tlTopo, tlWMS, lLayerGroupPlaces, lLayerGroupFood, tlWMSUSWeatherData); this.hlButtons.setWidthFull(); this.add(this.hlButtons); @@ -198,20 +217,24 @@ private void addControls( final LTileLayer tlOSM, final LTileLayer tlOSMHOT, final LTileLayer tlTopo, + final LTileLayerWMS tlWMS, final LLayerGroup lLayerGroupPlaces, - final LLayerGroup lLayerGroupFood) + final LLayerGroup lLayerGroupFood, + final LTileLayerWMS tlWMSUSWeatherData) { // Use LinkedHashMap for order final LinkedHashMap> baseLayers = new LinkedHashMap<>(); baseLayers.put("OSM", tlOSM); baseLayers.put("OSM HOT", tlOSMHOT); baseLayers.put("TOPO", tlTopo); + baseLayers.put("WMS", tlWMS); final LControlLayers lControlLayers = new LControlLayers( this.reg, baseLayers, new LControlLayersOptions().withCollapsed(false)) .addOverlay(lLayerGroupPlaces, "Places") .addOverlay(lLayerGroupFood, "Food") + .addOverlay(tlWMSUSWeatherData, "US Weather data") .addTo(this.map); // Apply manual patch for https://github.com/Leaflet/Leaflet/issues/9009 as this was not released yet this.map.on( diff --git a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LAbstractTileLayer.java b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LAbstractTileLayer.java new file mode 100644 index 00000000..0ffb27fd --- /dev/null +++ b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LAbstractTileLayer.java @@ -0,0 +1,36 @@ +/* + * Copyright © 2019 XDEV Software (https://xdev.software) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package software.xdev.vaadin.maps.leaflet.layer.raster; + +import java.io.Serializable; + +import software.xdev.vaadin.maps.leaflet.layer.LGridLayer; +import software.xdev.vaadin.maps.leaflet.registry.LComponentManagementRegistry; + + +/** + * Represents a tile layer. + */ +public abstract class LAbstractTileLayer> extends LGridLayer +{ + protected LAbstractTileLayer( + final LComponentManagementRegistry compReg, + final String jsConstructorCallExpression, + final Serializable... parameters) + { + super(compReg, jsConstructorCallExpression, parameters); + } +} diff --git a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LAbstractTileLayerOptions.java b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LAbstractTileLayerOptions.java new file mode 100644 index 00000000..7a593470 --- /dev/null +++ b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LAbstractTileLayerOptions.java @@ -0,0 +1,165 @@ +/* + * Copyright © 2019 XDEV Software (https://xdev.software) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package software.xdev.vaadin.maps.leaflet.layer.raster; + +import software.xdev.vaadin.maps.leaflet.layer.LGridLayerOptions; + + +/** + * @see Leaflet docs + */ +public abstract class LAbstractTileLayerOptions> extends LGridLayerOptions +{ + // String|String[] + private Object subdomains; + private String errorTileUrl; + private Integer zoomOffset; + private Boolean tms; + private Boolean zoomReverse; + private Boolean detectRetina; + // Boolean|String + private Object crossOrigin; + // Boolean|String + private Object referrerPolicy; + + public Object getSubdomains() + { + return this.subdomains; + } + + public void setSubdomains(final Object subdomains) + { + this.subdomains = subdomains; + } + + public S withSubdomains(final Object subdomains) + { + this.setSubdomains(subdomains); + return this.self(); + } + + public String getErrorTileUrl() + { + return this.errorTileUrl; + } + + public void setErrorTileUrl(final String errorTileUrl) + { + this.errorTileUrl = errorTileUrl; + } + + public S withErrorTileUrl(final String errorTileUrl) + { + this.setErrorTileUrl(errorTileUrl); + return this.self(); + } + + public Integer getZoomOffset() + { + return this.zoomOffset; + } + + public void setZoomOffset(final Integer zoomOffset) + { + this.zoomOffset = zoomOffset; + } + + public S withZoomOffset(final Integer zoomOffset) + { + this.setZoomOffset(zoomOffset); + return this.self(); + } + + public Boolean getTms() + { + return this.tms; + } + + public void setTms(final Boolean tms) + { + this.tms = tms; + } + + public S withTms(final Boolean tms) + { + this.setTms(tms); + return this.self(); + } + + public Boolean getZoomReverse() + { + return this.zoomReverse; + } + + public void setZoomReverse(final Boolean zoomReverse) + { + this.zoomReverse = zoomReverse; + } + + public S withZoomReverse(final Boolean zoomReverse) + { + this.setZoomReverse(zoomReverse); + return this.self(); + } + + public Boolean getDetectRetina() + { + return this.detectRetina; + } + + public void setDetectRetina(final Boolean detectRetina) + { + this.detectRetina = detectRetina; + } + public S withDetectRetina(final Boolean detectRetina) + { + this.setDetectRetina(detectRetina); + return this.self(); + } + + + public Object getCrossOrigin() + { + return this.crossOrigin; + } + + public void setCrossOrigin(final Object crossOrigin) + { + this.crossOrigin = crossOrigin; + } + + public S withCrossOrigin(final Object crossOrigin) + { + this.setCrossOrigin(crossOrigin); + return this.self(); + } + + public Object getReferrerPolicy() + { + return this.referrerPolicy; + } + + public void setReferrerPolicy(final Object referrerPolicy) + { + this.referrerPolicy = referrerPolicy; + } + + public S withReferrerPolicy(final Object referrerPolicy) + { + this.setReferrerPolicy(referrerPolicy); + return this.self(); + } +} diff --git a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayer.java b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayer.java index 0dcb8300..4bed39e2 100644 --- a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayer.java +++ b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayer.java @@ -15,7 +15,6 @@ */ package software.xdev.vaadin.maps.leaflet.layer.raster; -import software.xdev.vaadin.maps.leaflet.layer.LGridLayer; import software.xdev.vaadin.maps.leaflet.registry.LComponentManagementRegistry; @@ -30,7 +29,7 @@ * * @see List of raster tile providers */ -public class LTileLayer extends LGridLayer +public class LTileLayer extends LAbstractTileLayer { public LTileLayer( final LComponentManagementRegistry compReg, diff --git a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerOptions.java b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerOptions.java index 4e559322..7b46ce5a 100644 --- a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerOptions.java +++ b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerOptions.java @@ -15,151 +15,9 @@ */ package software.xdev.vaadin.maps.leaflet.layer.raster; -import software.xdev.vaadin.maps.leaflet.layer.LGridLayerOptions; - - /** * @see Leaflet docs */ -public class LTileLayerOptions extends LGridLayerOptions +public class LTileLayerOptions extends LAbstractTileLayerOptions { - // String|String[] - private Object subdomains; - private String errorTileUrl; - private Integer zoomOffset; - private Boolean tms; - private Boolean zoomReverse; - private Boolean detectRetina; - // Boolean|String - private Object crossOrigin; - // Boolean|String - private Object referrerPolicy; - - public Object getSubdomains() - { - return this.subdomains; - } - - public void setSubdomains(final Object subdomains) - { - this.subdomains = subdomains; - } - - public LTileLayerOptions withSubdomains(final Object subdomains) - { - this.setSubdomains(subdomains); - return this.self(); - } - - public String getErrorTileUrl() - { - return this.errorTileUrl; - } - - public void setErrorTileUrl(final String errorTileUrl) - { - this.errorTileUrl = errorTileUrl; - } - - public LTileLayerOptions withErrorTileUrl(final String errorTileUrl) - { - this.setErrorTileUrl(errorTileUrl); - return this.self(); - } - - public Integer getZoomOffset() - { - return this.zoomOffset; - } - - public void setZoomOffset(final Integer zoomOffset) - { - this.zoomOffset = zoomOffset; - } - - public LTileLayerOptions withZoomOffset(final Integer zoomOffset) - { - this.setZoomOffset(zoomOffset); - return this.self(); - } - - public Boolean getTms() - { - return this.tms; - } - - public void setTms(final Boolean tms) - { - this.tms = tms; - } - - public LTileLayerOptions withTms(final Boolean tms) - { - this.setTms(tms); - return this.self(); - } - - public Boolean getZoomReverse() - { - return this.zoomReverse; - } - - public void setZoomReverse(final Boolean zoomReverse) - { - this.zoomReverse = zoomReverse; - } - - public LTileLayerOptions withZoomReverse(final Boolean zoomReverse) - { - this.setZoomReverse(zoomReverse); - return this.self(); - } - - public Boolean getDetectRetina() - { - return this.detectRetina; - } - - public void setDetectRetina(final Boolean detectRetina) - { - this.detectRetina = detectRetina; - } - public LTileLayerOptions withDetectRetina(final Boolean detectRetina) - { - this.setDetectRetina(detectRetina); - return this.self(); - } - - - public Object getCrossOrigin() - { - return this.crossOrigin; - } - - public void setCrossOrigin(final Object crossOrigin) - { - this.crossOrigin = crossOrigin; - } - - public LTileLayerOptions withCrossOrigin(final Object crossOrigin) - { - this.setCrossOrigin(crossOrigin); - return this.self(); - } - - public Object getReferrerPolicy() - { - return this.referrerPolicy; - } - - public void setReferrerPolicy(final Object referrerPolicy) - { - this.referrerPolicy = referrerPolicy; - } - - public LTileLayerOptions withReferrerPolicy(final Object referrerPolicy) - { - this.setReferrerPolicy(referrerPolicy); - return this.self(); - } } diff --git a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMS.java b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMS.java new file mode 100644 index 00000000..b97fe6b4 --- /dev/null +++ b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMS.java @@ -0,0 +1,39 @@ +package software.xdev.vaadin.maps.leaflet.layer.raster; + +import software.xdev.vaadin.maps.leaflet.registry.LComponentManagementRegistry; + + +/** + * Represents a WMS tile layer. + */ +public class LTileLayerWMS extends LAbstractTileLayer +{ + public LTileLayerWMS( + final LComponentManagementRegistry compReg, + final String baseUrl, + final LTileLayerWMSOptions options) + { + super(compReg, "L.tileLayer.wms($0" + compReg.writeOptionsOptionalNextParameter(options) + ")", baseUrl); + } + + public LTileLayerWMS( + final LComponentManagementRegistry compReg, + final String baseUrl, + final String layers) + { + this(compReg, baseUrl, new LTileLayerWMSOptions().withLayers(layers)); + } + + public LTileLayerWMS( + final LComponentManagementRegistry compReg, + final String baseUrl, + final String layers, + final int maxZoom, + final String attribution) + { + this(compReg, baseUrl, new LTileLayerWMSOptions() + .withLayers(layers) + .withMaxZoom(maxZoom) + .withAttribution(attribution)); + } +} diff --git a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMSOptions.java b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMSOptions.java new file mode 100644 index 00000000..47a5722d --- /dev/null +++ b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMSOptions.java @@ -0,0 +1,128 @@ +package software.xdev.vaadin.maps.leaflet.layer.raster; + + +/** + * @see Leaflet docs + */ +public class LTileLayerWMSOptions extends LAbstractTileLayerOptions +{ + private String layers; + private String styles; + private String format; + private Boolean transparent; + private String version; + private Object crs; + private Boolean uppercase; + + public String getLayers() + { + return this.layers; + } + + public void setLayers(final String layers) + { + this.layers = layers; + } + + public LTileLayerWMSOptions withLayers(final String layers) + { + this.setLayers(layers); + return this.self(); + } + + public String getStyles() + { + return this.styles; + } + + public void setStyles(final String styles) + { + this.styles = styles; + } + + public LTileLayerWMSOptions withStyles(final String styles) + { + this.setStyles(styles); + return this.self(); + } + + public String getFormat() + { + return this.format; + } + + public void setFormat(final String format) + { + this.format = format; + } + + public LTileLayerWMSOptions withFormat(final String format) + { + this.setFormat(format); + return this.self(); + } + + public Boolean getTransparent() + { + return this.transparent; + } + + public void setTransparent(final Boolean transparent) + { + this.transparent = transparent; + } + + public LTileLayerWMSOptions withTransparent(final Boolean transparent) + { + this.setTransparent(transparent); + return this.self(); + } + + public String getVersion() + { + return this.version; + } + + public void setVersion(final String version) + { + this.version = version; + } + + public LTileLayerWMSOptions withVersion(final String version) + { + this.setVersion(version); + return this.self(); + } + + public Object getCrs() + { + return this.crs; + } + + public void setCrs(final Object crs) + { + this.crs = crs; + } + + public LTileLayerWMSOptions withCrs(final Object crs) + { + this.setCrs(crs); + return this.self(); + } + + public Boolean getUppercase() + { + return this.uppercase; + } + + public void setUppercase(final Boolean uppercase) + { + this.uppercase = uppercase; + } + + public LTileLayerWMSOptions withUppercase(final Boolean uppercase) + { + this.setUppercase(uppercase); + return this.self(); + } +} From d684689c59ac794342bcce533410f036754fc4d6 Mon Sep 17 00:00:00 2001 From: AB Date: Fri, 24 Jan 2025 10:38:57 +0100 Subject: [PATCH 59/60] Add missing license header --- .../maps/leaflet/layer/raster/LTileLayerWMS.java | 15 +++++++++++++++ .../layer/raster/LTileLayerWMSOptions.java | 15 +++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMS.java b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMS.java index b97fe6b4..ad98ce3a 100644 --- a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMS.java +++ b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMS.java @@ -1,3 +1,18 @@ +/* + * Copyright © 2019 XDEV Software (https://xdev.software) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package software.xdev.vaadin.maps.leaflet.layer.raster; import software.xdev.vaadin.maps.leaflet.registry.LComponentManagementRegistry; diff --git a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMSOptions.java b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMSOptions.java index 47a5722d..189fee4b 100644 --- a/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMSOptions.java +++ b/vaadin-maps-leaflet-flow/src/main/java/software/xdev/vaadin/maps/leaflet/layer/raster/LTileLayerWMSOptions.java @@ -1,3 +1,18 @@ +/* + * Copyright © 2019 XDEV Software (https://xdev.software) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package software.xdev.vaadin.maps.leaflet.layer.raster; From a6437076bd4c8da4fb0c2182e396e29c782a430e Mon Sep 17 00:00:00 2001 From: AB Date: Fri, 24 Jan 2025 10:41:30 +0100 Subject: [PATCH 60/60] Minor version bump --- CHANGELOG.md | 2 +- pom.xml | 2 +- vaadin-maps-leaflet-flow-demo/pom.xml | 4 ++-- vaadin-maps-leaflet-flow/pom.xml | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7c08f793..2a0804b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -## 4.4.1 +## 4.5.0 * Added support for [WMS](https://leafletjs.com/reference.html#tilelayer-wms) #486 * Updated dependencies diff --git a/pom.xml b/pom.xml index a5b78b6e..a9051436 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ software.xdev vaadin-maps-leaflet-flow-root - 4.4.1-SNAPSHOT + 4.5.0-SNAPSHOT pom diff --git a/vaadin-maps-leaflet-flow-demo/pom.xml b/vaadin-maps-leaflet-flow-demo/pom.xml index d9fea714..a9267b0c 100644 --- a/vaadin-maps-leaflet-flow-demo/pom.xml +++ b/vaadin-maps-leaflet-flow-demo/pom.xml @@ -7,11 +7,11 @@ software.xdev vaadin-maps-leaflet-flow-root - 4.4.1-SNAPSHOT + 4.5.0-SNAPSHOT vaadin-maps-leaflet-flow-demo - 4.4.1-SNAPSHOT + 4.5.0-SNAPSHOT jar diff --git a/vaadin-maps-leaflet-flow/pom.xml b/vaadin-maps-leaflet-flow/pom.xml index 098f2ed9..514e4abb 100644 --- a/vaadin-maps-leaflet-flow/pom.xml +++ b/vaadin-maps-leaflet-flow/pom.xml @@ -6,7 +6,7 @@ software.xdev vaadin-maps-leaflet-flow - 4.4.1-SNAPSHOT + 4.5.0-SNAPSHOT jar vaadin-maps-leaflet-flow