Skip to content

MLE-22591 Merge release/6.0.0 into master#778

Merged
rjrudin merged 105 commits intomasterfrom
release/6.0.0
Aug 1, 2025
Merged

MLE-22591 Merge release/6.0.0 into master#778
rjrudin merged 105 commits intomasterfrom
release/6.0.0

Conversation

@rjrudin
Copy link
Contributor

@rjrudin rjrudin commented Aug 1, 2025

This unfortunately has hundreds of changes due to the copyright. But now that the tests pass reliably, we can rely on them for ensuring everything is working properly.

rjrudin and others added 30 commits September 16, 2024 11:20
Can now specify a list of redaction rules to include when generating a transform.
Now uses the deployment from ml-javaclient-util-test-app.
Updated the CONTRIBUTING to include instructions for testing.
#719 Supporting a scenario where spring-web 6 is on the classpath
MLE-21393 Added support for symlinks when loading files
I can't think of why this wasn't done before nor what the downside would be to not applying empty strings. Want to see the tests run to see if it causes any failures, implying that this would not be a backwards compatible change.
Also bumped up some minor/patch dependency versions where possible.
Requiring property values to not be empty
Doing this for consistency and was also getting tired of typing `cd ml-javaclient-util-test...`. Moved docker-compose to top level as well for ease of use and consistency.
Renamed test app folder to just "test-app"
Polaris reported two issues on this.
MLE-21542 Sanitizing values for XPath expressions
Bumped default TLS protocol to "TLS".

More XPath sanitization. And some SAX protection.
The one in AbstractCommand should knock out a lot of warnings.
rjrudin added 23 commits July 23, 2025 15:39
MLE-23094 Migrated marklogic-data-movement-components code to here
This is the sole class from the mlcp-util repository.
Another fix is to handle the exception that can handle due to MLE-547.

I am going to follow this up with another PR that may move the retry interceptor to src/test/java, as I'm not sure yet that we want to expose this to users.

Main goal right now is getting stable builds with no test failures.
MLE-23174 Using retry interceptor to fix intermittent failures
This really needs to be supported in the Java Client in order for it to be done correctly - specifically in the DatabaseClientBuilder class. Otherwise we can only support it in here for the Manage/Admin connections but not the REST / App-Services connections.

Had to move TestConfig so that it could invoke the protected method for specifying a ClientConfigurator, which thus keeps it out of the public API.
MLE-23174 Hiding retry capability for now
MLE-22604 Converting Jenkinsfile to use Docker
MLE-22604 Test fixes required by MarkLogic 12
MLE-12345 Bumped Java Client and Spring versions
All of these date back to the 3.x codebase and were long overdue for being removed.
MLE-22591 Bumped a couple dependencies and updated NOTICE
Also removed a couple private fields in DefaultDocumentFileReader. Has no impact on functionality, just noticed it from a note referencing "5.0.0".
MLE-22591 Bumped example projects to 6.0.0
Copilot AI review requested due to automatic review settings August 1, 2025 13:40
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR merges the release/6.0.0 branch into master, primarily consisting of copyright notice updates throughout the codebase. The copyright statements have been changed from MarkLogic Corporation to Progress Software Corporation and/or its subsidiaries or affiliates for 2015-2025.

  • Copyright notice updates across numerous Java files
  • Addition of new OAuth token configuration properties for admin and manage clients
  • Improvements to forest replica planning with zone awareness
  • Enhanced error handling and null safety in various components

Reviewed Changes

Copilot reviewed 292 out of 1024 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
ElementWordLexicon.java Copyright update to Progress Software
DefaultAdminConfigFactory.java Copyright update plus OAuth token support
AdminManager.java Copyright update and improved HTTP status handling
API.java Copyright update and enhanced null safety
Resource.java Copyright update and Spring web utility usage
AbstractManager.java Copyright update and sensitive data handling
PayloadParser.java Copyright update and XPath security improvements
ForestReplicaPlanner.java New forest replica planning with zone awareness
ForestPlanner.java New forest planning interface
InsertCertificateHostsTemplateCommand.java Certificate passphrase support
DeployRestApiServersCommand.java Enhanced error handling for REST API deletion
Comments suppressed due to low confidence (3)

ml-app-deployer/src/main/java/com/marklogic/appdeployer/command/temporal/DeployTemporalCollectionsLSQTCommand.java:7

  • Wildcard imports should be avoided. Import specific classes instead of using wildcard import.
import com.marklogic.appdeployer.ConfigDir;

ml-app-deployer/src/main/java/com/marklogic/appdeployer/command/forests/ForestReplicaPlanner.java:42

  • The formatted() method on String was introduced in Java 15. This may not be compatible with earlier Java versions that the project might need to support.
			return "[Host: %s; zone: %s]".formatted(name, zone);

ml-app-deployer/src/main/java/com/marklogic/appdeployer/command/forests/ForestReplicaPlanner.java:115

  • The toList() method on Stream was introduced in Java 16. This may not be compatible with earlier Java versions that the project might need to support.
				.toList();

}
}
protected void logRequestBodyToAssistWithDebugging(String httpMethod, String path, String payload) {
if (!payloadContainsSensitiveValues(payload)) {
Copy link

Copilot AI Aug 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The logic is inverted - this condition will log when sensitive values are NOT present, but the error message suggests it's avoiding logging when sensitive values are present. Should be if (payloadContainsSensitiveValues(payload)).

Suggested change
if (!payloadContainsSensitiveValues(payload)) {
if (payloadContainsSensitiveValues(payload)) {

Copilot uses AI. Check for mistakes.
@rjrudin rjrudin merged commit 93d08ee into master Aug 1, 2025
3 checks passed
@rjrudin rjrudin deleted the release/6.0.0 branch August 1, 2025 15:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants