Giter Site home page Giter Site logo

oasis-learn-study / minecraft-storeys-maker Goto Github PK

View Code? Open in Web Editor NEW
14.0 4.0 10.0 6.5 MB

Minecraft extension to make your own stories in, with and for Minecraft - it's like being a movie director!

Home Page: https://www.learn.study

License: GNU Affero General Public License v3.0

Java 88.67% JavaScript 2.05% TypeScript 6.08% Shell 1.02% Dockerfile 0.28% Gherkin 0.72% HTML 0.57% CSS 0.61%
minecraft minecraft-mod sponge-plugin spongepowered storytelling story stories education educational-game children

minecraft-storeys-maker's Introduction

minecraft-storeys-maker

Minecraft server extension to make your own stories in, with and for Minecraft - it's like being a movie director!

Using Story text files and the /make command with new Scratch Blocks for Visual Programming.

Minecraft Stories Maker

Please do Star & Watch this GitHub project if you like this Minecraft server plugin!

minecraft-storeys-maker's People

Contributors

dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar edewit avatar teneresa avatar vorburger avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

minecraft-storeys-maker's Issues

Multi user broken

When we have a working Command /demo: title: Welcome from 1 user and then log in with a 2nd user, then the 1st user can't do /demo anymore (NotLoggedInException: null) and the 2nd user cannot create new scripts either.

@edewit FYI

Chat "dialogues"

We should let children create "Dialogue Trees" for "nonlinear gameplay" of stories.

Let's start with the simplest possible approach... perhaps just a new Dialog (?) block which prints text into the chat with a special escape character for clickable action links - think: "Do you want to go to the [Castle] or the [Forrest]?"

A new (Dialog) Answer Variable Block, similar to Scratch's built-in one for the Prompt thing, would have the value "Castle" or "Forrest". (But I need to think through, or just try out, the concurrency implication... the simplest for users would probably be if the Dialog block blocked until a response a chosen?)

Scratch Extension Ready Status to turn red when connection is lost or other errors are reported from server

That Scratch Extension Status is currently always green = Ready.

It would be neat if it turned red if the Vert.x EventBus lost connectivity, OR if the user logs out of Minecraft and thus gets lost because the token is invalid. Ideally, that bulb should show some extra textual information about either condition - and other errors in the future. That would also be a good place to show something like "command already taken: /demo" etc.

Utopian.io / SteemIt.com / Steem.io, codetriage.com

I just stumbled upon https://steemit.com/utopian-io/@teneresa/new-logo-for-the-oasis-minecraft-storeys-maker-77164bb60661f and had a quick look at https://join.utopian.io and https://steemit.com, based on https://steem.io - wondering if posting tasks could make any sense for us in this project, later.

There seems to be a lot of Minecraft related stuff on Steemit.com.

@teneresa do you have any experience to share - does this work well for you?

@edewit @sebastienblanc have you ever heard of these?

Introduce api-utils.ts (?) for thing useful from all JS clients (e.g. both scratch/ as well as scratch3/)

@edewit we should do what I stumbled upon here in a more re-usable way - you may have an idea:

