This version (2017/05/27 13:44) is a draft.
Approvals: 0/1

[01:02:24] <D-Spair> Doh! You guys changed the API for the AsyncSQL stuff out from under me… The latest packages out there are m4, but the docs are apparently >=m5???? Makes for interesting coding…

[01:43:28] <jtruelove> diggin the APEX stuff, it has a couple patterns i had created in my own internal libs

[01:57:04] <jtruelove> purplefox i see hulu is up on the site now :)

[08:41:40] <voidDotClass> is m4 still latest?

[08:42:14] <temporalfox> voidDotClass yes

[08:42:21] <voidDotClass> ty

[08:42:22] <temporalfox> voidDotClass m5 should be released soon though

[08:42:30] <voidDotClass> when?

[08:43:56] <temporalfox> today :-)

[10:57:31] <purplefox> temporalfox: have you seen.. there's a new RxJava client for MongoDB? And it supports reactive streams too

[10:58:08] <temporalfox> yes I've seen that but I haven't looked at the details

[10:58:59] <temporalfox> I think we cannot really use RxJava itself because it's java specific

[10:59:23] <temporalfox> but if it supports reactive-streams , the impl could interrop with our streams

[10:59:33] <temporalfox> given that we removed the @ProxyGen on it

[10:59:33] <purplefox> yeah, i'm not suggesting we use it internally

[10:59:43] <purplefox> but it's another option for the vert.x user :)

[10:59:53] <temporalfox> now it can use ReadStream/WriteStream

[11:00:17] <temporalfox> I think internally we could adapt the reactive-streams to Read/Write vertx streams

[11:00:39] <temporalfox> before it was not possible to have Read/Write stream in client because it's not supported by @ProxyGen

[11:25:20] <aesteve> hi purplefox :) if you have just 2 sec, I think I'm gonna work on https://github.com/aesteve/vertx-feeds this weekend. Just tell me if you think that's the kind of showcases you're expecting

[11:25:57] <aesteve> since I couldn't find a working version of Vtoons, I'm not sure what you have in mind for “end-end” examples :)

[11:27:24] <aesteve> it mixes up : apex / authentication / mongo / redis / worker verticles / sockjs

[11:28:08] <purplefox> aesteve: it's in the Vert.x 2 examples repo

[11:33:51] <aesteve> ok, got it : https://github.com/vert-x/vertx-examples/blob/099b04763100fbb2a1c46bb27b36db9963afcb55/src/modules/groovy/webapp/mods/io.vertx~example-web-app~1.0/App.groovy

[11:34:19] <aesteve> thanks. This is way easier than my example. I'll see how to tweak mine

[12:25:34] <temporalfox> aesteve it would be awesome this work with code translator from java to ruby/groovy/js

[12:43:40] <purplefox> temporalfox: can i ask you to look at something?

[12:43:47] <temporalfox> yes

[12:45:40] <purplefox> temporalfox: i've refactored the mongo stuff into two separate maven modules in the same repo with a parent. anyway, all tests run fine in the IDE but it fails to build at the command line, some kind of problem with the pom.xml

[12:45:43] <purplefox> https://github.com/vert-x3/vertx-mongo-client/tree/refactor_to_modules

[12:45:50] <purplefox> any chance you could take a quick look?

[12:46:36] <temporalfox> you merged mongo and embedded mongo ?

[12:47:16] <purplefox> no

[12:47:30] <temporalfox> ah ok

[12:47:33] <purplefox> the mongo service is in one module, the mongo client is another

[12:47:33] <temporalfox> service is back

[12:47:42] <temporalfox> what's the difference ?

[12:48:15] <purplefox> difference between mongo service and mongo client?

[12:48:48] <purplefox> mongo service is for access remotely (event bus), mongo client is for local access

[12:48:57] <temporalfox> ok I was not sure

[12:49:19] <temporalfox> I'm going to look at it

[12:56:33] <temporalfox> purplefox what issue do you see ?

[12:57:10] <AlexLehm> purplefox: i have some time now if you like

[12:57:19] <AlexLehm> (do you want to this in the channel or in a pm?)

[13:01:47] <purplefox> try building it

