
@coeligenai has joined the channel

but that’s only for packages directly published right?

Hi All. I have written a little web-app to show one way of implementing web-apps with Racket. Comments are welcome. https://github.com/soegaard/web-tutorial

Has anyone seen problems with ssh-connect
on windows while building racket?

I am seeing this: C:\Users\pmatos\Projects\racket\racket\src\worksp>..\..\raco pkg install racket-lib
Resolving "racket-lib" via <https://pkgs.racket-lang.org>
Downloading repository <git://github.com/racket/racket/?path=pkgs%2Fracket-lib>
ssl-connect: connect failed (error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version)
context...:
C:\Users\pmatos\Projects\racket\racket\collects\openssl\mzssl.rkt:532:0: error/network
C:\Users\pmatos\Projects\racket\racket\collects\openssl\mzssl.rkt:1471:0: wrap-ports
C:\Users\pmatos\Projects\racket\racket\collects\net\http-client.rkt:67:0: http-conn-open!10

hummm, this might have to do with git
on windows it seems…

@spdegabrielle if you are looking for ideas for next competition, how about best tutorial? A chance to promote existing tutorials and/or showcasing cool racket features.

Interesting results straight from git-checkout
: C:\Users\pmatos\Projects\racket\racket\src\worksp>..\..\racket -l- net/git-checkout --https <http://github.com\|github.com> racket/racket racket-ups
Contacting <http://github.com\|github.com>
ssl-connect: connect failed (error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version)
context...:
C:\Users\pmatos\Projects\racket\racket\collects\openssl\mzssl.rkt:532:0: error/network
C:\Users\pmatos\Projects\racket\racket\collects\openssl\mzssl.rkt:1471:0: wrap-ports
C:\Users\pmatos\Projects\racket\racket\collects\net\http-client.rkt:67:0: http-conn-open!10
C:\Users\pmatos\Projects\racket\racket\collects\net\http-client.rkt:272:0
C:\Users\pmatos\Projects\racket\racket\collects\racket\contract\private\arrow-val-first.rkt:555:3
C:\Users\pmatos\Projects\racket\racket\collects\net\url.rkt:201:0: <http://getpost-impure-port>
C:\Users\pmatos\Projects\racket\racket\collects\net\url.rkt:308:2: redirection-loop
C:\Users\pmatos\Projects\racket\racket\collects\racket\contract\private\arrow-val-first.rkt:555:3
C:\Users\pmatos\Projects\racket\racket\collects\net\git-checkout.rkt:238:0: initial-connect
C:\Users\pmatos\Projects\racket\racket\collects\net\git-checkout.rkt:54:2: retry-loop
(submod "C:\Users\pmatos\Projects\racket\racket\collects\net\git-checkout.rkt" main): [running body]

I guess next step is to check how git-checkout
is implemented, but in any case it doesn’t seem related to the git
for Windows app installed natively.

@pocmatos I believe the git checkout part is implemented in racket.

looks like that means we’re trying too old a TLS version

Maybe relevant? (but Feb 2018 is mentioned) https://github.blog/2017-02-27-crypto-deprecation-notice/

No. Can’t be it. At the end of feb. 2018 they write that all support for TLSv1 was removed. https://github.blog/2018-02-23-weak-cryptographic-standards-removed/

Shouldn’t that effect all package installs that use git?

(at least from one or more platforms)

most likely, @pocmatos’s machine has some openssl version that causes racket to choose something that github thinks only supports an old version of tls

Ok I see now that he isn’t running the packaged version of Racket

I am trying to compile Racket on Windows 10 but failing. I don’t remember installing any openssl libraries so I surprised I have a problem with them. I narrowed down the issue to get-pure-port/headers

I have to find out which libraries racket is trying to ffi to so I can try to update them.

Hopefully I can turn this machine into a windows testing machine for racket.

Does Racket on Windows come with OpenSSL? (this user had the same error as you (but using CentOS) and was advised to upgrade to a newer version in OpenSSL 1.0.2. https://github.com/openssl/openssl/issues/5806

Wait, since you are compiling it yourself - the openssl used might not be the standard Racket one.

@pocmatos can you figure out which version of openssl racket is using?

Will try.

Need awhile cause my kids just got home.

When you build Racket on Windows, it uses the Windows SSL library to get a pre-built OpenSSL library. Since that’s an OpenSSL error message above, I expect that you’ll find a “ssleay32.dll” in “racket/lib”, and that’s the standard Racket build. It should be version 1.1.0-h.

Thanks. I will take a look.

no such dll found in the racket
directory post build.

@mflatt is this dll supposed to be built by racket itself or copied from the system?

Great idea @githree! Would you consider running it? (with my support)

@pocmatos I think the external libraries needs to be built with this script:


Copied from a remote site. Maybe an “ssleay32.dll” is found in the system directory?

That’s how the libraries are built, but a build of just Racket normally downloads versions (as packages) that are already built.

I don’t think I would be the best person running it (I don’t even use twitter :rolling_on_the_floor_laughing: nor other social media) but I can definitely help!

How about writing it up rules etc. ?

OK, I will think of it over the weekend

@soegaard2 your tutorial is pretty cool. you could simplify the setup by having people just do raco pkg install
in the directory they check out

of course, that would require including an info.rkt

Good point. I’ll do that.

@soegaard2 Which tutorial?


Well, the code for a tutorial. I am updating this series of blog posts. http://www.scheme.dk/blog/2007/01/introduction-to-web-development-with.html?showComment=1169391900000