minecraft.showTitle(code, sendTitle, (err: any, result: any) => {
  if (err) {
    console.log("sendTitle reply with error: ", err);
  } else {
    callback();
  }

This isn't just because I'm anal about error handling, but actually let me finally discover what was wrong and why the new Vert.x RPC was not quite working yet (there was a problem on the server side, but it not get logged, at INFO, on the server, but this err object contained an actually surprisingly clear and helpful error message from Vert.x - so we should be showing this by logging it on the Browser client console.

So I'm thinking we could introduce a api-utils.ts (?) in api/src for things that are useful from all JS clients - e.g. both scratch/ as well as scratch3 and future direct TS/JS mods.

Actually for possible future direct TS/JS mods which possibly don't run in the browser (and for #51), a console.log is probably not what we want... I'm actually not yet sure how we will want to handle errors in that environment, but however we will, it's probably a good idea to have a central place to do it in a uniform way.

Test using Vert.x JUnit

scratch3/ build not working in local S2I due to Error: Cannot find module './index.js'

@edewit while trying to reproduce #70 with a local s2i (just documented how-to), after getting past #71, I've hit this problem, which curiously does not appear during the S2I build on OpenShift Online, just local, can't quite explain why:

git reset --hard; git clean -d -f -x
s2i build --copy . s2i-minecraft-server minecraft-storeys-maker
...

> Task :scratch:install
> Task :scratch:compileJava NO-SOURCE
> Task :scratch:processResources NO-SOURCE
> Task :scratch:classes UP-TO-DATE
> Task :scratch:jar
> Task :scratch:assemble
> Task :scratch:licenseMain NO-SOURCE
> Task :scratch:licenseTest NO-SOURCE
> Task :scratch:license UP-TO-DATE
> Task :scratch:check
> Task :scratch:build
> Task :scratch3:compileJava NO-SOURCE
> Task :scratch3:processResources NO-SOURCE
> Task :scratch3:classes UP-TO-DATE
> Task :scratch3:jar
> Task :scratch3:nodeSetup

> Task :scratch3:npmSetup
/tmp/src/scratch3/.gradle/npm/npm-v6.0.1/bin/npx -> /tmp/src/scratch3/.gradle/npm/npm-v6.0.1/lib/node_modules/npm/bin/npx-cli.js
/tmp/src/scratch3/.gradle/npm/npm-v6.0.1/bin/npm -> /tmp/src/scratch3/.gradle/npm/npm-v6.0.1/lib/node_modules/npm/bin/npm-cli.js
+ [email protected]
added 682 packages in 7.795s

> Task :scratch3:npmDoInstall0
npm WARN prepublish-on-install As of npm@5, `prepublish` scripts are deprecated.
npm WARN prepublish-on-install Use `prepare` for build steps and `prepublishOnly` for upload-only.
npm WARN prepublish-on-install See the deprecation note in `npm help scripts` for more information.

> [email protected] prepublish /tmp/src/scratch3/build/scratch-vm
> in-publish && npm run build || not-in-publish

module.js:549
throw err;
^

Error: Cannot find module './index.js'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/tmp/src/scratch3/build/scratch-vm/node_modules/.bin/in-publish:3:17)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
module.js:549
throw err;
^

Error: Cannot find module './index.js'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/tmp/src/scratch3/build/scratch-vm/node_modules/.bin/not-in-publish:3:17)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] prepublish: `in-publish && npm run build || not-in-publish`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] prepublish script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /opt/jboss/.npm/_logs/2018-05-27T13_51_57_284Z-debug.log

> Task :scratch3:npmDoInstall0 FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':scratch3:npmDoInstall0'.
> Process 'command '/tmp/src/scratch3/.gradle/npm/npm-v6.0.1/bin/npm'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
See https://docs.gradle.org/4.7/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 2m 16s
14 actionable tasks: 13 executed, 1 up-to-date
Aborting due to error code 1 for Gradle build
Build failed
ERROR: An error occurred: non-zero (13) exit code from s2i-minecraft-server

Scratch / (slash) command block should support target selector variables, including a new @c

If one currently uses our / [command] block with a Target selector variable, e.g. to /give @p apple, that fails with "Player @p cannot be found", same as when you directly execute this from the Console.

This is because Sponge's CommandManager.process() which we use in our class CommandAction ignores target selectors. Apparently we need to explicitly handle "target selector expansion" in our plugin code. This does't seem to be too hard, looking e.g. at this or this LuckPerms/LuckPerms@a5746df using Sponge's Selector API.

While I'm at it, we should add a special (non-vanilla) @c cause target selector as well.

java-client-demo