[13:02:06] <purplefox> temporalfox: ^

[13:02:27] <temporalfox> I have issues with asciidoctor plugin because it does not find the source dir for copying

[13:02:33] <temporalfox> so I used -DskipDocs

[13:02:36] <temporalfox> and it builds

[13:02:46] <temporalfox> (alex reported a similar issue yesterday)

[13:02:52] <temporalfox> so I wanted to see if you had the same issue

[13:02:59] <temporalfox> or if I need to look for something else

[13:03:32] <purplefox> ah ok :) yes it builds for me too if I do that

[13:03:36] <purplefox> any workaround?

[13:04:10] <temporalfox> I'm looking at it

[13:04:11] <purplefox> AlexLehm: ok give me 5 mins :)

[13:04:15] <temporalfox> yes I think there is one easy

[13:04:34] <temporalfox> then I wouldconsider patching asciidoctor

[13:04:39] <temporalfox> and make a contribution

[13:04:44] <temporalfox> so it does not fail in that situation

[13:04:59] <temporalfox> let me try the workaround first

[13:09:23] <AlexLehm> actually its on the jenkins project https://vertx.ci.cloudbees.com/job/vert.x3-mail-service/104/console

[13:12:21] <purplefox> AlexLehm: ? that was for julien ;)

[13:12:33] <purplefox> AlexLehm: are you ready to chat now?

[13:13:56] <temporalfox> purplefox I mentionned AlexLehm issue

[13:15:07] <purplefox> AlexLehm: ?

[13:15:56] <purplefox> AlexLehm: ok i'm going to get some lunch, will be back later. please ping me when you are ready to chat

[13:18:57] <AlexLehm> hi, sorry i missed a few msgs

[13:20:06] <temporalfox> purplefox I pushed a workaround, it's on my mid term todo list

[13:27:29] <aesteve> temporalfox: hi :) do you think it would be possible to add code generation to the example ? I actually didn't even think about doing that

[13:27:53] <aesteve> (I might only look at it once it's finished though)

[13:29:05] <temporalfox> aesteve the current vertx-examples do use code generation

[13:29:20] <aesteve> ok I'll take a look

[13:29:40] <temporalfox> and this

[13:29:41] <temporalfox> https://github.com/vert-x3/vertx-examples/blob/master/apex-examples/src/main/java/io/vertx/example/apex/chat/Server.java

[13:29:42] <temporalfox> works

[13:29:46] <temporalfox> in groovy and js at least

[13:30:21] <temporalfox> translated to that

[13:30:21] <temporalfox> https://github.com/vert-x3/vertx-examples/blob/master/apex-examples/src/main/js/io/vertx/example/apex/chat/server.js

[13:31:33] <aesteve> so I guess for now, the thing I have to keep in mind is : not using java specific stuff of using some POJOS that would not translate

[13:32:19] <temporalfox> it would be good I think to code translate from the beginning

[13:32:22] <temporalfox> start small

[13:32:36] <aesteve> ouch :\

[13:32:38] <temporalfox> it can use some java specific stuff

[13:32:48] <temporalfox> var timestamp = Java.type(“java.text.DateFormat”).getDateTimeInstance(Java.type(“java.text.DateFormat”).SHORT, Java.type(“java.text.DateFormat”).MEDIUM).format(Java.type(“java.util.Date”).from(Java.type(“java.time.Instant”).now()));

[13:38:01] <aesteve> that kind of stuff would translate : https://github.com/aesteve/vertx-feeds/blob/master/src/main/java/io/vertx/feeds/verticles/WebServer.java#L119-L123

[13:38:03] <aesteve> ?

[13:39:03] <temporalfox> you need to try :-)

[13:39:07] <temporalfox> if you use vertx api

[13:39:08] <temporalfox> it's fine

[13:39:13] <temporalfox> then there are some rules to respect

[13:39:18] <temporalfox> like for building @DataObject

[13:39:31] <aesteve> yes I saw that in the docs of codegen

[13:39:32] <temporalfox> and it needs to be a single script

[13:39:43] <temporalfox> you cannot really call methods

[13:39:50] <aesteve> but i won't waste your time until I try Julien :)

