Time
S
Nick
Message
03:39
axfelix joined #dataverse
04:39
axfelix joined #dataverse
13:14
bencomp joined #dataverse
15:06
axfelix joined #dataverse
15:23
trobitaille joined #dataverse
15:24
trobitaille
hi there! is anyone else around?
15:32
bencomp
I am
15:32
bencomp
trobitaille: ^^
15:32
bencomp
I was going to see if pdurbin was around
15:33
pdurbin
trobitaille: hi!
15:34
pdurbin
trobitaille: I sent a link to https://github.com/dvn/swordpoc/issues/3 to my team this morning!
15:34
pdurbin
a "dataverse importer" sounds good!
15:35
trobitaille
great, thanks!
15:36
trobitaille
basically I'm planning on writing a GUI dataverse importer for glue:
15:36
trobitaille
http://glue-viz.org/
15:36
trobitaille
(though it could maybe be used by other Python projects)
15:37
trobitaille
I'm getting stuck pretty quickly at the moment with the client code
15:37
trobitaille
see https://github.com/dvn/swordpoc/issues/4
15:37
pdurbin
trobitaille: now I know why I know your name! I spun up some VMs for you when I was a FASRC.
15:37
trobitaille
ah cool!
15:37
trobitaille
thanks for that btw!
15:37
pdurbin
heh. sure
15:38
pdurbin
ok. so. that client. it's old code. hold on
15:38
trobitaille
I'm not familiar with SWORD, hence the issues I'm running into - if you have any insight into the 403 error I'm seeing at the moment, let me know!
15:38
pdurbin
jeffspies_ and I took that code and put it in a new repo
15:38
trobitaille
ah I see
15:39
pdurbin
this one: https://github.com/IQSS/dvn-client-python
15:39
pdurbin
BUT!
15:39
pdurbin
that code was forked again!
15:39
pdurbin
hmm, several times, actually: https://github.com/IQSS/dvn-client-python/network/members
15:39
trobitaille
hehe
15:40
pdurbin
ok, so I would try https://github.com/rliebz/dvn-client-python/tree/4.0
15:40
pdurbin
AND!
15:40
trobitaille
ok, thanks!
15:40
pdurbin
and please test against https://apitest.dataverse.org
15:40
pdurbin
which is running Dataverse 4.0 rather than DVN 3.x.
15:40
trobitaille
ok - I'll give it a shot
15:40
trobitaille
thanks!
15:41
pdurbin
sure!
15:41
pdurbin
what we *really* want...
15:41
pdurbin
is `pip install dataverse-client`
15:41
pdurbin
trobitaille: if you can help us get there, please let me know! :)
15:41
trobitaille
ok cool, I'll look into the codebase to see what's missing
15:42
trobitaille
should be easy enough :)
15:42
trobitaille
so in case I need to do any fixes, any pull requests should be done against https://github.com/rliebz/dvn-client-python/tree/4.0 ?
15:42
pdurbin
jeffspies_: what do you think?
15:43
pdurbin
probably!
15:43
pdurbin
eventually I'd like it all to go into a repo under https://github.com/IQSS
15:43
pdurbin
but we can cross that bridge later :)
15:43
pdurbin
skay: isn't this exciting?! you were helping with this effort
15:44
skay
what?
15:44
pdurbin
skay: making `pip install dataverse-client` possible :)
15:45
skay
thanks. I didn't do much but glad you are happy about it
15:45
skay
future me thanks you
15:47
trobitaille
hehe
15:47
trobitaille
so at the moment it doesn't look like settings/local.py actually gets used?
15:47
skay
pdurbin: but seriously, I haven't reviewed rliebz's code in a long time. he's changed it a lot.
15:48
skay
pdurbin: is someone else reviewing it? no merges have gone to IQSS in a while
15:48
pdurbin
skay: he's the only one using that code that I know of (which is fine)
15:49
trobitaille
well, I'm trying now ;)
15:49
pdurbin
trobitaille: I used Peter's code you found (the old, original code) but I haven't used Robert's.
15:49
skay
I should probably step down as a member since I've not done anything in a while
15:49
trobitaille
I guess one question is if I want to suggest changes, I would need to suggest it to his repository - but might be good to encourage him to merge his changes back into the main repo in IQSS so that I can also make pull requests there
15:49
pdurbin
skay: you slacker ;)
15:50
skay
pdurbin: I agree with trobitaille
15:50
pdurbin
trobitaille: well, there *is* no main repo at IQSS yet :(
15:50
pdurbin
but we totally want one
15:50
skay
since no one is using the dvn-client-python master
15:50
skay
pdurbin: what is https://github.com/IQSS/dvn-client-python
15:50
trobitaille
but what about https://github.com/IQSS/dvn-client-python
15:50
skay
jinx!
15:50
trobitaille
isn't that the main repo that the changes should be pushed back to?
15:50
skay
:)
15:51
pdurbin
skay: I'd like to rename it to dataverse-client-python anyway (drop the deprecated term "dvn" from the repo name)
15:51
pdurbin
trobitaille: no. or at least I'd like to rename it, like I'm saying (drop "dvn")
15:51
skay
pdurbin: rename it and merge in his changes and then trobitaille can work from there
15:51
trobitaille
right - renaming is easy and doesn't break the forks btw
15:51
skay
as can rleibtz
15:52
trobitaille
the old URL will work for everyone too
15:52
trobitaille
so renaming doesn't break anything
15:52
pdurbin
trobitaille: true!
15:52
skay
that will make bookkeeping a little easier
15:52
skay
and then encourage rleibz to make merge requests often
15:53
trobitaille
I wonder whether rlieibz's repo is in the middle of some changes because it mentions things about tokens in the readme but then that's not used in the actual code as far as I can tell
15:53
* skay
is not saying anything non-obvious but only stating the usual
15:53
pdurbin
trobitaille: he's preparing his code to work with Dataverse 4.0 (which is awesome of him)
15:54
trobitaille
ok yes, that will be great
15:54
trobitaille
it also looks like it may depend on some custom fork of sword2
15:54
trobitaille
for now
15:54
pdurbin
yeah, unfortunately
15:54
trobitaille
not a problem
15:55
pdurbin
trobitaille: we also have a new JSON -based API you can try
15:55
trobitaille
I get the 403: forbidden error again though :-/
15:55
trobitaille
oh, really?
15:55
pdurbin
:)
15:55
trobitaille
I would be much happier with a JSON api if there is one!
15:55
pdurbin
for now it's called the "native" API : http://guides.dataverse.org/en/latest/api
15:55
trobitaille
that has a good sound to it
15:55
skay
oh, make a requests based wrapper around it
15:55
trobitaille
yep
15:56
trobitaille
that's what I was thinking
15:56
trobitaille
ok, I'll try it out now
15:57
trobitaille
what are the downsides compared to sword?
15:57
pdurbin
it's new
15:57
* pdurbin
thinks
15:57
pdurbin
oh
15:58
pdurbin
you can't upload files via the native api yet
15:58
pdurbin
you'll have to use sword for that, for now
15:58
pdurbin
trobitaille: I'm using the native API here: https://github.com/IQSS/dataverse/blob/master/scripts/deploy/apitest.dataverse.org/post
15:58
pdurbin
which calls this script: https://github.com/IQSS/dataverse/blob/master/scripts/search/tests/create-all-and-test
15:59
pdurbin
and you express a dataset in JSON like this: https://github.com/IQSS/dataverse/blob/master/scripts/search/tests/data/dataset-finch1.json
15:59
pdurbin
the huge upside of the JSON API is that *all* metadata fields are available to you
15:59
pdurbin
unlike sword where you only get a few
16:00
trobitaille
that's pretty cool
16:03
trobitaille
just one simple question, to make sure I understand right - I'm trying this JSON request:
16:03
trobitaille
GET http://$SERVER/api/datasets/$id?key=$apiKey
16:04
trobitaille
setting apikey to my API token
16:04
trobitaille
but given a dataset, e.g.
16:04
trobitaille
https://apitest.dataverse.org/dataset.xhtml?globalId=doi:10.5072/FK2/A4KFW8&versionId=33
16:04
trobitaille
what is the ID - is it the full DOI?
16:06
trobitaille
I tried doing https://apitest.dataverse.org/api/dataverses/root/contents?key= ... and got a list of objects, with IDs, for example 178 or 7
16:06
trobitaille
but if I use 178 or 7 in this call: http://$SERVER/api/datasets/$id?key=$apiKey - it says dataset not found
16:07
trobitaille
(sorry, I know these are beginner questions, just trying to get a feel for the API but then should be able to figure out the rest)
16:20
pdurbin
trobitaille: sorry, sorry, I wandered away. one sec
16:21
pdurbin
trobitaille: the id is the database id of the dataset
16:22
pdurbin
curl -s -X DELETE "http://localhost:8080/api/datasets/$FIRST_FINCH_DATASET_ID?key=$FINCHKEY "
16:22
pdurbin
that's from https://github.com/IQSS/dataverse/blob/master/scripts/search/tests/delete-all-and-test
16:22
pdurbin
FIRST_FINCH_DATASET_ID=`curl -s "http://localhost:8080/api/dataverses/finches/contents?key=$FINCHKEY " | jq '.data[0].id'`
16:22
pdurbin
that's from https://github.com/IQSS/dataverse/blob/master/scripts/search/assumptions
16:23
pdurbin
I sure hope this makes sense! :)
16:23
trobitaille
right, that's what I was trying but was running into issues - take the following example (replacing with your API key)
16:23
trobitaille
https://apitest.dataverse.org/api/dataverses/root/contents?key=$KEY
16:23
trobitaille
I get the following output
16:23
trobitaille
{"status":"OK","data":[{"type":"dataverse","id":168,"title":"ad_db"},{"type":"dataverse","id":178,"title":"Antislavery Petitions Test"},{"type":"dataverse","id":17,"title":"Robert"},{"type":"dataverse","id":165,"title":"testINFSCI"},{"type":"dataverse","id":7,"title":"Trees"}]}
16:23
trobitaille
so let's say I want dataset 168
16:23
trobitaille
I tried
16:23
trobitaille
https://apitest.dataverse.org/api/datasets/168?key=$KEY
16:23
trobitaille
but that fails
16:24
trobitaille
{"status":"ERROR","message":"dataset not found"}
16:24
trobitaille
maybe I'm making a silly mistake though
16:24
pdurbin
trobitaille: that's because id 168 is a dataverse rather than a dataset.
16:24
trobitaille
oh right
16:25
trobitaille
ahhh
16:26
pdurbin
I haven't used that "contents" endpoint much.
16:26
trobitaille
so all ids are integers
16:26
trobitaille
but some are IDs to dataverses and some to datasets
16:26
trobitaille
ok cool
16:26
pdurbin
trobitaille: under the covers dataverses, datasets, and datafiles share a common pool of IDs. Collectively we call them DvObjects.
16:26
trobitaille
right, that makes sense - thanks!
16:27
trobitaille
so one last question - how soon do you think it's likely the 'cfa' dataverse would be available using the JSON API ?
16:27
trobitaille
or should that already work?
16:29
pdurbin
"real soon now" :)
16:29
pdurbin
we're trying to ship 4.0
16:30
pdurbin
and CfA will be migrated, of course
16:30
trobitaille
ok
16:30
pdurbin
will all the rest
16:30
pdurbin
with* all the rest
16:30
trobitaille
so do you have a specific ETA? (just very very very roughly - in the sense of days/weeks/months)
16:30
pdurbin
less than months, hopefully!
16:31
pdurbin
trobitaille: oh!
16:31
pdurbin
actually, if you're nice to this server, you can play with CfA data here: https://dataverse-demo.iq.harvard.edu/dataverse/cfa
16:32
trobitaille
ok, cool! that's all I need and I'll be nice to the server :)
16:32
pdurbin
that server is primarily for GUI testing and the API code lags behind the code at https://apitest.dataverse.org
16:32
trobitaille
if you notice too much activity, then please send me an email
16:32
pdurbin
sure :)
16:33
pdurbin
trobitaille: feel free to pull down some of that CfA data as JSON and upload it to the apitest server :)
16:34
trobitaille
ok cool, will give it a try
16:34
pdurbin
hmm
16:34
pdurbin
you'll need a key, of course
16:34
pdurbin
but you're getting used to that
16:34
pdurbin
:)
16:34
trobitaille
yep :)
16:35
trobitaille
ah ha, seems to work
16:35
trobitaille
thanks!
16:35
trobitaille
off now
16:35
pdurbin
bye! come by any time :)
16:36
trobitaille
ok cool :) bye!
18:50
rliebz joined #dataverse
19:11
trobitaille joined #dataverse
19:12
trobitaille
pdurbin - thanks for your help earlier! I have been playing around with the CfA dataverse on the demo server and have run into a strange issue
19:12
trobitaille
this URL works: https://dataverse-demo.iq.harvard.edu/api/datasets/7/versions/1/metadata?key= ...
19:13
trobitaille
but this one doesn't: https://dataverse-demo.iq.harvard.edu/api/datasets/7/versions/1/files?key= ...
19:13
trobitaille
even though the guide said it should
19:13
trobitaille
do you have any idea what the issue could be?
19:13
pdurbin
doesn't work?
19:13
pdurbin
what does the error say?
19:14
pdurbin
oh oh oh
19:14
pdurbin
files
19:14
pdurbin
yeah, that's new
19:14
pdurbin
remember how I said that server lags behind the other?
19:14
pdurbin
actually...
19:14
pdurbin
that "files" endpoint is so new I haven't even pushed it to the apitest server :(
19:15
pdurbin
trobitaille: oh! and something else! I think I gave you the impression that all the JSON goodness is under the "native" API . This is not true. There is also JSON goodness under the Search API: http://guides.dataverse.org/en/latest/api/search.html
19:18
pdurbin
rliebz: hi!
19:18
pdurbin
rliebz: maybe your ears were burning!
19:20
rliebz
pdurbin: I saw all the fun going on in the logs, so I thought I'd hop in
19:20
pdurbin
isn't it fun? :)
19:22
* pdurbin
loves this stuff
19:24
rliebz
The time leading up to big releases is always exciting
19:24
pdurbin
rliebz: hmm, you'd probably like a build on apitest too...
19:24
pdurbin
rliebz: see how trobitaille is interested in the the "files" endpoint
19:24
pdurbin
the new*
19:25
trobitaille
no problem about files not being available yet! was just worried I was doing something silly
19:25
trobitaille
:)
19:25
trobitaille
I'll definitely try out the search API !
19:26
rliebz
pdurbin: The files endpoint looks good so far. Is it able to take DOIs?
19:26
trobitaille
For fun, I'm working on a mini-Python library that uses the JSON API
19:26
pdurbin
cool. this little Android app proof of concept is built on the Search API : https://github.com/IQSS/dataverse-android
19:26
pdurbin
rliebz: maybe I can run a build for you quick so you and trobitaille can check it out
19:27
pdurbin
trobitaille: warning! this will drop the database so you'll need to create a new api key
19:27
trobitaille
that's ok :)
19:27
trobitaille
I'm used ito it now!
19:27
pdurbin
trobitaille: it would be awesome if you and rliebz could collaborate on a common `pip install dataverse-client` thing
19:28
trobitaille
right - I think there really are two approaches for the Python library, one via sword and one via JSON , so it depends which one you'd like to see as the main one, or if we should have both
19:28
trobitaille
at the moment I'm just going to experiment with the JSON API
19:28
trobitaille
happy to collaborate on making a joint thing
19:28
trobitaille
once I have a better feel for it
19:28
rliebz
pdurbin: If there's a way to access the new API with DOIs, or an endpoint to get dataset ID from DOI, I don't see any reason why https://github.com/rliebz/dvn-client-python/tree/4.0 can't include the other APIs as well
19:29
pdurbin
rliebz: right. I think we should take your working code and add support for the native api
19:32
rliebz
Absolutely. I've been holding off on merging it back into IQSS because my changes have virtually no backwards compatibility, but I'd be happy to put my changes into that or a different IQSS repo whenever
19:32
pdurbin
rliebz: no one is using https://github.com/IQSS/dvn-client-python . you can force push to it
19:33
pdurbin
skay: right?
19:34
skay
pdurbin: yeah
19:34
rliebz
pdurbin: We're currently using the master branch of my repo in OSF production, with 4.0 having the Dataverse 4.0 changes and some other improvements that I was planning on merging in after release
19:35
rliebz
pdurbin: Any preference on IQSS/dvn-client-python?
19:35
pdurbin
rliebz: let's drop "dvn" from the name
19:36
pdurbin
and call it "dataverse"
19:36
pdurbin
ok, I just kicked off a build: https://build.hmdc.harvard.edu:8443/job/apitest.dataverse.org-deploy/28/
19:36
pdurbin
usually I test it first locally but I'm in a feature branch
19:39
pdurbin
ok, https://apitest.dataverse.org looks normal for after a build
19:40
pdurbin
and all the integration tests passed: https://build.hmdc.harvard.edu:8443/job/apitest.dataverse.org-apitester/27/
19:40
rliebz
pdurbin: Thanks for building! I'll start working with the new endpoint shortly
19:40
pdurbin
rliebz: lemme know if it works with DOIs. I don't even know!
19:41
rliebz
pdurbin: I don't have permission to force push to https://github.com/IQSS/dvn-client-python
19:41
pdurbin
rliebz: hmm. ok. can you please remind me to fix this later?
19:42
rliebz
pdurbin: Will do
19:43
pdurbin
rliebz: should I just fork your repo into the new name?
19:43
bencomp joined #dataverse
19:46
trobitaille
pdurbin: just to check, the new build you are mentioning is just on the apitest server so far, but not the https://dataverse-demo.iq.harvard.edu server, right? (so I shouldn't expect /files to work yet)
19:48
pdurbin
trobitaille: correct. https://dataverse-demo.iq.harvard.edu tracks this branch: https://github.com/IQSS/dataverse/tree/beta
19:48
pdurbin
https://apitest.dataverse.org shows the date and commit in the lower right: v. 4.0 Beta build 28 (apitest), 2015-03-31, commit 95c3ca2
19:49
trobitaille
ah great, thanks for the info
19:49
pdurbin
oh sure
19:53
trobitaille
ok, and just to also check, /files does not yet work on apitest? https://apitest.dataverse.org/api/datasets/10/files?key= ... returns a page not found - this is also expected at this point?
19:54
pdurbin
trobitaille: honestly, I haven't even tried it. rliebz might know :)
19:54
trobitaille
ok cool - no worries!
19:54
trobitaille
will try playing around with other aspects for now
19:54
pdurbin
cool
19:54
pdurbin
I'd take a look but I'm working on a feature: https://github.com/IQSS/dataverse/issues/90
19:55
trobitaille
that's ok, there's no rush anyway :)
19:55
trobitaille
before I open a feature request, is there a way for a program script to automatically fetch a token, kind of oauth-style?
19:56
trobitaille
i.e. it would open the user's browser, get them to log in, then retrieve the token automatically
19:56
pdurbin
trobitaille: when you create a user using the API the token comes back in the response
19:56
rliebz
I've gotten /files to work on apitest, but not with DOI
19:56
pdurbin
trobitaille: check out createUser at https://github.com/IQSS/dataverse-apitester/blob/master/src/test/java/org/dataverse/apitester/sword/SwordTest.java
19:56
pdurbin
apiToken = jsonPath.get("data.apiToken");
19:56
trobitaille
ok - and what if the user already exists and uses a new tool?
19:57
rliebz
+1 to fetching API tokens
19:57
pdurbin
heh
19:57
trobitaille
rliebz: is there something wrong with this URL ? https://apitest.dataverse.org/api/datasets/10/files?key=
19:57
pdurbin
trobitaille: not sure what you mean about already exists
19:58
trobitaille
so let's say I have a user account (which I do), now I open up a tool, say glue
19:58
trobitaille
I want glue to be able to access things on dataverse as me
19:58
pdurbin
sure
19:58
trobitaille
so then it would have a 'log in to dataverse' option
19:59
trobitaille
is there a login mechanism that will then return the API key?
19:59
pdurbin
nope. you have to use the GUI to find your API token
19:59
rliebz
trobitaille: I assume you left off the key because you didn't want us to see it. If not that, I'd say 1) Verify that the object with ID #10 is in fact a dataset, and 2) try specifying a version
19:59
pdurbin
trobitaille: feel free to open an issue at https://github.com/IQSS/dataverse/issues about this though
19:59
trobitaille
rliebz - yes, left off the key
19:59
rliebz
trobitaille: For reference, I used: http://apitest.dataverse.org/api/datasets/18/versions/:latest/files?key= ...
20:00
trobitaille
pdurbin - ok, will do, bsasically I think that the users should never have to see an API key
20:00
trobitaille
so it could just be a new JSON endpoint with POST over https - given user and password, return token - that would be enough
20:00
pdurbin
ok
20:01
pdurbin
rliebz: the reminds me. Are you aware that we're talking about disabling login via SWORD for Dataverse 4.0?
20:01
pdurbin
you should expect an email about this, probably today
20:01
pdurbin
axfelix: heads up!
20:01
pdurbin
er
20:01
pdurbin
login via *PASSWORD* I meant to say
20:01
pdurbin
requiring API tokens
20:01
trobitaille
rliebz - specifying the version works, thanks!
20:02
rliebz
pdurbin: We have already made the switch to API tokens, so that isn't a problem
20:03
pdurbin
rliebz: but you'll need to transition your users...
20:03
rliebz
pdurbin: I assume you still accept basic auth using the api token as a username though, right?
20:03
pdurbin
rliebz: correct
20:03
rliebz
trobitaille: No problem!
20:04
rliebz
pdurbin: We will need to transition our users, but we were already planning on doing that for the security benefits and access to the new API , if needed. In that sense, having an endpoint to get from username/password to API token via the API would make it seamless.
20:08
trobitaille
FYi I just opened a feature request for the username/pass -> api token endpoing here: https://github.com/IQSS/dataverse/issues/1818
20:11
axfelix
hrm, good to know
20:11
axfelix
I think this is probably acceptable given the changes we've made to the plugin to support API keys
20:11
axfelix
but still, nice to be able to tell people
20:13
trobitaille
Once I have the metadata about a given file, is there a way to actually retrieve the file? For example:
20:13
trobitaille
{'data': [{'datafile': {'contentType': 'image/png', 'description': '', 'filename': '%2Fusr%2Flocal%2Fglassfish4%2Fglassfish%2Fdomains%2Fdomain1%2Ffiles%2F10.5072%2FFK2%2FIOOAJF%2F14c7157584b-15f561a376ee', 'id': 12, 'md5': '0386269a5acb2c57b4eade587ff4db64', 'name': 'trees.png', 'ori
20:13
trobitaille
oops - formatting messed up
20:13
trobitaille
but that's the returned JSON
20:13
trobitaille
it has filename, path on computer, etc. but not clear how to retrieve it?
20:16
trobitaille
(or maybe there is no way for now?)
20:19
rliebz
trobitaille: Like this? http://guides.dataverse.org/en/latest/api/dataaccess.html#basic-file-access
20:19
trobitaille
ah, perfect
20:19
trobitaille
sorry, was looking for it in the wrong page
20:20
trobitaille
thanks for all the help!
20:20
trobitaille
I should be all set now :)
20:23
pdurbin
rliebz: I'm glad you're on board with the security benefits
20:24
pdurbin
trobitaille: thanks for opening that ticket!
20:24
pdurbin
axfelix: glad it's acceptable! your users are mostly journals so there should be fewer of them
20:24
axfelix
yeah, and anyone who's pointing at a 4.0 instance is already encouraged to do an API handsake
20:34
trobitaille
thanks everyone for your help - off now, but will be back in touch soon once I've made progress
20:35
pdurbin
we'll be here :)
20:45
pdurbin
rliebz and axfelix: I'm getting some feedback on that new ticket about retrieving the API token: http://irclog.greptilian.com/rest/2015-03-31#i_106173
21:06
rliebz
pdurbin: I'm off for the time being. Thanks for the help today!
21:41
bencomp
pdurbin: I should have asked earlier today, but what happened to the "final" milestone? with the number of issues still increasing, is there a plan for the release?
21:57
pdurbin
bencomp: I'm coding as fast as I can.
21:57
pdurbin
No bugs! ;)
21:57
bencomp
wasn't planning on adding new ones right now
21:58
bencomp
:)
21:58
pdurbin
If debugging is the process of removing bugs then programming must be the process of adding them.
21:58
* bencomp
is preparing for meeting with users who are anxious to start using Dataverse 4
21:59
bencomp
is that another way of saying "stay away from the code"?
22:04
pdurbin
heh
22:04
pdurbin
no! pull requests welcome!
22:06
pdurbin
bencomp: I'm very glad to hear people excited (or is it just anxious?) to use Dataverse 4.
22:10
bencomp
pdurbin: I guess that should be more excited than anxious :P
22:12
bencomp
but as we might need to change things in our service offerings (e.g. more control at each institution), I'm a little anxious too ;)
22:13
pdurbin
bencomp: ah, so you're looking forward to the new permissions model
22:16
bencomp
definitely
22:17
bencomp
there's a lot I'm looking forward to in v4
22:17
pdurbin
yeah
22:17
pdurbin
I hope people like it. :)
22:27
pdurbin
bencomp: speaking of code, I'm curious if you've tried lombok: http://irclog.greptilian.com/sourcefu/2015-03-31#i_106137
22:29
bencomp
no, I haven't
22:30
* pdurbin
has heard good things
22:31
bencomp
had to stop thinking about how I broke my Jenkins jobs by upgrading plugins and server core because the project ended
22:31
bencomp
will look at lombok later
23:02
pdurbin
jenkins is great when it's not broken