As the new Vert.x api/ progresses (#53) and once #41 is resolved, then I would like to build a java-client-demo - a simple Java main() which remote connects to a Minecraft server, via Vert.x, and runs actions from our Minecraft API such as showTitle (so NOT as an in-process plugin).

I'm not clear yet how this remote API would expose events, such as when Player joins...

This could also be handy to build a kind of test suite for manual testing - I imagine something like:

showing title in Minecraft in a loop, are you seeing it? [Y/N]
running Minecraft command /time set day|night in a loop, are you seeing it? [Y/N]
making entity named 'Piggy' say "oink, oink", are you seeing it? [Y/N]
please open chat and run /test command
please hold an Apple
please right click something
waiting for event player join, and checking last player joined, please disconnect and reconnect

@edewit FYI

JS Release Process?

as discussed in https://github.com/vorburger/minecraft-storeys-maker/pull/4, with the change from the original minecraft.js to a src/index.ts which we build into JS, we'll have to "release" both that JS as well as the matching version of the web-1.0.0-SNAPSHOT-all.jar together somewhere... for me, this is not a high prio while we're still in dev, but let's have this issue to create the neccessary scripting and documentation, when we get to it. I'm personally more interested in a CI/CD to get it all together cloud hosted... ;-)

When [Entity] right-clicked needs to cancel default action

If I use a "When [My Horse] right clicked" hat block, then I want that to do whatever I want, INSTEAD of the default action (which in case of a Horse is ride it - whereas say Cows do nothing on right click).

Sponge API permits to cancel event propagation, I think - try it.

sh: cross-env: command not found

@edewit while trying to reproduce #70 with a local s2i I've hit this, in scratch/ not even in scratch3/ :

> Task :scratch:copyIcon
Download https://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.gz
> Task :scratch:nodeSetup

> Task :scratch:npmSetup
/tmp/src/scratch/.gradle/npm/npm-v6.0.1/bin/npx -> /tmp/src/scratch/.gradle/npm/npm-v6.0.1/lib/node_modules/npm/bin/npx-cli.js
/tmp/src/scratch/.gradle/npm/npm-v6.0.1/bin/npm -> /tmp/src/scratch/.gradle/npm/npm-v6.0.1/lib/node_modules/npm/bin/npm-cli.js
+ [email protected]
added 682 packages in 9.723s

> Task :scratch:npm_install UP-TO-DATE

> Task :scratch:npmBuildProd FAILED

> [email protected] build:prod /tmp/src/scratch
> cross-env NODE_ENV=production webpack --config ./webpack.config.js  --progress --profile --color --display-error-details --display-cached --bail

sh: cross-env: command not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! [email protected] build:prod: `cross-env NODE_ENV=production webpack --config ./webpack.config.js  --progress --profile --color --display-error-details --display-cached --bail`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the [email protected] build:prod script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm WARN Local package.json exists, but node_modules missing, did you mean to install?

npm ERR! A complete log of this run can be found in:
npm ERR!     /opt/jboss/.npm/_logs/2018-05-27T11_02_50_485Z-debug.log

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':scratch:npmBuildProd'.
> Process 'command '/tmp/src/scratch/.gradle/npm/npm-v6.0.1/bin/npm'' finished with non-zero exit value 1

wondering if this could be an impact of #60 ?

Logo design proposal

Dear Sir/Madam,
hi, my name is Valeria. I'm a graphic designer and I'd like to collaborate on your open source project and to propose free logo design. If it's something you're interested in, please, let me know!
Best,
Valeria

Gradle build is no longer properly incremental, and now always executes 17s npm_install

since https://github.com/vorburger/minecraft-storeys-maker/pull/4, the Gradle build is no longer incremental:

./gradlew build
BUILD SUCCESSFUL in 17s
22 actionable tasks: 3 executed, 19 up-to-date

./gradlew build
BUILD SUCCESSFUL in 17s
22 actionable tasks: 3 executed, 19 up-to-date

The second build should be <1s and execute 0 tasks (the 3 executed include the npm_install).

Perhaps that com.moowork.node NpmTask can somehow be made smarter and incremental?

@edewit more FYI, not neccessarily asking FYA... I have an interest in learning 💯 more about Gradle!

New Block RFE: When right clicked (not entity)

@devvorb has pointed out that it would be really useful to have a "When right click" hat block, without entity.

We don't need an entire need block for this - let's have this as an option in the current "When (Player Joins)" first block.

ClassCastException: java.lang.Integer cannot be cast to java.lang.CharSequence

While testing #35, I got below when creating a When Player Joins: title: last joined Player :

[19:33:16 ERROR] [io.vertx.core.eventbus.impl.HandlerRegistration]: Failed to handleMessage. address: mcs.actions
--
  | java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.CharSequence
  | at io.vertx.core.json.JsonObject.getString(JsonObject.java:117) ~[JsonObject.class:?]
  | at ch.vorburger.minecraft.storeys.web.ActionsConsumer.handle(ActionsConsumer.java:113) ~[ActionsConsumer.class:?]
  | at ch.vorburger.minecraft.storeys.web.ActionsConsumer.handle(ActionsConsumer.java:62) ~[ActionsConsumer.class:?]
  | at io.vertx.core.eventbus.impl.HandlerRegistration.deliver(HandlerRegistration.java:212) ~[HandlerRegistration.class:?]
  | at io.vertx.core.eventbus.impl.HandlerRegistration.handle(HandlerRegistration.java:189) ~[HandlerRegistration.class:?]
  | at io.vertx.core.eventbus.impl.EventBusImpl.lambda$deliverToHandler$3(EventBusImpl.java:538) ~[EventBusImpl.class:?]
  | at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:344) ~[ContextImpl.class:?]
  | at ch.vorburger.relocated.io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [AbstractEventExecutor.class:?]
  | at ch.vorburger.relocated.io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:403) [SingleThreadEventExecutor.class:?]
  | at ch.vorburger.relocated.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463) [NioEventLoop.class:?]
  | at ch.vorburger.relocated.io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [SingleThreadEventExecutor$5.class:?]
  | at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
  | [19:33:16 ERROR] [io.vertx.core.impl.ContextImpl]: Unhandled exception
  | java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.CharSequence
  | at io.vertx.core.json.JsonObject.getString(JsonObject.java:117) ~[JsonObject.class:?]
  | at ch.vorburger.minecraft.storeys.web.ActionsConsumer.handle(ActionsConsumer.java:113) ~[ActionsConsumer.class:?]
  | at ch.vorburger.minecraft.storeys.web.ActionsConsumer.handle(ActionsConsumer.java:62) ~[ActionsConsumer.class:?]
  | at io.vertx.core.eventbus.impl.HandlerRegistration.deliver(HandlerRegistration.java:212) ~[HandlerRegistration.class:?]
  | at io.vertx.core.eventbus.impl.HandlerRegistration.handle(HandlerRegistration.java:189) ~[HandlerRegistration.class:?]
  | at io.vertx.core.eventbus.impl.EventBusImpl.lambda$deliverToHandler$3(EventBusImpl.java:538) ~[EventBusImpl.class:?]
  | at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:344) ~[ContextImpl.class:?]
  | at ch.vorburger.relocated.io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163) [AbstractEventExecutor.class:?]
  | at ch.vorburger.relocated.io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:403) [SingleThreadEventExecutor.class:?]
  | at ch.vorburger.relocated.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463) [NioEventLoop.class:?]
  | at ch.vorburger.relocated.io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [SingleThreadEventExecutor$5.class:?]
  | at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]