[13:39:54] <temporalfox> but we could add support for methods :-)

[13:40:03] <temporalfox> and transform methods in functions

[13:40:13] <temporalfox> void foo() {}

[13:40:17] <temporalfox> function foo()

[15:53:03] <aesteve> mmh I have a huge problem with redis-client :\

[15:53:50] <aesteve> my code was working fine through the event bus

[15:54:02] <aesteve> now I'm trying to translate it to use it as a standard client

[15:54:27] <aesteve> and scriptLoad(“myScript”, handler) throws

[15:54:51] <aesteve> NullPointer exception at at io.vertx.redis.impl.Command.<init>(Command.java:126)

[15:55:07] <aesteve> endoding is somehow missing I guess

[15:55:13] <aesteve> encoding*

[16:12:50] <temporal_> purplefox I think we can think about updating the website for the docs in ruby

[16:13:01] <purplefox> ok

[16:13:23] <purplefox> aesteve: do you have a reproducer?

[16:13:46] <aesteve> I'm trying to

[16:14:28] <aesteve> but maven is driving me crazy, one time scriptLoad takes JsonArray as argument, one time it's a String

[16:14:49] <aesteve> depending on the project. I have to clear the local cache somehow

[16:16:27] <temporal_> purplefox and also the vertx-http-service-factory

[16:17:10] <purplefox> it would be good to have some docs on that so people know how to use it with bintray as I don't think it is obvious

[16:17:48] <temporal_> purplefox ok, with bintray it can be used as a maven or http

[16:17:56] <temporal_> what would be the best format ?

[16:18:00] <temporal_> a video or something ?

[16:18:06] <temporal_> I mean screen cast

[16:18:19] <purplefox> personally i hate videos

[16:18:24] <purplefox> much prefer text

[16:18:34] <temporal_> with pictures :-) ?

[16:18:57] <purplefox> i don't care about pictures but that's just me. i might just be weird ;)

[16:19:08] <temporal_> I can convert pictures in ascii

[16:19:22] <purplefox> :)

[16:19:36] <purplefox> or maybe just post the article in binary?

[16:19:43] <purplefox> or as a hex dump ;)

[16:22:33] <aesteve> purplefox: https://github.com/aesteve/redis-client-bug

[16:22:35] <temporal_> I don't understand what you did with vertx-mongo-client repo

[16:22:42] <temporal_> did you merge the branch to itself ?

[16:22:48] <aesteve> I think you should be able to reproduce with this example (at least I do)

[16:22:49] <temporal_> https://github.com/vert-x3/vertx-mongo-client/commits/refactor_to_modules

[16:22:58] <temporal_> and not in master

[16:23:12] <aesteve> (but you need a redis database and change the host/port obviously)

[16:23:52] <purplefox> temporal_: the PR is here https://github.com/vert-x3/vertx-mongo-client/pull/9/files

[16:24:45] <temporal_> ah ok it's master → refactor merge

[16:24:55] <aesteve> my guess is maybe default encoding is missing somewhere (or maybe I should provide one) but I didn't need to in the past

[16:25:29] <aesteve> (and in the past means both : in a previous version and through the eventbus… sorry :( )

[16:25:33] <temporal_> I think you can merge it purplefox

[16:25:39] <purplefox> aesteve: do you have a link to the example?

[16:38:46] <aesteve> https://github.com/aesteve/redis-client-bug

[16:39:13] <aesteve> or you want something else ? sorry :\

[16:41:09] <purplefox> aesteve: it's called vertx-redis-client now https://github.com/vert-x3/vertx-redis-client/blob/master/pom.xml#L29

[16:41:13] <purplefox> not vertx-redis-service

[16:42:38] <aesteve> Description Resource Path Location Type

[16:42:38] <aesteve> Project 'redis-client-bug' is missing required library: 'C:\DEV\vertx3workspace\redis-client-bug\unresolved dependency - io.vertx vertx-redis-client 3.0.0-SNAPSHOT'

[16:42:46] <aesteve> maven doesn't seem to locate this dependency

[16:43:39] <aesteve> and indeed : https://oss.sonatype.org/content/repositories/snapshots/io/vertx/ doesn't contain vertx-redis-client

[16:43:52] <aesteve> that's why I thought I should use vertx-redis-service

[16:43:57] <purplefox> yep, you might need to build it

[16:45:32] <aesteve> Oh my bad, I actually did it with the previous version I was using

[16:49:59] <aesteve> I'm building it right now and will retry

[17:01:06] <aesteve> ouch : Could not find artifact rubygems:yard:gem:0.8.7.6

[17:01:18] <aesteve> think I have to change my settings.xml :(

[17:10:49] <aesteve> ok purplefox now I'm up-to-date : https://github.com/aesteve/redis-client-bug

[17:15:55] <aesteve> https://github.com/aesteve/redis-client-bug/blob/master/src/main/java/fr/aesteve/redisbug/Verticle.java (you can see RedisClient)

[17:16:06] <aesteve> still have the NPE though

[17:16:09] <purplefox> aesteve: any chance you could create a maven versio of the project?

[17:16:22] <purplefox> gradle is a pain for me, i can't even seem to load it in the IDE

[17:16:39] <aesteve> let me help you, one sec

[17:17:22] <aesteve> pull the project

[17:17:29] <aesteve> and from the root dir

[17:17:33] <purplefox> aesteve: ah! one obvious thing - looks like you didn't call start(..) on the redis client

[17:17:38] <aesteve> simplye type in ./gradlew idea

[17:17:54] <aesteve> (gradle is embedded, you don't need anything)

[17:18:10] <aesteve> maybe you'll need to chmod gradlew though

[17:18:29] <aesteve> if gradle is a mess for you, maven is a mess for me here unfortunately :(

[17:18:42] <purplefox> ok before i do that, can you try calling start?

[17:18:50] <aesteve> yeah I missed your comment sorry

[17:18:57] <aesteve> that MUST be the problem

[17:20:39] <aesteve> oh I'm sooooo sorry

[17:21:08] <purplefox> hey, np

[17:21:11] <aesteve> I thought since it was no longer a eventbus service I didn't need to call start

[17:21:33] <purplefox> but it should fail more gracefully, not an NPE. can you add an issue for that?

[17:21:34] <aesteve> same goes for every service ? like mongo etc ?

[17:23:18] <purplefox> it depends on the client, but bear in mind that redis-client is still experimental so it will probably still change

[17:23:24] <purplefox> we might get rid of the start

[17:27:21] <aesteve> purplefox: https://github.com/vert-x3/vertx-redis-client/issues/7

[17:27:43] <aesteve> I'll keep the repo up until the issue is resolved :)

[18:13:09] <aesteve> purplefox:I'm sorry to ask again, but when I execute a command on the GroovyRedisClient the parameter in the Closure is a Future

[18:13:26] <aesteve> for example : redis.zrevrangebyscore(args[0] as String, args[1] as String, args[2] as String, args[3] as Map, responseClosure)

[18:14:22] <purplefox> aesteve: ok, what were you expecting?

[18:14:38] <aesteve> I thought it could be a RedisAsyncResult ?

[18:15:01] <aesteve> either failed or completed if the command succeeded or not

[18:15:11] <purplefox> this is the signature of the groovy method:

[18:15:12] <purplefox> public void zrevrangebyscore(String key, String max, String min, Map<String, Object> options, Handler<AsyncResult<List<Object»> handler) {

[18:15:27] <aesteve> what the…

[18:15:34] <aesteve> this is what I'm expecting indeed

[18:21:06] <arek_deepinit> purplefox: is there some option to set hard limit on memory usage?

[18:21:17] <arek_deepinit> i mean vert.x 3

[18:35:16] <aesteve> ok purplefox I don't get why but “it” is a Future<List<Object» so calling reply.result() actually works

[18:37:07] <aesteve> and it's a io.vertx.core.Future, not the Groovy one… I guess I'm getting tired….

[20:46:03] <AlexLehm> general git question, does it make sense to remove the branches that were merged into master or should the old branches be kept for reference

[21:36:04] <temporal_> AlexLehm I remove them when they have been merged

[22:57:04] <AlexLehm> how is the milestone version coming along?