May 27, 2008
Jacob Carlborg Wrote:
> Chris R. Miller wrote:
> > a sign that I've been here far too long and need to find something more impossible to do.  So, requests if you have any would be great.
> 
> Some suggestions:
> A GUI/window builder for dwt as an eclipse plugin, maybe based on visual
> editor (http://www.eclipse.org/vep/WebContent/main.php) is a good idea.
> 
> CGI and database library for minid and an apache plugin so you can use minid like php.

Well, if you want to use minid like PHP, then you should probably hack the mod_php module for Apache 2.  There's also the Apache 2 handler API: http://httpd.apache.org/docs/2.2/developer/API.html

If I remember correctly from reading through the source of mod_php.c, it's fairly simple - nothing more than translating a struct of URL information to a call to your php executable.  So www.example.com/index.php?action=doSomething becomes a literal call to something like /usr/bin/php /var/www/htdocs/index.php "action=doSomething" .  Or maybe that was how CGI was handled?  I have no recall for certain, but from what I remember it wasn't exactly rocket science.  You'd just have to rewrite it to something like /usr/bin/minid /var/www/cgi-bin/index "action=doSomething", or something similar to that effect.  Personally I would not try and complicate it any further.

It could also become interesting to write an argparser to allow the interpretation of command line arguments from the CGI dispatcher so that you could utilize compiled code as your web application.  You could further embellish that framework to enable fastcgi, which could yield further speed benefits to the system due to persistent threads as opposed to run-once affairs typical to normal CGI scripts.

If - like me - you are too lazy to read the docs, you could discover the organization and syntaxing of the command line arguments passed to both CGI and/or FCGI dispatches by a short script and a D program:

=== dispatch.cgi ====

exec dispatch ; # dispatch is a compiled program you wrote

=== dispatch.d > dispatch ==== (remember to chmod 755 it!)

import tango.io.Stdout;

void main(char args[][]) {
    foreach(int i, char[] ch; args) {
        Stdout.format("{} :: {}\n", i, ch);
    }
}

======== EOF =======

Forgive me if my Apache/bash/etc. skills are a bit rusty, but that should print out to the screen all the arguments given to CGI dispatches by apache.  Knowing that is all you would really need to know in order to begin writing a CGI/FCGI framework for D - or Minid.

Alack! I am unable to persue the goal personally at the moment, since I am unfortunately working on other, far less rewarding things at the moment - finishing out my last year of High School.

I also thought there was the beginnings of some of that kind of framework in the Wombat framework (http://www.dsource.org/projects/wombat), but the last commit was on 05/06/07, so it may or may not work with more recent versions of DMD/GDC/Tango/Phobos.  I have not personally tested it, so I do not know for certain.
May 27, 2008
Lutger Wrote:
> Thanks for your continued efforts to provide an easy D package. Is dsss included?

Yes, DSSS 0.75 is included.

> A couple of things I would like to see:
> - there are .chm docs for Tango, but they may be out of date:
> http://www.vga.hr/tango_doc/
> Perhaps you could use dsss to generate candydoc api reference and include
> it?

Adding the documentation would increase the download size a lot.  I'm trying to keep it below 15 MB, and thankfully LZMA compression has helped me keep it below 12MB most of the time, but I don't want to push my luck.

> - DFL library and entice designer (which is also an option for designing DWT guis). I don't know about redistribution rights, but you might work something out or have it download over the net?

You can freely download Entice and its installer from Chris' website, http://www.dprogramming.com/entice.php

> - A 7zip or zip archive as an alternative for the installer. I was trying to test this under wine but the installer doesn't run ok.

That is indeed interesting.  Out of curiosity, did any of the zipped versions work in wine?  NSIS is fairly Windows-centric, so I'm not exactly surprised that it failed in Wine.  I honestly didn't think that any of this would work in wine at all, so I never tested for Wine compatibility.

Hopefully I'll be able to offer a native Linux version in the future, which would make wine unnecessary.

> Have you consider bundling an editor with it? An IDE such as codeblocks is overkill, but I thing there are good lightweight editors with D support such as Scite. That will make it a complete out-of-the-box package for D development.

Yes, I have.  Eclipse and Descent are the only ones I'd really want to package with it, since in my experience all the other editors aren't nearly as good (let me stress that part: __In My Experience__).  As it is, I don't think that would really fit in my 15MB target.  DCode might, however.  (http://www.dprogramming.com/dcode.php)

As it is, I don't want to try and make a statement about which IDE is the fairest of them all, since that's implicitly what I'm saying by putting any one IDE in there.  If I don't include all the others, it's not equal.  Even with one of them I would have thrown the 15MB target out the window, so I'm just inclined to not risk it.  I reason that installing DMD, building Tango, and building DWT are the hard parts.  Clicking through the installer to get Entice, unzipping Eclipse and downloading Descent, or selling your soul while installing Visual Studio are easy enough in comparison, and the VS/Entice/Eclipse choice is something that you need to make, since I'm not the person to do it for you.  I'd pick Eclipse every time - that alone tells me I'm not without bias.

May 27, 2008
Chris R. Miller wrote:
> Lutger Wrote:
>> - A 7zip or zip archive as an alternative for the installer. I was trying
>> to test this under wine but the installer doesn't run ok.
> 
> That is indeed interesting.  Out of curiosity, did any of the zipped
> versions work in wine?  NSIS is fairly Windows-centric, so I'm not exactly
> surprised that it failed in Wine.  I honestly didn't think that any of this
> would work in wine at all, so I never tested for Wine compatibility.

Trying to replicate Lutger's result, I could.
Here it is missing the M$ Visual C v7.1 RTL DLL =)
That should be easy to fix, but I wonder what might happen next?
Lutger, what was your error?

regards, frank
May 29, 2008
Chris R. Miller a écrit :
> I think the installer is ready now, since I've installed it a bunch of times and it hasn't misbehaved yet.  It still refuses to delete the start menu entries when it uninstalls, but that's really a minor problem and I expect to have found the solution by next release.
> 
> As some of you can probably guess, the 0.6.0 release means that this uses the stable release of DMD 1.030.
> 
> DWT also got an update to revision 230.  I've verified that it works.
> 
> Beyond that nothing changed.  Amazingly enough I was able to get all this to work correctly the first time - a sign that I've been here far too long and need to find something more impossible to do.  So, requests if you have any would be great.
> 
> So, for those of you who want an easy update: http://tinyurl.com/5l2gmm
> 
DMD 1.030 have some problems with anonymous class : http://d.puremagic.com/issues/show_bug.cgi?id=2123
May 29, 2008
0ffh Wrote:
> Chris R. Miller wrote:
> > Lutger Wrote:
> >> - A 7zip or zip archive as an alternative for the installer. I was trying to test this under wine but the installer doesn't run ok.
> > 
> > That is indeed interesting.  Out of curiosity, did any of the zipped versions work in wine?  NSIS is fairly Windows-centric, so I'm not exactly surprised that it failed in Wine.  I honestly didn't think that any of this would work in wine at all, so I never tested for Wine compatibility.
> 
> Trying to replicate Lutger's result, I could.
> Here it is missing the M$ Visual C v7.1 RTL DLL =)
> That should be easy to fix, but I wonder what might happen next?
> Lutger, what was your error?

