Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
60df4b3
chore: start 2.0.0-SNAPSHOT
HashEngineering Jun 19, 2025
754dee2
chore: update Cargo.toml and lock files for platform 2.0
HashEngineering Jun 19, 2025
0d7dd1d
chore: use rust 1.85
HashEngineering Jun 19, 2025
df6380f
chore: use ferment v0.2.3
HashEngineering Jun 19, 2025
c518832
fix: updates for platform 2.0
HashEngineering Jun 19, 2025
a4700b6
fix: add more tests for wallet-utils
HashEngineering Jun 19, 2025
cf33156
tests: improve the getTransactionTest
HashEngineering Jun 19, 2025
365d834
feat: add DisplayIdentityKeys.kt example
HashEngineering Jun 19, 2025
527b29a
chore: update Cargo.lock files
HashEngineering Jun 19, 2025
93a7233
fix: remove tests module
HashEngineering Jul 3, 2025
3bcf404
fix: remove tests module
HashEngineering Jul 3, 2025
7f8db0c
fix: use v7 for mainnet, v9 for testnet
HashEngineering Jul 3, 2025
c61a8ef
tests: use latest platform version for put_tests
HashEngineering Jul 3, 2025
895f242
tests: add contract tests
HashEngineering Jul 3, 2025
2805d22
chore: update Cargo.lock
HashEngineering Jul 3, 2025
d941b0b
fix: update setup_api to include version in the sdk builder
HashEngineering Jul 4, 2025
70306b6
chore: update gradle to 8.7
HashEngineering Jul 7, 2025
5c2b471
tests: cleanup tests
HashEngineering Jul 7, 2025
360d89f
feat: use Platform V9 on Mainnet
HashEngineering Jul 25, 2025
b19770d
tests: update data contract tests
HashEngineering Jul 25, 2025
be9d7b5
chore: update mainnet evonode list
HashEngineering Jul 25, 2025
625aa6e
tests: update DatacontractTest
HashEngineering Jul 25, 2025
3dbbbbf
feat: add logs for create/update profiles
HashEngineering Jul 25, 2025
f37a186
chore: add jreleaser config for publishing to MavenCentral
HashEngineering Jul 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 19 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,30 @@ Build the android libraries for the local machine (only works on Mac)
```bash
./gradlew publishToMavenLocal
```
Build the android libraries to publish to Maven Central
Build the android libraries to publish to Maven Central:
1) Verify release & deploy configuration
```bash
./gradlew jreleaserConfig
```
2) Ensure a clean deployment
```bash
./gradlew clean
```
3) Generate all needed code for SWIG and Protobuf
```bash
./gradlew generateSWIG && ./gradlew generateProto
```
4) Stage all artifacts to a local directory
```bash
./gradlew publish
```

5) Deploy and release
```bash
./gradlew jreleaserDeploy
```
### Use in other projects
```groovy
dppVersion = "1.7.5"
dppVersion = "2.0.0-SNAPSHOT"
dependencies {
implementation "org.dashj.platform:dash-sdk-java:$dppVersion"
implementation "org.dashj.platform:dash-sdk-kotlin:$dppVersion" // dpp
Expand Down
6 changes: 4 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
buildscript {
ext.version = '1.7.5'
ext.version = '2.0.0-SNAPSHOT'
ext.kotlin_version = '1.8.22'
ext.dashj_version = '21.1.7'
repositories {
google() // Required for Android library and application projects
mavenCentral()
gradlePluginPortal() // Required for JReleaser plugin
}

dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.android.tools.build:gradle:7.2.2' // Use the latest version
classpath 'com.android.tools.build:gradle:8.1.4' // Use the latest version
classpath "com.google.protobuf:protobuf-gradle-plugin:0.9.4"
classpath 'org.jreleaser:jreleaser-gradle-plugin:1.17.0'
}
}

Expand Down
56 changes: 46 additions & 10 deletions dash-sdk-android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ plugins {
id 'maven-publish'
id 'signing'
}
apply plugin: 'org.jreleaser'

android {
namespace "org.dashj.platform"
Expand Down Expand Up @@ -102,7 +103,7 @@ dependencies {

task sourcesJar(type: Jar) {
from android.sourceSets.main.java.srcDirs
classifier = 'sources'
archiveClassifier.set("sources")
}

assemble.dependsOn(publishToMavenLocal)
Expand All @@ -117,7 +118,7 @@ task javadoc(type: Javadoc) {
}

task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
archiveClassifier.set("javadoc")
from javadoc.destinationDir
}

Expand All @@ -130,12 +131,14 @@ assemble.dependsOn(publishToMavenLocal)
assemble.dependsOn(sourcesJar)

afterEvaluate {
def projectVersion = rootProject.ext.version

publishing {
publications {
release(MavenPublication) {
groupId group
artifactId 'dash-sdk-android'
version project.rootProject.ext.version
version projectVersion
from components.release

pom {
Expand Down Expand Up @@ -166,13 +169,46 @@ afterEvaluate {
}
repositories {
maven {
// change URLs to point to your repos, e.g. http://my.org/repo
def releasesRepoUrl = "https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/"
def snapshotsRepoUrl = "https://s01.oss.sonatype.org/content/repositories/snapshots/"
url = project.rootProject.ext.version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
credentials {
username = project.hasProperty('ossrhUsername') ? project.findProperty('ossrhUsername') : ''
password = project.hasProperty('ossrhPassword') ? project.findProperty('ossrhPassword') : ''
url = layout.buildDirectory.dir('staging-deploy')
}
}
}
jreleaser {
project {
name = 'dash-sdk-android'
description = 'Dash-SDK-Android'
website = 'https://dashj.org'
authors = ['HashEngineering']
license = 'MIT'
gitRootSearch = true
version = projectVersion
}

signing {
active = 'ALWAYS'
armored = true
}

deploy {
maven {
mavenCentral {
sonatype {
active = 'ALWAYS'
url = 'https://central.sonatype.com/api/v1/publisher'
stagingRepository("$buildDir/staging-deploy")
}
}
nexus2 {
app {
active = 'SNAPSHOT'
url = 'https://central.sonatype.com/repository/maven-snapshots/'
snapshotUrl = 'https://central.sonatype.com/repository/maven-snapshots/'
applyMavenCentralRules = false // must be false for aar
snapshotSupported = true
closeRepository = true
releaseRepository = true
stagingRepository("$buildDir/staging-deploy")
}
}
}
}
Expand Down
3 changes: 1 addition & 2 deletions dash-sdk-android/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.dashj.platform.android">
<manifest xmlns:android="http://schemas.android.com/apk/res/android">

</manifest>
Loading