Skip to content

Commit

Permalink
Update to 2.6.0 (#137)
Browse files Browse the repository at this point in the history
* Add jakarta.annotation-api to fix broken build on Java 11 (fixes #456)

* Downgrade MariaDB from 10.3.13 to 10.2.11

DB JARs for v10.2.11 are the last ones actually currently available.

Please see https://github.com/vorburger/MariaDB4j/issues/484
for the full background about why this is being done.

Includes disabling building the DBs' JARs on Travis (for now).

Anyone reading this is invited to contributed a PR for #484
enabling later DB releases (for all platforms) to successfully build.

* Bump maven-plugin-annotations from 3.6.0 to 3.6.2

Bumps [maven-plugin-annotations](https://github.com/apache/maven-plugin-tools) from 3.6.0 to 3.6.2.
- [Release notes](https://github.com/apache/maven-plugin-tools/releases)
- [Commits](https://github.com/apache/maven-plugin-tools/compare/maven-plugin-tools-3.6.0...maven-plugin-tools-3.6.2)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugin-tools:maven-plugin-annotations
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-plugin-plugin from 3.6.0 to 3.6.2

Bumps [maven-plugin-plugin](https://github.com/apache/maven-plugin-tools) from 3.6.0 to 3.6.2.
- [Release notes](https://github.com/apache/maven-plugin-tools/releases)
- [Commits](https://github.com/apache/maven-plugin-tools/compare/maven-plugin-tools-3.6.0...maven-plugin-tools-3.6.2)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-plugin-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Issue #372: Add automatic module name to core

Libraries without a set automatic module name causes build warnings for
all clients who build with Java >= 9.

Also bump version of the Exec library, to use a version which has the
automatic module name set.

* Use lower case letter in automatic module name

* Clean up dependabot.yml

* Bump springboot.version from 2.5.2 to 2.6.0

Bumps `springboot.version` from 2.5.2 to 2.6.0.

Updates `spring-boot-dependencies` from 2.5.2 to 2.6.0
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.5.2...v2.6.0)

Updates `spring-boot-maven-plugin` from 2.5.2 to 2.6.0
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.5.2...v2.6.0)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.springframework.boot:spring-boot-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump mysql-connector-java from 8.0.22 to 8.0.27

Bumps [mysql-connector-java](https://github.com/mysql/mysql-connector-j) from 8.0.22 to 8.0.27.
- [Release notes](https://github.com/mysql/mysql-connector-j/releases)
- [Changelog](https://github.com/mysql/mysql-connector-j/blob/release/8.0/CHANGES)
- [Commits](https://github.com/mysql/mysql-connector-j/compare/8.0.22...8.0.27)

---
updated-dependencies:
- dependency-name: mysql:mysql-connector-java
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump junit from 4.13.1 to 4.13.2

Bumps [junit](https://github.com/junit-team/junit4) from 4.13.1 to 4.13.2.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.13.1.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.13.1...r4.13.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Bump maven-compat from 3.6.3 to 3.8.4

Bumps [maven-compat](https://github.com/apache/maven) from 3.6.3 to 3.8.4.
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.6.3...maven-3.8.4)

---
updated-dependencies:
- dependency-name: org.apache.maven:maven-compat
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven.version from 3.6.3 to 3.8.4

Bumps `maven.version` from 3.6.3 to 3.8.4.

Updates `maven-plugin-api` from 3.6.3 to 3.8.4
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.6.3...maven-3.8.4)

Updates `maven-core` from 3.6.3 to 3.8.4
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.6.3...maven-3.8.4)

Updates `maven-model` from 3.6.3 to 3.8.4
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.6.3...maven-3.8.4)

Updates `maven-artifact` from 3.6.3 to 3.8.4
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.6.3...maven-3.8.4)

Updates `maven-settings` from 3.6.3 to 3.8.4
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.6.3...maven-3.8.4)

Updates `maven-settings-builder` from 3.6.3 to 3.8.4
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.6.3...maven-3.8.4)

---
updated-dependencies:
- dependency-name: org.apache.maven:maven-plugin-api
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.apache.maven:maven-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.apache.maven:maven-model
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.apache.maven:maven-artifact
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.apache.maven:maven-settings
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.apache.maven:maven-settings-builder
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump slf4j-simple from 1.7.31 to 1.7.32

Bumps [slf4j-simple](https://github.com/qos-ch/slf4j) from 1.7.31 to 1.7.32.
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](https://github.com/qos-ch/slf4j/commits)

---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-simple
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump commons-io from 2.10.0 to 2.11.0

Bumps commons-io from 2.10.0 to 2.11.0.

---
updated-dependencies:
- dependency-name: commons-io:commons-io
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump assertj-core from 3.17.2 to 3.21.0

Bumps [assertj-core](https://github.com/assertj/assertj-core) from 3.17.2 to 3.21.0.
- [Release notes](https://github.com/assertj/assertj-core/releases)
- [Commits](https://github.com/assertj/assertj-core/compare/assertj-core-3.17.2...assertj-core-3.21.0)

---
updated-dependencies:
- dependency-name: org.assertj:assertj-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump mockito-core from 3.5.15 to 4.1.0

see https://github.com/mockito/mockito-kotlin/issues/383

* Bump maven-project-info-reports-plugin from 3.1.1 to 3.1.2

Bumps [maven-project-info-reports-plugin](https://github.com/apache/maven-project-info-reports-plugin) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/apache/maven-project-info-reports-plugin/releases)
- [Commits](https://github.com/apache/maven-project-info-reports-plugin/compare/maven-project-info-reports-plugin-3.1.1...maven-project-info-reports-plugin-3.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Bump maven-common-artifact-filters from 3.1.0 to 3.2.0

Bumps [maven-common-artifact-filters](https://github.com/apache/maven-common-artifact-filters) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/apache/maven-common-artifact-filters/releases)
- [Commits](https://github.com/apache/maven-common-artifact-filters/compare/maven-common-artifact-filters-3.1.0...maven-common-artifact-filters-3.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Run mvn verify instead of only package on Travis

* Remove fixed version of commons-io from Maven plugin dependencies

This doesn't fix https://github.com/vorburger/MariaDB4j/issues/488,
but still seems like a good idea to do, because the currently used
Maven version (or that test dependency) seems to use IO 2.4.1 as
well, so this does not appear to be required anymore now.

* Fix Maven plugin dependencies scope and remove commons-io dependency from Maven plugin (but it's still transitively inherited)

* Use magic <version>@project.version@ in Maven Plugin IT

see https://github.com/vorburger/MariaDB4j/issues/493

* [maven-release-plugin] prepare release mariaDB4j-2.5.0

* [maven-release-plugin] rollback the release of mariaDB4j-2.5.0

* Bump maven-release-plugin from 2.5.3 to 3.0.0-M4

for https://github.com/vorburger/MariaDB4j/issues/495

* [maven-release-plugin] prepare release mariaDB4j-2.5.0

* [maven-release-plugin] rollback the release of mariaDB4j-2.5.0

* [maven-release-plugin] prepare release mariaDB4j-2.5.0

* [maven-release-plugin] prepare for next development iteration

* rm broken Dependabot badge from README

* Fix ClassNotFoundException: commons.io PathUtils in Maven Plugin (fixes #488)

The shutdown hook can only use classes which are part of the JDK.

* Bump maven-checkstyle-plugin from 3.1.0 to 3.1.2

Bumps [maven-checkstyle-plugin](https://github.com/apache/maven-checkstyle-plugin) from 3.1.0 to 3.1.2.
- [Release notes](https://github.com/apache/maven-checkstyle-plugin/releases)
- [Commits](https://github.com/apache/maven-checkstyle-plugin/compare/maven-checkstyle-plugin-3.1.0...maven-checkstyle-plugin-3.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* (WIP) Prepare for enforcing Checkstyle

Incl. adding dependency to latest Checkstyle v9.2;
see https://maven.apache.org/plugins/maven-checkstyle-plugin/examples/upgrading-checkstyle.html

* Promoted Checkstyle Warnings to Error

Disabled MissingJavaDoc using severity ignore.
Altered RightCurly to alone_or_singleline to allow one line empty implementations.
Fixed missing doublequote in checkstyle.xml
Complied with outstanding checkstyle errors

* Fix Checkstyle violations in (new) class DBShutdownHook

* Make mariaDB4j-maven-plugin expose DB URL as Maven Project property (#476)

Incl. performing an assert on the added system property in the test.

* Enable Checkstyle for src/test

* When dumping the database, close the outputstream once the dump is done

* Fixing the checkstyle problems

* Spaces in windows paths are no longer replaced by %20

* Replace DB's toWindowsPath() with inline File.getCanonicalFile()

Because following the previous commit, it's no longer Windows specific.

This is backwards compatible because toWindowsPath() was private.

See https://github.com/vorburger/MariaDB4j/issues/501

* Bump ch.vorburger.exec to 3.1.3 (fixes #501)

for https://github.com/vorburger/ch.vorburger.exec/pull/60
and https://github.com/vorburger/ch.vorburger.exec/pull/58

see https://github.com/vorburger/MariaDB4j/issues/501

* Bump springboot.version from 2.6.0 to 2.6.1

Bumps `springboot.version` from 2.6.0 to 2.6.1.

Updates `spring-boot-dependencies` from 2.6.0 to 2.6.1
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.0...v2.6.1)

Updates `spring-boot-maven-plugin` from 2.6.0 to 2.6.1
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.0...v2.6.1)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* [maven-release-plugin] prepare release mariaDB4j-2.5.1

* [maven-release-plugin] prepare for next development iteration

* log4j dependencyManagement 2.15.0 instead of 2.14.1 (#509)

see https://github.com/vorburger/MariaDB4j/issues/509

* [maven-release-plugin] prepare release mariaDB4j-2.5.2

* [maven-release-plugin] prepare for next development iteration

* Fix failing release due to Checkstyle in generated-sources (fixes #511)

* [maven-release-plugin] prepare release mariaDB4j-2.5.3

* [maven-release-plugin] prepare for next development iteration

* Update pom.xml

* Bump log4j-core from 2.16.0 to 2.17.0

Bumps log4j-core from 2.16.0 to 2.17.0.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-core
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump log4j-api from 2.16.0 to 2.17.0

Bumps log4j-api from 2.16.0 to 2.17.0.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-api
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump log4j-to-slf4j from 2.16.0 to 2.17.0

Bumps log4j-to-slf4j from 2.16.0 to 2.17.0.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-to-slf4j
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Create SECURITY.md

* Bump mockito-core from 4.1.0 to 4.2.0

Bumps [mockito-core](https://github.com/mockito/mockito) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v4.1.0...v4.2.0)

---
updated-dependencies:
- dependency-name: org.mockito:mockito-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump springboot.version from 2.6.1 to 2.6.2

Bumps `springboot.version` from 2.6.1 to 2.6.2.

Updates `spring-boot-dependencies` from 2.6.1 to 2.6.2
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.1...v2.6.2)

Updates `spring-boot-maven-plugin` from 2.6.1 to 2.6.2
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.1...v2.6.2)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump log4j-to-slf4j from 2.17.0 to 2.17.1

Bumps log4j-to-slf4j from 2.17.0 to 2.17.1.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-to-slf4j
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump log4j-api from 2.17.0 to 2.17.1

Bumps log4j-api from 2.17.0 to 2.17.1.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump log4j-core from 2.17.0 to 2.17.1

Bumps log4j-core from 2.17.0 to 2.17.1.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump checkstyle from 9.2 to 9.2.1

Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 9.2 to 9.2.1.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-9.2...checkstyle-9.2.1)

---
updated-dependencies:
- dependency-name: com.puppycrawl.tools:checkstyle
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump assertj-core from 3.21.0 to 3.22.0

Bumps [assertj-core](https://github.com/assertj/assertj-core) from 3.21.0 to 3.22.0.
- [Release notes](https://github.com/assertj/assertj-core/releases)
- [Commits](https://github.com/assertj/assertj-core/compare/assertj-core-3.21.0...assertj-core-3.22.0)

---
updated-dependencies:
- dependency-name: org.assertj:assertj-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-release-plugin from 3.0.0-M4 to 3.0.0-M5

Bumps [maven-release-plugin](https://github.com/apache/maven-release) from 3.0.0-M4 to 3.0.0-M5.
- [Release notes](https://github.com/apache/maven-release/releases)
- [Commits](https://github.com/apache/maven-release/compare/maven-release-3.0.0-M4...maven-release-3.0.0-M5)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-release-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-jar-plugin from 3.2.0 to 3.2.1

Bumps [maven-jar-plugin](https://github.com/apache/maven-jar-plugin) from 3.2.0 to 3.2.1.
- [Release notes](https://github.com/apache/maven-jar-plugin/releases)
- [Commits](https://github.com/apache/maven-jar-plugin/compare/maven-jar-plugin-3.2.0...maven-jar-plugin-3.2.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-jar-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-plugin-annotations from 3.6.2 to 3.6.4

Bumps [maven-plugin-annotations](https://github.com/apache/maven-plugin-tools) from 3.6.2 to 3.6.4.
- [Release notes](https://github.com/apache/maven-plugin-tools/releases)
- [Commits](https://github.com/apache/maven-plugin-tools/compare/maven-plugin-tools-3.6.2...maven-plugin-tools-3.6.4)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugin-tools:maven-plugin-annotations
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-plugin-plugin from 3.6.2 to 3.6.4

Bumps [maven-plugin-plugin](https://github.com/apache/maven-plugin-tools) from 3.6.2 to 3.6.4.
- [Release notes](https://github.com/apache/maven-plugin-tools/releases)
- [Commits](https://github.com/apache/maven-plugin-tools/compare/maven-plugin-tools-3.6.2...maven-plugin-tools-3.6.4)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-plugin-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update Build Status (Travis) badge in README

* Bump maven-jar-plugin from 3.2.1 to 3.2.2

Bumps [maven-jar-plugin](https://github.com/apache/maven-jar-plugin) from 3.2.1 to 3.2.2.
- [Release notes](https://github.com/apache/maven-jar-plugin/releases)
- [Commits](https://github.com/apache/maven-jar-plugin/compare/maven-jar-plugin-3.2.1...maven-jar-plugin-3.2.2)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-jar-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-compiler-plugin from 3.8.1 to 3.9.0

Bumps [maven-compiler-plugin](https://github.com/apache/maven-compiler-plugin) from 3.8.1 to 3.9.0.
- [Release notes](https://github.com/apache/maven-compiler-plugin/releases)
- [Commits](https://github.com/apache/maven-compiler-plugin/compare/maven-compiler-plugin-3.8.1...maven-compiler-plugin-3.9.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-compiler-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump slf4j-simple from 1.7.32 to 1.7.35

Bumps [slf4j-simple](https://github.com/qos-ch/slf4j) from 1.7.32 to 1.7.35.
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](https://github.com/qos-ch/slf4j/compare/v_1.7.32...v_1.7.35)

---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-simple
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump springboot.version from 2.6.2 to 2.6.3

Bumps `springboot.version` from 2.6.2 to 2.6.3.

Updates `spring-boot-dependencies` from 2.6.2 to 2.6.3
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.2...v2.6.3)

Updates `spring-boot-maven-plugin` from 2.6.2 to 2.6.3
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.2...v2.6.3)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump mysql-connector-java from 8.0.27 to 8.0.28

Bumps [mysql-connector-java](https://github.com/mysql/mysql-connector-j) from 8.0.27 to 8.0.28.
- [Release notes](https://github.com/mysql/mysql-connector-j/releases)
- [Changelog](https://github.com/mysql/mysql-connector-j/blob/release/8.0/CHANGES)
- [Commits](https://github.com/mysql/mysql-connector-j/compare/8.0.27...8.0.28)

---
updated-dependencies:
- dependency-name: mysql:mysql-connector-java
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump mockito-core from 4.2.0 to 4.3.1

Bumps [mockito-core](https://github.com/mockito/mockito) from 4.2.0 to 4.3.1.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v4.2.0...v4.3.1)

---
updated-dependencies:
- dependency-name: org.mockito:mockito-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Support default character set configuration.

* Bump maven-project-info-reports-plugin from 3.1.2 to 3.2.1

Bumps [maven-project-info-reports-plugin](https://github.com/apache/maven-project-info-reports-plugin) from 3.1.2 to 3.2.1.
- [Release notes](https://github.com/apache/maven-project-info-reports-plugin/releases)
- [Commits](https://github.com/apache/maven-project-info-reports-plugin/compare/maven-project-info-reports-plugin-3.1.2...maven-project-info-reports-plugin-3.2.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-project-info-reports-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump checkstyle from 9.2.1 to 9.3

Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 9.2.1 to 9.3.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-9.2.1...checkstyle-9.3)

---
updated-dependencies:
- dependency-name: com.puppycrawl.tools:checkstyle
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-compiler-plugin from 3.9.0 to 3.10.0

Bumps [maven-compiler-plugin](https://github.com/apache/maven-compiler-plugin) from 3.9.0 to 3.10.0.
- [Release notes](https://github.com/apache/maven-compiler-plugin/releases)
- [Commits](https://github.com/apache/maven-compiler-plugin/compare/maven-compiler-plugin-3.9.0...maven-compiler-plugin-3.10.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-compiler-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump springboot.version from 2.6.3 to 2.6.4

Bumps `springboot.version` from 2.6.3 to 2.6.4.

Updates `spring-boot-dependencies` from 2.6.3 to 2.6.4
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.3...v2.6.4)

Updates `spring-boot-maven-plugin` from 2.6.3 to 2.6.4
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.3...v2.6.4)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-project-info-reports-plugin from 3.2.1 to 3.2.2

Bumps [maven-project-info-reports-plugin](https://github.com/apache/maven-project-info-reports-plugin) from 3.2.1 to 3.2.2.
- [Release notes](https://github.com/apache/maven-project-info-reports-plugin/releases)
- [Commits](https://github.com/apache/maven-project-info-reports-plugin/compare/maven-project-info-reports-plugin-3.2.1...maven-project-info-reports-plugin-3.2.2)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-project-info-reports-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump slf4j-simple from 1.7.35 to 1.7.36

Bumps [slf4j-simple](https://github.com/qos-ch/slf4j) from 1.7.35 to 1.7.36.
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](https://github.com/qos-ch/slf4j/compare/v_1.7.35...v_1.7.36)

---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-simple
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump log4j-api from 2.17.1 to 2.17.2

Bumps log4j-api from 2.17.1 to 2.17.2.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump log4j-to-slf4j from 2.17.1 to 2.17.2

Bumps log4j-to-slf4j from 2.17.1 to 2.17.2.

---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-to-slf4j
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Remove explict Log4j dependency (no longer needed now)

* Bump mockito-core from 4.3.1 to 4.4.0

Bumps [mockito-core](https://github.com/mockito/mockito) from 4.3.1 to 4.4.0.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v4.3.1...v4.4.0)

---
updated-dependencies:
- dependency-name: org.mockito:mockito-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-compiler-plugin from 3.10.0 to 3.10.1

Bumps [maven-compiler-plugin](https://github.com/apache/maven-compiler-plugin) from 3.10.0 to 3.10.1.
- [Release notes](https://github.com/apache/maven-compiler-plugin/releases)
- [Commits](https://github.com/apache/maven-compiler-plugin/compare/maven-compiler-plugin-3.10.0...maven-compiler-plugin-3.10.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-compiler-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-compat from 3.8.4 to 3.8.5

Bumps [maven-compat](https://github.com/apache/maven) from 3.8.4 to 3.8.5.
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.4...maven-3.8.5)

---
updated-dependencies:
- dependency-name: org.apache.maven:maven-compat
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven.version from 3.8.4 to 3.8.5

Bumps `maven.version` from 3.8.4 to 3.8.5.

Updates `maven-plugin-api` from 3.8.4 to 3.8.5
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.4...maven-3.8.5)

Updates `maven-core` from 3.8.4 to 3.8.5
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.4...maven-3.8.5)

Updates `maven-model` from 3.8.4 to 3.8.5
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.4...maven-3.8.5)

Updates `maven-artifact` from 3.8.4 to 3.8.5
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.4...maven-3.8.5)

Updates `maven-settings` from 3.8.4 to 3.8.5
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.4...maven-3.8.5)

Updates `maven-settings-builder` from 3.8.4 to 3.8.5
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.4...maven-3.8.5)

---
updated-dependencies:
- dependency-name: org.apache.maven:maven-plugin-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-model
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-settings
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-settings-builder
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump springboot.version from 2.6.4 to 2.6.5

Bumps `springboot.version` from 2.6.4 to 2.6.5.

Updates `spring-boot-dependencies` from 2.6.4 to 2.6.5
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.4...v2.6.5)

Updates `spring-boot-maven-plugin` from 2.6.4 to 2.6.5
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.4...v2.6.5)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Mechanical reformat of core classes (with Eclipse)

* Encore mechanical reformat

* Remove setDefaultCharacterSet() from DBConfiguration

This belongs (only) in DBConfigurationBuilder.

* Bump version from 2.5.4 to 2.6.0

* Switch Travis CI from Java 8 to 11 and Ubuntu Xenial 16.04 to Focal 20.04

* Bump (and move) maven-javadoc-plugin from 2.10.4 to 3.3.2

* Bump maven.compiler source & target from 1.8 to 11

* Remove jitpack.yml

JitPack is still used / supported, but according to https://docs.jitpack.io/building/#java-version :
"If your project uses Travis or Circle CI then JitPack will read the lowest jdk version from yml file and use that to build."

* Install libncurses5 on Travis (and document)

* Uninstall MySQL and install MariaDB on Travis CI

* Support using locally installed MariaDB (#560)

* Remove wrong space from DYLD_FALLBACK_LIBRARY_PATH

The Mac specific environment variable `DYLD_FALLBACK_LIBRARY_PATH` should not end in space.

* Bump springboot.version from 2.6.5 to 2.6.6

Bumps `springboot.version` from 2.6.5 to 2.6.6.

Updates `spring-boot-dependencies` from 2.6.5 to 2.6.6
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.5...v2.6.6)

Updates `spring-boot-maven-plugin` from 2.6.5 to 2.6.6
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](https://github.com/spring-projects/spring-boot/compare/v2.6.5...v2.6.6)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-dependencies
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump checkstyle from 9.3 to 10.1

Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 9.3 to 10.1.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-9.3...checkstyle-10.1)

---
updated-dependencies:
- dependency-name: com.puppycrawl.tools:checkstyle
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-shade-plugin from 3.2.4 to 3.3.0

Bumps [maven-shade-plugin](https://github.com/apache/maven-shade-plugin) from 3.2.4 to 3.3.0.
- [Release notes](https://github.com/apache/maven-shade-plugin/releases)
- [Commits](https://github.com/apache/maven-shade-plugin/compare/maven-shade-plugin-3.2.4...maven-shade-plugin-3.3.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-shade-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump assertj-core from 3.22.0 to 3.23.1

Bumps [assertj-core](https://github.com/assertj/assertj-core) from 3.22.0 to 3.23.1.
- [Release notes](https://github.com/assertj/assertj-core/releases)
- [Commits](https://github.com/assertj/assertj-core/compare/assertj-core-3.22.0...assertj-core-3.23.1)

---
updated-dependencies:
- dependency-name: org.assertj:assertj-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump checkstyle from 10.1 to 10.3

Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 10.1 to 10.3.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-10.1...checkstyle-10.3)

---
updated-dependencies:
- dependency-name: com.puppycrawl.tools:checkstyle
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-invoker-plugin from 3.2.2 to 3.3.0

Bumps [maven-invoker-plugin](https://github.com/apache/maven-invoker-plugin) from 3.2.2 to 3.3.0.
- [Release notes](https://github.com/apache/maven-invoker-plugin/releases)
- [Commits](https://github.com/apache/maven-invoker-plugin/compare/maven-invoker-plugin-3.2.2...maven-invoker-plugin-3.3.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-invoker-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump mysql-connector-java from 8.0.28 to 8.0.29

Bumps [mysql-connector-java](https://github.com/mysql/mysql-connector-j) from 8.0.28 to 8.0.29.
- [Release notes](https://github.com/mysql/mysql-connector-j/releases)
- [Changelog](https://github.com/mysql/mysql-connector-j/blob/release/8.0/CHANGES)
- [Commits](https://github.com/mysql/mysql-connector-j/compare/8.0.28...8.0.29)

---
updated-dependencies:
- dependency-name: mysql:mysql-connector-java
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-project-info-reports-plugin from 3.2.2 to 3.3.0

Bumps [maven-project-info-reports-plugin](https://github.com/apache/maven-project-info-reports-plugin) from 3.2.2 to 3.3.0.
- [Release notes](https://github.com/apache/maven-project-info-reports-plugin/releases)
- [Commits](https://github.com/apache/maven-project-info-reports-plugin/compare/maven-project-info-reports-plugin-3.2.2...maven-project-info-reports-plugin-3.3.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-project-info-reports-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-javadoc-plugin from 3.3.2 to 3.4.0

Bumps [maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.3.2 to 3.4.0.
- [Release notes](https://github.com/apache/maven-javadoc-plugin/releases)
- [Commits](https://github.com/apache/maven-javadoc-plugin/compare/maven-javadoc-plugin-3.3.2...maven-javadoc-plugin-3.4.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-javadoc-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* set source default character set as UTF8

* Update DB.java

* Update DB.java

* Bump maven.version from 3.8.5 to 3.8.6

Bumps `maven.version` from 3.8.5 to 3.8.6.

Updates `maven-plugin-api` from 3.8.5 to 3.8.6
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.5...maven-3.8.6)

Updates `maven-core` from 3.8.5 to 3.8.6
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.5...maven-3.8.6)

Updates `maven-model` from 3.8.5 to 3.8.6
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.5...maven-3.8.6)

Updates `maven-artifact` from 3.8.5 to 3.8.6
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.5...maven-3.8.6)

Updates `maven-settings` from 3.8.5 to 3.8.6
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.5...maven-3.8.6)

Updates `maven-settings-builder` from 3.8.5 to 3.8.6
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.5...maven-3.8.6)

---
updated-dependencies:
- dependency-name: org.apache.maven:maven-plugin-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-model
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-settings
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.apache.maven:maven-settings-builder
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-compat from 3.8.5 to 3.8.6

Bumps [maven-compat](https://github.com/apache/maven) from 3.8.5 to 3.8.6.
- [Release notes](https://github.com/apache/maven/releases)
- [Commits](https://github.com/apache/maven/compare/maven-3.8.5...maven-3.8.6)

---
updated-dependencies:
- dependency-name: org.apache.maven:maven-compat
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-release-plugin from 3.0.0-M5 to 3.0.0-M6

Bumps [maven-release-plugin](https://github.com/apache/maven-release) from 3.0.0-M5 to 3.0.0-M6.
- [Release notes](https://github.com/apache/maven-release/releases)
- [Commits](https://github.com/apache/maven-release/compare/maven-release-3.0.0-M5...maven-release-3.0.0-M6)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-release-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump mysql-connector-java

Bumps [mysql-connector-java](https://github.com/mysql/mysql-connector-j) from 8.0.16 to 8.0.28.
- [Release notes](https://github.com/mysql/mysql-connector-j/releases)
- [Changelog](https://github.com/mysql/mysql-connector-j/blob/release/8.0/CHANGES)
- [Commits](https://github.com/mysql/mysql-connector-j/compare/8.0.16...8.0.28)

---
updated-dependencies:
- dependency-name: mysql:mysql-connector-java
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-common-artifact-filters from 3.2.0 to 3.3.0

Bumps [maven-common-artifact-filters](https://github.com/apache/maven-common-artifact-filters) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/apache/maven-common-artifact-filters/releases)
- [Commits](https://github.com/apache/maven-common-artifact-filters/compare/maven-common-artifact-filters-3.2.0...maven-common-artifact-filters-3.3.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.shared:maven-common-artifact-filters
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump checkstyle from 10.3 to 10.3.1

Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 10.3 to 10.3.1.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-10.3...checkstyle-10.3.1)

---
updated-dependencies:
- dependency-name: com.puppycrawl.tools:checkstyle
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-project-info-reports-plugin from 3.3.0 to 3.4.0

Bumps [maven-project-info-reports-plugin](https://github.com/apache/maven-project-info-reports-plugin) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/apache/maven-project-info-reports-plugin/releases)
- [Commits](https://github.com/apache/maven-project-info-reports-plugin/compare/maven-project-info-reports-plugin-3.3.0...maven-project-info-reports-plugin-3.4.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-project-info-reports-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-common-artifact-filters from 3.3.0 to 3.3.1

Bumps [maven-common-artifact-filters](https://github.com/apache/maven-common-artifact-filters) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/apache/maven-common-artifact-filters/releases)
- [Commits](https://github.com/apache/maven-common-artifact-filters/compare/maven-common-artifact-filters-3.3.0...maven-common-artifact-filters-3.3.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.shared:maven-common-artifact-filters
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump checkstyle from 10.3.1 to 10.3.2

Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 10.3.1 to 10.3.2.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-10.3.1...checkstyle-10.3.2)

---
updated-dependencies:
- dependency-name: com.puppycrawl.tools:checkstyle
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-javadoc-plugin from 3.4.0 to 3.4.1

Bumps [maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.4.0 to 3.4.1.
- [Release notes](https://github.com/apache/maven-javadoc-plugin/releases)
- [Commits](https://github.com/apache/maven-javadoc-plugin/compare/maven-javadoc-plugin-3.4.0...maven-javadoc-plugin-3.4.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-javadoc-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump slf4j-simple from 1.7.36 to 2.0.0

Bumps [slf4j-simple](https://github.com/qos-ch/slf4j) from 1.7.36 to 2.0.0.
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](https://github.com/qos-ch/slf4j/compare/v_1.7.36...v_2.0.0)

---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-simple
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-project-info-reports-plugin from 3.4.0 to 3.4.1

Bumps [maven-project-info-reports-plugin](https://github.com/apache/maven-project-info-reports-plugin) from 3.4.0 to 3.4.1.
- [Release notes](https://github.com/apache/maven-project-info-reports-plugin/releases)
- [Commits](https://github.com/apache/maven-project-info-reports-plugin/compare/maven-project-info-reports-plugin-3.4.0...maven-project-info-reports-plugin-3.4.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-project-info-reports-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump mysql-connector-java from 8.0.29 to 8.0.30

Bumps [mysql-connector-java](https://github.com/mysql/mysql-connector-j) from 8.0.29 to 8.0.30.
- [Release notes](https://github.com/mysql/mysql-connector-j/releases)
- [Changelog](https://github.com/mysql/mysql-connector-j/blob/release/8.0/CHANGES)
- [Commits](https://github.com/mysql/mysql-connector-j/compare/8.0.29...8.0.30)

---
updated-dependencies:
- dependency-name: mysql:mysql-connector-java
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Add configurable tmpdir

* Bump slf4j-simple from 2.0.0 to 2.0.2

Bumps [slf4j-simple](https://github.com/qos-ch/slf4j) from 2.0.0 to 2.0.2.
- [Release notes](https://github.com/qos-ch/slf4j/releases)
- [Commits](https://github.com/qos-ch/slf4j/compare/v_2.0.0...v_2.0.2)

---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-simple
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-shade-plugin from 3.3.0 to 3.4.0

Bumps [maven-shade-plugin](https://github.com/apache/maven-shade-plugin) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/apache/maven-shade-plugin/releases)
- [Commits](https://github.com/apache/maven-shade-plugin/compare/maven-shade-plugin-3.3.0...maven-shade-plugin-3.4.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-shade-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-common-artifact-filters from 3.3.1 to 3.3.2

Bumps [maven-common-artifact-filters](https://github.com/apache/maven-common-artifact-filters) from 3.3.1 to 3.3.2.
- [Release notes](https://github.com/apache/maven-common-artifact-filters/releases)
- [Commits](https://github.com/apache/maven-common-artifact-filters/compare/maven-common-artifact-filters-3.3.1...maven-common-artifact-filters-3.3.2)

---
updated-dependencies:
- dependency-name: org.apache.maven.shared:maven-common-artifact-filters
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump checkstyle from 10.3.2 to 10.3.3

Bumps [checkstyle](https://github.com/checkstyle/checkstyle) from 10.3.2 to 10.3.3.
- [Release notes](https://github.com/checkstyle/checkstyle/releases)
- [Commits](https://github.com/checkstyle/checkstyle/compare/checkstyle-10.3.2...checkstyle-10.3.3)

---
updated-dependencies:
- dependency-name: com.puppycrawl.tools:checkstyle
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-checkstyle-plugin from 3.1.2 to 3.2.0

Bumps [maven-checkstyle-plugin](https://github.com/apache/maven-checkstyle-plugin) from 3.1.2 to 3.2.0.
- [Release notes](https://github.com/apache/maven-checkstyle-plugin/releases)
- [Commits](https://github.com/apache/maven-checkstyle-plugin/compare/maven-checkstyle-plugin-3.1.2...maven-checkstyle-plugin-3.2.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-checkstyle-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump maven-jar-plugin from 3.2.2 to 3.3.0

Bumps [maven-jar-plugin](https://github.com/apache/maven-jar-plugin) from 3.2.2 to 3.3.0.
- [Release notes](https://github.com/apache/maven-jar-plugin/releases)
- [Commits](https://github.com/apache/maven-jar-plugin/compare/maven-jar-plugin-3.2.2...maven-jar-plugin-3.3.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-jar-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Add documentation for using native MariaDB binaries.

* Bump springboot version from 2.6.6 to 2.7.4.

* Update connection URL to use `mariadb`.

* Bump mockito-core from 4.4.0 to 4.8.0

Bumps [mockito-core](https://github.com/mockito/mockito) from 4.4.0 to 4.8.0.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v4.4.0...v4.8.0)

---
updated-dependencies:
- dependency-name: org.mockito:mockito-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* [maven-release-plugin] prepare release mariaDB4j-2.6.0

* [maven-release-plugin] prepare for next development iteration

* Bump release related Maven plugin versions in lite POM

* Revert "[maven-release-plugin] prepare for next development iteration"

This reverts commit c7e4cae742826e816234a5fd280b00e3f0ce8487.

* Revert "[maven-release-plugin] prepare release mariaDB4j-2.6.0"

This reverts commit 926f2bbd1a1b88a919651febf1e19c0da558c341.

* Bump lite POM version used in MariaDB4j itself

* README: Fix broken CHANGELOG link.

* Move maven-javadoc-plugin from core/ to root POM (fixes #625)

* [maven-release-plugin] prepare release mariaDB4j-2.6.0

* fix merge conflict

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Co-authored-by: Michael Vorburger <mike@vorburger.ch>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: jenli66 <jens.lidestrom@vgregion.se>
Co-authored-by: jensli <jens@lidestrom.se>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Robin Stevens <73103348+robin-xyzt-ai@users.noreply.github.com>
Co-authored-by: Gordon Little <dev@gordonlittle.co.uk>
Co-authored-by: Robin Stevens <robin.stevens@xyzt.ai>
Co-authored-by: Niklas <niklas-weisss@web.de>
Co-authored-by: LEE HAK DO <dev.fringe@gmail.com>
Co-authored-by: huguojun <agostop@foxmail.com>
Co-authored-by: xiangbin li <dassio_98@163.com>
Co-authored-by: simonzkl <110235118+simonzkl@users.noreply.github.com>
Co-authored-by: Matt Dziuban <mrdziuban@gmail.com>
  • Loading branch information
15 people committed Feb 10, 2023
1 parent 72ac3ac commit 00dd152
Show file tree
Hide file tree
Showing 29 changed files with 533 additions and 198 deletions.
12 changes: 7 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
dist: focal
language: java

# We need Java 8, even though the source code is still Java 6,
# because Checkstyle during build is Java 7+ only; and we use
# OpenJDK instead of Oracle JDK because ya all should only
# We use OpenJDK instead of Oracle JDK because ya all should only
# ever use OpenJDK! (And get Red Hat's support for it, if
# you use it professionally.)
jdk:
- openjdk8
jdk:
- openjdk11

# Do *NOT* cache, see https://github.com/vorburger/MariaDB4j/issues/262
# cache:
Expand All @@ -15,6 +14,9 @@ jdk:
# - .mvn

before_install:
- sudo apt update
- sudo apt remove mysql-server mysql-common
- sudo apt install libncurses5 mariadb-server
# TODO uncomment this when raising a PR to fix https://github.com/vorburger/MariaDB4j/issues/484
# - mvn -f DBs/pom.xml clean install

Expand Down
2 changes: 1 addition & 1 deletion DBs/mariaDB4j-db-linux64-10.4.20/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>org.craftercms.mariaDB4j</groupId>
<artifactId>mariaDB4j-pom-lite</artifactId>
<version>2.5.3</version>
<version>2.6.0</version>
<relativePath>../../mariaDB4j-pom-lite/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion DBs/mariaDB4j-db-mac64-10.4.20/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>org.craftercms.mariaDB4j</groupId>
<artifactId>mariaDB4j-pom-lite</artifactId>
<version>2.5.3</version>
<version>2.6.0</version>
<relativePath>../../mariaDB4j-pom-lite/pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion DBs/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<parent>
<groupId>org.craftercms.mariaDB4j</groupId>
<artifactId>mariaDB4j-pom-lite</artifactId>
<version>2.5.3</version>
<version>2.6.0</version>
<relativePath>../mariaDB4j-pom-lite/pom.xml</relativePath>
</parent>

Expand Down
32 changes: 27 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,7 @@ If you are using this project, consider [supporting it :heart: by donating via P
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/ch.vorburger.mariaDB4j/mariaDB4j/badge.svg)](https://maven-badges.herokuapp.com/maven-central/ch.vorburger.mariaDB4j/mariaDB4j)
[![Javadocs](http://www.javadoc.io/badge/ch.vorburger.mariaDB4j/mariaDB4j-core.svg)](http://www.javadoc.io/doc/ch.vorburger.mariaDB4j/mariaDB4j-core)
[![JitPack](https://jitpack.io/v/vorburger/MariaDB4j.svg)](https://jitpack.io/#vorburger/MariaDB4j)
[![Build Status](https://secure.travis-ci.org/vorburger/MariaDB4j.png?branch=master)](http://travis-ci.org/vorburger/MariaDB4j/)

[![Build Status](https://app.travis-ci.com/vorburger/MariaDB4j.svg?branch=master)](https://app.travis-ci.com/vorburger/MariaDB4j)

How? (Java)
----
Expand Down Expand Up @@ -58,6 +57,29 @@ db.source("path/to/resource.sql");
If you would like to / need to start a specific DB version you already have, instead of the version currently
packaged in the JAR, you can use `DBConfigurationBuilder setUnpackingFromClasspath(false) & setBaseDir("/my/db/")` or `-DmariaDB4j.unpack=false -DmariaDB4j.baseDir=/home/you/stuff/myFavouritemMariadDBVersion`. Similarly, you can also pack your own version in a JAR and put it on the classpath, and `@Override getBinariesClassPathLocation()` in `DBConfigurationBuilder` to return where to find it (check the source of the default implementation).

How (using existing native MariaDB binaries)
----
MariaDB4j supports using existing native MariaDB binaries on the host system rather than unpacking MariaDB from the
classpath. You can control this via the `DBConfigurationBuilder`:

```java
import static ch.vorburger.mariadb4j.DBConfiguration.Executable.Server;
import ch.vorburger.mariadb4j.DBConfigurationBuilder;

DBConfigurationBuilder config = DBConfigurationBuilder.newBuilder();
config.setPort(0); // 0 => autom. detect free port
config.setUnpackingFromClasspath(false);
config.setLibDir(System.getProperty("java.io.tmpdir") + "/MariaDB4j/no-libs");

// On Linux it may be necessary to set both the base dir and the server executable
// as the `mysqld` binary lives in `/usr/sbin` rather than `/usr/bin`
config.setBaseDir("/usr");
config.setExecutable(Server, "/usr/sbin/mysqld");

// On MacOS with MariaDB installed via homebrew, you can just set base dir to the output of `brew --prefix`
config.setBaseDir("/usr/local") // or "/opt/homebrew" for M1 Macs
```

How (Spring)
----
MariaDB4j can be used in any Java Application on its own. It is not dependent on dependency injection or the Spring Framework (the dependency to the spring-core*.jar is for a utility, and is unrelated to DI).
Expand Down Expand Up @@ -265,7 +287,7 @@ The `MariaDB4jRule` provides 2 methods for getting data on the running DB:
}
```

The `MariaDB4jRule` class extends the JUnit [`ExternalResource`](https://github.com/junit-team/junit4/wiki/rules#externalresource-rules) - which means it starts the DB process before each test method is run, and stops it at the end of that test method.

The `MariaDB4jRule(DBConfiguration dbConfiguration, String dbName, String resource)` Constructor, allows to initialize your DB with a provided SQL Script (resource = path to script file) to setup needed database, tables and data.
Expand Down Expand Up @@ -303,7 +325,7 @@ Q: Is MariaDB4j stable enough for production? I need the data to be safe, and pe
A: Try it out, and if you do find any problem, raise an issue here and let's see if we can fix it. You probably don't risk much in terms of data to be safe and performance - remember MariaDB4j is just a wrapper launching MariaDB (which is a MySQL(R) fork) - so it's as safe and performant as the underlying native DB it uses.

Q: ERROR ch.vorburger.exec.ManagedProcess - mysql: /tmp/MariaDB4j/base/bin/mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
A: This could happen e.g. on Fedora 24 if you have not previous installed any other software package which requires libncurses, and can be fixed by finding the RPM package which provides `libncurses.so.5` via `sudo dnf provides libncurses.so.5` and then install that via `sudo dnf install ncurses-compat-libs`.
A: This could happen e.g. on Fedora 24 if you have not previous installed any other software package which requires libncurses, and can be fixed by finding the RPM package which provides `libncurses.so.5` via `sudo dnf provides libncurses.so.5` and then install that via `sudo dnf install ncurses-compat-libs`. On Ubuntu Focal 20.04, you need to `sudo apt update && sudo apt install libncurses5`.

Q: Is there another project that does something similar to this one?
A: Indeed there is, check out [wix-embedded-mysql](https://github.com/wix/wix-embedded-mysql)! The world is big enough for both of us, and [we cross link](https://github.com/wix/wix-embedded-mysql/pull/118). [Testcontainers' has something similar which we recommend you use ](https://www.testcontainers.org/modules/databases/mariadb/) if you can run containers (Docker). Also OpenMRS' [liquibase-maven-plugin](https://github.com/openmrs/openmrs-contrib-liquibase-maven-plugin) build on MariaDB4j.
Expand All @@ -329,7 +351,7 @@ When doing a release, here are a few things to do every time:
mvn -Dmaven.test.skip=true package
```

4. Finalize [CHANGES.md](CHANGES.md) Release Notes, incl. set today's date, and update the version numbers in this README.
4. Finalize [CHANGELOG.md](CHANGELOG.md) Release Notes, incl. set today's date, and update the version numbers in this README.

5. Preparing & performing the release (this INCLUDES an mvn deploy):

Expand Down
13 changes: 13 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Security Policy

## Supported Versions

| Version | Supported |
| ------- | ------------------ |
| `master`| :white_check_mark: |
| 2.5.x | :white_check_mark: |
| Older | :x: |

## Reporting a Vulnerability

Email https://github.com/vorburger. (You can find the email address in the `git log` after you `git clone` this repo.)
2 changes: 0 additions & 2 deletions jitpack.yml

This file was deleted.

2 changes: 1 addition & 1 deletion mariaDB4j-app/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<parent>
<groupId>org.craftercms.mariaDB4j</groupId>
<artifactId>mariaDB4j-pom</artifactId>
<version>2.5.3</version>
<version>2.6.0</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
6 changes: 2 additions & 4 deletions mariaDB4j-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<parent>
<groupId>org.craftercms.mariaDB4j</groupId>
<artifactId>mariaDB4j-pom</artifactId>
<version>2.5.3</version>
<version>2.6.0</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down Expand Up @@ -60,16 +60,14 @@
<artifactId>slf4j-simple</artifactId>
<scope>test</scope>
</dependency>

</dependencies>


<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.2</version>
<version>3.3.0</version>
<configuration>
<archive>
<manifestEntries>
Expand Down
65 changes: 42 additions & 23 deletions mariaDB4j-core/src/main/java/ch/vorburger/mariadb4j/DB.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,18 @@
*/
package ch.vorburger.mariadb4j;

import static ch.vorburger.mariadb4j.DBConfiguration.Executable.Client;
import static ch.vorburger.mariadb4j.DBConfiguration.Executable.Dump;
import static ch.vorburger.mariadb4j.DBConfiguration.Executable.InstallDB;
import static ch.vorburger.mariadb4j.DBConfiguration.Executable.PrintDefaults;
import static ch.vorburger.mariadb4j.DBConfiguration.Executable.Server;

import ch.vorburger.exec.ManagedProcess;
import ch.vorburger.exec.ManagedProcessBuilder;
import ch.vorburger.exec.ManagedProcessException;
import ch.vorburger.exec.ManagedProcessListener;
import ch.vorburger.exec.OutputStreamLogDispatcher;
import ch.vorburger.mariadb4j.DBConfiguration.Executable;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.File;
Expand Down Expand Up @@ -59,6 +66,7 @@ public class DB {
private File baseDir;
private File libDir;
private File dataDir;
private File tmpDir;
private ManagedProcess mysqldProcess;

protected int dbStartMaxWaitInMS = 30000;
Expand Down Expand Up @@ -111,14 +119,7 @@ public static DB newEmbeddedDB(int port) throws ManagedProcessException {

protected ManagedProcess createDBInstallProcess() throws ManagedProcessException, IOException {
logger.info("Installing a new embedded database to: " + baseDir);
File installDbCmdFile = newExecutableFile("bin", "mysql_install_db");
if (!installDbCmdFile.exists()) {
installDbCmdFile = newExecutableFile("scripts", "mysql_install_db");
}
if (!installDbCmdFile.exists()) {
throw new ManagedProcessException(
"mysql_install_db was not found, neither in bin/ nor in scripts/ under " + baseDir.getAbsolutePath());
}
File installDbCmdFile = configuration.getExecutable(Executable.InstallDB);
ManagedProcessBuilder builder = new ManagedProcessBuilder(installDbCmdFile);
builder.setOutputStreamLogDispatcher(getOutputStreamLogDispatcher("mysql_install_db"));
builder.getEnvironment().put(configuration.getOSLibraryEnvironmentVarName(), libDir.getAbsolutePath());
Expand All @@ -127,13 +128,16 @@ protected ManagedProcess createDBInstallProcess() throws ManagedProcessException
// Since 10.4.6, this needs to be specified to allow root login from any user and avoid creating an extra user,
// basically like it used to do in 10.3 and before
builder.addArgument("--auth-root-authentication-method=normal");
builder.addArgument("--datadir=" + dataDir.getAbsolutePath(), false);
builder.addArgument("--tmpdir=" + tmpDir.getAbsolutePath(), false);
builder.addArgument("--basedir=" + baseDir.getAbsolutePath(), false);
builder.addArgument("--no-defaults");
builder.addArgument("--force");
builder.addArgument("--skip-name-resolve");
// builder.addArgument("--verbose");
} else {
builder.addFileArgument("--datadir", dataDir.getCanonicalFile());
builder.addFileArgument("--tmpdir", tmpDir.getCanonicalFile());
}
return builder.build();
}
Expand Down Expand Up @@ -177,7 +181,6 @@ synchronized protected void install() throws ManagedProcessException {
logger.info("Installation complete.");
}


/**
* Runs mysql secure installation script.
*
Expand All @@ -202,7 +205,8 @@ synchronized protected void runMysqlSecureInstallationScript() throws ManagedPro
}

boolean secured = false;
try (Connection conn = DriverManager.getConnection(configuration.getURL("mysql"), "root", "")) {
String jdbcUrl = "jdbc:mysql://localhost:" + configuration.getPort() + "/mysql";
try (Connection conn = DriverManager.getConnection(jdbcUrl, "root", "")) {
secured = false;
logger.info("Unsecured database detected, running the secure installation script against the database.");
} catch (SQLException e) {
Expand Down Expand Up @@ -259,11 +263,11 @@ public synchronized void start() throws ManagedProcessException {
}

protected String getReadyForConnectionsTag() {
return "mysqld" + getWinExeExt() + ": ready for connections.";
return ": ready for connections.";
}

synchronized ManagedProcess startPreparation() throws ManagedProcessException, IOException {
ManagedProcessBuilder builder = new ManagedProcessBuilder(newExecutableFile("bin", "mysqld"));
ManagedProcessBuilder builder = new ManagedProcessBuilder(configuration.getExecutable(Server));
builder.setOutputStreamLogDispatcher(getOutputStreamLogDispatcher("mysqld"));
builder.getEnvironment().put(configuration.getOSLibraryEnvironmentVarName(), libDir.getAbsolutePath());
builder.addArgument("--no-defaults"); // *** THIS MUST COME FIRST ***
Expand All @@ -275,11 +279,21 @@ synchronized ManagedProcess startPreparation() throws ManagedProcessException, I
builder.addArgument("--max_allowed_packet=64M");
}
builder.addArgument("--basedir=" + baseDir.getAbsolutePath(), false).setWorkingDirectory(baseDir);
builder.addArgument("--datadir=" + dataDir.getAbsolutePath(), false);

if (!configuration.isWindows()) {
builder.addArgument("--datadir=" + dataDir.getAbsolutePath(), false);
builder.addArgument("--tmpdir=" + tmpDir.getAbsolutePath(), false);
} else {
builder.addFileArgument("--datadir", dataDir.getCanonicalFile());
builder.addFileArgument("--tmpdir", tmpDir.getCanonicalFile());
}
addPortAndMaybeSocketArguments(builder);
for (String arg : configuration.getArgs()) {
builder.addArgument(arg);
}
if (StringUtils.isNotBlank(configuration.getDefaultCharacterSet())) {
builder.addArgument("--character-set-server=", configuration.getDefaultCharacterSet());
}
cleanupOnExit();
// because cleanupOnExit() just installed our (class DB) own
// Shutdown hook, we don't need the one from ManagedProcess:
Expand Down Expand Up @@ -426,9 +440,10 @@ protected void run(String logInfoText, InputStream fromIS, String username, Stri
throws ManagedProcessException {
logger.info("Running a " + logInfoText);
try {
ManagedProcessBuilder builder = new ManagedProcessBuilder(newExecutableFile("bin", "mysql"));
ManagedProcessBuilder builder = new ManagedProcessBuilder(configuration.getExecutable(Client));
builder.setOutputStreamLogDispatcher(getOutputStreamLogDispatcher("mysql"));
builder.setWorkingDirectory(baseDir);
builder.addArgument("--default-character-set=utf8");
if (username != null && !username.isEmpty()) {
builder.addArgument("-u", username);
}
Expand All @@ -448,6 +463,9 @@ protected void run(String logInfoText, InputStream fromIS, String username, Stri
if (configuration.getProcessListener() != null) {
builder.setProcessListener(configuration.getProcessListener());
}
if (configuration.getDefaultCharacterSet() != null) {
builder.addArgument("--default-character-set=", configuration.getDefaultCharacterSet());
}

ManagedProcess process = builder.build();
process.start();
Expand Down Expand Up @@ -498,12 +516,11 @@ protected void unpackEmbeddedDb() {
try {
Util.extractFromClasspathToFile(configuration.getBinariesClassPathLocation(), baseDir);
if (!configuration.isWindows()) {
Util.forceExecutable(newExecutableFile("bin", "my_print_defaults"));
Util.forceExecutable(newExecutableFile("bin", "mysql_install_db"));
Util.forceExecutable(newExecutableFile("scripts", "mysql_install_db"));
Util.forceExecutable(newExecutableFile("bin", "mysqld"));
Util.forceExecutable(newExecutableFile("bin", "mysqldump"));
Util.forceExecutable(newExecutableFile("bin", "mysql"));
Util.forceExecutable(configuration.getExecutable(PrintDefaults));
Util.forceExecutable(configuration.getExecutable(InstallDB));
Util.forceExecutable(configuration.getExecutable(Server));
Util.forceExecutable(configuration.getExecutable(Dump));
Util.forceExecutable(configuration.getExecutable(Client));
Util.forceExecutable(newExecutableFile("bin", "mysql_secure_installation"));
Util.forceExecutable(newExecutableFile("bin", "mysql_upgrade"));
Util.forceExecutable(newExecutableFile("bin", "mysqlcheck"));
Expand All @@ -523,6 +540,7 @@ protected void unpackEmbeddedDb() {
protected void prepareDirectories() throws ManagedProcessException {
baseDir = Util.getDirectory(configuration.getBaseDir());
libDir = Util.getDirectory(configuration.getLibDir());
tmpDir = Util.getDirectory(configuration.getTmpDir());
try {
String dataDirPath = configuration.getDataDir();
if (Util.isTemporaryDirectory(dataDirPath)) {
Expand All @@ -541,8 +559,9 @@ protected void prepareDirectories() throws ManagedProcessException {
protected void cleanupOnExit() {
String threadName = "Shutdown Hook Deletion Thread for Temporary DB " + dataDir.toString();
final DB db = this;
Runtime.getRuntime()
.addShutdownHook(new DBShutdownHook(threadName, db, () -> mysqldProcess, () -> baseDir, () -> dataDir, configuration));
Runtime.getRuntime().addShutdownHook(
new DBShutdownHook(threadName, db, () -> mysqldProcess, () -> baseDir, () -> dataDir, () -> tmpDir, configuration)
);
}

// The dump*() methods are intentionally *NOT* made "synchronized",
Expand All @@ -565,7 +584,7 @@ public ManagedProcess dumpSQL(File outputFile, String dbName, String user, Strin
protected ManagedProcess dump(File outputFile, List<String> dbNamesToDump, boolean compactDump, boolean lockTables, boolean asXml,
String user, String password) throws ManagedProcessException, IOException {

ManagedProcessBuilder builder = new ManagedProcessBuilder(newExecutableFile("bin", "mysqldump"));
ManagedProcessBuilder builder = new ManagedProcessBuilder(configuration.getExecutable(Dump));

BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(outputFile));
builder.addStdOut(outputStream);
Expand Down
Loading

0 comments on commit 00dd152

Please sign in to comment.