forked from GeoWebCache/geowebcache
-
Notifications
You must be signed in to change notification settings - Fork 0
[pull] main from GeoWebCache:main #55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…7.0) Add azure storage blob 12.27.1 dependencies and upgrade the azure blobstore. Run Azurite-based integration tests against the latest Docker image version, remove legacy. Migrate to `com.azure:blobstorage:12.x`. The upgrade tries to do a 1:1 migration to the new azure-sdk API (in its blocking falvor) as much as possible, so that the integration tests serve to avoid regressions. A couple remarks: * There's no way to close the HTTPClient so AzureClient does not implement Closeable anymore. * Fix a bug in DeleteManager that always reported 0 objects deleted Upgrade `com.microsoft.azure:azure-storage-blob` to `com.azure:azure-storage-blob`.
This reverts commit bbdb42d.
This reverts commit f44a47c.
This reverts commit fb945dc.
Upgrade Azure Blobstore from legacy azure-sdk (11.0) to latest (12.27.1)
… of validation query This method is used by GWC to check jdbc configuration files when loaded. Making the method public allows it to also be used by the GeoServer form.
Bumps [org.springframework.security:spring-security-web](https://github.com/spring-projects/spring-security) from 5.7.12 to 5.7.13. - [Release notes](https://github.com/spring-projects/spring-security/releases) - [Changelog](https://github.com/spring-projects/spring-security/blob/main/RELEASE.adoc) - [Commits](spring-projects/spring-security@5.7.12...5.7.13) --- updated-dependencies: - dependency-name: org.springframework.security:spring-security-web dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps [com.thoughtworks.xstream:xstream](https://github.com/x-stream/xstream) from 1.4.20 to 1.4.21. - [Release notes](https://github.com/x-stream/xstream/releases) - [Commits](https://github.com/x-stream/xstream/commits) --- updated-dependencies: - dependency-name: com.thoughtworks.xstream:xstream dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Except for schema URLs
This commit enhances security and configurability by enabling dynamic runtime
resolution of HTTP Basic Authentication credentials for WMS layers. Credentials
can now be injected from environment variables, reducing the need to hardcode
sensitive values. This improves code maintainability, supports secure multi-
environment deployments, and simplifies testing through dynamic configuration.
1. **Dynamic Environment Parametrization**:
- Introduced `GeoWebCacheEnvironment#isAllowEnvParametrization()` to replace
the static `ALLOW_ENV_PARAMETRIZATION` field, allowing runtime toggling.
2. **Environment Variable Resolution Refactor**:
- Replaced direct static field checks with method calls.
- Updated `resolveValue()` and related methods to use environment variables
dynamically.
3. **WMS Credentials Management Update**:
- Added `getResolvedHttpUsername()` and `getResolvedHttpPassword()` in
`WMSHttpHelper`.
- Created `setGeoWebCacheEnvironment()` for dependency injection.
4. **Testing Enhancements**:
- Integrated the `system-rules` library for environment variable manipulation.
- Added tests to cover default, custom, and parameterized credentials.
5. **Code Improvements**:
- Replaced unsafe casts in `resolveValue()`.
- Improved exception handling by switching from `Throwable` to
`RuntimeException`.
- Added better logging and documentation for credential handling.
…irectories
Enhance `XMLFileResourceProvider` to allow GeoWebCache to start with a
read-only configuration directory and `geowebcache.xml` file. Previously, the provider
assumed that the configuration directory was always writable, which caused startup
failures when running in environments with restricted file permissions.
- **Support read-only configuration directories**:
- `hasInput()` now correctly returns `true` if the configuration file
exists or if a template is available and the directory is writable.
- `hasOutput()` ensures that the configuration file can be written before
allowing output operations.
- Improved error handling when checking directory and file writability.
- **Refactored file existence checks**:
- Consolidated logic for checking configuration file existence and writability
into `findConfigFile()`.
- Moved the directory writability check from `findConfigFile()` to
`findOrCreateConfFile()` to prevent premature failures.
- **Improved logging and exception handling**:
- `hasInput()` and `hasOutput()` now log warnings when encountering errors
instead of failing silently.
- `findOrCreateConfFile()` now explicitly throws an exception when it cannot
create a new configuration file due to permission issues.
- GeoWebCache can now start successfully with a pre-existing, read-only configuration directory.
- Configurations stored in a read-only filesystem (e.g., mounted from a
read-only volume) can still be used without requiring write access.
- The provider only attempts to create a configuration file when explicitly
required, eliminating side effects from query methods `hasInput()` and
`hasOutput()`.
This change improves the resilience of GeoWebCache in constrained environments
while maintaining backward compatibility for writable configurations.
… with the release script
* On delete tile cache workflows minimize the opertunity for 404 to be returned when deleting tile cash. Use list-objects and delete-objects batch method to operate on 1000 sized batches where possible. Ensure that tile caches are informed of changes through listeners Fix Integration tests that exercise delete file paths * On delete tile cache workflows minimize the opertunity for 404 to be returned when deleting tile cash. Use list-objects and delete-objects batch method to operate on 1000 sized batches where possible. Ensure that tile caches are informed of changes through listeners Fix Integration tests that exercise delete file paths * On delete tile cache workflows minimize the opertunity for 404 to be returned when deleting tile cash. Use list-objects and delete-objects batch method to operate on 1000 sized batches where possible. Ensure that tile caches are informed of changes through listeners Fix Integration tests that exercise delete file paths * Fixed multiple calls to listener. Added simplest bounded delete. Added test for bounded delete. Added test to check if TileDeleted events are received when a layer is deleted. There is a race in this test, so it can pass even though tileDeleted is sent. * Fixed multiple calls to listener. Added simplest bounded delete. Added test for bounded delete. Added test to check if TileDeleted events are received when a layer is deleted. There is a race in this test, so it can pass even though tileDeleted is sent. * Restored check in putParametersMetadata, tests have been refactored to supply correct data. Added Copyright to BoundedS3KeySupplier Removed redundant test from integration tests Added an await to the AbstractBlobStoreTest as testDeleteRangeSingleLevel was failing with an aborted BulkDelete without it * Retained 1.26.0 config for compatibility testing * Updated version to 1.27-SNAPSHOT * Fix gt.version = 33-SNAPSHOT-SNAPSHOT/33-SNAPSHOT, there is a problem with the release script * Updated release notes for 1.28-SNAPSHOT * Updated version to 1.28-SNAPSHOT * Fix missing and extra spaces in log messages * Update Ubuntu to 22.04, 20.04 is not longer supported * Revert formatting on AbstractBlobStoreTest * Use a FakeListener rather than a mock Downgrade log messages to warnings as they only have a big impact in tests. The Delete will run again later. Disable testTruncateRespectsLevels in windows environment. * Removed global windows test skip in AbstractS3BlobStoreIntegrationTest * Disable all window S3Blobstore tests * Disable all window S3Blobstore tests --------- Co-authored-by: Alan McDade <alan.mcdade@mac.com> Co-authored-by: groldan <gabriel.roldan@gmail.com> Co-authored-by: Gabriel Roldan <gabriel.roldan@camptocamp.com> Co-authored-by: Peter Smythe <peter@afrigis.co.za> Co-authored-by: Andrea Aime <andrea.aime@gmail.com>
Updating errorprone to 2.31 and PMD to 7.13
Bumps [org.postgresql:postgresql](https://github.com/pgjdbc/pgjdbc) from 42.7.6 to 42.7.7. - [Release notes](https://github.com/pgjdbc/pgjdbc/releases) - [Changelog](https://github.com/pgjdbc/pgjdbc/blob/master/CHANGELOG.md) - [Commits](pgjdbc/pgjdbc@REL42.7.6...REL42.7.7) --- updated-dependencies: - dependency-name: org.postgresql:postgresql dependency-version: 42.7.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
…ency versions
This commit integrates the GeoTools Bill of Materials (gt-bom) into
GeoWebCache, centralizing management of GeoTools dependency versions.
* Import `org.geotools:gt-bom` in the root `pom.xml`'s
`<dependencyManagement>` section. This makes GeoWebCache a direct
consumer of GeoTools' curated dependency set.
* Remove explicit `<version>${gt.version}</version>` declarations
for individual GeoTools artifacts from all module POMs. Versions
are now inherited from the imported `gt-bom`.
* Remove unused dependency org.freemarker:freemarker
* Delegate the following dependency versions to the GeoTools BOM:
* apache commons (io, logging, collections, text, dbcp)
* guava
* h2
* hsqldb
* httpclient
* imageio-ext
* jackson-annotations
* jackson-core
* jackson-databind
* jai_core/codec
* jai_imageio
* jaiext
* jts
* log4j-1.2-api
* log4j-api
* log4j-core
* log4j-jcl
* log4j-jul
* log4j-slf4j2-impl
* ojdbc14
* postgresql
* slf4j-api
Fix spelling mistake in warning
* Upgrade build to use Java 17 as the baseline version. * Configure maven-enforcer-plugin to require Java 17. * Upgrade GitHub Actions workflows to use Java 17. * Update documentation for Java 17, including developer and user guides. * Upgrade Jetty from 9.x to 10.0.25, the last version to support `javax.servlet`. * Replace `com.google.common.base.Objects.equal()` with `java.util.Objects.equal()`. * Update test configurations to use `localhost:8080` instead of deprecated demo servers. * Fix REST integration tests and address other issues found during local testing on Java 17. * Increase heap size for the QA build profile. * Fix swapped Assert.equals arguments Plugin version upgrades: * maven-jar-plugin 2.4 -> 3.0.2 * maven-enforcer-plugin 3.0.0-M3 -> 3.5.0 * maven-compiler-plugin 3.10.1 -> 3.14.0 * maven-surefire-plugin 2.22.1 -> 3.5.3 * maven-failsafe-plugin 3.3.1 -> 3.5.3 * maven-war-plugin 3.3.2 -> 3.4.0 * jetty-maven-plugin 9.4.14.v20181114 -> 10.0.25 * maven-javadoc-plugin 3.4.1 -> 3.11.2 * maven-checkstyle-plugin 3.1.1 -> 3.6.0 Co-authored-by: Andrea Aime <andrea.aime@gmail.com> Co-authored-by: Jody Garnett <jody.garnett@gmail.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )