Re: Release DUB 1.0.0

2016-06-20 Thread Basile B. via Digitalmars-d-announce

On Monday, 20 June 2016 at 15:52:46 UTC, Sönke Ludwig wrote:

[...]
This release also adds support for single-file packages, which 
can be used for conveniently writing small scripts and 
applications. It supports a shebang line, so that directly 
executing the script on Posix systems also works (using "chmod 
+x"):


#!/usr/bin/env dub
/+ dub.sdl:
name "colortest"
dependency "color" version="~>0.0.3"
+/



You should add a system to support example files, without 
dependency. For example in a static library, something that would 
indicate that the package in which the file resides is itself a 
dependency but don't have to be downloaded:



package
examples
ex1.d
ex2.d
source
package
src1.d

ex1.d
 /+ dub.sdl:
 name "package"
 dependency "this"  (or dependency "../..")
 +/


from ex1 you should be able to locate the package by using 
.dirName until a dub.json is found. Maybe that if the dep value 
is a relative path that leads to a description this works too.


Re: LDC+Dub+Vibe.d work on SmartOS 64bit now

2016-06-20 Thread flamencofantasy via Digitalmars-d-announce

On Wednesday, 8 June 2016 at 15:35:32 UTC, Johan Engelen wrote:

On Wednesday, 8 June 2016 at 10:06:00 UTC, Oleg Nykytenko wrote:

On Wednesday, 8 June 2016 at 08:43:59 UTC, Joakim wrote:

[...]


We haven't run library's tests.
What right way to run this tests?

But:
We ported our sufficiently big server application from Linux 
to SmartOS x64.
All application tests is OK. Application working now on 
testing server in production like regime under full load.
And it's working fine. We're planning to use it in production 
in future.


Are you interested in running a buildbot for LDC on your 
platform to detect issues early?
See: 
http://forum.dlang.org/thread/hikcbbqqnpvvyirxg...@forum.dlang.org


Thanks,
  Johan


What are the system requirements for a SmartOS buildbot?


Re: Release DUB 1.0.0

2016-06-20 Thread Dechcaudron via Digitalmars-d-announce

On Monday, 20 June 2016 at 15:52:46 UTC, Sönke Ludwig wrote:
I'm pleased to announce the release of the first stable version 
of the DUB package manager.


Congratulations and thank you from all of us! DUB is amazing!!!




Re: Release DUB 1.0.0

2016-06-20 Thread Sönke Ludwig via Digitalmars-d-announce

Am 20.06.2016 um 21:11 schrieb Jacob Carlborg:

On 2016-06-20 17:52, Sönke Ludwig wrote:

I'm pleased to announce the release of the first stable version of the
DUB package manager. Stable in this case means that the API, the command
line interface and the package recipe format will only receive fully
backwards compatible changes and additions for a while.


Great work :)


The main (high-level) priority for the upcoming versions will be adding
C family language build support (starting with C/C++ and ObjC). There is
a draft for how such support might look like, for anyone interested in
discussing this in prior: https://github.com/dlang/dub/wiki/DEP5


The DEP explicitly mentions Objective-C as not part of the DEP. But
above you're mentioning Objective-C?

It should be just as easy to support Objective-C and Objective-C++ as
well from the perspective of the tool. For Objective-C it's basically
the C compiler but with .m files and for Objective-C++ it's the C++
compiler but with .mm files.



I mostly just wanted to keep the DEP small and focused, but adding 
Objective-C/C++ is indeed trivial once C/C++ is there (modulo some small 
additional features).


Re: Release DUB 1.0.0

2016-06-20 Thread Jacob Carlborg via Digitalmars-d-announce

On 2016-06-20 17:52, Sönke Ludwig wrote:

I'm pleased to announce the release of the first stable version of the
DUB package manager. Stable in this case means that the API, the command
line interface and the package recipe format will only receive fully
backwards compatible changes and additions for a while.


Great work :)


The main (high-level) priority for the upcoming versions will be adding
C family language build support (starting with C/C++ and ObjC). There is
a draft for how such support might look like, for anyone interested in
discussing this in prior: https://github.com/dlang/dub/wiki/DEP5


The DEP explicitly mentions Objective-C as not part of the DEP. But 
above you're mentioning Objective-C?


It should be just as easy to support Objective-C and Objective-C++ as 
well from the perspective of the tool. For Objective-C it's basically 
the C compiler but with .m files and for Objective-C++ it's the C++ 
compiler but with .mm files.


--
/Jacob Carlborg


Re: QtE5 - is a wrapping of Qt-5 for D

