From 7c60f06bb7275391c0a47b892c40d47719a8d10a Mon Sep 17 00:00:00 2001 From: Johannes Hiry Date: Wed, 5 Jan 2022 12:03:54 +0100 Subject: [PATCH 01/13] add 'org.apache.commons:commons-lang3:3.12.0' as explicit dependency + update to PSU v1.6 --- build.gradle | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 3c5e9b2a7..619fbcef5 100644 --- a/build.gradle +++ b/build.gradle @@ -50,7 +50,7 @@ repositories { dependencies { // ie³ power system utils - implementation 'com.github.ie3-institute:PowerSystemUtils:1.5.3' + implementation 'com.github.ie3-institute:PowerSystemUtils:1.6' implementation 'tech.units:indriya:2.1.2' @@ -85,6 +85,8 @@ dependencies { implementation 'commons-io:commons-io:2.11.0' // I/O functionalities implementation 'org.apache.commons:commons-compress:1.21' // I/O functionalities + implementation 'org.apache.commons:commons-lang3:3.12.0' + } wrapper { From 22344c5b9663766285a0635bb90019371bd84989 Mon Sep 17 00:00:00 2001 From: Johannes Hiry Date: Wed, 5 Jan 2022 13:09:57 +0100 Subject: [PATCH 02/13] update gradle to 7.3.3 + legacy osmonau dependency --- build.gradle | 6 ++---- gradle/wrapper/gradle-wrapper.properties | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index 619fbcef5..d417a5a3e 100644 --- a/build.gradle +++ b/build.gradle @@ -54,6 +54,8 @@ dependencies { implementation 'tech.units:indriya:2.1.2' + implementation 'com.github.johanneshiry:OSMonaut:v1.1.1' // tmp pbf parse + // JTS Topology Suite for GeoPositions, License: EPL 1.0 / EDL 1.0 implementation 'org.locationtech.jts:jts-core:1.18.2' implementation 'org.locationtech.jts.io:jts-io-common:1.18.2' @@ -89,10 +91,6 @@ dependencies { } -wrapper { - gradleVersion = '6.0.1' -} - tasks.withType(JavaCompile) { options.encoding = 'UTF-8' } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index a029b784d..7711ccd1a 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ #Mon Dec 02 10:39:11 CET 2019 -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStorePath=wrapper/dists From b618e481a2b363f2e128e5e5fe137da6cb591cee Mon Sep 17 00:00:00 2001 From: Johannes Hiry Date: Wed, 5 Jan 2022 13:35:51 +0100 Subject: [PATCH 03/13] exclude junit from org.locationtech.jts:jts-core --- build.gradle | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index d417a5a3e..93f421c9e 100644 --- a/build.gradle +++ b/build.gradle @@ -49,6 +49,12 @@ repositories { } dependencies { + constraints { + implementation( 'junit:junit:4.13.2+'){ + because "CVE-2020-15250 - Temporary folder vulnerability - https://github.com/advisories/GHSA-269g-pwp5-87pp" + } + } + // ie³ power system utils implementation 'com.github.ie3-institute:PowerSystemUtils:1.6' @@ -57,7 +63,10 @@ dependencies { implementation 'com.github.johanneshiry:OSMonaut:v1.1.1' // tmp pbf parse // JTS Topology Suite for GeoPositions, License: EPL 1.0 / EDL 1.0 - implementation 'org.locationtech.jts:jts-core:1.18.2' + implementation ('org.locationtech.jts:jts-core:1.18.2'){ + exclude group: 'junit', module: 'junit' + } + implementation 'org.locationtech.jts.io:jts-io-common:1.18.2' // Graphs From b30be1c377180810e600d21eb36e17a87434f0c0 Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Mon, 30 Jan 2023 12:54:42 +0100 Subject: [PATCH 04/13] Updates and cleanup in build.gradle --- build.gradle | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/build.gradle b/build.gradle index e9c2d189a..d3204b4c9 100644 --- a/build.gradle +++ b/build.gradle @@ -16,7 +16,6 @@ plugins { ext { //version (changing these should be considered thoroughly!) javaVersion = JavaVersion.VERSION_17 - tscfgVersion = '0.9.9' testcontainersVersion = '1.17.6' scriptsLocation = 'gradle' + File.separator + 'scripts' + File.separator //location of script plugins @@ -41,27 +40,19 @@ apply from: scriptsLocation + 'semVer.gradle' repositories { mavenCentral() // searches in Sonatype's repository 'Maven Central' - maven { url 'https://www.jitpack.io' } // allows github repos as dependencies // sonatype snapshot repo - maven { url 'https://oss.sonatype.org/content/repositories/snapshots' } + maven { url 'https://s01.oss.sonatype.org/content/repositories/snapshots' } } dependencies { - constraints { - implementation( 'junit:junit:4.13.2+'){ - because "CVE-2020-15250 - Temporary folder vulnerability - https://github.com/advisories/GHSA-269g-pwp5-87pp" - } - } // ie³ power system utils implementation 'com.github.ie3-institute:PowerSystemUtils:2.0' implementation 'tech.units:indriya:2.1.4' - implementation 'com.github.johanneshiry:OSMonaut:v1.1.1' // tmp pbf parse - // JTS Topology Suite for GeoPositions, License: EPL 1.0 / EDL 1.0 implementation ('org.locationtech.jts:jts-core:1.19.0'){ exclude group: 'junit', module: 'junit' From 9906465e7455d3f25e695b06415577f8795570b5 Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Mon, 30 Jan 2023 12:55:44 +0100 Subject: [PATCH 05/13] Update gradle to 7.6 --- gradle/wrapper/gradle-wrapper.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 7711ccd1a..f1856dff1 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ #Mon Dec 02 10:39:11 CET 2019 -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-bin.zip distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStorePath=wrapper/dists From 4c3d8066cc79be67745dc81ac044ee201dd5c1ab Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Mon, 30 Jan 2023 13:01:55 +0100 Subject: [PATCH 06/13] Adapting to new sonatype url --- docs/readthedocs/gettingstarted.rst | 4 ++-- gradle/scripts/mavenCentralPublish.gradle | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/readthedocs/gettingstarted.rst b/docs/readthedocs/gettingstarted.rst index 389d1b6b1..6115152b9 100644 --- a/docs/readthedocs/gettingstarted.rst +++ b/docs/readthedocs/gettingstarted.rst @@ -30,13 +30,13 @@ On `Maven central `_. +Available on `OSS Sonatype `_. Add the correct repository: .. code-block:: xml - http://oss.sonatype.org/content/repositories/snapshots + https://s01.oss.sonatype.org/content/repositories/snapshots and add the dependency: diff --git a/gradle/scripts/mavenCentralPublish.gradle b/gradle/scripts/mavenCentralPublish.gradle index 15d848e9d..8cbaaf088 100644 --- a/gradle/scripts/mavenCentralPublish.gradle +++ b/gradle/scripts/mavenCentralPublish.gradle @@ -91,8 +91,8 @@ if (project.hasProperty('user') && project.hasProperty('password') && project.ha } repositories { maven { - def releasesRepoUrl = "https://oss.sonatype.org/service/local/staging/deploy/maven2/" - def snapshotsRepoUrl = "https://oss.sonatype.org/content/repositories/snapshots/" + def releasesRepoUrl = "https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/" + def snapshotsRepoUrl = "https://s01.oss.sonatype.org/content/repositories/snapshots/" url = versionString.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl credentials { username project.getProperty('user') From c451f1c5c740a664c4f93be6417315b26302761b Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Mon, 30 Jan 2023 13:07:04 +0100 Subject: [PATCH 07/13] Fixing and updating maven publication pom --- gradle/scripts/mavenCentralPublish.gradle | 35 +++++++---------------- 1 file changed, 11 insertions(+), 24 deletions(-) diff --git a/gradle/scripts/mavenCentralPublish.gradle b/gradle/scripts/mavenCentralPublish.gradle index 8cbaaf088..c1e1fb120 100644 --- a/gradle/scripts/mavenCentralPublish.gradle +++ b/gradle/scripts/mavenCentralPublish.gradle @@ -40,7 +40,7 @@ if (project.hasProperty('user') && project.hasProperty('password') && project.ha url = 'https:github.com/ie3-institute/PowerSystemDatamodel' organization { name = 'Institute of Energy Systems, Energy Efficiency and Energy Economics (ie3)/TU Dortmund University' - url = 'http:www.ie3.tu-dortmund.de/' + url = 'https:www.ie3.tu-dortmund.de/' } issueManagement { system = 'GitHub' @@ -51,31 +51,18 @@ if (project.hasProperty('user') && project.hasProperty('password') && project.ha name = 'BSD 3-Clause License' url = 'https:github.com/ie3-institute/PowerSystemDataModel/blob/master/LICENSE' } - scm { - connection = 'scm:git:git:github.com/ie3-institute/PowerSystemDataModel.git' - developerConnection = 'scm:git:ssh:github.com:ie3-institute/PowerSystemDataModel.git' - url = 'https:github.com/ie3-institute/PowerSystemDataModel' - } - developers { - [ - developer { - id = 'johanneshiry' - name = 'Johannes Hiry' - email = 'johannes.hiry@tu-dortmund.de' - }, - developer { - id = 'ckittl' - name = 'Chris Kittl' - email = 'chris.kittl@tu-dortmund.de' - }, - developer { - id = 'sensarmad' - name = 'Debopama Sen Sarma' - email = 'debopama-sen.sarma@tu-dortmund.de' - } - ] + } + developers { + developer { + organization = "Institute of Energy Systems, Energy Efficiency and Energy Economics (ie3)/TU Dortmund University" + organizationUrl = "https:ie3.etit.tu-dortmund.de" } } + scm { + connection = 'scm:git:git:github.com/ie3-institute/PowerSystemDataModel.git' + developerConnection = 'scm:git:ssh:github.com:ie3-institute/PowerSystemDataModel.git' + url = 'https:github.com/ie3-institute/PowerSystemDataModel' + } } removeTestDependenciesFromPom(pom) From 4a8b9e811cfe815e2fc214c49001c48a6bd4a904 Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Mon, 30 Jan 2023 13:11:31 +0100 Subject: [PATCH 08/13] Release 3.0 in CHANGELOG.md --- CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7c2b77414..f2a7c42af 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased/Snapshot] +## [3.0.0] - 2023-01-30 + ### Added - SQL time series sources (`SqlTimeSeriesSource` and `SqlTimeSeriesMappingSource`) [#467](https://github.com/ie3-institute/PowerSystemDataModel/issues/467) - SQL time series have a different structure than CSV counterparts [#545](https://github.com/ie3-institute/PowerSystemDataModel/issues/545) @@ -190,7 +192,8 @@ coordinates or multiple exactly equal coordinates possible - CsvDataSource now stops trying to get an operator for empty operator uuid field in entities - CsvDataSource now parsing multiple geoJson strings correctly -[Unreleased/Snapshot]: https://github.com/ie3-institute/powersystemdatamodel/compare/2.1.0...HEAD +[Unreleased/Snapshot]: https://github.com/ie3-institute/powersystemdatamodel/compare/3.0.0...HEAD +[3.0.0]: https://github.com/ie3-institute/powersystemdatamodel/compare/2.1.0...3.0.0 [2.1.0]: https://github.com/ie3-institute/powersystemdatamodel/compare/2.0.1...2.1.0 [2.0.1]: https://github.com/ie3-institute/powersystemdatamodel/compare/2.0.0...2.0.1 [2.0.0]: https://github.com/ie3-institute/powersystemdatamodel/compare/1.1.0...2.0.0 From 1e776b0b68b2e254a2f725d937371574bc93018d Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Mon, 30 Jan 2023 13:22:14 +0100 Subject: [PATCH 09/13] Improving security in Jenkinsfile --- Jenkinsfile | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index a675a37f5..30763c7bc 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -145,9 +145,9 @@ node { // get the sonatype credentials stored in the jenkins secure keychain withCredentials([ - usernamePassword(credentialsId: mavenCentralCredentialsId, usernameVariable: 'mavencentral_username', passwordVariable: 'mavencentral_password'), - file(credentialsId: mavenCentralSignKeyFileId, variable: 'mavenCentralKeyFile'), - usernamePassword(credentialsId: mavenCentralSignKeyId, passwordVariable: 'signingPassword', usernameVariable: 'signingKeyId') + usernamePassword(credentialsId: mavenCentralCredentialsId, usernameVariable: 'MAVENCENTRAL_USER', passwordVariable: 'MAVENCENTRAL_PASS'), + file(credentialsId: mavenCentralSignKeyFileId, variable: 'MAVENCENTRAL_KEYFILE'), + usernamePassword(credentialsId: mavenCentralSignKeyId, usernameVariable: 'MAVENCENTRAL_SIGNINGKEYID', passwordVariable: 'MAVENCENTRAL_SIGNINGPASS') ]) { /* @@ -159,17 +159,15 @@ node { returnStdout: true ) - String deployGradleTasks = "--refresh-dependencies test " + - "publish -Puser=${env.mavencentral_username} " + - "-Ppassword=${env.mavencentral_password} " + - "-Psigning.keyId=${env.signingKeyId} " + - "-Psigning.password=${env.signingPassword} " + - "-Psigning.secretKeyRingFile=${env.mavenCentralKeyFile} " + + String deployGradleTasks = '--refresh-dependencies test ' + + 'publish -Puser=${MAVENCENTRAL_USER} ' + + '-Ppassword=${MAVENCENTRAL_PASS} ' + + '-Psigning.keyId=${MAVENCENTRAL_SIGNINGKEYID} ' + + '-Psigning.password=${MAVENCENTRAL_SIGNINGPASS} ' + + '-Psigning.secretKeyRingFile=${MAVENCENTRAL_KEYFILE} ' + "-PdeployVersion='$projectVersion'" - // see https://docs.gradle.org/6.0.1/release-notes.html "Publication of SHA256 and SHA512 checksums" - def preventSHACheckSums = "-Dorg.gradle.internal.publish.checksums.insecure=true" - gradle("${deployGradleTasks} $preventSHACheckSums", projectName) + gradle(deployGradleTasks, projectName) } if (env.BRANCH_NAME == "main") { @@ -376,7 +374,7 @@ def gradle(String command, String relativeProjectDir) { env.JENKINS_NODE_COOKIE = 'dontKillMe' // this is necessary for the Gradle daemon to be kept alive // switch directory to be able to use gradle wrapper - sh(script: """set +x && cd $relativeProjectDir""" + ''' set +x; ./gradlew ''' + """$command""", returnStdout: true) + sh(script: """set +x && cd $relativeProjectDir""" + ''' set +x; ./gradlew ''' + command, returnStdout: true) } def determineSonarqubeGradleCmd(String sonarqubeProjectKey, String currentBranchName, String targetBranchName, String orgName, String projectName, String relativeGitDir) { From 0eaf45665388ad68c5f41386d8f0b036b4edfb0e Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Mon, 30 Jan 2023 13:22:32 +0100 Subject: [PATCH 10/13] Updating sonatype login --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index 30763c7bc..6a229f739 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -27,7 +27,7 @@ String sshCredentialsId = '19f16959-8a0d-4a60-bd1f-5adb4572b702' // id that matc String sonarqubeProjectKey = 'edu.ie3:PowerSystemDataModel' // sonarqube project key, case-sensitive /* maven central configuration */ -String mavenCentralCredentialsId = '87bfb2d4-7613-4816-9fe1-70dfd7e6dec2' // id that matches the maven central credentials set as jenkins property +String mavenCentralCredentialsId = '197ffae7-08b2-4641-aa15-a2351d8011cd' // id that matches the maven central credentials set as jenkins property String mavenCentralSignKeyFileId = 'dc96216c-d20a-48ff-98c0-1c7ba096d08d' // id that matches the maven central sign key file set as jenkins property String mavenCentralSignKeyId = 'a1357827-1516-4fa2-ab8e-72cdea07a692' // id that matches the maven central sign key id set as jenkins property From b0c4622ee6fc4671e6e25a149e8d0195b903ebfc Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Tue, 31 Jan 2023 11:01:58 +0100 Subject: [PATCH 11/13] Added to AUTHORS --- AUTHORS | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/AUTHORS b/AUTHORS index d28ee89a5..4c5ffecc5 100644 --- a/AUTHORS +++ b/AUTHORS @@ -1,4 +1,4 @@ -Copyright (c) 2020, Institute of Energy Systems, Energy Efficiency and Energy Economics (ie3) +Copyright (c) 2023, Institute of Energy Systems, Energy Efficiency and Energy Economics (ie3) All rights reserved. Lead Developers: @@ -17,8 +17,6 @@ Main Contributers: - Vasilios Zachopoulos - https://github.com/baszach - Shubham Bajpai - https://github.com/ahamshubham - Thomas Oberließen - https://github.com/t-ober - -Coordination: - - Chris Kittl - - Johannes Hiry - - Debopama Sen-Sarma \ No newline at end of file + - Marius Staudt - https://github.com/staudtMarius + - Lara Roumeliotis - https://github.com/lararou + - Vicky Bung - https://github.com/vickybung1 From 75f7d8d2baf721f18b0a85476ea42368902cef36 Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Thu, 16 Feb 2023 10:12:54 +0100 Subject: [PATCH 12/13] Adapted changelog to new release date --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dfd11a043..046e514b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased/Snapshot] -## [3.0.0] - 2023-01-30 +## [3.0.0] - 2023-02-16 ### Added - SQL time series sources (`SqlTimeSeriesSource` and `SqlTimeSeriesMappingSource`) [#467](https://github.com/ie3-institute/PowerSystemDataModel/issues/467) From 2967f2c5085d5f0bde201e217b983941bc5682e4 Mon Sep 17 00:00:00 2001 From: Sebastian Peter Date: Thu, 16 Feb 2023 11:04:11 +0100 Subject: [PATCH 13/13] Increase current version to 4.0 --- version.properties | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/version.properties b/version.properties index dcf9d3086..a459c5668 100644 --- a/version.properties +++ b/version.properties @@ -1,8 +1,8 @@ #Generated by the Semver Plugin for Gradle -#Wed Jan 05 11:45:20 CET 2022 +#Thu Feb 16 11:03:37 CET 2023 version.buildmeta= -version.major=3 +version.major=4 version.minor=0 version.patch=0 version.prerelease= -version.semver=3.0.0 +version.semver=4.0.0