Re: Dreams come true: Compiling and running linux apps on windows :)
On Saturday, 6 August 2016 at 17:34:14 UTC, Andre Pany wrote: Hi, there is a new feature with the recent windows 10 update. You now can compile and run your linux apps (console only) on windows. Install XMing and run GUI apps too!
Re: Running a D game in the browser
On Friday, 5 August 2016 at 13:18:38 UTC, Johan Engelen wrote: That patch doesn't look too bad. Could you introduce a CMake option for building with Emscripten-fastcomp? And a #define "LDC_LLVM_EMSCRIPTEN" or something like that, so that you can change `#if LDC_LLVM_VER >= 309 && 0` to `#if LDC_LLVM_VER >= 309 && !LDC_LLVM_EMSCRIPTEN`. Should be mergable into LDC master then! I could definitely formalize things a bit, but any patch of this kind would quickly be obsolete, as Emscripten catches up with LLVM versions. Moreover, I don't feel comfortable polluting LDC with the specificities of some obscure use case (as cool as this use case can be!). It might be preferable - though harder - to patch Emscripten so it aligns on LLVM official API versions.
This Week in D: debugging uncaught exceptions
I decided to write up a think on untrapping exceptions this week: http://arsdnet.net/this-week-in-d/2016-aug-07.html Next week I'll prolly talk about calling D from Ruby. Last week, we had a status report from Stefan Koch on his CTFE engine. If you aren't already following this, every Sunday night or Monday morning, the little newsletter comes out with a snapshot of forum activity and about half of them have some kind of longer article or tip or other such educational content. The RSS feed (linked on the page) is also a single-page archive so you can search for old things there too!
Re: Dreams come true: Compiling and running linux apps on windows :)
On Saturday, 6 August 2016 at 17:34:14 UTC, Andre Pany wrote: there is a new feature with the recent windows 10 update. You now can compile and run your linux apps (console only) on windows. For those who might not be aware of this and are looking for a little more info, it's called the "Windows Subsystem for Linux" (WSL) Wikipedia Entry: https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux Microsoft's overview: https://blogs.msdn.microsoft.com/wsl/2016/04/22/windows-subsystem-for-linux-overview/ Microsoft blog post: https://blogs.windows.com/buildingapps/2016/03/30/run-bash-on-ubuntu-on-windows/ On a related note, Microsoft has also created an open-source MI interface to GDB: https://github.com/Microsoft/MIEngine. You can install the Visual Studio 2015 plugin through Nuget - if I remember correctly it is this plugin: https://visualstudiogallery.msdn.microsoft.com/725025cf-7067-45c2-8d01-1e0fd359ae6e. There's a nice video about it here: https://www.youtube.com/watch?v=-3toI8L3Oug I currently use this to do ARM microcontroller development in Visual Studio 2015 with GCC and OpenOCD. Mike
Re: Dreams come true: Compiling and running linux apps on windows :)
On Sunday, 7 August 2016 at 03:06:27 UTC, Martin Nowak wrote: What OS does it detect and download? $lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description:Ubuntu 14.04.4 LTS Release:14.04 Codename: trusty
Re: Autotesting dub packages with dmd nightly
On Saturday, 16 July 2016 at 20:34:49 UTC, Sebastiaan Koppe wrote: I am aiming really low at first, but will eventually add things like memory usage, history, notifications, etc. I actually don't think this makes sense. You're not in the position to maintain 1K+ packages, it's the library owners that need to test their code. Just this short list I'm using for the project tester is hardly maintainable. https://github.com/MartinNowak/project_tester (uses Jenkins, no need to write yet another CI). I've already thought about many different aspects of this and here are the 2 things that are useful and might work out. - Implement a tester that runs for every PR (just the other testers) and tests the most popular/important dub packages. Once a day is not enough b/c will feel responsible for breakages, we really need feedback before merging. - Show test results of various CIs on code.dlang.org. Testing a dub package on Travis-CI is already a no-brainer. For example the following .travis.yml would test a package against all dmd release channels. ```yaml language: d d: [dmd, dmd-beta, dmd-nightly] ```
Re: Battle-plan for CTFE
On Saturday, 6 August 2016 at 14:26:00 UTC, Stefan Koch wrote: I added a switch to my version of dmd which allows to toggle the ctfe engine. So now I can compare apples to apples when posting perf data. That's indeed very useful, also for testing purposes.
Re: Battle-plan for CTFE
On Saturday, 6 August 2016 at 23:04:48 UTC, Stefan Koch wrote: On Saturday, 6 August 2016 at 19:07:10 UTC, Rory McGuire wrote: Hi Stefan, Are you saying we can play around with ascii string slicing/appending already? No, not now, but very soon. I want to have _basic_ utf8 support before I am comfortable with enabling string operations. Tomorrow this is going to work.
Re: Autotesting dub packages with dmd nightly
On Saturday, 6 August 2016 at 20:00:53 UTC, Basile B. wrote: On Saturday, 6 August 2016 at 19:06:34 UTC, Sebastiaan Koppe wrote: - code.dlang.org has an api but doesn't provide an endpoint to retrieve all packages/version. Now I just scrape the site instead (thanks Adam for your dom implementation). No endpoint but still possible in two steps. Yeah, I considered something like that myself. I find scraping to be better for both sides though, and simpler. A good api would certainly be better. On Saturday, 6 August 2016 at 20:08:47 UTC, Seb wrote: Why don't you make a PR to the dub registry (https://github.com/dlang/dub-registry) to get such an endpoint? Or at least open an issue ;-) https://github.com/dlang/dub-registry/issues/171
Re: Autotesting dub packages with dmd nightly
On Saturday, 6 August 2016 at 19:46:52 UTC, Seb wrote: That are excellent news! Thanks. 1) Send the packages a notification about the build error (e.g. Github comment) - this should probably be tweaked a bit, s.t. it doesn't spam too often for still broken packages I was thinking about having people register for notifications themselves. 2) Allow easy, manual build of special branches for the core team. I need something similar for dev/testing purposes as well. Since I am using digger it is really easy to build whatever dmd + pull request is needed. Problem is controlling access. 3) Once you have the API a) (try to) get a shield badge (-> http://shields.io/) Nice find. Will use. b) Make the data available to the dub-registry (-> https://github.com/dlang/dub-registry) Sure. 4) Assess the quality of the unittests. Probably the easiest is `dub test -b unittest-cov`, and then summing up the total coverage of all generated .lst files I am not sure this is a good idea. Besides the fact that coverage doesn't correlate with quality, it is outside of the purpose for this tool (identifying dmd regressions and identifying broken packages). 5) Log your daily "broken" statistics - could be a good indicator of whether your hard work gets acknowledged. I rather hear it from people than seeing it in the stats :) 6) Regarding linker errors - I can only redirect you to the open DUB issue (https://github.com/dlang/dub/issues/852) and DEP 5 (https://github.com/dlang/dub/wiki/DEP5). It is an open problem and I don't wont to solve it. For now I think I will just install the most important ones and just accept that not all packages will be build. On another note, I do think the dub package definition could use some extra fields. Like compatible platforms and compatible dmd versions. Take vibe.d for instance, it is specifically build for certain dmd versions and it makes no sense for dubster to try to compile it with an unsupported version. Also, it allows dub itself to notify you of incompatible packages w.r.t. the installed compiler. Same idea for platform.
Re: Dreams come true: Compiling and running linux apps on windows :)
On Sunday, 7 August 2016 at 08:07:37 UTC, Andre Pany wrote: On Sunday, 7 August 2016 at 03:06:27 UTC, Martin Nowak wrote: Good news, I'm really not that keen to write a powershell script. What OS does it detect and download? I am not sure how to get this information. The windows functionality is labeled as "Bash on ubuntu on windows". I executed the commands from the script manually: uname -s Linux uname -m x86_64 Kind regards André It's offer full Linux Kernel API to *nix applications. Even a VFS following the Ubuntu filesystem conventions, where Windows drives are mount like /mnt/c , /mnt/d , etc. Really you have a full Ubuntu working on your Windows on some kind of inverse Wine. However, the new console of Windows 10 (that got a lot of improvements), have some nasty problems related to keyboard input that make using some ncurses, and similar, more problematic. For example, arrows on Vim/NeoVim not ends to work correctly. And actually using conemu and similer alternative terminals are hit by the same issue. Also, there is some people that manage to run X11 apps, using a Windows native X11 server plus (a full GNU/Linux desktop). This is really great for Linux & Unix fans that need to work on Windows by causes outside of his control. Sadly, where I work, we are using Windows 7, so I need to use to Cygwin and his "limited" set of packages.
Re: Dreams come true: Compiling and running linux apps on windows :)
On Sunday, 7 August 2016 at 03:06:27 UTC, Martin Nowak wrote: Good news, I'm really not that keen to write a powershell script. What OS does it detect and download? I am not sure how to get this information. The windows functionality is labeled as "Bash on ubuntu on windows". I executed the commands from the script manually: uname -s Linux uname -m x86_64 Kind regards André
Re: Dreams come true: Compiling and running linux apps on windows :)
On Sunday, 7 August 2016 at 03:06:27 UTC, Martin Nowak wrote: On Saturday, 6 August 2016 at 17:34:14 UTC, Andre Pany wrote: The build script is working fine: curl -fsS https://dlang.org/install.sh | bash -s dmd Good news, I'm really not that keen to write a powershell script. What OS does it detect and download? AFAIK embedded linux support is based on Ubuntu