2016-06-20 Thread Marco Leise via Digitalmars-d-announce
Very nice!

-- 
Marco



Re: QtE5 - is a wrapping of Qt-5 for D

2016-06-20 Thread Nick Sabalausky via Digitalmars-d-announce

On 06/20/2016 12:52 PM, MGW wrote:

This my library has about 400 functions from Qt and is quite efficient
for small applications.



Ooh, awesome, this is something D really needs! Definitely going to have 
to give this a try.


Re: Release DUB 1.0.0

2016-06-20 Thread Guillaume Piolat via Digitalmars-d-announce

On Monday, 20 June 2016 at 15:52:46 UTC, Sönke Ludwig wrote:
I'm pleased to announce the release of the first stable version 
of the DUB package manager.


Congrats! Can't wait to see DUB bundled with DMD.


Re: Release DUB 1.0.0

2016-06-20 Thread Craig Dillabaugh via Digitalmars-d-announce

On Monday, 20 June 2016 at 15:52:46 UTC, Sönke Ludwig wrote:
I'm pleased to announce the release of the first stable version 
of the DUB package manager. Stable in this case means that the 
API, the command line interface and the package recipe format 
will only receive fully backwards compatible changes and 
additions for a while.


[...]


Congratulations on the 1.0.0 release, and thanks for providing 
this tool to the community.


QtE5 - is a wrapping of Qt-5 for D

2016-06-20 Thread MGW via Digitalmars-d-announce
This my library has about 400 functions from Qt and is quite 
efficient for small applications.


https://github.com/MGWL/QtE5

Small video about QtE5 and id5 written on its basis - an example 
of use.

QtE5 on Mac OSX

https://www.youtube.com/watch?v=JBA4vkT5uKE



Release DUB 1.0.0

2016-06-20 Thread Sönke Ludwig via Digitalmars-d-announce
I'm pleased to announce the release of the first stable version of the 
DUB package manager. Stable in this case means that the API, the command 
line interface and the package recipe format will only receive fully 
backwards compatible changes and additions for a while.


This release also adds support for single-file packages, which can be 
used for conveniently writing small scripts and applications. It 
supports a shebang line, so that directly executing the script on Posix 
systems also works (using "chmod +x"):


#!/usr/bin/env dub
/+ dub.sdl:
name "colortest"
dependency "color" version="~>0.0.3"
+/

void main()
{
import std.stdio : writefln;
import std.experimental.color.conv;
import std.experimental.color.hsx;
import std.experimental.color.rgb;

auto yellow = RGB!("rgb", float)(1.0, 1.0, 0.0);
writefln("Yellow in HSV: %s", yellow.convertColor!(HSV!()));
}

Instead of a separate file, the contents of the package recipe file go 
into a specially formatted comment within the source code itself. The 
comment must be the first token in the D file (apart from the optional 
shebang line) and must be of the form /+ dub.(json/sdl): ... +/ where 
"..." is a place holder for the actual recipe contents.


The main (high-level) priority for the upcoming versions will be adding 
C family language build support (starting with C/C++ and ObjC). There is 
a draft for how such support might look like, for anyone interested in 
discussing this in prior: https://github.com/dlang/dub/wiki/DEP5


BTW, we now have almost 800 public packages in the registry, covering 
more and more application areas. The growth is not exponential, but very 
steady.


Full change log:
https://github.com/D-Programming-Language/dub/blob/master/CHANGELOG.md

Download:
http://code.dlang.org/download


Making Of: LDC 1.0

2016-06-20 Thread Mike Parker via Digitalmars-d-announce
Kai Nacke has put together a guest post for the D Blog [1] on how 
he decided the time was right for a 1.0 release of LDC. The 
reddit thread is at [2].


[1] http://dlang.org/blog/2016/06/20/making-of-ldc-1-0/
[2] 
https://www.reddit.com/r/programming/comments/4oz8h9/making_of_ldc_10_a_post_by_the_maintainer_of_the/


Re: D-Man culture

2016-06-20 Thread Martin Tschierschke via Digitalmars-d-announce

On Sunday, 19 June 2016 at 15:01:33 UTC, Seb wrote:

Hi,

I am not sure how much you have heard about the D-Man, but in 
Japan there is an entire culture based on the D-Man!
As I learned about this by accident (and even Walter didn't 
know about it), I thought I share this great movement with the 
DLang community!

[...]
Funny stuff!

I found this link useful: http://dlangcomicstrips.tumblr.com/



Re: dlang-requests 0.1.7 released

2016-06-20 Thread ikod via Digitalmars-d-announce

