Re: PostgreSQL native impl

2017-01-02 Thread Chris Wright via Digitalmars-d-announce
On Mon, 02 Jan 2017 20:29:55 +, Anton wrote:

> Today i spent about hour to write pure-D simple PostgreSQL driver for
> demonstration purposes.
> I was looking for developers interested in complete PostgreSQL driver
> (pure D)
> 
> That demo not implements auth, therefore requires trusted user
> 
> [1] https://github.com/anton-dutov/postgresql-native-d [2]
> https://www.postgresql.org/docs/9.6/static/protocol.html

Nice!

Looks like it wouldn't be much work to add prepared queries.

I notice you rolled your own uri library. Might I point you toward urld? 
It supports ipv6 hosts (probably handy) and unicode domain names (nice to 
have, probably not useful here).

http://code.dlang.org/packages/urld


Re: Terminix Year In Review

2017-01-02 Thread Adam D. Ruppe via Digitalmars-d-announce

On Monday, 2 January 2017 at 18:23:53 UTC, Gerald wrote:
idea what would be involved in creating a GTK widget in D as 
I've never tried it myself.


Yeah, I don't use GTK at all, my backend is pure code (it is an 
abstract class where you implement a few methods to actually do 
user interaction, while the terminal emulation guts are in that 
class) and the frontend is X11/Win32.


It'd prolly be a bit of work then to wrap up my thing with the 
GTK UI implementation.


However note that to get things to the point where it could 
actually be shipped with Terminix for use by the end user is I 
suspect a substantial amount of work. I don't know how feature 
complete your emulator is, but looking at the VTE source code 
as well as the source code for other emulators it's a 
surprisingly complicated area with a lot of edge cases.


Yes, indeed, far more complicated than you'd think! But I have 
actually used mine as my real world terminal emulator for about 
two years now, including with several complex existing programs 
(vim, mutt, finch, and many others) and it works well.



Feel free to ping me on IRC and we can discuss in more detail.


Yeah, we'll have to talk about it some day, the glue code would 
be a pain for both of us but once that's done I think our two 
sides could coexist well.


Re: Terminix Year In Review

2017-01-02 Thread Getald via Digitalmars-d-announce

On Monday, 2 January 2017 at 20:33:04 UTC, Chris Wright wrote:
You could also rip out the logic and the system calls and so 
forth and hook them up (laboriously) to a TextView with 
appropriate styling. Which is probably nontrivial on both sides.


I'm not sure a textview would be viable, it might work for the 
command prompt but I doubt it would handle ncurses type 
applications like vi or nano very well. I also suspect the 
performance wouldn't be very good when dealing with a lot of 
output like cat'ing a large file.





Re: Terminix Year In Review

2017-01-02 Thread Chris Wright via Digitalmars-d-announce
On Mon, 02 Jan 2017 18:23:53 +, Gerald wrote:

> On Monday, 2 January 2017 at 14:55:26 UTC, Adam D. Ruppe wrote:
>> On Monday, 2 January 2017 at 00:53:04 UTC, Gerald wrote:
>>> Terminix is a GTK 3 tiling terminal emulator that has been designed
>>> following the GNOME Human Interface Guidelines.
>>
>> So, how hard would it be for you to swap out parts of the backend? I
>> wrote a terminal emulator in scratch in D for myself and have some
>> nifty features hacked in already.
> 
> Since Terminix is a GTK 3 application, the minimum baseline is that your
> emulator would have to be a GTK 3 Widget, I have no idea what would be
> involved in creating a GTK widget in D as I've never tried it myself.

You could also rip out the logic and the system calls and so forth and 
hook them up (laboriously) to a TextView with appropriate styling. Which 
is probably nontrivial on both sides.

> looking at the VTE source code as well as the source code for other
> emulators it's a surprisingly complicated area with a lot of edge cases.

I glanced over a python-based terminal emulator the other day. It was 
intended as a simple and straightforward example, I think. It was over 
four thousand lines of code. I'm not about to try implementing my own.


Re: PostgreSQL native impl

2017-01-02 Thread Anton via Digitalmars-d-announce

P/S

Posix only


PostgreSQL native impl

2017-01-02 Thread Anton via Digitalmars-d-announce
Today i spent about hour to write pure-D simple PostgreSQL driver 
for demonstration purposes.
I was looking for developers interested in complete PostgreSQL 
driver (pure D)


That demo not implements auth, therefore requires trusted user

[1] https://github.com/anton-dutov/postgresql-native-d
[2] https://www.postgresql.org/docs/9.6/static/protocol.html


Re: DIP 1003: remove `body` as a keyword

2017-01-02 Thread Dicebot via Digitalmars-d-announce
On Saturday, 31 December 2016 at 01:14:23 UTC, Arun 
Chandrasekaran wrote:

On Saturday, 19 November 2016 at 21:16:15 UTC, Dicebot wrote:
DIP 1003 is merged to the queue and open for public informal 
feedback.


PR: https://github.com/dlang/DIPs/pull/48
Initial merged document: 
https://github.com/dlang/DIPs/blob/master/DIPs/DIP1003.md


If you want the change to be approved and have ideas how to 
improve it to better match on 
https://github.com/dlang/DIPs/blob/master/GUIDELINES.md and 
existing published reviews - please submit new PR with 
editorial and ping original author.


