From 3f7e96fc0150caf7cc799925980afc6d73bc0cba Mon Sep 17 00:00:00 2001 From: edwin Date: Mon, 5 Aug 2019 18:44:32 +0200 Subject: [PATCH 1/4] Add travis builds --- .gitignore | 1 + .travis.yml | 14 ++++++ build.gradle | 111 ++++++++++++++++++++++++++---------------- buildViaTravis.sh | 23 +++++++++ gradle.properties.enc | 1 + 5 files changed, 109 insertions(+), 41 deletions(-) create mode 100644 .travis.yml create mode 100755 buildViaTravis.sh create mode 100644 gradle.properties.enc diff --git a/.gitignore b/.gitignore index 4f714a0a..adad25d0 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ target/ build/ *.iml/ .idea/ +gradle.properties diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..b0120079 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,14 @@ +jdk: openjdk8 +language: groovy + +branches: + only: + - /.*/ + +before_install: + - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then + openssl aes-256-cbc -K $encrypted_80297b79dae4_key -iv $encrypted_80297b79dae4_iv + -in gradle.properties.enc -out gradle.properties -d; + fi + +script: ./buildViaTravis.sh diff --git a/build.gradle b/build.gradle index a62e819b..d0799c72 100644 --- a/build.gradle +++ b/build.gradle @@ -1,28 +1,67 @@ +buildscript { + repositories { + jcenter() + } + + dependencies { + classpath "org.jetbrains.dokka:dokka-gradle-plugin:0.9.17" + } +} + plugins { - id 'org.jetbrains.kotlin.jvm' version '1.3.31' + // plugin dependencies, load without applying them + id 'nebula.kotlin' version '1.3.41' apply false + id 'com.jfrog.artifactory' version '4.6.2' apply false + + id 'nebula.contacts' version '4.1.1' apply false + id 'nebula.info' version '4.0.2' apply false + id 'nebula.dependency-lock' version '6.1.2' apply false + id 'nebula.facet' version '5.1.2' apply false + id 'nebula.maven-apache-license' version '9.0.2' apply false + + id 'nebula.maven-publish' version '9.0.2' apply false + id 'nebula.release' version '8.0.3' apply false + id 'nebula.nebula-bintray' version '4.0.2' apply false + id 'nebula.source-jar' version '9.0.2' apply false } -allprojects { - group 'org.openrndr.extra' - version '0.0.30' -} -repositories { - mavenLocal() - mavenCentral() -} +//allprojects { +// group 'org.openrndr.extra' +// version '0.0.30' +//} +// +//repositories { +// mavenLocal() +// mavenCentral() +//} -ext { +project.ext { openrndrVersion = "0.3.35-rc1" } -subprojects { +allprojects { + + + apply plugin: 'idea' + apply plugin: 'java' + apply plugin: 'nebula.kotlin' + apply plugin: 'nebula.contacts' + apply plugin: 'nebula.info' + apply plugin: 'nebula.dependency-lock' + apply plugin: 'nebula.facet' + apply plugin: 'nebula.maven-apache-license' + apply plugin: 'nebula.release' + apply plugin: 'nebula.maven-publish' + + // selectively apply only the bintray plugin, snapshots are not published + // nebula-bintray needs to happened after nebula-release since version isn't lazy in the bintray extension + apply plugin: 'nebula.nebula-bintray-publishing' + apply plugin: 'nebula.source-jar' + + group 'org.openrndr.extra' - apply plugin: 'kotlin' - apply plugin: 'maven' - apply plugin: 'maven-publish' repositories { - mavenLocal() mavenCentral() maven { url = "https://dl.bintray.com/openrndr/openrndr" @@ -36,35 +75,25 @@ subprojects { compile group: 'org.jetbrains.kotlinx', name: 'kotlinx-coroutines-core', version: '1.3.0-RC' } - publishing { - publications { - mavenJava(MavenPublication) { - from components.java - artifact sourceJar - } + contacts { + 'edwin@openrndr.org' { + moniker 'Edwin Jakobs' + github 'edwinRNDR' } } - task sourceJar(type: Jar) { - classifier = 'sources' - from sourceSets.main.kotlin + bintray { + pkg { + userOrg = 'openrndr' + repo = 'openrndr' + name = 'orx' + desc = project.description + licenses = ['BSD-2-Clause'] + vcsUrl = 'https://github.com/openrndr/openrndr.git' + websiteUrl = 'https://www.openrndr.org' + issueTrackerUrl = 'https://github.com/openrndr/openrndr/issues' + labels = ['creative-coding', 'realtime-rendering', 'opengl'] + } } - compileKotlin { - kotlinOptions.jvmTarget = "1.8" - } - compileTestKotlin { - kotlinOptions.jvmTarget = "1.8" - } -} - -dependencies { - compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8" -} - -compileKotlin { - kotlinOptions.jvmTarget = "1.8" -} -compileTestKotlin { - kotlinOptions.jvmTarget = "1.8" } \ No newline at end of file diff --git a/buildViaTravis.sh b/buildViaTravis.sh new file mode 100755 index 00000000..d8eef36a --- /dev/null +++ b/buildViaTravis.sh @@ -0,0 +1,23 @@ +#!/bin/bash +# This script will build the project. + +if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then + echo -e "Build Pull Request #$TRAVIS_PULL_REQUEST => Branch [$TRAVIS_BRANCH]" + ./gradlew build +elif [ "$TRAVIS_PULL_REQUEST" == "false" ] && [ "$TRAVIS_TAG" == "" ]; then + echo -e 'Build Branch without Snapshot => Branch ['$TRAVIS_BRANCH']' + ./gradlew -Prelease.travisci=true build --info +elif [ "$TRAVIS_PULL_REQUEST" == "false" ] && [ "$TRAVIS_TAG" != "" ]; then + echo -e 'Build Branch for Release => Branch ['$TRAVIS_BRANCH'] Tag ['$TRAVIS_TAG']' + case "$TRAVIS_TAG" in + *-rc\.*) + ./gradlew -Prelease.travisci=true -Prelease.useLastTag=true candidate --info + ;; + *) + ./gradlew -Prelease.travisci=true -Prelease.useLastTag=true final --info + ;; + esac +else + echo -e 'WARN: Should not be here => Branch ['$TRAVIS_BRANCH'] Tag ['$TRAVIS_TAG'] Pull Request ['$TRAVIS_PULL_REQUEST']' + ./gradlew build +fi diff --git a/gradle.properties.enc b/gradle.properties.enc new file mode 100644 index 00000000..2957676e --- /dev/null +++ b/gradle.properties.enc @@ -0,0 +1 @@ + ghx;B?˛m>!Rl? Date: Mon, 5 Aug 2019 18:47:57 +0200 Subject: [PATCH 2/4] Change execution rights on gradlew --- gradlew | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 gradlew diff --git a/gradlew b/gradlew old mode 100644 new mode 100755 From 1c7f7ae997eff22afec0f8b04b38ee180328380c Mon Sep 17 00:00:00 2001 From: edwin Date: Mon, 5 Aug 2019 18:59:38 +0200 Subject: [PATCH 3/4] Update README --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index b3aa314c..ee88cf8b 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ A growing library of assorted data structures, algorithms and utilities. - [`orx-obj-loader`](orx-obj-loader/README.md), simple Wavefront .obj mesh loader ## Usage -ORX 0.0.24 is built against OPENRNDR 0.3.33-rc2, make sure you use this version in your project. Because OPENRNDR's API is pre 1.0 it tends to change from time to time. +ORX 0.0.30 is built against OPENRNDR 0.3.35-rc1, make sure you use this version in your project. Because OPENRNDR's API is pre 1.0 it tends to change from time to time. The easiest way to add ORX to your project is through the use of Jitpack. [Jitpack](http://jitpack.io) is a service that pulls Gradle based libraries from Github, builds them and serves the jar files. @@ -34,13 +34,13 @@ repositories { You can then add any of the ORX artifacts to your `dependencies {}`: ``` dependencies { - compile 'com.github.openrndr.orx::v0.0.24' + compile 'com.github.openrndr.orx::v0.0.30' } ``` For example if you want to use the `orx-no-clear` artifact one would use: ``` dependencies { - compile 'com.github.openrndr.orx:orx-no-clear:v0.0.24' + compile 'com.github.openrndr.orx:orx-no-clear:v0.0.30' } -``` \ No newline at end of file +``` From 280d40b7e7067b28217938bdf9998969011f8bb4 Mon Sep 17 00:00:00 2001 From: edwin Date: Tue, 6 Aug 2019 17:46:49 +0200 Subject: [PATCH 4/4] Add uniforms overloads --- orx-noise/src/main/kotlin/UniformRandom.kt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/orx-noise/src/main/kotlin/UniformRandom.kt b/orx-noise/src/main/kotlin/UniformRandom.kt index 06ecb6ae..366481fc 100644 --- a/orx-noise/src/main/kotlin/UniformRandom.kt +++ b/orx-noise/src/main/kotlin/UniformRandom.kt @@ -61,6 +61,15 @@ fun Vector3.Companion.uniformRing(innerRadius: Double = 0.0, } } +fun Vector3.Companion.uniforms(count: Int, + min: Double = -1.0, + max: Double = 1.0, + random: Random = Random.Default): List = + List(count) { + Vector3.uniform(min, max, random) + } + + fun Vector3.Companion.uniforms(count: Int, min: Vector3 = -ONE, max: Vector3 = ONE,