Skip to content
This repository was archived by the owner on Feb 29, 2024. It is now read-only.

Commit 19dee23

Browse files
authored
Merge pull request #2059 from Artemkaaas/indy-1.14.2
IS-1468: Release Indy SDK 1.14.2
2 parents e02532a + 9d22b63 commit 19dee23

File tree

316 files changed

+8218
-4474
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

316 files changed

+8218
-4474
lines changed

CHANGELOG.md

+15
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,20 @@
11
# Changelog
22

3+
## 1.14.2 - 2020-01-31
4+
* LibVCX Aries support:
5+
* Implemented Basic Message RFC (IS-1189)
6+
* Indy-CLI changes:
7+
* Added new command `pool set-protocol-version` to set a protocol version that will be used for ledger requests (IS-1391).
8+
* Added new command `payment-address new` that does exactly the same work as the existing `payment-address create` command.
9+
The new command was added to match the naming of `did new` command. The `payment-address create` command will be removed in future releases (IS-1415).
10+
* Bugfixes
11+
* Updated behavior of `indy_store_their_did` function to allow updating of existing `theirDID` record`. It can be used to rotate a pairwise key (IS-1166).
12+
* Enhanced validation of `schema_json`: added check that `id` is consistent with `name` and `version` values (IS-1430).
13+
* Updated Vcx library to support "names" parameter in Proof Request Revealed Attributes (IS-1381)
14+
* Added support of the additional format of `rev_states_json` which is used for proof creation. Both `rev_reg_def_id` and `credential_id` can be used as map keys.
15+
`credential_id` must be used in case of proving that two credentials matching the same `rev_reg_def_id` are not revoked at the same timestamp (IS-1447).
16+
* others minor bugfixes
17+
318
## 1.14.1 - 2019-12-30
419
* Bugfixes
520

Jenkinsfile.cd

+32-13
Original file line numberDiff line numberDiff line change
@@ -356,8 +356,15 @@ def linuxLibindyBuild(file, env_name, network_name, full_testing) {
356356

357357
libindyBuildFinished[env_name] = true
358358

359-
echo "${env_name} Libindy Test: Test"
360359
testEnv.inside("--network=${network_name}") {
360+
echo "${env_name} Libindy Test: Test Libindy submodules"
361+
362+
for (component in ["libindy/indy-api-types", "libindy/indy-utils", "libindy/indy-wallet"]) {
363+
testLibindyComponent(component)
364+
}
365+
366+
echo "${env_name} Libindy Test: Test"
367+
361368
def features_args = full_testing ? "--features sodium_static" : "--features \"sodium_static only_high_cases\""
362369

363370
sh """
@@ -382,6 +389,14 @@ def linuxLibindyBuild(file, env_name, network_name, full_testing) {
382389
}
383390
}
384391

392+
def testLibindyComponent(directory) {
393+
sh """
394+
cd ${directory}
395+
RUST_BACKTRACE=1 cargo test --release --no-run
396+
RUST_BACKTRACE=1 RUST_LOG=indy::=debug,zmq=trace RUST_TEST_THREADS=1 TEST_POOL_IP=10.0.0.2 cargo test --release
397+
"""
398+
}
399+
385400
def linuxVcxBuild(file, env_name, network_name) {
386401
def poolInst
387402
try {
@@ -900,13 +915,13 @@ def macosTesting() {
900915
}
901916
}
902917

903-
def macosRunPool(pool_name){
918+
def macosRunPool(pool_name) {
904919
sh "docker rm -f ${pool_name} || true"
905920
sh "docker build -f ci/indy-pool.dockerfile -t ${pool_name} ci"
906921
sh "docker run -d --name ${pool_name} -p 9701-9708:9701-9708 ${pool_name}"
907922
}
908923

909-
def macosStopPool(pool_name){
924+
def macosStopPool(pool_name) {
910925
try {
911926
sh "docker stop ${pool_name}"
912927
} catch (ignore) {
@@ -1025,7 +1040,7 @@ def linuxPublishing(file, env_name, build_wrappers) {
10251040
libindyDebPublishing(testEnv, libindyVersion, env_name)
10261041
libnullpayDebPublishing(testEnv, env_name)
10271042
libvcxDebPublishing(testEnv, env_name)
1028-
libindyCliDebPublishing(testEnv, libindyVersion, env_name)
1043+
libindyCliDebPublishing(testEnv, libindyVersion, env_name) // Note that last deb publishing should pass resetCache = true inside
10291044

10301045
if (build_wrappers) {
10311046
pythonWrapperPublishing(testEnv, false, 'wrappers/python', 'libindy')
@@ -1271,7 +1286,7 @@ def libindyCliDebPublishing(testEnv, version, env_name) {
12711286

12721287
setLibindyDependencyVersion("cli/debian/control")
12731288

1274-
debPublishing(testEnv, "cli", "indy-cli", version, "IndyCliBuildResult${env_name}", "libindyCliDebs${env_name}", env_name)
1289+
debPublishing(testEnv, "cli", "indy-cli", version, "IndyCliBuildResult${env_name}", "libindyCliDebs${env_name}", env_name, true)
12751290
}
12761291

12771292
def libnullpayDebPublishing(testEnv, env_name) {
@@ -1301,7 +1316,7 @@ def setLibindyDependencyVersion(file) {
13011316
sh "sed -i -e \"s/^\\(Depends: .*libindy\\)\\(\\s*[,]\\{,1\\}.*\\)/\\1 (= $replaceVersion)\\2/\" $file"
13021317
}
13031318

1304-
def debPublishing(testEnv, directory, packageName, version, inStashName, outStashName, env_name) {
1319+
def debPublishing(testEnv, directory, packageName, version, inStashName, outStashName, env_name, resetCache = false) {
13051320
dir("$directory/sovrin-packaging") {
13061321
downloadPackagingUtils()
13071322
}
@@ -1314,8 +1329,10 @@ def debPublishing(testEnv, directory, packageName, version, inStashName, outStas
13141329

13151330
unstash name: inStashName
13161331

1332+
def extraFlags = resetCache ? "" : "--no-reset-cache"
1333+
13171334
withCredentials([file(credentialsId: 'SovrinRepoSSHKey', variable: 'sovrin_key')]) {
1318-
sh "cd $directory && ./deb-build-and-upload.sh $packageName $version $env.BRANCH_NAME $suffix $SOVRIN_SDK_REPO_NAME $SOVRIN_REPO_HOST $sovrin_key $package_type"
1335+
sh "cd $directory && ./deb-build-and-upload.sh $packageName $version $env.BRANCH_NAME $suffix $SOVRIN_SDK_REPO_NAME $SOVRIN_REPO_HOST $sovrin_key $package_type $extraFlags"
13191336

13201337
if (env.BRANCH_NAME == 'rc') {
13211338
stash includes: "$directory/debs/*", name: outStashName
@@ -1474,7 +1491,7 @@ def publishingRCtoStable() {
14741491
publishLibVCXWindowsFilesRCtoStable(libvcxVersion)
14751492

14761493
echo "Moving ${env_name} RC artifacts to Stable: libvcx"
1477-
publishLibvcxDebRCtoStable(testEnv, env_name)
1494+
publishLibvcxDebRCtoStable(testEnv, env_name) // Note that last deb publishing should pass resetCache = true inside
14781495

14791496
echo 'Moving Ubuntu RC artifacts to Stable: vcx java wrapper'
14801497
vcxJavaWrapperPublishing(testEnv, true)
@@ -1682,10 +1699,10 @@ def publishLibnullpayDebRCtoStable(testEnv, env_name) {
16821699

16831700
def publishLibvcxDebRCtoStable(testEnv, env_name) {
16841701
def libvcxVersion = getSrcVersion("vcx/libvcx")
1685-
publishDebRCtoStable(testEnv, "libvcx", "vcx/libvcx", libvcxVersion, "libvcxDebs", false, env_name)
1702+
publishDebRCtoStable(testEnv, "libvcx", "vcx/libvcx", libvcxVersion, "libvcxDebs", false, env_name, true)
16861703
}
16871704

1688-
def publishDebRCtoStable(testEnv, packageName, folder, version, stashName, moveDevArtifacts, env_name) {
1705+
def publishDebRCtoStable(testEnv, packageName, folder, version, stashName, moveDevArtifacts, env_name, resetCache = false) {
16891706
testEnv.inside {
16901707
def rcFullVersion = "${version}~${env.BUILD_NUMBER}"
16911708
def package_type = ubuntuPakageTypes[env_name]
@@ -1703,15 +1720,17 @@ def publishDebRCtoStable(testEnv, packageName, folder, version, stashName, moveD
17031720
sh "fakeroot deb-reversion -v $version $folder/debs/\"$packageName\"-dev_\"$rcFullVersion\"_amd64.deb"
17041721
}
17051722

1723+
def extraFlags = resetCache ? "" : "--no-reset-cache"
1724+
17061725
withCredentials([file(credentialsId: 'SovrinRepoSSHKey', variable: 'sovrin_key')]) {
17071726
path = sh(returnStdout: true, script: 'pwd').trim()
17081727

1709-
sh "./sovrin-packaging/upload_debs.py $path $SOVRIN_SDK_REPO_NAME stable --distro=${package_type} --host $SOVRIN_REPO_HOST --ssh-key $sovrin_key"
1728+
sh "./sovrin-packaging/upload_debs.py $path $SOVRIN_SDK_REPO_NAME stable --distro=${package_type} --host $SOVRIN_REPO_HOST --ssh-key $sovrin_key $extraFlags"
17101729
}
17111730
}
17121731
}
17131732

1714-
def buildTestEnv(file, env_name, name="libindy", prebuilt_images=[:]) {
1733+
def buildTestEnv(file, env_name, name = "libindy", prebuilt_images = [:]) {
17151734
dir('libindy') {
17161735
echo "${env_name} Build test environment"
17171736
for (entry in mapToList(prebuilt_images)) {
@@ -1840,7 +1859,7 @@ def linuxModuleTesting(file, env_name, network_name, module_tester) {
18401859
linuxModuleTesting(file, env_name, network_name, module_tester, 'ubuntu')
18411860
}
18421861

1843-
def linuxModuleTesting(file, env_name, network_name, module_tester, node_label, image_name="libindy", prebuilt_images = [:]) {
1862+
def linuxModuleTesting(file, env_name, network_name, module_tester, node_label, image_name = "libindy", prebuilt_images = [:]) {
18441863
node(node_label) {
18451864
cleanWs()
18461865
def poolInst

Jenkinsfile.ci

+16-1
Original file line numberDiff line numberDiff line change
@@ -480,8 +480,15 @@ def linuxLibindyBuild(file, env_name, network_name, full_testing) {
480480

481481
libindyBuildFinished[env_name] = true
482482

483-
echo "${env_name} Libindy Test: Test"
484483
testEnv.inside("--network=${network_name}") {
484+
echo "${env_name} Libindy Test: Test Libindy submodules"
485+
486+
for (component in ["libindy/indy-api-types", "libindy/indy-utils", "libindy/indy-wallet"]) {
487+
testLibindyComponent(component)
488+
}
489+
490+
echo "${env_name} Libindy Test: Test"
491+
485492
def features_args = full_testing ? "--features sodium_static" : "--features \"sodium_static only_high_cases\""
486493

487494
sh """
@@ -506,6 +513,14 @@ def linuxLibindyBuild(file, env_name, network_name, full_testing) {
506513
}
507514
}
508515

516+
def testLibindyComponent(directory) {
517+
sh """
518+
cd ${directory}
519+
RUST_BACKTRACE=1 cargo test --no-run
520+
RUST_BACKTRACE=1 RUST_LOG=indy::=debug,zmq=trace RUST_TEST_THREADS=1 TEST_POOL_IP=10.0.0.2 cargo test
521+
"""
522+
}
523+
509524
def linuxVcxBuild(file, env_name, network_name) {
510525
def poolInst
511526
try {

README.md

+3
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ If you have just started learning about self-sovereign identity, here are some r
1616
* This extended tutorial introduces Indy, explains how the whole ecosystem works, and how the
1717
functions in the SDK can be used to construct rich clients: [Indy-SDK Getting-Started Guide](docs/getting-started/indy-walkthrough.md)
1818

19+
* **Please take note** that this tutorial doesn't cover how sides set up a connection and exchange messages.
20+
How this communication channel can be built you can find at [Aries](https://github.com/hyperledger/aries) project which describes it in great details.
21+
1922
* Hyperledger Indy Working Group calls happen every Thursday at 8amPT, 9amMT, 11amET, 4pmBST. Add to your calendar and join from any device: https://zoom.us/j/232861185
2023

2124
* A recent webinar explaining self-sovereign identity using Hyperledger Indy and Sovrin: [SSI Meetup Webinar](https://youtu.be/RllH91rcFdE?t=4m30s)
+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"name": "libindy",
3+
"version": "1.14.2",
4+
"summary": "Summary TODO.",
5+
"description": "Description TODO.",
6+
"homepage": "TODO",
7+
"license": {
8+
"type": "Apache License 2.0",
9+
"file": "LICENSE"
10+
},
11+
"authors": {
12+
"Daniel Hardman": "[email protected]"
13+
},
14+
"platforms": {
15+
"ios": "10.0"
16+
},
17+
"source": {
18+
"http": "https://repo.sovrin.org/ios/libindy/stable/libindy-core/1.14.2/libindy.tar.gz"
19+
},
20+
"source_files": "*.h",
21+
"vendored_libraries": "*.a",
22+
"requires_arc": false
23+
}

ci/acceptance/ubuntu_acceptance.dockerfile

-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ RUN apt-get update && \
1111
apt-get install -y \
1212
software-properties-common
1313

14-
RUN add-apt-repository ppa:jonathonf/python-3.6
1514
RUN apt-get update && \
1615
apt-get install -y \
1716
python3.5 \

ci/deb-build-and-upload.sh

+3-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ set -e
44
set -x
55

66
if [ "$1" = "--help" ] ; then
7-
echo "Usage: <package> <version> <key> <type> <suffix> <repo> <host> <key> <package_type>"
7+
echo "Usage: <package> <version> <key> <type> <suffix> <repo> <host> <key> <package_type> <extra_flags>"
88
return
99
fi
1010

@@ -16,6 +16,7 @@ repo="$5"
1616
host="$6"
1717
key="$7"
1818
package_type="$8"
19+
extra_flags="$9"
1920

2021
[ -z $package ] && exit 1
2122
[ -z $version ] && exit 2
@@ -32,4 +33,4 @@ dpkg-buildpackage -tc
3233

3334
mkdir debs && mv ../*.deb ./debs/
3435

35-
./sovrin-packaging/upload_debs.py ./debs $repo $type --distro=$package_type --host $host --ssh-key $key
36+
./sovrin-packaging/upload_debs.py ./debs $repo $type --distro=$package_type --host $host --ssh-key $key $extra_flags

0 commit comments

Comments
 (0)