Apparently it's an issue stemming from a badly written theme API.  The author apparently just left it totally unfinished.  I'll regenerate the installer - without the defective theme.  Then it should work.  A real pity too, since the theme really came closer to looking about as cool as D is.  It looked like some of the newer InstallShield installers.

May 29, 2008
Chris R. Miller wrote:

> 0ffh Wrote:
>> Chris R. Miller wrote:
>> > Lutger Wrote:
>> >> - A 7zip or zip archive as an alternative for the installer. I was trying to test this under wine but the installer doesn't run ok.
>> > 
>> > That is indeed interesting.  Out of curiosity, did any of the zipped
>> > versions work in wine?  NSIS is fairly Windows-centric, so I'm not
>> > exactly
>> > surprised that it failed in Wine.  I honestly didn't think that any of
>> > this would work in wine at all, so I never tested for Wine
>> > compatibility.
>> 
>> Trying to replicate Lutger's result, I could.
>> Here it is missing the M$ Visual C v7.1 RTL DLL =)
>> That should be easy to fix, but I wonder what might happen next?
>> Lutger, what was your error?
> 
> Apparently it's an issue stemming from a badly written theme API.  The author apparently just left it totally unfinished.  I'll regenerate the installer - without the defective theme.  Then it should work.  A real pity too, since the theme really came closer to looking about as cool as D is.  It looked like some of the newer InstallShield installers.

Yes I thought nsis did work fine in the past, I dont' get any specific error, the installer opens a window and then hangs.

Last time I tried dmd with dsss under wine it did work (from your snapshots), but there were errors when dsss issued a large command line to the linker. I've been meaning to try it again and get it working. It is quite useful to have dmd and various tools working under wine to make cross-platform development easier.

May 30, 2008
Lutger wrote:
> Yes I thought nsis did work fine in the past, I dont' get any specific error, the installer opens a window and then hangs.
> 
> Last time I tried dmd with dsss under wine it did work (from your snapshots), but there were errors when dsss issued a large command line to the linker. I've been meaning to try it again and get it working. It is quite useful to have dmd and various tools working under wine to make cross-platform development easier.

All right, I just finished removing the defective theme and replacing it with a more boring, but more stable one.  Nothing from the actual package changed, just the installer.  It should work now.

http://www.fsdev.net/gf/project/dmd-snaps/frs/?action=FrsReleaseView&release_id=112

That is interesting that it works in wine.  I'll have to remember than in the future, since I plan on trying my hand at an automated build system for my server so that it can make builds after every commit.  Not now, but in the (distant) future.  Could be fun!



1 2
Next ›   Last »