Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • May 25 18:17
    rizo edited #946
  • May 25 18:17
    rizo opened #946
  • May 23 15:12
    dinosaure opened #945
  • May 20 16:42
    ELLIOTTCABLE commented #664
  • May 17 10:01
    dinosaure opened #944
  • May 12 14:40
    bn-d synchronize #943
  • May 12 14:38
    bn-d synchronize #943
  • May 12 14:34
    bn-d edited #943
  • May 12 14:27
    bn-d edited #943
  • May 12 14:24
    bn-d synchronize #943
  • May 12 14:19
    bn-d synchronize #943
  • May 12 14:18
    bn-d opened #943
  • May 02 01:18
    c-cube synchronize #931
  • Apr 30 17:13

    c-cube on wip-effect-await

    wip: effect handler for Lwt.awa… detail basic test and 2 more (compare)

  • Apr 20 11:57
    kit-ty-kate commented #930
  • Apr 20 11:57
    kit-ty-kate commented #930
  • Apr 20 11:56
    kit-ty-kate closed #933
  • Apr 15 10:07

    raphael-proust on master

    Init written byte to 0 for pipe… Merge pull request #941 from Mi… (compare)

  • Apr 15 10:07
    raphael-proust closed #941
  • Apr 15 09:53
    raphael-proust commented #942