On Friday, 17 June 2016 at 17:31:55 UTC, ikod wrote:
On Tuesday, 14 June 2016 at 14:59:37 UTC, Andrei Alexandrescu 
wrote:

On 6/11/16 7:03 PM, ikod wrote:

Hello,

Dlang-requests is library created under influence of 
Python-requests,

with primary goal of easy to use and performance.


...


Thanks! Does the project have a dub presence? How does it 
compare feature-wise and speed-wise with curl? -- Andrei


Hello,

Finally, I made some improvements and run minimal performance 
tests against command-line curl. I wrote simple code for file 
download using dlang-requests, run it and curl for the same 
urls(httpbin server on my notebook) and compare "total", 
"system", and "user" time for different cases. You can find 
numbers and code below.
So my conclusion is - performances are comparable for these 
cases, but there is some field for improvement in 
dlang-requests.


Case 1 - 50Mb of random data, no any encoding
Case 2 - 50Mb of random data, transfer chunked
Case 3 - 50Mb of random data, transfer chunked, content gzip

  measured times, sec
-
 |   user|   system  |   total
 Case|---|---|---
 | d-r | curl|  d-r| curl| d-r | curl
-|-|-|-|-|-|-
  1  | 0.17| 0.14| 0.20| 0.32| 51.7| 52.2
  2  | 0.19| 0.11| 0.15| 0.21| 51.8| 51.9
  3  | 0.21| 0.15| 0.11| 0.15| 51.5| 52.1


Finally after all unnecessary memory movements were cleaned up, 
results for dlang-requests and curl almost equals.


  measured times, sec
 -
  |   user|   system  |   total
  Case|---|---|---
  | d-r | curl|  d-r| curl| d-r | curl
 -|-|-|-|-|-|-
   1  | 0.14| 0.14| 0.15| 0.32| 53.3| 52.2
   2  | 0.13| 0.11| 0.11| 0.21| 51.1| 51.9
   3  | 0.18| 0.15| 0.08| 0.15| 51.2| 52.1




import std.stdio;
import requests;

pragma(lib, "ssl");
pragma(lib, "crypto");

void main()
{
auto sink = File("/dev/null", "wb");
auto rq = Request();
rq.useStreaming = true;
auto rs = 
rq.get("http://127.0.0.1:8080/stream-bytes/5120;);

auto stream = rs.receiveAsRange();
while(!stream.empty) {
sink.rawWrite(stream.front);
stream.popFront;
}
}





Re: Button: A fast, correct, and elegantly simple build system.

2016-06-20 Thread Rory McGuire via Digitalmars-d-announce
On Mon, Jun 20, 2016 at 10:21 AM, Dicebot via Digitalmars-d-announce <
digitalmars-d-announce@puremagic.com> wrote:

> On Monday, 20 June 2016 at 02:46:13 UTC, Jason White wrote:
>
>> This actually sounds nice. Main problem that comes to my mind is that
>>> there is no cross-platform shell script. Even if it is list of plain
>>> unconditional commands there are always differences like normalized path
>>> form. Of course, one can always generate `build.d` as a shell script, but
>>> that would only work for D projects and Button is supposed to be a generic
>>> solution.
>>>
>>
>> I'd make it so it could either produce a Bash or Batch script. Possibly
>> also a PowerShell script because error handling in Batch is awful. That
>> should cover any platform it might be needed on. Normalizing paths
>> shouldn't be a problem either.
>>
>> This should actually be pretty easy to implement.
>>
>
> Will plain sh script script also work for MacOS / BSD flavors? Committing
> just two scripts is fine but I wonder how it scales.
>

Bash script should work with all. I also read that Microsoft is making bash
for windows[1].

[1]
http://www.theverge.com/2016/3/30/11331014/microsoft-windows-linux-ubuntu-bash


Re: Button: A fast, correct, and elegantly simple build system.

2016-06-20 Thread Dicebot via Digitalmars-d-announce

On Monday, 20 June 2016 at 02:46:13 UTC, Jason White wrote:
This actually sounds nice. Main problem that comes to my mind 
is that there is no cross-platform shell script. Even if it is 
list of plain unconditional commands there are always 
differences like normalized path form. Of course, one can 
always generate `build.d` as a shell script, but that would 
only work for D projects and Button is supposed to be a 
generic solution.


I'd make it so it could either produce a Bash or Batch script. 
Possibly also a PowerShell script because error handling in 
Batch is awful. That should cover any platform it might be 
needed on. Normalizing paths shouldn't be a problem either.


This should actually be pretty easy to implement.


Will plain sh script script also work for MacOS / BSD flavors? 
Committing just two scripts is fine but I wonder how it scales.