Bump, if that makes sense.


I have asked DIP author if he plans any last moment modifications 
and will try to schedule it for review in January.


Re: Terminix Year In Review

2017-01-02 Thread Gerald via Digitalmars-d-announce

On Monday, 2 January 2017 at 14:55:26 UTC, Adam D. Ruppe wrote:

On Monday, 2 January 2017 at 00:53:04 UTC, Gerald wrote:
Terminix is a GTK 3 tiling terminal emulator that has been 
designed following the GNOME Human Interface Guidelines.


So, how hard would it be for you to swap out parts of the 
backend? I wrote a terminal emulator in scratch in D for myself 
and have some nifty features hacked in already.


Since Terminix is a GTK 3 application, the minimum baseline is 
that your emulator would have to be a GTK 3 Widget, I have no 
idea what would be involved in creating a GTK widget in D as I've 
never tried it myself.


Terminix uses the GTK VTE widget for terminal emulation, so the 
more of that API that you implement the easier it is to 
incorporate it. Having said that, if you got it to the point 
where it worked as a base GTK widget I'd be happy to support it 
as an experimental item and abstract the interface along with 
turning off the functionality that it doesn't support compared to 
GTK VTE.


However note that to get things to the point where it could 
actually be shipped with Terminix for use by the end user is I 
suspect a substantial amount of work. I don't know how feature 
complete your emulator is, but looking at the VTE source code as 
well as the source code for other emulators it's a surprisingly 
complicated area with a lot of edge cases. Things like 
transparency, unicode, buffering output to temp files with 
encryption and various performance issues all come to mind. I 
think you mentioned previously that vi works fine in your 
emulator so you've already gotten over one of the major hurdles.


I do have a desire at some point to switch to a D written 
solution for the actual terminal emulation at some point. I 
haven't done it so far because I believe it is a huge amount of 
work and I have my plate full just dealing with the application 
side of things. However, If you are interested in working on that 
I would be very interested in supporting you in that endeavor. 
Feel free to ping me on IRC and we can discuss in more detail.


Re: Terminix Year In Review

2017-01-02 Thread Adam D. Ruppe via Digitalmars-d-announce

On Monday, 2 January 2017 at 00:53:04 UTC, Gerald wrote:
Terminix is a GTK 3 tiling terminal emulator that has been 
designed following the GNOME Human Interface Guidelines.


So, how hard would it be for you to swap out parts of the 
backend? I wrote a terminal emulator in scratch in D for myself 
and have some nifty features hacked in already.


Happy New Year from the D Language Foundation

2017-01-02 Thread Mike Parker via Digitalmars-d-announce
A brief message from the D Language Foundation, penned by Ali 
Çehreli, for the D community to send us into the new year.


https://dlang.org/blog/2017/01/02/happy-new-year-from-the-d-language-foundation/




Re: Terminix Year In Review

2017-01-02 Thread Edwin van Leeuwen via Digitalmars-d-announce

On Monday, 2 January 2017 at 13:35:21 UTC, Mike Parker wrote:

On Monday, 2 January 2017 at 00:53:04 UTC, Gerald wrote:
Terminix is a GTK 3 tiling terminal emulator that has been 
designed following the GNOME Human Interface Guidelines. The 
project started just over a year ago at the start of 2016 and 
I thought it would be fun to look back at the project history, 
highlights, low-lights and goals for 2017.


https://gnunn1.github.io/terminix-web/news/year-in-review/


https://www.reddit.com/r/programming/comments/5ll9j8/terminix_year_in_review_looking_back_on_a_tiling/


It was also posted to:
https://www.reddit.com/r/linux/comments/5liblz/terminix_year_in_review/


Re: Release 2.072.2

2017-01-02 Thread Martin Nowak via Digitalmars-d-announce

On Saturday, 31 December 2016 at 23:49:20 UTC, Meta wrote:

Congratulations and thank you for your hard work.


Most prominently scope classes work again in @safe code


I haven't been following too closely. Does this mean that 
DIP1000 has been implemented and is behind a feature switch, or 
is the above entry just a small related bugfix?


We don't add features in point releases, this was just a bug fix 
where such code no longer compiled. Also see the changelog for 
all infos.


Re: Release 2.072.2

2017-01-02 Thread Martin Nowak via Digitalmars-d-announce

On Sunday, 1 January 2017 at 01:47:17 UTC, Eugene Wissner wrote:
Can it be that freebsd64 dub is linked against wrong phobos? I 
get:

Shared object "libphobos2.so.0.71" not found, reuired by "dub".

The same was with 2.072.1.


It should be statically linked against phobos, please file a bug 
report at issues.dlang.org.




Re: Terminix Year In Review

2017-01-02 Thread Mike Parker via Digitalmars-d-announce

On Monday, 2 January 2017 at 00:53:04 UTC, Gerald wrote:
Terminix is a GTK 3 tiling terminal emulator that has been 
designed following the GNOME Human Interface Guidelines. The 
project started just over a year ago at the start of 2016 and I 
thought it would be fun to look back at the project history, 
highlights, low-lights and goals for 2017.


https://gnunn1.github.io/terminix-web/news/year-in-review/


https://www.reddit.com/r/programming/comments/5ll9j8/terminix_year_in_review_looking_back_on_a_tiling/