avsm changed the topic of #mirage to: Good news everyone! Mirage 3.0 released!
yegods has joined #mirage
yegods has quit [Remote host closed the connection]
ubeatlenine has quit [Quit: WeeChat 1.8]
ubeatlenine has joined #mirage
brson has quit [Ping timeout: 260 seconds]
yegods has joined #mirage
ubeatlenine has quit [Ping timeout: 240 seconds]
yegods has quit [Remote host closed the connection]
_whitelogger has joined #mirage
mort___ has joined #mirage
mort___ has quit [Quit: Leaving.]
mort___ has joined #mirage
mort___ has quit [Client Quit]
djs55 has quit [Quit: Leaving.]
<mato> kensan: Do I need the Ada/SPARK packages from the AdaCore site even if I want to build Muen on Debian stretch (testing)?
<mato> Hm, it seems that I do, at least SPARK is some version from 2012?
<mato> kensan: The libre.adacore.com download site doesn't work for me in Chrome or Firefox, nothing happens when I click on "Download Selected Files".
<mato> (The site also seems to be pulling in JS from a non-https source, but I told Chrome to allow that)
<mato> Oh, I see now, the site just has really bad UI, it's not obvious that you're supposed to click on the "list of packages" and select things to download.
mort___ has joined #mirage
<mato> kensan: Ok, still can't build... ping me when you're around...
<kensan> mato: pong
<kensan> mato: Yeah, GNAT in Debian is currently too old. We only test with the GPL release from AdaCore...
<kensan> mato: For building you will not need the SPARK tools "only" GNAT.
<kensan> mato: What issues are you running into?
<kensan> mato: What version of binutils-dev do you have installed?
<kensan> mato: I am afraid we have not yet used Debian stretch to build Muen.
<kensan> mato: Sorry, I got to run.
<mato> kensan: 2.28
<kensan> mato: I will be back in a bit.
<mato> kensan: ok, thanks.
rektide has quit [Ping timeout: 240 seconds]
rektide has joined #mirage
AltGr has joined #mirage
balduin has joined #mirage
ubeatlenine has joined #mirage
<kensan> mato: Sorry for the delay. I am setting up a Stretch system to build Muen on.
mort___ has quit [Quit: Leaving.]
<mato> kensan: No problem. I can also just build in a jessie container. But I guess it's useful for you to get stretch working anyway.
<mato> Hopefully it'll be something as simple as just upgrading ada-bfd...
<kensan> mato: I think I got a fix but I want to do a full build first so I can catch all issues.
<mato> sgtm
<kensan> mato: Unfortunately ada-bfd upstream is no very active... The last commit is a fixup I submitted ;)
yomimono has joined #mirage
copy` has joined #mirage
avsm has joined #mirage
djs55 has joined #mirage
djs55 has quit [Client Quit]
djs55 has joined #mirage
TImada has joined #mirage
* yomimono rushes into room
<yomimono> hi folks!
<avsm> greetings!
<TImada> Hi
<lobo> hi
seangrove has joined #mirage
<yomimono> we said we'd have an IRC meeting today!
<yomimono> so let's do that!
<yomimono> the agenda is at https://github.com/mirage/mirage-www/wiki/Call-Agenda and it's looking very sparse; please add anything you'd like to discuss
<avsm> i am penning my update as we speak :-)
balduin has quit [Ping timeout: 245 seconds]
<Drup> My only entry is "Please help review https://github.com/ocsigen/lwt/pull/354 \o/"
<yomimono> while you're doing that, I'll start us off - there's now a 4.04.0+afl compiler available from the default opam repository
<yomimono> drup: ooh, that's a good one
<avsm> oh stedolan helped me with afl, and i got test cases i am going to submit for ocdaml-hex (which was the simplest repo i could come up with try learning it)
* mato waves, distractedly (setting up dad with a new phone, 1st time he's seen android, blah...)
<yomimono> I would really recommend that folks try out crowbar (https://github.com/stedolan/crowbar) on stuff, the reward to effort ratio is amazing
<Drup> I have one question with this kind of stuff: how do you do this kind of autogenerated testing thingy when you have two input that should coincide ?
<hannes> I fixed my cycle bug in my DNS resolver last night... will writeup soon
<Drup> Like, let's say, a regular expression library
mort___ has joined #mirage
<avsm> hannes: dns would an amazing target for afl i think -- crowbar has an examples/ directory with some similar ones
<Drup> you want to generated regular expression, and also positive and negative inputs
<avsm> im going to submit ocaml-hex first (sadly no bugs found) and then expand out to cstruct
<Drup> and I'm just not sure how that would work
<yomimono> drup: by positive and negative inputs you mean should-match, should-not-match ?
<Drup> yes
<yomimono> yeah, I'm having trouble imagining how you'd do that without another regex implementation to check your work against
<Drup> Yeah, you sort of need an oracle
<hannes> avsm: yes, I already used hours of afl-persistent for my udns library. crowbar is still on my todo
mort___ has quit [Client Quit]
<yomimono> hannes: will be cool to see the writeup on that :)
<hannes> there won't be many good words on ocaml-dns, unfortunately... sorry
<yomimono> I think you can just link to a recent issue in that repository ;)
<yomimono> which lays out some good ideas for improvement IIRC
<Drup> every time I get interested into testing things, I bump into this kind of situations where I have two inputs and I'm not sure how generate test cases
<avsm> hannes: very cool
<hannes> avsm: btw, it would be really nice if you could spend 10 minutes on https://github.com/mirage/ns.mirage.io/issues/1 ... the zone can't be that big that to copy + paste the important bits ;)
<avsm> Drup: it's worth creating an issue to ask this on crowbar
<yomimono> +1
<avsm> stedolan has some examples
<avsm> hannes: sorry, i never have my tfa device with me when it comes up... its at home right now by mistake ;-)
<hannes> that's why two-factor auth is useless ;P
<yomimono> the crowbar-y way to do this is use one set of random input to generate both the regex and the input, based on some rule that should generate a positive or negative case, but in this example that basically ends up being another regex engine embedded in your test code
<yomimono> stedolan probably has better ideas than I do :P
<hannes> and off to the wheeler lecture...
* yomimono waves
<avsm> i am planning to try to build in google clusterfuzz support as well
<avsm> it appears to be a single C callback
talex5 has joined #mirage
<avsm> and stedolan reckons it should work pretty well
mort___ has joined #mirage
<avsm> google clusterfuzz is a hosted service, so it would run on an ongoing basis for finding the really hard to reach places (and it supports AFL from first glance)
<avsm> anyone interested in that, do get in touch
<yomimono> that would be great to have working, please update the issue on mirage/mirage with your progress :)
<avsm> yep will do
<yomimono> :D
<avsm> (it's a background item for me, so no guarantees about time :P
<yomimono> anything else on that topic?
<yomimono> oh! actually I do -
<yomimono> I made some PRs in mirage-canopy-data including a new project for tcpip testing
<yomimono> I would really appreciate review on those
<yomimono> I merge a lot of my own PRs and I would like to stop doing that :)
<yomimono> canopy-data is the repository that hosts content for canopy.mirage.io , you can see outstanding PRs for it at https://github.com/mirage/canopy-data/pulls
strykerkkd has joined #mirage
<yomimono> done for real with that now, maybe?
<avsm> aha
<avsm> need to figure out some scheme to automate the afl-fuzz invocations
<avsm> so some work in that direction as we get more tests is probably useful too
<avsm> it doesnt quite fit in with `build-test` in OPAM -- perhaps we need a `build-fuzz` in opam2 that uses the right afl compiler dependency and so on
<avsm> not thought about it entirely yet
<yomimono> generally speaking, shims from stdin to various device module types will probably be useful for mirage too
<avsm> yes!
strykerkkd has quit [Client Quit]
<avsm> im all done with afl now :P
<yomimono> OK :P
<yomimono> next is an item I added on drup's behalf: Please help review https://github.com/ocsigen/lwt/pull/354 \o/
<yomimono> this is a PR that rewrites lwt.ml and improves readability drastically
<yomimono> having bounced off the old lwt.ml a few times, I'm pretty excited about this
<Drup> Me too, But I really don't have time :(
<avsm> Likewise, I am psyched to see this but havent had time for a proper review
<avsm> perhaps we should just pin it locally and see what explodes (spoiler: nothing will!)
<yomimono> having an understandable lwt.ml will help new contributors to mirage too, so if nothing else give a thumbs-up for the work :)
<Drup> Just reading the new file is already quite helpful
<smondet[m]> At the Compose unconference/hackaton, Anton went through the lwt.ml resulting of this PR in front me and other old-ocamlers, I can say I was definitely convinced this is a good thing.
<avsm> awesome!
<avsm> i have made a comment on the tiny little diff in _tags instead of lwt.ml. starting easy
<yomimono> anything more on that?
<Drup> while we are on lwt, and to transition with the next topic
<yomimono> nice!
<avsm> OMG I didnt realise that had happened! ^^ djs55
<yomimono> (for the link-averse, that's a port of lwt to jbuilder by andyray)
<avsm> So I just mailed the devel list as well
<avsm> but the good news is that batch-building of multiple repositories seems to just work
<djs55> very impressive!
<avsm> mkdir mybuild cd mybuild git clone -b jbuilder git://github.com/avsm/mirage-fs git clone -b jbuilder git://github.com/avsm/mirage-fs-unix git clone -b jbuilder git://github.com/avsm/mirage-clock git clone -b jbuilder git://github.com/avsm/mirage-device git clone -b jbuilder git://github.com/avsm/mirage-kv jbuilder build jbuilder runtest
<avsm> oops
<yomimono> curb your enthusiasm, sir
<avsm> has the commands
<avsm> i am beside myself with dopamine overdose
<avsm> with sufficient jbuild integration, i can come up with an opam variant that calls 'jbuilder' just ones
<avsm> but i think this goes a long way to streamlining mirage's growing repository problem
<avsm> we should never have to have a repeat of the difficulties of the mirage-3 api evolution, hopefully
<avsm> since once we finish porting, we can test revdeps with a single jbuilder invocation
<avsm> and fix breakage as we go along
<avsm> this is very exciting!
<djs55> a script (or opam subcommand) which could check out the right versions of the sources of the dependencies for a project would be very helpful (like Go's "vendoring")
<avsm> yes, I'll work on that
<avsm> in the meanwhile, we need to port the remaining libraries on http://docs.mirage.io to jbuilder
<avsm> it also has the benefit of respecting the odig version convention
<avsm> although i think a 'jbuilder subst' is needed to add the version information djs55 -- that might be missing from your instructions
<avsm> (or i might have been lazy and not followed them, unsure which)
<Drup> djs55: isn't that pretty much "for f in {...}; opam source $f;" ?
<djs55> I probably forgot to write that
<avsm> is djs55's instructions
<avsm> we are hitting some of the more complex packages now, and so i am also trying the Configurator config system
<avsm> it works pretty well -- the configure test is only run as a dependency of the build, so its not built unless necessary (which is nice)
<djs55> Drup: I guess if I had a record of the package versions (the output of the solver?) and could check those out and untar/unzip them in the right place I'd be very happy. Maybe opam does this already… I'm not an advanced user :)
<Drup> ah, right
<avsm> i suspect some combination of `opam install --show-actions` and `opam source` is sufficient to get this
<Drup> I think this was the original goal of opam bundle, sort of
<avsm> yeah
<avsm> i added a late agenda item about https://discuss.ocaml.org
<avsm> it would be nice to share jbuilder porting tips (and other stuff ,like opam and opam-ed) on there
<yomimono> you want to talk about cstruct first?
<avsm> its a new experiment in the community, and so i wanted to check if that was a good place for us to start swapping mirage library management methods
<avsm> sure -- cstruct is very boring though. I just wanted to say that https://github.com/ocaml/opam-repository/pull/9154 is progressing and touches a zillion packages. if you spot breakage please let me know
<avsm> oh and i got so bored i also posted about using opam-ed to automate the constraint updates: https://discuss.ocaml.org/t/opam-ed-quickly-edit-opam-fields-from-the-cli/257
<avsm> back to discuss.ocaml.org, in a smooth segway :-P
<avsm> anyone got opinions about using this more?
<avsm> or are you all too busy posting there to comment here
<avsm> i am assuming the latter
<yomimono> I was too busy asking my Twitter feed for strategies to deal with stuff that lives in the browser and wants to be occasionally checked
<yomimono> Loads of people like interacting with things that are like that, so there must be a good way of doing it
<yomimono> I'll go on a fact-finding mission and report back
<avsm> hah yes indeed. working together to figure out how to make it more integrated with email workflow would be useful. https://discuss.ocaml.org/t/email-subscription/137/
<Drup> yomimono: in the case of discuss, mailing list mode works fairly well
<avsm> that's all i had to say on that really -- encourage people to use the forum to see if we can make it a more central place for the ocaml-related parts of mirage
<avsm> ill mail the devel list as well
<avsm> i think it also solves a lot of problems with newcomers to mirage -- the email list can be a little intimidating due to the difficulty of browsing archives
<yomimono> yeah, and we've had people report that their messages go missing :(
<avsm> thats all from me on that
<djs55> I've also forgotten the moderator password after the last change :(
<avsm> haha
<yomimono> that... seems bad, are you the only person who had a moderator account?
<avsm> i think a gentle retirement of the mailing list, and/or a migration towards a @mirage.io for it makes sense anyway
<Drup> yomimono: in general, my strategy is the following: "Does it has RSS ? Yes, use RSS. No: Do I care enough to be polluted by email ? Yes => Maybe register to a mailing list. No => That website lost a user"
<djs55> I don't think I'm the only guilty one, but I don't know who the others are :)
<avsm> sounds sensible drup
<avsm> i think djs55 me and amir
<avsm> i have no idea where my password is
<avsm> this answers the mystery of the missing emails
<yomimono> so possibly amir is our only hope
<avsm> or lars
<avsm> lets take this discussion offline :P
<yomimono> good call
<avsm> (but not the mailing list, as it'll get lost)
<yomimono> talex5 wanted to tell us about the amazing progress he's making with capnp
<yomimono> (if I'm reading this right)
<talex5> Hmm, not really. It's quite a way for being ready for use.
<talex5> *from
<avsm> i added that as https://github.com/pelzlpj/capnp-ocaml/issues/12 -- looks like we will migrate it to the mirage/ org
<talex5> A rough skeleton is at https://github.com/mirage/capnp-rpc
<talex5> Mostly I've been working on the schema compiler that avsm linked above first.
<talex5> (including a jbuilder port, but that loses some runtime performance currently)
<avsm> waaat
<avsm> how does the build system affect runtime performance?
<talex5> Module aliases and flambda don't play well together currently.
<avsm> oh
<avsm> is there an upstream ocaml issue about that? lpw25 and mshinwell are actively hacking on flambda, and they use module aliases a lot
<avsm> thanks!
<avsm> phew, my assertions about lpw25 and mshinwell are backed up by their comments on that report
<avsm> thats it from me on that
yomimono has quit [Quit: Ex-Chat]
yomimono_ has joined #mirage
<avsm> any other business i guess? with a whole 5 minutes left. lots going on :-)
<yomimono_> (sorry, ctrl-R disconnects in this IRC client apparently)
<avsm> i have the POWER machines now from IBM, not had a chance to configure them yet
<yomimono_> cool!
<yomimono_> is there a plan for access to the machines?
<yomimono_> in case remote folks want to play with them... she asked, definitely not self-interestedly
<avsm> and docs.mirage.io is rebuilding again. lots of failing libraries in https://github.com/mirage/mirage/blob/master/Dockerfile.doc#L139 if anyone cares to fix some broken libraries
<avsm> yomimono_: working on it, suggestions for ssh key sharing mechanisms welcome :)
mort___ has quit [Quit: Leaving.]
<yomimono_> avsm: tilde.town and other retro things seem to work well on just "give us your nick and your public key and say you agree to this thing"
<avsm> nice! not seen that, will give it a try
<avsm> thanks everyone! i need to run now. port all the libs to jbuilder, or help review :-)
<yomimono_> test all the things :)
<avsm> :)
talex5 has quit [Quit: Leaving]
balduin has joined #mirage
mort___ has joined #mirage
ubeatlenine has quit [Ping timeout: 255 seconds]
mort___ has quit [Client Quit]
ubeatlenine has joined #mirage
<kensan> mato: Please use the devel-mirage-debian-stretch branch of the Muen repository.
<kensan> mato: There will possibly be some rebasing of that branch since the ada-bfd build fix will hit devel sooner than later.
yomimono_ has quit [Ping timeout: 268 seconds]
<mato> kensan: Ok, thanks, I'll take a look tomorrow, in a meeting atm.
<kensan> mato: Ok thanks.
avsm has quit [Ping timeout: 260 seconds]
brson has joined #mirage
TImada has quit [Quit: Page closed]
yomimono_ has joined #mirage
AltGr has left #mirage [#mirage]
brson has quit [Quit: leaving]
brson has joined #mirage
yomimono_ has quit [Ping timeout: 268 seconds]
mort___ has joined #mirage
yegods has joined #mirage
ubeatlenine has quit [Quit: WeeChat 1.8]
ubeatlenine has joined #mirage
balduin has quit [Ping timeout: 246 seconds]
seangrove has quit [Ping timeout: 260 seconds]
ubeatlenine has quit [Quit: WeeChat 1.8]
ubeatlenine has joined #mirage
ubeatlenine has left #mirage [#mirage]
ubeatlenine has joined #mirage
ubeatlenine has left #mirage [#mirage]
brson has quit [Quit: leaving]
brson has joined #mirage
mort___ has quit [Quit: Leaving.]
brson has quit [Quit: leaving]
brson has joined #mirage
maxwell_yang has joined #mirage
maxwell_yang has quit [Client Quit]
yegods has quit [Remote host closed the connection]
dudelson[m] is now known as dudelson
maxwell-yang has joined #mirage