Pavel Argentov
@argent-smith
good job ))) you forced me to learn up the Logs )))
Anton Bachin
@aantron
hope its real :) btw you can still use Lwt_log for a long time, it won't be broken.. but if it ever is, it will get a constraint on which version of Lwt it can work with
Pavel Argentov
@argent-smith
With Logs my tests work better ))
Actually, I've learned them both. Lwt_log is easier to start with; Logs is better to elaborate on )
matrixbot
@matrixbot
Orbifx Why has this room got lobby in the name?
Anton Bachin
@aantron
@argent-smith great :)
Orbifx: i don't know, it's the default room created by gitter
Romain Slootmaekers
@toolslive
Did anyone compare performance of Lwt.2.7.0, Lwt.3.0.0, ....Lwt.3.2.1 (or a subset of these) ? Since I observed no bad performance related news, can I assume it's at least qualitatively 'similar' ?
Anton Bachin
@aantron
@toolslive it should be basically unchanged
two of the plots in this graph effectively compare performance of lwt 3.1.0 to 3.2.0 https://github.com/ocsigen/lwt/pull/500#issuecomment-343535322
it looks unchanged
in my own measurements while making changes, the effects were something like small-percentage slowdowns of bind. given that bind is by far not the most common or time-intensive operation performed in an lwt program, i also expected there to be no real effect
Pavel Argentov
@argent-smith
@aantron are there any breaking changes/regressions between 2.7.0 and 3.2.0? (except all those deprecations we know about)
Anton Bachin
@aantron
@argent-smith i believe all the breaking changes are the ones listed in the changelog here https://github.com/ocsigen/lwt/releases/tag/3.0.0, also you can see details here ocsigen/lwt#308
if anything else broke, it's an accident, and we are not aware of any such accidents
matrixbot
@matrixbot
Orbifx Is there a mailing list for oscsigen or lwt?
Orbifx Ocsigen*
Anton Bachin
@aantron
i am vaguely aware of a mailing list for ocsigen, but not one that i use. perhaps @Drup can say better than i
matrixbot
@matrixbot
smondet Orbifx: http://ocsigen.org/ → “Support & community”
Mailing list and #ocsigen
smondet both are low traffic, but stuff still happens
matrixbot
@matrixbot
Orbifx Nice. Would have eventually checked
Anton Bachin
@aantron
smondet: thanks
Anton Bachin
@aantron
Orbifx: i understand the preference for LGPL. would you still allow your contribution to be relicensed under MIT?
matrixbot
@matrixbot
Orbifx I guess, the vast majority of contributors went for that. But I do wonder if they would have been similarly positive for a copyleft licence.
Orbifx Anton Bachin (Gitter): is there a particular reason for choosing MIT? something tactical?
matrixbot
@matrixbot
smondet Orbifx: my 2c: In Ocaml since linking is static, it cannot really be LGPL, it kinda has to be LGPL+Linking-exn. which is a hack that maybe some INRIA lawyer checked in like 1994, but that adds a ton weirdness to an already pretty crazy license (have you tried to read the LGPL itself?).
Orbifx smondet: I have read some of it and about it in the past. ALso, forgot that OCaml does static linking so I can see the issue
Anton Bachin
@aantron
Orbifx: no really specific reason for choosing MIT. just several people have requested it, and i agree that LGPL + some exception is a strange license. even if the ocaml community is used to that, it creates questions for new users that are not from elsewhere in the ocaml community
i don't think Lwt gains anything by having a copyleft license in practice, but we gain clarity for users by switching to a permissive license
after that, the choice of MIT is kind of arbitrary
smondet: +1
Orbifx: by the way, we switched Bisect_ppx to MPL 2.0, because it seemed like a good license that has the best features of copyleft and permissive licenses
however, it seems complex and unfamiliar enough that people still have issues. my impression from that experiment is that since we don't intend to go after anyone anyway, it's best to switch Bisect_ppx to MIT at some point
matrixbot
@matrixbot
Orbifx True. I hope we are not going to miss out on companies using the code but not contributing back, cause they think it's ok.
Orbifx Given Lwt's functionality, I don't think it's critical either.
Anton Bachin
@aantron
i hope so too. i hope it's not legal requirements that have been driving contributions :)
matrixbot
@matrixbot
Orbifx Well..maybe in this case.
Anton Bachin
@aantron
Lwt 4.0.0, 4.0.1 are now out :)
matrixbot
@matrixbot
Orbifx 🎉
kydos
@kydos
Hello Anton, I am experiencing some problems when providing a Lwt version of a relatively complex native communication library. In brief, it seams that a blocking I/O call on a function executed as Lwt_schedule.detach blocks anything else from progressing. I've worked around the problem, but I'd like to get to the bottom of this and understand what is causing this strange interaction. To this end, is there any place where I can see the things that a native library may do or don't. Like masking signals, etc. Thanks very much in advance!
kydos
@kydos
Problem solved. It was due to the fact that some of the ctypes calls were retaining the runtime_lock. I think it would be good to mention this somewhere in the doc. I'll document it on our binding and share the link.
Anton Bachin
@aantron
great :) i assume you were using Lwt_preemptive.detach. there is nothing in Lwt itself that should prevent the thread from progressing, modulo any bugs in Lwt. Lwt_preemptive is ultimately a wrapper around ocaml's own threads. the biggest gotcha in it is probably that the default thread limit is 4 or something, which is not enough for many uses. we definitely want to document any other likely snags, so i'll be happy to look at that link :)
Bruce Ricard
@bruce-ricard
Hello, is there any testing framework that is recommended to test Lwt code? I can't find any documentation about that. I found that you have a test directory at the base of the Lwt repo, are we supposed to be using the same thing? What is it?
kydos
@kydos
Thanks @aantron !
Fabian
@copy
@bruce-ricard Alcotest supports lwt and is used by the Mirage team, as far as I know
Anton Bachin
@aantron
@bruce-ricard, @copy makes a good suggestion with alcotest :) here's a link: https://github.com/mirage/alcotest
@bruce-ricard we have a list of libraries you might want to use with Lwt in the README, perhaps we need to move it higher though https://github.com/ocsigen/lwt#libraries-to-use-with-lwt
and if you find something else that should be on there, please tell us about it/open a PR :)
Bruce Ricard
@bruce-ricard
Great, thank you! I'll give alcotest a try.
I feel like that might be a good thing to put there: https://ocsigen.org/lwt/2.7.0/manual/manual A short section about testing with a reference to alcotest.