@edewit FYI

DEV: Get TS sources working in production by packing source map

Adding this to the scratch/build.gradle:

jar {
  into 'static', {
    from('dist') {
      include 'minecraft.scratchx.*' // * for both .js and .map for debugging
      include 'favicon.ico'
    }
    from ('src') {
      include 'index.ts' // for debugging
    }
  }
}

does not seem to be enough to get TS sources working in production by packing source map...

@edewit perhaps you know what I am missing and how this would have to be done right?

Slash command doesn't always work?

While testing #35, I've noticed that the Slash command (not Command Hat!) doesn't always work...

Command /night
/time set night
Title: It's night...

and

Command /day
/time set day
Title: It's day...

Used to work, and then stopped working... as in /day & night would still show title, server log still show below - but no "effect", day/night did not change.... hm. I'll add some logging to CommandAction to see if we can better understand it (FYI @edewit).

[20:09:15 INFO] [ch.vorburger.minecraft.storeys.web.MinecraftVerticle]: Sent to EventBus: {"event":"newCmdday"}
--
  | [20:09:15 INFO] [ch.vorburger.minecraft.storeys.web.ActionsConsumer]: Handling message received on EventBus: {
  | "action" : "command",
  | "command" : "time set day",
  | "code" :

I doubt this is multi-user (#35) related, but seems to be some ... Sponge / MC issue?

Potential security vulnerabilities in dependencies

"Some of the dependencies defined in scratch/package-lock.json and api/package-lock.json have known security vulnerabilities and should be updated."

scratch/package-lock.json 2 vulnerabilities found
api/package-lock.json 1 vulnerability found

Dependencies defined in api/package-lock.json 558 unshiftio / url-parse Known vulnerability found https://nvd.nist.gov/vuln/detail/CVE-2018-3774 Incorrect parsing in url-parse <1.4.3 returns wrong hostname which leads to multiple vulnerabilities such as SSRF, Op... package-lock.json update suggested: url-parse ~> 1.4.3

Dito also in scratch/package-lock.json

And separately a 3rd one get / parsejson https://nvd.nist.gov/vuln/detail/CVE-2017-16113

@edewit can you help with this? 😄

Show Title could use a (slightly refactored?) Narrator to chop long titles

The /narrate uses Narrator which chops long text into pieces that are easy to read.

The "show Title" just shows the entire String, which for long titles is ugly and unreadable.

In an ideal world, titles should use the same mechanism to split up like narrations.

The alternative / work around is to instead just use several title blocks in Scratch already.

package-lock.json ?

@edewit so now when I build I always get this package-lock.json file "dirtying" git:

$ git status
On branch order_tests
Your branch is up-to-date with 'origin/order_tests'.
Untracked files:
  (use "git add <file>..." to include in what will be committed)

	scratch/package-lock.json

So should package-lock.json be on .gitignore? Or checked in?! I didn't understand that.

Client side escaping bug prevents using any advanced commands with escaped JSON

If one currently uses our / [command] block with anything non-trivial, e.g. like this (BTW note the use of a fixed user name instead of @p due to #91):

give michaelpapa7 written_book 1 0 {pages:["{\"text\":\"Hello\"}"],title:"First Quest",author:"https://www.learn.study",display:{Lore:["The first quest is your first test..."]}} 

this does not work. There is nothing on the server log, but the Browser's Console has this:

Uncaught SyntaxError: Invalid or unexpected token

so looks like we're screwing up / missing some escaping of the JSON-like Minecraft "data" String at some stage? We probably should be correctly escaping anything end-users put into the white spaces in Scratch blocks before we send the through Vert.x into our back-end.

@edewit FYI and perhaps this is something you would like to have a go at, some time.

Build in Container fails with Error: Cannot find module '../lib/utils/unsupported.js'

When building this project (as of dc9b703) in a container (S2I), then it fails:

Starting S2I Java Build .....
S2I source build for Gradle detected, due to presence of a *.gradle* in /tmp/src
TODO ;) set up possibly HTTP proxy server for Gradle build (not yet implemented)...
Using GRADLE_OPTS '-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MinHeapFreeRatio=20 -XX:MaxHeapFreeRatio=40 -XX:+ExitOnOutOfMemoryError'
Running './gradlew build -x test '
Downloading https://services.gradle.org/distributions/gradle-4.6-bin.zip
......................................................................
Unzipping /opt/jboss/.gradle/wrapper/dists/gradle-4.6-bin/4jp4stjndanmxuerzfseyb6wo/gradle-4.6-bin.zip to /opt/jboss/.gradle/wrapper/dists/gradle-4.6-bin/4jp4stjndanmxuerzfseyb6wo
Set executable permissions for: /opt/jboss/.gradle/wrapper/dists/gradle-4.6-bin/4jp4stjndanmxuerzfseyb6wo/gradle-4.6/bin/gradle
Starting a Gradle Daemon (subsequent builds will be faster)
Download https://plugins.gradle.org/m2/com/github/hierynomus/license/com.github.hierynomus.license.gradle.plugin/0.14.0/com.github.hierynomus.license.gradle.plugin-0.14.0.pom
Download https://plugins.gradle.org/m2/net/ltgt/errorprone/net.ltgt.errorprone.gradle.plugin/0.0.13/net.ltgt.errorprone.gradle.plugin-0.0.13.pom
Download https://plugins.gradle.org/m2/biz/aQute/bnd/biz.aQute.bnd.gradle/3.5.0/biz.aQute.bnd.gradle-3.5.0.pom
Download https://plugins.gradle.org/m2/gradle/plugin/nl/javadude/gradle/plugins/license-gradle-plugin/0.14.0/license-gradle-plugin-0.14.0.pom
Download https://plugins.gradle.org/m2/net/ltgt/gradle/gradle-errorprone-plugin/0.0.13/gradle-errorprone-plugin-0.0.13.pom
Download https://plugins.gradle.org/m2/com/mycila/license-maven-plugin/3.0/license-maven-plugin-3.0.pom
Download https://plugins.gradle.org/m2/com/mycila/xmltool/xmltool/3.3/xmltool-3.3.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-utils/2.0.5/plexus-utils-2.0.5.pom
Download https://plugins.gradle.org/m2/com/mycila/license-maven-plugin-parent/3.0/license-maven-plugin-parent-3.0.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus/2.0.6/plexus-2.0.6.pom
Download https://plugins.gradle.org/m2/com/mycila/mycila-pom/3/mycila-pom-3.pom
Download https://plugins.gradle.org/m2/org/springframework/spring-core/3.1.3.RELEASE/spring-core-3.1.3.RELEASE.pom
Download https://plugins.gradle.org/m2/org/apache/maven/maven-settings-builder/3.0.4/maven-settings-builder-3.0.4.pom
Download https://plugins.gradle.org/m2/org/apache/maven/maven-settings/3.0.4/maven-settings-3.0.4.pom
Download https://plugins.gradle.org/m2/com/mycila/mycila-xmltool/4.4.ga/mycila-xmltool-4.4.ga.pom
Download https://plugins.gradle.org/m2/org/springframework/spring-parent/3.1.3.RELEASE/spring-parent-3.1.3.RELEASE.pom
Download https://plugins.gradle.org/m2/org/apache/maven/maven/3.0.4/maven-3.0.4.pom
Download https://plugins.gradle.org/m2/org/apache/maven/maven-parent/21/maven-parent-21.pom
Download https://plugins.gradle.org/m2/org/apache/apache/10/apache-10.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.pom
Download https://plugins.gradle.org/m2/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-components/1.1.18/plexus-components-1.1.18.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-containers/1.5.5/plexus-containers-1.5.5.pom
Download https://plugins.gradle.org/m2/org/sonatype/spice/spice-parent/12/spice-parent-12.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus/2.0.7/plexus-2.0.7.pom
Download https://plugins.gradle.org/m2/org/sonatype/forge/forge-parent/4/forge-parent-4.pom
Download https://plugins.gradle.org/m2/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.pom
Download https://plugins.gradle.org/m2/org/springframework/spring-asm/3.1.3.RELEASE/spring-asm-3.1.3.RELEASE.pom
Download https://plugins.gradle.org/m2/org/apache/commons/commons-parent/5/commons-parent-5.pom
Download https://plugins.gradle.org/m2/org/apache/apache/4/apache-4.pom
Download https://plugins.gradle.org/m2/org/apache/commons/commons-pool2/2.2/commons-pool2-2.2.pom
Download https://plugins.gradle.org/m2/org/apache/commons/commons-parent/33/commons-parent-33.pom
Download https://plugins.gradle.org/m2/org/apache/apache/13/apache-13.pom
Download https://plugins.gradle.org/m2/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-utils/2.0.6/plexus-utils-2.0.6.pom
Download https://plugins.gradle.org/m2/gradle/plugin/nl/javadude/gradle/plugins/license-gradle-plugin/0.14.0/license-gradle-plugin-0.14.0.jar
Download https://plugins.gradle.org/m2/com/mycila/license-maven-plugin/3.0/license-maven-plugin-3.0.jar
Download https://plugins.gradle.org/m2/net/ltgt/gradle/gradle-errorprone-plugin/0.0.13/gradle-errorprone-plugin-0.0.13.jar
Download https://plugins.gradle.org/m2/org/apache/maven/maven-settings/3.0.4/maven-settings-3.0.4.jar
Download https://plugins.gradle.org/m2/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
Download https://plugins.gradle.org/m2/biz/aQute/bnd/biz.aQute.bnd.gradle/3.5.0/biz.aQute.bnd.gradle-3.5.0.jar
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-utils/2.0.6/plexus-utils-2.0.6.jar
Download https://plugins.gradle.org/m2/com/mycila/xmltool/xmltool/3.3/xmltool-3.3.jar
Download https://plugins.gradle.org/m2/org/springframework/spring-core/3.1.3.RELEASE/spring-core-3.1.3.RELEASE.jar
Download https://plugins.gradle.org/m2/com/mycila/mycila-xmltool/4.4.ga/mycila-xmltool-4.4.ga.jar
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar
Download https://plugins.gradle.org/m2/org/springframework/spring-asm/3.1.3.RELEASE/spring-asm-3.1.3.RELEASE.jar
Download https://plugins.gradle.org/m2/commons-logging/commons-logging/1.1.1/commons-logging-1.1.1.jar
Download https://plugins.gradle.org/m2/org/apache/commons/commons-pool2/2.2/commons-pool2-2.2.jar
Download https://plugins.gradle.org/m2/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
Download https://plugins.gradle.org/m2/org/apache/maven/maven-settings-builder/3.0.4/maven-settings-builder-3.0.4.jar
Download https://plugins.gradle.org/m2/com/moowork/node/com.moowork.node.gradle.plugin/1.2.0/com.moowork.node.gradle.plugin-1.2.0.pom
Download https://plugins.gradle.org/m2/com/moowork/gradle/gradle-node-plugin/1.2.0/gradle-node-plugin-1.2.0.pom
Download https://plugins.gradle.org/m2/com/moowork/gradle/gradle-node-plugin/1.2.0/gradle-node-plugin-1.2.0.jar
Download https://plugins.gradle.org/m2/com/github/johnrengelman/shadow/com.github.johnrengelman.shadow.gradle.plugin/2.0.2/com.github.johnrengelman.shadow.gradle.plugin-2.0.2.pom
Download https://plugins.gradle.org/m2/com/github/jengelman/gradle/plugins/shadow/2.0.2/shadow-2.0.2.pom
Download https://plugins.gradle.org/m2/org/ow2/asm/asm-commons/6.0/asm-commons-6.0.pom
Download https://plugins.gradle.org/m2/org/ow2/asm/asm/6.0/asm-6.0.pom
Download https://plugins.gradle.org/m2/commons-io/commons-io/2.5/commons-io-2.5.pom
Download https://plugins.gradle.org/m2/org/jdom/jdom2/2.0.6/jdom2-2.0.6.pom
Download https://plugins.gradle.org/m2/org/apache/commons/commons-parent/39/commons-parent-39.pom
Download https://plugins.gradle.org/m2/org/ow2/asm/asm-parent/6.0/asm-parent-6.0.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-utils/3.0.24/plexus-utils-3.0.24.pom
Download https://plugins.gradle.org/m2/org/ow2/ow2/1.3/ow2-1.3.pom
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus/4.0/plexus-4.0.pom
Download https://plugins.gradle.org/m2/org/apache/apache/16/apache-16.pom
Download https://plugins.gradle.org/m2/org/apache/ant/ant/1.9.7/ant-1.9.7.pom
Download https://plugins.gradle.org/m2/org/sonatype/forge/forge-parent/10/forge-parent-10.pom

Download https://plugins.gradle.org/m2/org/apache/ant/ant-parent/1.9.7/ant-parent-1.9.7.pom
Download https://plugins.gradle.org/m2/org/ow2/asm/asm-tree/6.0/asm-tree-6.0.pom
Download https://plugins.gradle.org/m2/org/apache/ant/ant-launcher/1.9.7/ant-launcher-1.9.7.pom
Download https://plugins.gradle.org/m2/org/ow2/asm/asm-commons/6.0/asm-commons-6.0.jar
Download https://plugins.gradle.org/m2/org/jdom/jdom2/2.0.6/jdom2-2.0.6.jar
Download https://plugins.gradle.org/m2/org/ow2/asm/asm-tree/6.0/asm-tree-6.0.jar
Download https://plugins.gradle.org/m2/com/github/jengelman/gradle/plugins/shadow/2.0.2/shadow-2.0.2.jar
Download https://plugins.gradle.org/m2/commons-io/commons-io/2.5/commons-io-2.5.jar
Download https://plugins.gradle.org/m2/org/apache/ant/ant/1.9.7/ant-1.9.7.jar
Download https://plugins.gradle.org/m2/org/codehaus/plexus/plexus-utils/3.0.24/plexus-utils-3.0.24.jar
Download https://plugins.gradle.org/m2/org/apache/ant/ant-launcher/1.9.7/ant-launcher-1.9.7.jar
Download https://plugins.gradle.org/m2/org/ow2/asm/asm/6.0/asm-6.0.jar
:compileJava NO-SOURCE
:processResources NO-SOURCE
:classes UP-TO-DATE
:jar
:assemble
:licenseMain NO-SOURCE
:licenseTest NO-SOURCE
:license UP-TO-DATE
:check
:build
:scratch:copyIcon
:scratch:nodeSetup
Download https://nodejs.org/dist/v8.11.1/node-v8.11.1-linux-x64.tar.gz
module.js:549
    throw err;
    ^

Error: Cannot find module '../lib/utils/unsupported.js'
    at Function.Module._resolveFilename (module.js:547:15)
    at Function.Module._load (module.js:474:25)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)
    at /tmp/src/scratch/.gradle/npm/npm-v5.8.0/bin/npm:19:21
    at Object.<anonymous> (/tmp/src/scratch/.gradle/npm/npm-v5.8.0/bin/npm:92:3)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
:scratch:npmSetup FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':scratch:npmSetup'.
> Process 'command '/tmp/src/scratch/.gradle/npm/npm-v5.8.0/bin/npm'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1m 12s
4 actionable tasks: 4 executed
Aborting due to error code 1 for Gradle build
Build failed
ERROR: An error occurred: non-zero (13) exit code from fabric8/s2i-java

that is including https://github.com/vorburger/minecraft-storeys-maker/pull/26 (but without that it would, most probably, just fail for nothing finding NPM at all).

One should be able to locally reproduce above like this, using WIP fabric8io-images/s2i#118, from my fork:

docker build https://github.com/vorburger/s2i.git#gradle:java/images/jboss
rm Dockerfile
s2i build --copy . fabric8/s2i-java minecraft-storeys-maker

@edewit do you have any clue what the message above could be trying to tell us? Cauz I really don't... 😄 But this is not urgent or blocking, because I'll just try to progress on https://github.com/vorburger/minecraft-storeys-maker/issues/19 using an approach starting with the binary JAR, instead of full S2I from source build instead, because of this.

NoSuchElementException in onChangeInventoryHeldEvent

--
  | java.util.NoSuchElementException: No value present
  | at java.util.Optional.get(Optional.java:135) ~[?:1.8.0_161]
  | at ch.vorburger.minecraft.storeys.events.EventService.lambda$onChangeInventoryHeldEvent$3(EventService.java:83) ~[EventService.class:?]
  | at java.util.Optional.ifPresent(Optional.java:159) ~[?:1.8.0_161]
  | at ch.vorburger.minecraft.storeys.events.EventService.onChangeInventoryHeldEvent(EventService.java:82) ~[EventService.class:?]
  | at ch.vorburger.minecraft.storeys.web.StoreysWebPlugin.lambda$start$2(StoreysWebPlugin.java:65) ~[StoreysWebPlugin.class:?]```

New Variable Block RFE: Looking at

@devvorb wants a new "Looking at" variable block, which gives him the same (x y z) coordinates that show up on the F3 Debug screen. He would use this e.g. in a "/" block as:

/ [join "/summon minecraft:lightening:bolt" [Looking at]]

Hunger

Right now you can't build anything, but you do get hungry so you'll die.

SeleniumTest testAPI - run more tests client side, and test new API not Scratch Binding

I've started extending our SeleniumTest with a new testAPI() to run more tests written in TS client side instead of in Java server side, and to focus on testing the new API, not the Scratch Binding.

Got reasonable far, but am now stuck with an issue I don't understand:

test.ts:53 Uncaught Error: INVALID_STATE_ERR
    at o.send (test.ts:53)
    at t._subscribe (test.ts:53)
    at t._trySubscribe (1.568a857938616d5c186c.hot-update.js:7)
    at t.subscribe (1.568a857938616d5c186c.hot-update.js:7)
    at t.test (test.ts:53)
    at HTMLButtonElement.onclick (?eventBusURL=http://localhost:6060/eventbus:20)

@edewit perhaps you could have a look at this, some time?

SeleniumTest > b_testSendTitle FAILED org.openqa.selenium.WebDriverException: unknown error: INVALID_STATE_ERR

@edewit FYI our split (#14) SeleniumTest still sometimes fails for me locally, despite #17.

actually the cause perhaps it's not even the split - it may be machine load related. I just hit below while running it during a boring call 😄 while a BlueJeans was taking up some CPU, and when re-running after BJ ended, it passed.

> Task :web:test 

ch.vorburger.minecraft.storeys.web.SeleniumTest > a_testBasicSetUp PASSED

ch.vorburger.minecraft.storeys.web.SeleniumTest > b_testSendTitle FAILED
    org.openqa.selenium.WebDriverException: unknown error: INVALID_STATE_ERR

scratch3/ build not working in S2I because git is not available

@edewit the new #68 does not work on OpenShift yet because S2I build fails due to:

Task :scratch3:npmDoInstall1
--
  | npm WARN deprecated [email protected]: breaking changes in minor version
  | npm WARN deprecated [email protected]: ????  Thanks for using Babel: we recommend using babel-preset-env now: please read babeljs.io/env to update!
  | npm WARN deprecated [email protected]: Package no longer supported. Contact [email protected] for more info.
  | npm WARN deprecated [email protected]: Package no longer supported. Contact [email protected] for more info.
  | npm ERR! code ENOGIT
  | npm ERR! Error while executing:
  | npm ERR! undefined ls-remote -h -t ssh://[email protected]/rschamp/gh-pages.git
  | npm ERR!
  | npm ERR! undefined
  | npm ERR! No git binary found in $PATH
  | npm ERR!
  | npm ERR! Failed using git.
  | npm ERR! Please check if you have git installed and in your PATH.
  |  
  | npm ERR! A complete log of this run can be found in:
  | npm ERR!     /opt/jboss/.npm/_logs/2018-05-25T08_49_24_033Z-debug.log
  |  
  | > Task :scratch3:npmDoInstall1 FAILED
  |  
  | FAILURE: Build failed with an exception.
  |  
  | * What went wrong:
  | Execution failed for task ':scratch3:npmDoInstall1'.
  | > Process 'command '/tmp/src/scratch3/.gradle/npm/npm-v6.0.1/bin/npm'' finished with non-zero exit value 1

I can see if we can add the git CLI to the image?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.