mflatt
2019-6-27 12:32:33

I agree with @greg that having rosette-devel and rosette as different packages that supply the same collections fights against the intended approach. The intent is for there to be a rosette package, and you might select a development installation or another one as the current implementation of the package. To make different workspaces that share a main installation but have different package implementations installed, one possibility is to set PLTADDONDIR and treat the workspaces as different users. Another possibility is to use different “config.rktd”s that add a level of package scope as you suggest. To avoid having to use racket -G &lt;config&gt; every time, “config.rktd” supports a 'config-tethered-console-bin-dir entry that will create racket, raco, etc., executables that remember the <config>, so you only have to use racket -G &lt;config&gt; -l- raco setup once, and then you can select the configuration by running a particular racket, raco, etc., executable. Tethering was intended as a step to a raco workspace command, but we never filled in that piece, and no one has used config tethering, yet, as far as I know.


spdegabrielle
2019-6-27 13:23:22

Do any of the parser generators accept ANTLR4 ? https://cql.hl7.org/08-a-cqlsyntax.html https://cql.hl7.org/cql/cql.g4.


stefan.kruger
2019-6-27 13:52:28

If I want to determine if a given string contains any item in a list of substrings, is this a passable solution, or can it be improved? (define (contains-one-of? str strlist) (for/first ([i (in-list strlist)] #:when (string-contains str i)) #t))


alexknauth
2019-6-27 13:59:06

My first thought would be (define (contains-one-of? haystack needles) (ormap (string-contains haystack _) needles)) Using the (f a _) syntax from the fancy-app package to mean the same as (λ (x) (f a x))


alexknauth
2019-6-27 14:00:59

But if you’d rather use a for/-variant loop, for/or might be a better fit than for/first for this function (define (constains-one-of? haystack needles) (for/or ([needle (in-list needles)]) (string-contains haystack needle)))


stefan.kruger
2019-6-27 14:07:26

Thanks!


mflatt
2019-6-27 17:15:26

Does anyone have an informed guess at why the test at https://github.com/racket/racket/blob/master/pkgs/racket-test/tests/openssl/test-ephemeral.rkt fails with http://drdr.racket-lang.org/52352/pkgs/racket-test/tests/openssl/test-ephemeral.rkt ? Sometimes these kinds of errors are just because OpenSSL functions are not called in the right order, sometimes its because something needs to be installed, and sometimes it’s an actual bug…


samth
2019-6-27 17:18:48

@mflatt based on the first google result, my guess is that the upgrade to the drdr machine installed a newer openssl that no longer supports some now-insecure cipher set


mflatt
2019-6-27 20:44:29

I see “ECDHE-RSA-AES128-SHA256” in the output of openssl ciphers, and I find nothing that suggests that “EDH” has been disabled. Also, the client-side SSL_CTX_set_cipher_list calls succeed.


samth
2019-6-27 20:52:04

@mflatt this issue https://github.com/openssl/openssl/issues/5146 suggests that 'secp192k1 is no longer available by default, and indeed if I change that to 'secp521r1 that error goes away (and is replaced by a different issue)


samth
2019-6-27 20:52:26

(goes away on my machine, I should say)


mflatt
2019-6-27 21:00:50

Ok - thanks!


samth
2019-6-27 21:06:51

@mflatt any idea why DrDr got 2x faster on Tuesday?


mflatt
2019-6-27 21:43:36

Not really. It was possibly due to jobs that started running away when futures became more supported but not completely fixed for memory accounting. But that explanation only works if the effect of runaway jobs spills over to later runs, because the relevant commits don’t line up.