Skip to content

Commit d4e3186

Browse files
authored
Merge pull request #81 from PgBulkInsert/release-6.0.0
Release 6.0.0
2 parents 02a4c40 + 375ee07 commit d4e3186

8 files changed

Lines changed: 139 additions & 9 deletions

File tree

CHANGELOG.md

Lines changed: 111 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,116 @@
11
# CHANGELOG #
22

3+
## 6.0.0 ##
4+
5+
This release saw major improvements and some breaking changes. The release is
6+
a dramatic improvement of the library, because it adds:
7+
8+
* Java11 support
9+
* Improved Type Safety
10+
* Internal Refactorings to improve maintainability
11+
* Build Pipelines
12+
* Code Coverage
13+
* Dependency updates
14+
15+
All of this great work was done by [@jonfreedman](https://github.com/jonfreedman).
16+
17+
### Packages ###
18+
19+
There is a major change in how the library is released. The project now
20+
targets both Java8 and Java11. You are able to use the JDK8 version by
21+
appending "-jdk8" to the Maven Package name.
22+
23+
So for Java8 you have to use the following dependencies:
24+
25+
```java
26+
<dependency>
27+
<groupId>de.bytefish.pgbulkinsert</groupId>
28+
<artifactId>pgbulkinsert-core-jdk8</artifactId>
29+
<version>6.0.0</version>
30+
</dependency>
31+
<dependency>
32+
<groupId>de.bytefish.pgbulkinsert</groupId>
33+
<artifactId>pgbulkinsert-rowwriter-jdk8</artifactId>
34+
<version>6.0.0</version>
35+
</dependency>
36+
<dependency>
37+
<groupId>de.bytefish.pgbulkinsert</groupId>
38+
<artifactId>pgbulkinsert-jpa-jdk8</artifactId>
39+
<version>6.0.0</version>
40+
</dependency>
41+
```
42+
43+
For Java11 you have to use the following dependencies:
44+
45+
```java
46+
<dependency>
47+
<groupId>de.bytefish.pgbulkinsert</groupId>
48+
<artifactId>pgbulkinsert-core</artifactId>
49+
<version>6.0.0</version>
50+
</dependency>
51+
<dependency>
52+
<groupId>de.bytefish.pgbulkinsert</groupId>
53+
<artifactId>pgbulkinsert-rowwriter</artifactId>
54+
<version>6.0.0</version>
55+
</dependency>
56+
<dependency>
57+
<groupId>de.bytefish.pgbulkinsert</groupId>
58+
<artifactId>pgbulkinsert-jpa</artifactId>
59+
<version>6.0.0</version>
60+
</dependency>
61+
```
62+
63+
### Breaking Changes ###
64+
65+
* ``PgBinaryWriter#open`` removed and now opened in constructor
66+
* ``SimpleRowWriter#open`` removed and now opened in constructor
67+
* ``SimpleRowWriter`` now implements the ``AutoClosable`` interface, so it can be used in try-with-resources blocks.
68+
* ``PostgreSqlUtils#tryGetPGConnection`` now returns an ``Optional``
69+
* ``BulkProcessor#cancel`` static method removed
70+
71+
### Additional Information ###
72+
73+
* Static Analysis has been added to the project using [Error Prone](https://github.com/google/error-prone)
74+
* Integration Tests are now run on every commit using Github Pipelines and the Postgres image.
75+
* There have been a lot of refactorings internally, so the overall maintainability is improved.
76+
* The project now has a Code Coverage report, so you get a feeling about the test coverage.
77+
* The README now has badges, so it is easier to see the latest stable release.
78+
79+
### Project development ###
80+
81+
* The project has been moved to an organization structure, so it easier to assign rights and collaborate.
82+
83+
## 5.1.0 ##
84+
85+
This release saw additions and refactorings of the JPA module. It now supports a lot more
86+
data types and is easier to configure by using annotations. If you want control over how
87+
the data is written to the database, you can use the ``@PostgresDataType`` annotation,
88+
which overrides the default values.
89+
90+
Here is an example for mapping a ``short`` value to an ``int4`` Postgres data type.
91+
92+
93+
```java
94+
@Entity
95+
@Table(name = "unit_test", schema = "public")
96+
public static class SampleEntity {
97+
98+
// ...
99+
100+
@Column(name = "some_field_name")
101+
@PostgresDataType(columnName = "some_field_name", dataType = DataType.Int4)
102+
private Short shortField;
103+
104+
public Short getShortField() {
105+
return shortField;
106+
}
107+
108+
public void setShortField(Short shortField) {
109+
this.shortField = shortField;
110+
}
111+
}
112+
```
113+
3114
## 5.0.0 ##
4115

5116
A lot of thanks to the great efforts of user [@cheffe](https://github.com/cheffe) in this release!

PgBulkInsert/deployment/deploy_release.bat

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ echo - Bundling Artifacts for OSSRH Repository Upload -
88
echo ---------------------------------------------------
99

1010
:: Define the Executables, so we don't have to rely on pathes:
11-
set MVN_EXECUTABLE="C:\Program Files (x86)\Maven\apache-maven-3.3.9\bin\mvn.cmd"
11+
set MVN_EXECUTABLE="C:\Program Files (x86)\Maven\apache-maven-3.6.3\bin\mvn.cmd"
1212
set GPG_EXECUTABLE="C:\Program Files (x86)\GNU\GnuPG\pub\gpg.exe"
1313

1414
:: GPG Key ID used for signing:

PgBulkInsert/pgbulkinsert-bulkprocessor/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<parent>
99
<groupId>de.bytefish.pgbulkinsert</groupId>
1010
<artifactId>pgbulkinsert-parent</artifactId>
11-
<version>5.1.0</version>
11+
<version>6.0.0</version>
1212
<relativePath>..</relativePath>
1313
</parent>
1414

PgBulkInsert/pgbulkinsert-core/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<parent>
99
<groupId>de.bytefish.pgbulkinsert</groupId>
1010
<artifactId>pgbulkinsert-parent</artifactId>
11-
<version>5.1.0</version>
11+
<version>6.0.0</version>
1212
<relativePath>..</relativePath>
1313
</parent>
1414

PgBulkInsert/pgbulkinsert-jpa/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<parent>
99
<groupId>de.bytefish.pgbulkinsert</groupId>
1010
<artifactId>pgbulkinsert-parent</artifactId>
11-
<version>5.1.0</version>
11+
<version>6.0.0</version>
1212
<relativePath>..</relativePath>
1313
</parent>
1414

PgBulkInsert/pgbulkinsert-rowwriter/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<parent>
99
<groupId>de.bytefish.pgbulkinsert</groupId>
1010
<artifactId>pgbulkinsert-parent</artifactId>
11-
<version>5.1.0</version>
11+
<version>6.0.0</version>
1212
<relativePath>..</relativePath>
1313
</parent>
1414

PgBulkInsert/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<groupId>de.bytefish.pgbulkinsert</groupId>
88
<artifactId>pgbulkinsert-parent</artifactId>
99
<packaging>pom</packaging>
10-
<version>5.1.0</version>
10+
<version>6.0.0</version>
1111
<name>pgbulkinsert</name>
1212
<description>PgBulkInsert is a Java library for Bulk Inserts with PostgreSQL.</description>
1313
<url>http://www.github.com/bytefish/PgBulkInsert</url>

README.md

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,35 @@ You can add the following dependencies to your pom.xml to include [PgBulkInsert]
3030
<dependency>
3131
<groupId>de.bytefish.pgbulkinsert</groupId>
3232
<artifactId>pgbulkinsert-core</artifactId>
33-
<version>5.1.0</version>
33+
<version>6.0.0</version>
3434
</dependency>
3535

3636
<dependency>
3737
<groupId>de.bytefish.pgbulkinsert</groupId>
3838
<artifactId>pgbulkinsert-rowwriter</artifactId>
39-
<version>5.1.0</version>
39+
<version>6.0.0</version>
4040
</dependency>
4141
```
4242

43+
If you are working with Java8 you have to add a ``-jdk8`` to the package names:
44+
45+
46+
```xml
47+
<dependency>
48+
<groupId>de.bytefish.pgbulkinsert</groupId>
49+
<artifactId>pgbulkinsert-core-jdk8</artifactId>
50+
<version>6.0.0</version>
51+
</dependency>
52+
53+
<dependency>
54+
<groupId>de.bytefish.pgbulkinsert</groupId>
55+
<artifactId>pgbulkinsert-rowwriter-jdk8</artifactId>
56+
<version>6.0.0</version>
57+
</dependency>
58+
```
59+
60+
61+
4362
## Supported PostgreSQL Types ##
4463

4564
* [Numeric Types](http://www.postgresql.org/docs/current/static/datatype-numeric.html)
@@ -339,7 +358,7 @@ add it as a dependency to your application:
339358
<dependency>
340359
<groupId>de.bytefish.pgbulkinsert</groupId>
341360
<artifactId>pgbulkinsert-jpa</artifactId>
342-
<version>5.1.0</version>
361+
<version>6.0.0</version>
343362
</dependency>
344363
```
345364

0 commit comments

Comments
 (0)