From ca263a953415cd83562fdd461a6be17259d32dbe Mon Sep 17 00:00:00 2001 From: Dinuka Amarasinghe Date: Mon, 11 Mar 2024 12:16:25 +0530 Subject: [PATCH 1/6] Add a new line in Config.toml file --- ballerina/Ballerina.toml | 4 ++-- ballerina/Dependencies.toml | 2 +- ballerina/tests/Config.toml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ballerina/Ballerina.toml b/ballerina/Ballerina.toml index 3656646..467ad33 100644 --- a/ballerina/Ballerina.toml +++ b/ballerina/Ballerina.toml @@ -20,5 +20,5 @@ path = "../native/build/libs/persist.redis-native-0.1.0-SNAPSHOT.jar" [[platform.java17.dependency]] groupId = "io.ballerina.stdlib" artifactId = "persist-native" -version = "1.2.0" -path = "./lib/persist-native-1.2.0.jar" +version = "1.2.1" +path = "./lib/persist-native-1.2.1-SNAPSHOT.jar" diff --git a/ballerina/Dependencies.toml b/ballerina/Dependencies.toml index 8989628..17dea2a 100644 --- a/ballerina/Dependencies.toml +++ b/ballerina/Dependencies.toml @@ -165,7 +165,7 @@ modules = [ [[package]] org = "ballerinax" name = "redis" -version = "3.0.0" +version = "3.0.1" dependencies = [ {org = "ballerina", name = "crypto"}, {org = "ballerina", name = "jballerina.java"} diff --git a/ballerina/tests/Config.toml b/ballerina/tests/Config.toml index 13c38ff..46c1b3c 100644 --- a/ballerina/tests/Config.toml +++ b/ballerina/tests/Config.toml @@ -1,2 +1,2 @@ [redis] -connection = "redis://localhost:6379" \ No newline at end of file +connection = "redis://localhost:6379" From 5ca557c80a4da8f71144e98df47f2ce61f05c1cd Mon Sep 17 00:00:00 2001 From: Dinuka Amarasinghe Date: Tue, 12 Mar 2024 20:00:16 +0530 Subject: [PATCH 2/6] Add Readme file --- .../workflows/build-with-bal-test-graalvm.yml | 3 - README.md | 97 ++++++++++++++++++- ballerina/tests/Config.toml | 2 +- ballerina/tests/init-test.bal | 7 +- gradle.properties | 4 +- 5 files changed, 99 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build-with-bal-test-graalvm.yml b/.github/workflows/build-with-bal-test-graalvm.yml index 1cf890e..aced9a4 100644 --- a/.github/workflows/build-with-bal-test-graalvm.yml +++ b/.github/workflows/build-with-bal-test-graalvm.yml @@ -36,6 +36,3 @@ jobs: lang_version: ${{ inputs.lang_version }} native_image_options: '-J-Xmx7G ${{ inputs.native_image_options }}' additional_windows_build_flags: '-x test' - steps: - - name: Give execute permission to gradlew - run: chmod +x ./gradlew diff --git a/README.md b/README.md index 4dd053c..e4e049a 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,95 @@ -# module-ballerinax-persist.redis -Redis database support for 'bal persist'. +Ballerina Persist - Redis Library +=================== + +[![Build](https://github.com/ballerina-platform/module-ballerinax-persist.redis/actions/workflows/build-timestamped-master.yml/badge.svg)](https://github.com/ballerina-platform/module-ballerinax-persist.redis/actions/workflows/build-timestamped-master.yml) +[![codecov](https://codecov.io/gh/ballerina-platform/module-ballerinax-persist.redis/branch/main/graph/badge.svg)](https://codecov.io/gh/ballerina-platform/module-ballerinax-persist.redis) +[![Trivy](https://github.com/ballerina-platform/module-ballerinax-persist.redis/actions/workflows/trivy-scan.yml/badge.svg)](https://github.com/ballerina-platform/module-ballerinax-persist.redis/actions/workflows/trivy-scan.yml) +[![GraalVM Check](https://github.com/ballerina-platform/module-ballerinax-persist.redis/actions/workflows/build-with-bal-test-graalvm.yml/badge.svg)](https://github.com/ballerina-platform/module-ballerinax-persist.redis/actions/workflows/build-with-bal-test-graalvm.yml) +[![GitHub Last Commit](https://img.shields.io/github/last-commit/ballerina-platform/module-ballerinax-persist.redis.svg)](https://github.com/ballerina-platform/module-ballerinax-persist.redis/commits/main) +[![GitHub Issues](https://img.shields.io/github/issues/ballerina-platform/ballerina-standard-library/module/persist.redis.svg?label=Open%20Issues)](https://github.com/ballerina-platform/ballerina-standard-library/labels/module%2Fpersist.redis) + +This library provides Redis database support for the `bal persist` feature, which provides functionality to store and query data conveniently through a data model. + +The `persist` command will make it easy to enable `bal persist` feature in a Ballerina project. With this support, users need not worry about the persistence in a project. Users can define an entity data model, validate the model and generate `persist` clients for Redis, which provide convenient APIs to store and query data in a data store. + +## Issues and projects + +Issues and Projects tabs are disabled for this repository as this is part of the Ballerina standard library. To report bugs, request new features, start new discussions, view project boards, etc. please visit Ballerina standard library [parent repository](https://github.com/ballerina-platform/ballerina-standard-library). + +This repository only contains the source code for the package. + +## Building from the source + +### Set up the prerequisites + +1. Download and install Java SE Development Kit (JDK) version 17 (from one of the following locations). + * [Oracle](https://www.oracle.com/java/technologies/downloads/) + * [OpenJDK](https://adoptium.net/) + +2. Download and install [Docker](https://www.docker.com/get-started) + +3. Export your GitHub personal access token with the read package permissions as follows. + + export packageUser= + export packagePAT= + +### Building the source + +Execute the commands below to build from source. + +1. To build the library: + + ./gradlew clean build + +2. To run the integration tests: + + ./gradlew clean test + +3. To build the package without the tests: + + ./gradlew clean build -x test + +4. To run only specific tests: + + ./gradlew clean build -Pgroups= + +5. To disable some specific test groups: + + ./gradlew clean build -Pdisable-groups= + +6. To debug the tests: + + ./gradlew clean build -Pdebug= + ./gradlew clean test -Pdebug= + +7. To debug the package with Ballerina language: + + ./gradlew clean build -PbalJavaDebug= + ./gradlew clean test -PbalJavaDebug= + +8. Publish ZIP artifact to the local `.m2` repository: + + ./gradlew clean build publishToMavenLocal + +9. Publish the generated artifacts to the local Ballerina central repository: + + ./gradlew clean build -PpublishToLocalCentral=true + +10. Publish the generated artifacts to the Ballerina central repository: + + ./gradlew clean build -PpublishToCentral=true + +## Contributing to Ballerina + +As an open source project, Ballerina welcomes contributions from the community. + +For more information, go to the [contribution guidelines](https://github.com/ballerina-platform/ballerina-lang/blob/master/CONTRIBUTING.md). + +## Code of conduct + +All contributors are encouraged to read the [Ballerina code of conduct](https://ballerina.io/code-of-conduct). + +## Useful links + +* Chat live with us via our [Discord server](https://discord.gg/ballerinalang). +* Post all technical questions on Stack Overflow with the [#ballerina](https://stackoverflow.com/questions/tagged/ballerina) tag. \ No newline at end of file diff --git a/ballerina/tests/Config.toml b/ballerina/tests/Config.toml index 46c1b3c..87e6529 100644 --- a/ballerina/tests/Config.toml +++ b/ballerina/tests/Config.toml @@ -1,2 +1,2 @@ [redis] -connection = "redis://localhost:6379" + connection = "redis://localhost:6379" diff --git a/ballerina/tests/init-test.bal b/ballerina/tests/init-test.bal index 0d50db5..e5382c7 100644 --- a/ballerina/tests/init-test.bal +++ b/ballerina/tests/init-test.bal @@ -18,12 +18,7 @@ import ballerina/test; import ballerina/time; import ballerinax/redis; -configurable record {| - redis:ConnectionUri|redis:ConnectionParams connection?; - boolean connectionPooling = false; - boolean isClusterConnection = false; - redis:SecureSocket secureSocket?; -|} & readonly redis = ?; +configurable redis:ConnectionConfig & readonly redis = ?; @test:BeforeSuite function initTests() returns error? { diff --git a/gradle.properties b/gradle.properties index afc8e91..9f35a25 100644 --- a/gradle.properties +++ b/gradle.properties @@ -41,10 +41,10 @@ stdlibOAuth2Version=2.10.0 stdlibHttpVersion=2.10.0 # Level 08 -stdlibRedisVersion=3.0.0 +stdlibRedisVersion=3.0.1 # Level 09 -stdlibPersistVersion=1.2.0 +stdlibPersistVersion=1.2.1-SNAPSHOT # Ballerinax Observer observeVersion=1.2.0 From fa98d5b1921f1839df42f3f2e1fdfb73cf791605 Mon Sep 17 00:00:00 2001 From: Dinuka Amarasinghe Date: Tue, 12 Mar 2024 21:34:38 +0530 Subject: [PATCH 3/6] [Automated] Update native jar versions in toml files --- ballerina/Ballerina.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ballerina/Ballerina.toml b/ballerina/Ballerina.toml index 467ad33..3656646 100644 --- a/ballerina/Ballerina.toml +++ b/ballerina/Ballerina.toml @@ -20,5 +20,5 @@ path = "../native/build/libs/persist.redis-native-0.1.0-SNAPSHOT.jar" [[platform.java17.dependency]] groupId = "io.ballerina.stdlib" artifactId = "persist-native" -version = "1.2.1" -path = "./lib/persist-native-1.2.1-SNAPSHOT.jar" +version = "1.2.0" +path = "./lib/persist-native-1.2.0.jar" From a2cbd263cc729a6c41221df2d04d557bad426cf2 Mon Sep 17 00:00:00 2001 From: Dinuka Amarasinghe Date: Tue, 12 Mar 2024 21:35:41 +0530 Subject: [PATCH 4/6] Change persist native version to v1.2.0 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 9f35a25..335d90c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -44,7 +44,7 @@ stdlibHttpVersion=2.10.0 stdlibRedisVersion=3.0.1 # Level 09 -stdlibPersistVersion=1.2.1-SNAPSHOT +stdlibPersistVersion=1.2.0 # Ballerinax Observer observeVersion=1.2.0 From 6dd660031f73a416e5cd21f8e36bd290e4e249ec Mon Sep 17 00:00:00 2001 From: Dinuka Amarasinghe Date: Wed, 13 Mar 2024 07:51:31 +0530 Subject: [PATCH 5/6] Add spec and code owners --- .github/CODEOWNERS | 7 +++++++ docs/spec/spec.md | 8 +++++++- 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 .github/CODEOWNERS diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..a6cab1b --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,7 @@ +# Lines starting with '#' are comments. +# Each line is a file pattern followed by one or more owners. + +# See: https://help.github.com/articles/about-codeowners/ + +# These owners will be the default owners for everything in the repo. +* @daneshk @niveathika @dinukaamarasinghe817 diff --git a/docs/spec/spec.md b/docs/spec/spec.md index 3d13494..6546961 100644 --- a/docs/spec/spec.md +++ b/docs/spec/spec.md @@ -1 +1,7 @@ -# Specification: Ballerina Persist Library \ No newline at end of file +# Specification: Ballerina Persist Library + +_Owners_: @dinukaamarasinghe817 +_Reviewers_: @daneshk @niveathika +_Created_: +_Updated_: +_Edition_: Swan Lake Update 9 From db86e59a1733f9b405ea11b09844ba69f04eead7 Mon Sep 17 00:00:00 2001 From: Dinuka Amarasinghe Date: Wed, 13 Mar 2024 08:21:50 +0530 Subject: [PATCH 6/6] Update spec to Ballerina extended lib spec --- README.md | 2 +- docs/spec/spec.md | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index e4e049a..94db2f8 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ The `persist` command will make it easy to enable `bal persist` feature in a Bal ## Issues and projects -Issues and Projects tabs are disabled for this repository as this is part of the Ballerina standard library. To report bugs, request new features, start new discussions, view project boards, etc. please visit Ballerina standard library [parent repository](https://github.com/ballerina-platform/ballerina-standard-library). +Issues and Projects tabs are disabled for this repository as this is part of the Ballerina library. To report bugs, request new features, start new discussions, view project boards, etc. please visit Ballerina library [parent repository](https://github.com/ballerina-platform/ballerina-library). This repository only contains the source code for the package. diff --git a/docs/spec/spec.md b/docs/spec/spec.md index 6546961..914ba0b 100644 --- a/docs/spec/spec.md +++ b/docs/spec/spec.md @@ -1,7 +1,7 @@ # Specification: Ballerina Persist Library -_Owners_: @dinukaamarasinghe817 +_Authors_: @dinukaamarasinghe817 _Reviewers_: @daneshk @niveathika -_Created_: -_Updated_: -_Edition_: Swan Lake Update 9 +_Created_: 2024/03/12 +_Updated_: 2024/03/13 +_Edition_: Swan Lake