diff --git a/CHANGELOG.md b/CHANGELOG.md index 0f6d9b85..e254d0e1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ +## v1.4.4 +Mon 11 Nov 15:57:05 GMT 2019 + +* [5ce56df](https://github.com/hyperledger/fabric-chaincode-java/commit/5ce56df) [FAB-16712](https://jira.hyperledger.org/browse/FAB-16712) Update contributing guide +* [baaaef8](https://github.com/hyperledger/fabric-chaincode-java/commit/baaaef8) [FAB-16315](https://jira.hyperledger.org/browse/FAB-16315) Improved Load Ability +* [c7efeb4](https://github.com/hyperledger/fabric-chaincode-java/commit/c7efeb4) [FAB-16871](https://jira.hyperledger.org/browse/FAB-16871) Deprecate Logger interface +* [a4938e8](https://github.com/hyperledger/fabric-chaincode-java/commit/a4938e8) [FAB-16845](https://jira.hyperledger.org/browse/FAB-16845) Correct Logging +* [f0a1784](https://github.com/hyperledger/fabric-chaincode-java/commit/f0a1784) [FAB-16817](https://jira.hyperledger.org/browse/FAB-16817) manifest classpath +* [f6c007a](https://github.com/hyperledger/fabric-chaincode-java/commit/f6c007a) fabric-chaincode-java update to baseimage 0.4.16 +* [5f6d88d](https://github.com/hyperledger/fabric-chaincode-java/commit/5f6d88d) [FAB-16711](https://jira.hyperledger.org/browse/FAB-16711) azure pipelines +* [388802e](https://github.com/hyperledger/fabric-chaincode-java/commit/388802e) [FAB-16745](https://jira.hyperledger.org/browse/FAB-16745) Remove SDK from integration tests +* [b58f11d](https://github.com/hyperledger/fabric-chaincode-java/commit/b58f11d) [FAB-16680](https://jira.hyperledger.org/browse/FAB-16680) Fix cloudflare error on jitpack.io +* [8cca4bb](https://github.com/hyperledger/fabric-chaincode-java/commit/8cca4bb) [FAB-16315](https://jira.hyperledger.org/browse/FAB-16315) Unrequired lock +* [bd59b34](https://github.com/hyperledger/fabric-chaincode-java/commit/bd59b34) [FAB-16217](https://jira.hyperledger.org/browse/FAB-16217) Do not load JSON Schema schema from network +* [55c29f9](https://github.com/hyperledger/fabric-chaincode-java/commit/55c29f9) [FAB-15895](https://jira.hyperledger.org/browse/FAB-15895) Added client identity to context + ## v1.4.3 Wed 31 Jul 11:20:26 BST 2019 diff --git a/build.gradle b/build.gradle index 730f8d16..3971f509 100644 --- a/build.gradle +++ b/build.gradle @@ -7,7 +7,7 @@ apply plugin: 'idea' apply plugin: 'eclipse-wtp' apply plugin: 'com.dorongold.task-tree' -version = '1.4.4-SNAPSHOT' +version = '1.4.4' buildscript { repositories { maven { diff --git a/ci/azure-pipelines.yml b/ci/azure-pipelines.yml index 91ebe5fc..898a723c 100644 --- a/ci/azure-pipelines.yml +++ b/ci/azure-pipelines.yml @@ -8,10 +8,9 @@ # cf https://crontab.guru/#0_23_*_*_* schedules: - cron: "0 23 * * *" - displayName: 'Chaincode Java Nightly Driver' + displayName: 'Chaincode 1.4 Java Nightly Driver' branches: include: - - master - release-1.4 always: true @@ -21,7 +20,6 @@ trigger: branches: include: - 'master' - - 'release-1.4' tags: include: - '*' @@ -31,8 +29,16 @@ trigger: # this isn't set so command line output is given # variables: - component: fabric-chaincode-node - pipeline: ci + - group: Chaincode_Java_Creds + - group: JARSigningPublish + - name: component + value: fabric-chaincode-java + - name: pipeline + value: ci + - name: NEXUS_REPO_URL + value: nexus3.hyperledger.org:10003 + - name: PUSH_VERSION + value: stable pool: vmImage: 'ubuntu-latest' @@ -45,7 +51,9 @@ stages: jobs: - job: main steps: - - script: env + - script: | + env | sort + java -version - task: Gradle@2 inputs: workingDirectory: '' @@ -60,24 +68,101 @@ stages: - task: PublishCodeCoverageResults@1 inputs: summaryFileLocation: '$(System.DefaultWorkingDirectory)/**/fabric-chaincode-shim/build/reports/jacoco/test/jacocoTestReport.xml' + - task: PublishCodeCoverageResults@1 + inputs: + summaryFileLocation: "$(System.DefaultWorkingDirectory)/**/fabric-chaincode-shim/build/reports/jacoco/test/jacocoTestReport.xml" + # Copy the built artifacts to the staging directory, tgz, and the docker image + - script: | + set -ev + ./gradlew publishToMavenLocal + tar -zcvf localmaven.tgz ${HOME}/.m2/repository/org/hyperledger + docker image save hyperledger/fabric-javaenv | gzip > $(Build.ArtifactStagingDirectory)/fabric-javaenv.tar.gz + displayName: 'Package tgz and docker image' + - task: PublishBuildArtifacts@1 + inputs: + pathToPublish: localmaven.tgz + artifactName: java-tgz + - task: PublishBuildArtifacts@1 + inputs: + pathToPublish: $(Build.ArtifactStagingDirectory)/fabric-javaenv.tar.gz + artifactName: javaenv-docker-image + + + # Publish the snapshot images etc. + # Original source of these is https://github.com/hyperledger/ci-management/blob/master/jjb/fabric-chaincode-java/shell/include-raw-publish-docker-jar.sh + - job: + dependsOn: main + condition: and(succeeded(),eq(variables['Build.Reason'], 'IndividualCI')) + steps: + - task: DownloadPipelineArtifact@2 + inputs: + artifact: java-docker-image + path: $(Build.SourcesDirectory)/build + - script: | + docker image load --input build/fabric-javaenv.tar.gz + docker images + # Publish docker images to nexus repository + docker login ${DOCKER_REGISTRY_URL} --username=${DOCKER_REGISTRY_USERNAME} --password=${DOCKER_REGISTRY_PASSWORD} + echo "Logged in to docker registry" + # tag javaenv image to $PUSH_VERSION + docker tag hyperledger/fabric-javaenv ${DOCKER_REGISTRY_URL}/fabric-javaenv:amd64-${MAPPED_VERSION} + # push javaenv to nexus repository + docker push ${DOCKER_REGISTRY_URL}/fabric-javaenv:amd64-${MAPPED_VERSION} + env: + DOCKER_REGISTRY_USERNAME: $(GITHUB_REGISTRY_USER) + DOCKER_REGISTRY_PASSWORD: $(GITHUB_REGISTRY_PWD_TOKEN) + DOCKER_REGISTRY_URL: docker.pkg.github.com/hyperledger/fabric-chaincode-java + MAPPED_VERSION: $(PUSH_VERSION) + + # As the next script is more complex and uses loops, run this descretely in a sh file + # Publishing step for git tags - stage: Publish_tag condition: and(succeeded(), startsWith(variables['Build.SourceBranch'], 'refs/tags')) jobs: - - job: update_version + - job: publish_release steps: + + - task: DownloadPipelineArtifact@2 + inputs: + artifact: java-docker-image + path: $(Build.SourcesDirectory)/build + - task: DownloadSecureFile@1 + name: keyring + inputs: + secureFile: secring.gpg - script: | env | sort - echo "Update the version number" - echo "Make sure release notes are present" - echo "Make sure change history is present" - - job: npm_publish - steps: - - script: | - echo "Setup .npmrc" - echo "Use pipeline secret to login" - echo "publish" - - job: jsdoc_publish - steps: + + # temporarily use this approach instead of the gittag + VERSION=$(cat build.gradle | sed -n "s/version =.*'\(.*\)\(-SNAPSHOT\)\?'/\1/p" + VERSION=${VERSION// } + echo Version is :${VERSION}: + + + docker image load --input build/fabric-javaenv.tar.gz + docker images + # Publish docker images to nexus repository + docker login ${DOCKER_REGISTRY_URL} --username=${DOCKER_REGISTRY_USERNAME} --password=${DOCKER_REGISTRY_PASSWORD} + echo "Logged in to docker registry" + # tag javaenv image to $PUSH_VERSION + docker tag hyperledger/fabric-javaenv fabric-javaenv:amd64-${VERSION} + # push javaenv to nexus repository + docker push fabric-javaenv:amd64-${VERSION} + env: + DOCKER_REGISTRY_USERNAME: $(DockerHub-Username) + DOCKER_REGISTRY_PASSWORD: $(DockerHub-Password) - script: | - echo "checkout docs branch" - echo "checking" \ No newline at end of file + env | sort + + # temporarily use this approach instead of the gittag + VERSION=$(cat build.gradle | sed -n "s/version =.*'\(.*\)\(-SNAPSHOT\)\?'/\1/p" + VERSION=${VERSION// } + echo Version is :${VERSION}: + + ./gradlew -Psigning.keyId=${SIGNING_ID} -Psigning.password=${SIGNING_PASSWORD} -Psigning.secretKeyRingFile=${KEYRING_FILE} -PossrhUsername=${OSSRH_USER} -PossrhPassword=${OSSRH_PASSWORD} uploadArchives + env: + SIGNING_ID: $(JAR-Signing-Id) + SIGNING_PASSWORD: $(JAR-Signing-Password) + KEYRING_FILE: $(keyring.secureFilePath) + OSSRH_USER: $(OSSRH-User) + OSSRH_PASSWORD: $(OSSRH-Password) \ No newline at end of file diff --git a/fabric-chaincode-example-gradle/build.gradle b/fabric-chaincode-example-gradle/build.gradle index befed338..88acfba1 100644 --- a/fabric-chaincode-example-gradle/build.gradle +++ b/fabric-chaincode-example-gradle/build.gradle @@ -15,7 +15,7 @@ repositories { } dependencies { - compile group: 'org.hyperledger.fabric-chaincode-java', name: 'fabric-chaincode-shim', version: '1.4.4-SNAPSHOT' + compile group: 'org.hyperledger.fabric-chaincode-java', name: 'fabric-chaincode-shim', version: '1.4.4' testCompile group: 'junit', name: 'junit', version: '4.12' } diff --git a/fabric-chaincode-example-maven/pom.xml b/fabric-chaincode-example-maven/pom.xml index 9926719e..d2d9882b 100644 --- a/fabric-chaincode-example-maven/pom.xml +++ b/fabric-chaincode-example-maven/pom.xml @@ -12,7 +12,7 @@ UTF-8 - 1.4.4-SNAPSHOT + 1.4.4 1.0.13 diff --git a/fabric-chaincode-example-sacc/build.gradle b/fabric-chaincode-example-sacc/build.gradle index c9ac43a3..bf3059d9 100644 --- a/fabric-chaincode-example-sacc/build.gradle +++ b/fabric-chaincode-example-sacc/build.gradle @@ -15,7 +15,7 @@ repositories { } dependencies { - compile group: 'org.hyperledger.fabric-chaincode-java', name: 'fabric-chaincode-shim', version: '1.4.4-SNAPSHOT' + compile group: 'org.hyperledger.fabric-chaincode-java', name: 'fabric-chaincode-shim', version: '1.4.4' testCompile group: 'junit', name: 'junit', version: '4.12' } diff --git a/fabric-chaincode-example-sbe/build.gradle b/fabric-chaincode-example-sbe/build.gradle index ac7a4270..c41e5e7d 100644 --- a/fabric-chaincode-example-sbe/build.gradle +++ b/fabric-chaincode-example-sbe/build.gradle @@ -15,7 +15,7 @@ repositories { } dependencies { - compile group: 'org.hyperledger.fabric-chaincode-java', name: 'fabric-chaincode-shim', version: '1.4.4-SNAPSHOT' + compile group: 'org.hyperledger.fabric-chaincode-java', name: 'fabric-chaincode-shim', version: '1.4.4' testCompile group: 'junit', name: 'junit', version: '4.12' } diff --git a/fabric-contract-example/gradle/build.gradle b/fabric-contract-example/gradle/build.gradle index 21087a62..586a1495 100644 --- a/fabric-contract-example/gradle/build.gradle +++ b/fabric-contract-example/gradle/build.gradle @@ -20,7 +20,7 @@ repositories { } dependencies { - compile group: 'org.hyperledger.fabric-chaincode-java', name: 'fabric-chaincode-shim', version: '1.4.4-SNAPSHOT' + compile group: 'org.hyperledger.fabric-chaincode-java', name: 'fabric-chaincode-shim', version: '1.4.4' compile group: 'org.json', name: 'json', version: '20180813' testImplementation 'org.junit.jupiter:junit-jupiter:5.4.2' testImplementation 'org.assertj:assertj-core:3.11.1' diff --git a/fabric-contract-example/maven/pom.xml b/fabric-contract-example/maven/pom.xml index 08cd56d0..ee4b7b3e 100644 --- a/fabric-contract-example/maven/pom.xml +++ b/fabric-contract-example/maven/pom.xml @@ -12,7 +12,7 @@ UTF-8 - 1.4.4-SNAPSHOT + 1.4.4 1.0.13 diff --git a/release_notes/v1.4.4.txt b/release_notes/v1.4.4.txt new file mode 100644 index 00000000..5f38432c --- /dev/null +++ b/release_notes/v1.4.4.txt @@ -0,0 +1,31 @@ +v1.4.4 11 November 2019 +---------------------------- + +Release Notes +------------- + +The Contract Programming model was introduced with v1.4.3; this release has fixes +upong the original version that improvde stability and performance. + +This version should be used in real scenarios. + +For more information on the Contract Programming Model please +see https://hyperledger-fabric.readthedocs.io/en/developapps/developing_applications.html + +baseimage version: 0.4.15 +Java version: openjdk version "1.8.0_181" + +Known Vulnerabilities +--------------------- +none + +Resolved Vulnerabilities +------------------------ +none + +Known Issues & Workarounds +-------------------------- +none +Change Log +---------- +https://github.com/hyperledger/fabric-chaincode-java/blob/release-1.4/CHANGELOG.md#v144 \ No newline at end of file