Skip to content

Releases: marklogic/ml-gradle

5.0.0

16 Sep 15:04
Compare
Choose a tag to compare

This major release is centered on upgrading to MarkLogic Java Client 7.0.0 and removing several deprecated items as outlined below. It also coincides with combining the ml-javaclient-util and ml-app-deployer repositories into this repository, though that will not have any functional impact on users. The ml-gradle, ml-app-deployer, and ml-javaclient-util artifacts are still published to Maven Central and the method for declaring ml-gradle in a Gradle build.gradle file has not changed either.

Existing customers should be able to easily upgrade from ml-gradle 4.x to ml-gradle 5.0.0 while accounting for the deprecated items below.

Deprecated items:

  • Loading modules - via mlDeploy or mlLoadModules - no longer loads namespace files. This capability was deprecated in the server and removed from the MarkLogic Java Client 7.0.0 release. Namespaces should instead be included in a server payload file as defined by the Manage API.
  • mlAdminUsername and mlAdminPassword are no longer supported; these were deprecated in the 3.4.0 release of ml-gradle in favor of mlSecurityUsername and mlSecurityPassword.
  • The deprecated constructors for ManageClient and AdminManager that assumed a default username and password of "admin" were removed.
  • References to the Apache HttpClient library, which were deprecated in the 4.5.0 release of ml-gradle, were removed.
  • The DocumentPermissionsParser library in ml-javaclient-util was removed as the capability is available in the MarkLogic Java Client.
  • The deprecated afterModulesLoaded method in WatchTask was removed.

For all deprecated items, please see this pull request.

For users of ml-app-deployer or ml-javaclient-util that were depending on the old JAXB libraries as transitive dependencies of the MarkLogic Java Client 6.x or older, you will need to add these JAXB libraries to your classpath. Please see the Java Client README for instructions on doing so.

This release also now depends on the following updated dependencies:

  • com.marklogic:marklogic-client-api:7.0.0
  • com.fasterxml.jackson.core:jackson-databind:2.17.2
  • org.springframework:spring-web:5.3.39
  • jaxen:jaxen:2.0.0
  • org.apache.commons:commons-lang3:3.16.0

4.8.0

17 May 18:17
8c93337
Compare
Choose a tag to compare

This minor release addresses the following items:

  • Updated dependencies.
  • Can now deploy/undeploy credentials. See https://docs.marklogic.com/REST/PUT/manage/v2/credentials/properties for more information.
  • Better error message when databases have circular dependencies.
  • Better invalid numeric property error handling.
  • When using MlcpTask and logOutputUri, an error no longer occurs if the Gradle build directory does not exist.
  • Various documentation and example fixes.

4.7.0

01 Feb 14:55
Compare
Choose a tag to compare

This minor release features the following items:

4.6.1

16 Jan 15:03
4cbb7bc
Compare
Choose a tag to compare

This patch release addresses the following issues:

  • mlDeployToReplica now correctly uses connection properties.
  • An error is no longer thrown when mlModuleTimestampsPath is null or empty.

See the ml-app-deployer 4.6.1 release notes for other issues addressed in this release.

4.6.0

08 Sep 20:04
57b7f2c
Compare
Choose a tag to compare

Gradle 7.6.x or higher is now required for ml-gradle.

This is due to a conflict between Gradle <= 7.5.x and the widely-used Jackson library being updated in this release from 2.14.3 to 2.15.2.

This minor release addresses the following items:

  • #659 Can now process query-based-view (QBV) files, generating a new view for each in the application's schemas database. Any .json/.xml files in the /qbv directory of a schemas path will be processed.
  • #520 Added mlTestConnections to test each connection that ml-gradle will attempt to make.
  • #383 When running mlUnitTest, can specify a subset of suites to run via -Psuites=suite1,suite2,etc and a subset of tests to run via -Ptests=test1.sjs,test2.sjs,etc.
  • #546 When scaffolding a new project, new roles will use the rest-reader and rest-write r privileges instead of the same-named roles.
  • MlcpTask will no longer set username, password, or host automatically if it finds those values in an MLCP options file specified by the user.
  • Also when scaffolding a new project, a schemas database will be created by default.
  • When loading modules, schemas, or data files, collections specified by collections.properties and permissions specified by permissions.properties can be cascaded to child directories by setting mlCascadeCollections=true and mlCascadePermissions=true.
  • Includes improvements in ml-app-deployer 4.6.0.

4.5.3

24 Aug 17:47
b4aa51b
Compare
Choose a tag to compare

This patch release includes significant performance improvements for deploying applications with large numbers of forests; the improvements are detailed in the ml-app-deployer 4.5.3 release notes.

4.5.2

09 May 01:22
Compare
Choose a tag to compare

This patch release addresses a single item:

The above CVE did not have any impact on ml-gradle as ml-gradle does not make use of the Spring MVC support in its org.springframework:spring-web dependency. The intent of this release is simply to avoid the CVE being reported as a false positive.

4.5.1

16 Feb 17:07
f0d3a54
Compare
Choose a tag to compare

This bugfix release addresses a single issue:

4.5.0

06 Feb 17:57
Compare
Choose a tag to compare

This minor release addresses the following items:

Security fixes

As mentioned in the ml-app-deployer 4.5.0 release notes, ml-gradle no longer defaults to a username of "admin" and a password of "admin" when connecting to MarkLogic. If you are setting at least mlUsername and mlPassword in your Gradle properties, you will not encounter any issues. If you are not, you simply need to set mlUsername and mlPassword in your Gradle properties (and you're free to set them to "admin" and "admin", though this behavior is discouraged in real world scenarios).

Bug fixes

  • #645 mlPrintForestPlan no longer throws an error when custom forests are used.

New features

  • #643 mlGenerateUnitTestSuite can now generate SJS test modules
  • SAML, Kerberos, and Certificate authentication are now supported for all connections to MarkLogic; see the Property Reference for a list of new properties in 4.5.0 to support these authentication strategies.
  • Supports connections for the upcoming MarkLogic Cloud release.

4.4.0

28 Dec 18:23
Compare
Choose a tag to compare

This minor release addresses the following items:

  1. Depends on MarkLogic Java Client 6.0.0
  2. Depends on ml-app-deployer 4.4.0
  3. #625 Added mlDeployHostCertificateTemplates task
  4. #636 mlNewProject prompts are more clear now
  5. #637 Added mlDeploySecureCredentials
  6. #642 Error is thrown instead of silent failure when task tries to invoke a command that does not exist