digitalmars.D.learn - Is https://tour.dlang.org under maintenance?
- ChrisPiker (22/22) Jan 26 2018 I'm trying to learn D, but many of my site searches take me to
- Seb (24/47) Jan 26 2018 No it's not on maintenance.
- ChrisPiker (14/20) Jan 26 2018 I'm running version 52.5.1 on RedHat 6, turned off all add-ons to
- Seb (28/49) Jan 26 2018 It's still strange. Mind to open an issue and share screenshots
- ChrisPiker (21/39) Jan 26 2018 I just tried going there on a Mint 18 system running firefox
- Seb (15/36) Jan 26 2018 The (offline) tour allows you to run the code directly in your
- ChrisPiker (11/23) Jan 26 2018 Well now libevent_pthreads is missing. Anyway, don't worry about
- Seb (4/18) Jan 27 2018 Wow thanks a lot!
I'm trying to learn D, but many of my site searches take me to https://tour.dlang.org, which cannot be displayed. Of course it may be a local problem (or it might not.) In case this is affecting anyone else, the error I'm getting from firefox is ----------------------------------------------------------------------- Your connection is not secure The website tried to negotiate an inadequate level of security. tour.dlang.org uses security technology that is outdated and vulnerable to attack. An attacker could easily reveal information which you thought to be safe. The website administrator will need to fix the server first before you can visit the site. Error code: NS_ERROR_NET_INADEQUATE_SECURITY ----------------------------------------------------------------------- Have tried going to the http version but your server (or my browser) seems to be setup to auto-redrect to the https version. Please excuse this post if this is a known issue. Now if I could just find a diagram of the exception tree in phobos. I'm trying to throw an exception when all possible environment variables my program could use to find the current account's home directory are not present but can't figure out which one would be appropriate. Thanks,
Jan 26 2018
On Friday, 26 January 2018 at 22:56:00 UTC, ChrisPiker wrote:I'm trying to learn D, but many of my site searches take me to https://tour.dlang.org, which cannot be displayed. Of course it may be a local problem (or it might not.) In case this is affecting anyone else, the error I'm getting from firefox isNo it's not on maintenance. I am not getting this error on neither Chrome or Firefox. See: https://imgur.com/a/wRhrw What Firefox version are you using? Anything specific about your setup?----------------------------------------------------------------------- Your connection is not secure The website tried to negotiate an inadequate level of security. tour.dlang.org uses security technology that is outdated and vulnerable to attack. An attacker could easily reveal information which you thought to be safe. The website administrator will need to fix the server first before you can visit the site. Error code: NS_ERROR_NET_INADEQUATE_SECURITY ----------------------------------------------------------------------- Have tried going to the http version but your server (or my browser) seems to be setup to auto-redrect to the https version.Yes, Google downranks websites which don't redirect by default to HTTPS.Please excuse this post if this is a known issue.FYI for the future: you can report issues here: https://github.com/dlang-tour/coreNow if I could just find a diagram of the exception tree in phobos. I'm trying to throw an exception when all possible environment variables my program could use to find the current account's home directory are not present but can't figure out which one would be appropriate.There's no complex exception hierarchy. You can easily get a list of all exceptions in Phobos, e.g.grep -r ": Exception" *Why don't you create your own exception? ``` import std.exception; class InputException : Exception { /// mixin basicExceptionCtors; } ... throw new InputException("Environment variable " ~ s ~ " isn't set."); ```
Jan 26 2018
On Friday, 26 January 2018 at 23:55:06 UTC, Seb wrote:No it's not on maintenance. I am not getting this error on neither Chrome or Firefox. See: https://imgur.com/a/wRhrwOh good. Was a bit worried that it might be affecting everyone.What Firefox version are you using? Anything specific about your setup?I'm running version 52.5.1 on RedHat 6, turned off all add-ons to make sure none were affecting page load but still received the same result. I'll try again from a computer running a different OS and/or browser and see what happens.Why don't you create your own exception?I'm new to D and just trying to use the tools already provide in the standard library before making my own or looking for alternatives. Coming from Java and Python it seems to be re-inventing the wheel a bit to generate purpose build exceptions to report environment problems. These must occur all the time in may different programs. If the common D way is make your own exceptions I could do that, no problem.
Jan 26 2018
On Saturday, 27 January 2018 at 01:15:03 UTC, ChrisPiker wrote:On Friday, 26 January 2018 at 23:55:06 UTC, Seb wrote:It's still strange. Mind to open an issue and share screenshots here? https://github.com/dlang-tour/core/issues/new tour.dlang.{org,io} uses LetsEncrypt which is used by a lot of websites. BTW you can run the tour offline too: ``` git clone https://github.com/dlang-tour/core cd core git submodule foreach git pull origin master dub ```No it's not on maintenance. I am not getting this error on neither Chrome or Firefox. See: https://imgur.com/a/wRhrwOh good. Was a bit worried that it might be affecting everyone.What Firefox version are you using? Anything specific about your setup?I'm running version 52.5.1 on RedHat 6, turned off all add-ons to make sure none were affecting page load but still received the same result. I'll try again from a computer running a different OS and/or browser and see what happens.In D typically you just use `enforce`: https://dlang.org/phobos/std_exception.html#enforce (except for bigger projects / libraries, of course) Example: ``` enforce("The environment variable FOOBAR isn't defined", "FOOBAR" !in environment); ``` The mantra here is that in the majority of all cases you don't care as long as the uncaught exception kills the program and prints a nice message to the user or your log. And more complex projects want to define and use their own Exception hierarchies anyways. The standard library only defines Exceptions it can/will throw itself.Why don't you create your own exception?I'm new to D and just trying to use the tools already provide in the standard library before making my own or looking for alternatives. Coming from Java and Python it seems to be re-inventing the wheel a bit to generate purpose build exceptions to report environment problems. These must occur all the time in may different programs. If the common D way is make your own exceptions I could do that, no problem.
Jan 26 2018
On Saturday, 27 January 2018 at 01:53:12 UTC, Seb wrote:It's still strange. Mind to open an issue and share screenshots here? https://github.com/dlang-tour/core/issues/newI just tried going there on a Mint 18 system running firefox 57.0.1 and everything loaded just fine. I'm hesitant to create more issue noise when the problem is only present (so far) on a very specific old Linux distribution. I appreciate that D is mostly maintained by volunteers and don't want to create useless work for them.BTW you can run the tour offline too: ``` git clone https://github.com/dlang-tour/core cd core git submodule foreach git pull origin master dub ```Not that it's worth debugging since wget should get the job done, but there seems to be a dependency library missing on our systems. The error message when running dub was: ``` ... Compiling Diet HTML template tour.dt... Compiling Diet HTML template editor.dt... Linking... /usr/bin/ld: cannot find -levent collect2: ld returned 1 exit status Error: linker exited with status 1 dmd failed with exit code 1. ```In D typically you just use `enforce`: https://dlang.org/phobos/std_exception.html#enforce (except for bigger projects / libraries, of course) Example: ``` enforce("The environment variable FOOBAR isn't defined", "FOOBAR" !in environment); ```Well that looks handy. Thanks!
Jan 26 2018
On Saturday, 27 January 2018 at 02:59:24 UTC, ChrisPiker wrote:The (offline) tour allows you to run the code directly in your browser - though of course that's really an absolute necessity.BTW you can run the tour offline too: ``` git clone https://github.com/dlang-tour/core cd core git submodule foreach git pull origin master dub ```Not that it's worth debugging since wget should get the job donebut there seems to be a dependency library missing on our systems. The error message when running dub was: ``` ... Compiling Diet HTML template tour.dt... Compiling Diet HTML template editor.dt... Linking... /usr/bin/ld: cannot find -levent collect2: ld returned 1 exit status Error: linker exited with status 1 dmd failed with exit code 1. ```The Dlang-Tour uses the web framework vibe.d (https://github.com/vibe-d/vibe.d). vibe.d currently uses libevent as underlying event library by default. Though with the upcoming 0.8.3 release that's about to change soon - it will then use the native D vibe-core scheduler by default. You can already use vibe-core today if you want to: dub --override-config="vibe-d:core/vibe-core" (BTW libevent is typically available as libevent-dev or libevent-devel.) In any case you can also always read the "pure" Markdown content directly on GitHub: https://github.com/dlang-tour/english
Jan 26 2018
On Saturday, 27 January 2018 at 03:08:29 UTC, Seb wrote:The Dlang-Tour uses the web framework vibe.d (https://github.com/vibe-d/vibe.d). vibe.d currently uses libevent as underlying event library by default. Though withWell now libevent_pthreads is missing. Anyway, don't worry about it we're (finally) switching over to RedHat 7 soon anyway, deployment is underway, that should bring a browser that's not an old extended support release.the upcoming 0.8.3 release that's about to change soon - it will then use the native D vibe-core scheduler by default. You can already use vibe-core today if you want to: dub --override-config="vibe-d:core/vibe-core" (BTW libevent is typically available as libevent-dev or libevent-devel.)I'll build against the native scheduler in the future if I get a chance to write any vibe.d code. Might as well try it out.In any case you can also always read the "pure" Markdown content directly on GitHub: https://github.com/dlang-tour/englishCool, I'll just use that if needed. Anyway, you've been so helpful that I've setup a small monthly recurring D Foundation donation. Have a good evening,
Jan 26 2018
On Saturday, 27 January 2018 at 05:49:00 UTC, ChrisPiker wrote:On Saturday, 27 January 2018 at 03:08:29 UTC, Seb wrote:Wow thanks a lot! I hope you don't run into further problems, but if that does happen, please feel more than free to post here again![...]Well now libevent_pthreads is missing. Anyway, don't worry about it we're (finally) switching over to RedHat 7 soon anyway, deployment is underway, that should bring a browser that's not an old extended support release.[...]I'll build against the native scheduler in the future if I get a chance to write any vibe.d code. Might as well try it out.[...]Cool, I'll just use that if needed. Anyway, you've been so helpful that I've setup a small monthly recurring D Foundation donation. Have a good evening,
Jan 27 2018