From john at oxyliquit.de Sun Oct 1 09:15:06 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Sun, 01 Oct 2006 15:15:06 +0200 Subject: [Nitro] Good news In-Reply-To: References: Message-ID: Hi! > my army service period is over ;-) ;-) ;-) This is great! More George for us. ^_^ > Give me one day to *sleep* and I 'll be back in action ;-) Yes yes, I hear ya, I know that feeling after army. ;D Now start kicking ass (by starting to apply our patches ;D). I know you don't have DSL in your flat yet, but I hope our public repo and yours don't get seperated as much as it did before. :P Glad you're home! Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Sun Oct 1 09:15:07 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Sun, 01 Oct 2006 15:15:07 +0200 Subject: [Nitro] [PATCH] Big patch bundle In-Reply-To: <4b6f054f0609292011v219fd190icb180e69e97ada63@mail.gmail.com> References: <4b6f054f0609292011v219fd190icb180e69e97ada63@mail.gmail.com> Message-ID: Hi, >> big bundle coming along... >> >> Those are all stable patches from manv. > > Wow! someone had been busy! Yes yes, we worked quite hard to get this going, as a new Oxyliquit is coming up which needs those some of the new features. :) For everyone using the postgres-pr (pure ruby postgres driver): There might be problems left which I can't really test. I have a compat layer here which I will have to push at some point. This was in manvs repo before, but since George didn't apply my sql-adapter error-handling patches I have to do more work to integrate this... Other than that: Nitro: 73 tests, 252 assertions, 0 failures, 0 errors Og: 80 tests, 341 assertions, 1 failures, 0 errors 1 Failure (or error, I have a slightly adapted version) is from tc_orderable.rb. George: would be good if you could have a look at it, I tried twice fixing it, no good. Glue needs some caretaking.... Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From m.fellinger at gmail.com Sun Oct 1 11:23:15 2006 From: m.fellinger at gmail.com (Michael Fellinger) Date: Mon, 2 Oct 2006 00:23:15 +0900 Subject: [Nitro] [PATCH] Big patch bundle In-Reply-To: References: <4b6f054f0609292011v219fd190icb180e69e97ada63@mail.gmail.com> Message-ID: <9c00d3e00610010823x5462ff59k40a6a3df8515007f@mail.gmail.com> [snipsnap] > Glue needs some caretaking.... Glue should be removed completly... i'd like to move most stuff belonging only to nitro to nitro, kashia might take over the part of moving og-stuff my next goals are in every case - getting psql working so i can finally move my application - getting rid of glue and enforcing the seperation of nitro/og From george.moschovitis at gmail.com Mon Oct 2 02:07:35 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 2 Oct 2006 09:07:35 +0300 Subject: [Nitro] Good news In-Reply-To: References: Message-ID: Hmm, seems I took some more days off ;-) but now I am back for good ;-) It's great to be back! -g. On 10/1/06, Jonathan Buch wrote: > Hi! > > > my army service period is over ;-) ;-) ;-) > > This is great! More George for us. ^_^ > > > Give me one day to *sleep* and I 'll be back in action ;-) > > Yes yes, I hear ya, I know that feeling after army. ;D > > Now start kicking ass (by starting to apply our patches ;D). I know you > don't have DSL in your flat yet, but I hope our public repo and yours > don't get seperated as much as it did before. :P > > Glad you're home! > > Jo > > -- > Feel the love > http://pinkjuice.com/pics/ruby.png > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Mon Oct 2 07:10:22 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 2 Oct 2006 14:10:22 +0300 Subject: [Nitro] Small configuration change... Message-ID: Dear devs, I just upload some changes to my repo that slightly alter Nitro configuration. More specifically, now you can explicitly call Configuration.load to setup your applciation. This allows more flexibility in organizing the configuration files. As an example I have attached some configuration files. If you have any problems or suggestions, let me know... regards, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Mon Oct 2 07:11:04 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 2 Oct 2006 14:11:04 +0300 Subject: [Nitro] Small configuration change... In-Reply-To: References: Message-ID: Here is the attachment too -g. On 10/2/06, George Moschovitis wrote: > Dear devs, > > I just upload some changes to my repo that slightly alter Nitro configuration. > More specifically, now you can explicitly call Configuration.load to > setup your applciation. This allows more flexibility in organizing the > configuration files. > > As an example I have attached some configuration files. If you have > any problems or suggestions, let me know... > > regards, > George. > > -- > http://www.gmosx.com > http://www.nitroproject.org > -- http://www.gmosx.com http://www.nitroproject.org -------------- next part -------------- A non-text attachment was scrubbed... Name: example.tgz Type: application/x-gzip Size: 1269 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061002/b56a3b74/attachment.tgz From george.moschovitis at gmail.com Mon Oct 2 09:36:22 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 2 Oct 2006 16:36:22 +0300 Subject: [Nitro] SCGI Message-ID: Dear devs, lately I have made some changes in the way one starts and manages Nitro servers. Let me explain in this email how I use nitro with the scgi adapter. The setup goes like this. There is one front web server (lighttpd or apache or something similar) that handles static content and acts as a proxy for dynamic content. Attached to this email is an example lhttpd.conf file to demonstrate the proxy setup. Behind this server runs a cluster of nitro servers that handle the dynamic request. As an example, to start a cluster of 2 nitro servers using the scgi adapter, go to the application directory and use the following: nitro --live --scgi --daemon --cluster 2 for more details consult the file nitro/bin/nitro in the distribution. The nitro command uses the CONFIGURATION_MODE env variable, so for example you can set export CONFIGURATION_MODE=debug in your development server and export CONFIGURATION_MODE=live in your production server. you can also set Nitro.adapter = :webrick in conf/debug.rb and Nitro.adapter = :scgi in conf/live.rb etc, etc Please notice that the nitro command will automatically try to execute the state.rb file in the same directory. This file is typically responsible for starting distributed state servers (for example sessions, global variables etc etc) you may need in process models like scgi. An example state.rb is also attached. To stop the server you can use nitro stop or nitro kill (this also kills the state server) There are some bad news though. There seem to be some slowdowns if the nitro server runs behind a proxy. I will investigate and fix it, but If anyone has any idea please let me know. I have also contacted Zed about this, perhaps he will be able to help. If you have more questions, please let me know. regards, George. -- http://www.gmosx.com http://www.nitroproject.org -------------- next part -------------- A non-text attachment was scrubbed... Name: lhttpd.conf Type: application/octet-stream Size: 505 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061002/e42be9da/attachment.obj -------------- next part -------------- A non-text attachment was scrubbed... Name: state.rb Type: application/x-ruby Size: 528 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061002/e42be9da/attachment.bin From transfire at gmail.com Mon Oct 2 10:24:35 2006 From: transfire at gmail.com (TRANS) Date: Mon, 2 Oct 2006 10:24:35 -0400 Subject: [Nitro] I got some YAML in my Ruby Message-ID: <4b6f054f0610020724k3b486532r6193079bddce2ba2@mail.gmail.com> Feast your watering eyes on this me loves: project.announce(&YAML.load(<<-END)) to : ruby-talk at ruby-lang.org from : transfire at gmail.com domain : jupiterzeus.net server : smtp.gmail.com port : 25 account : transfire at gmail.com auth : login #cram_md5 #plain secure : tls # ~, tls, ssl file : doc/LATEST slogan : ALL YOUR BASE ARE BELONG TO RUBY! links: - http://facets.rubyforge.org END To make it even better I'll add some icing: def yaml(*args) YAML.load(*args) end T. From george.moschovitis at gmail.com Mon Oct 2 11:45:02 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 2 Oct 2006 18:45:02 +0300 Subject: [Nitro] I got some YAML in my Ruby In-Reply-To: <4b6f054f0610020724k3b486532r6193079bddce2ba2@mail.gmail.com> References: <4b6f054f0610020724k3b486532r6193079bddce2ba2@mail.gmail.com> Message-ID: nice ;-) On 10/2/06, TRANS wrote: > Feast your watering eyes on this me loves: > > project.announce(&YAML.load(<<-END)) > to : ruby-talk at ruby-lang.org > from : transfire at gmail.com > domain : jupiterzeus.net > server : smtp.gmail.com > port : 25 > account : transfire at gmail.com > auth : login #cram_md5 #plain > secure : tls # ~, tls, ssl > file : doc/LATEST > slogan : ALL YOUR BASE ARE BELONG TO RUBY! > links: > - http://facets.rubyforge.org > END > > To make it even better I'll add some icing: > > def yaml(*args) > YAML.load(*args) > end > > T. > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 3 12:24:28 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 3 Oct 2006 19:24:28 +0300 Subject: [Nitro] SCGI In-Reply-To: References: Message-ID: Hm... I made a terrible mistake in this post. Please replace every occurrence of scgi with mongrel. -g. On 10/2/06, George Moschovitis wrote: > Dear devs, > > lately I have made some changes in the way one starts and manages > Nitro servers. Let me explain in this email how I use nitro with the > scgi adapter. > > The setup goes like this. There is one front web server (lighttpd or > apache or something similar) that handles static content and acts as a > proxy for dynamic content. Attached to this email is an example > lhttpd.conf file to demonstrate the proxy setup. > > Behind this server runs a cluster of nitro servers that handle the > dynamic request. As an example, to start a cluster of 2 nitro servers > using the scgi adapter, go to the application directory and use the > following: > > nitro --live --scgi --daemon --cluster 2 > > for more details consult the file nitro/bin/nitro in the distribution. > > The nitro command uses the CONFIGURATION_MODE env variable, so for > example you can set > > export CONFIGURATION_MODE=debug > > in your development server and > > export CONFIGURATION_MODE=live > > in your production server. > > you can also set > > Nitro.adapter = :webrick > > in conf/debug.rb > > and > > Nitro.adapter = :scgi > > in conf/live.rb > > etc, etc > > Please notice that the nitro command will automatically try to execute > the state.rb file in the same directory. This file is typically > responsible for starting distributed state servers (for example > sessions, global variables etc etc) you may need in process models > like scgi. An example state.rb is also attached. > > To stop the server you can use > > nitro stop > > or > > nitro kill (this also kills the state server) > > There are some bad news though. There seem to be some slowdowns if the > nitro server runs behind a proxy. I will investigate and fix it, but > If anyone has any idea please let me know. I have also contacted Zed > about this, perhaps he will be able to help. > > If you have more questions, please let me know. > > regards, > George. > > > > -- > http://www.gmosx.com > http://www.nitroproject.org > > > -- http://www.gmosx.com http://www.nitroproject.org From billk at cts.com Tue Oct 3 17:26:17 2006 From: billk at cts.com (Bill Kelly) Date: Tue, 3 Oct 2006 14:26:17 -0700 Subject: [Nitro] SCGI References: Message-ID: <194d01c6e732$90633680$6442a8c0@musicbox> From: "George Moschovitis" > > I made a terrible mistake in this post. Please replace every > occurrence of scgi with mongrel. Hi, On a related note. . . :-) I noticed on IRC this morning, that the SCGI adaptor is to be removed? [09:24] you see zed worked on scgi and mongrel [09:24] gmosx, remove the scgi adapter! ;D [09:24] and I was confused... [09:24] ok will remove it... [09:24] Zed officially left scgi to die anyway :P [09:24] and it doesn't use Nitro::Cgi which is bad [09:24] and it confuses newcomers! [09:25] people try to use it instead of fcgi and run into walls and we always ask 'why don't you use fcgi?' ;D [09:25] ok, i planned to remove it anyway ;-) [09:26] great, one problem solved :P [09:26] well that was an easy to fix problem ;-) I'm currently using Nitro + Apache 1.3.x + SCGI. The only reason, as a newcomer, I found it confusing, was because I didn't realize it was as simple as: ruby run.rb --scgi After Guillaume Pierronnet explained to me that's all that was needed, I don't see what could possibly be simpler. I never did get Nitro + Apache 1.3.x + FastCGI to work. Regards, Bill From interfecus at gmail.com Tue Oct 3 17:47:20 2006 From: interfecus at gmail.com (Timothy Goddard) Date: Wed, 4 Oct 2006 10:47:20 +1300 Subject: [Nitro] SCGI In-Reply-To: References: Message-ID: <200610041047.20994.interfecus@gmail.com> How about installing the NTP client? It won't change this setting but it will keep your clock correct all the time. If your timezone is set up correctly then your time will always remain accurate to within a millisecond. On Wednesday 04 October 2006 05:24, George Moschovitis wrote: > Hm... > > I made a terrible mistake in this post. Please replace every > occurrence of scgi with mongrel. > > -g. > > On 10/2/06, George Moschovitis wrote: > > Dear devs, > > > > lately I have made some changes in the way one starts and manages > > Nitro servers. Let me explain in this email how I use nitro with the > > scgi adapter. > > > > The setup goes like this. There is one front web server (lighttpd or > > apache or something similar) that handles static content and acts as a > > proxy for dynamic content. Attached to this email is an example > > lhttpd.conf file to demonstrate the proxy setup. > > > > Behind this server runs a cluster of nitro servers that handle the > > dynamic request. As an example, to start a cluster of 2 nitro servers > > using the scgi adapter, go to the application directory and use the > > following: > > > > nitro --live --scgi --daemon --cluster 2 > > > > for more details consult the file nitro/bin/nitro in the distribution. > > > > The nitro command uses the CONFIGURATION_MODE env variable, so for > > example you can set > > > > export CONFIGURATION_MODE=debug > > > > in your development server and > > > > export CONFIGURATION_MODE=live > > > > in your production server. > > > > you can also set > > > > Nitro.adapter = :webrick > > > > in conf/debug.rb > > > > and > > > > Nitro.adapter = :scgi > > > > in conf/live.rb > > > > etc, etc > > > > Please notice that the nitro command will automatically try to execute > > the state.rb file in the same directory. This file is typically > > responsible for starting distributed state servers (for example > > sessions, global variables etc etc) you may need in process models > > like scgi. An example state.rb is also attached. > > > > To stop the server you can use > > > > nitro stop > > > > or > > > > nitro kill (this also kills the state server) > > > > There are some bad news though. There seem to be some slowdowns if the > > nitro server runs behind a proxy. I will investigate and fix it, but > > If anyone has any idea please let me know. I have also contacted Zed > > about this, perhaps he will be able to help. > > > > If you have more questions, please let me know. > > > > regards, > > George. > > > > > > > > -- > > http://www.gmosx.com > > http://www.nitroproject.org From epiperak at gmail.com Tue Oct 3 21:27:53 2006 From: epiperak at gmail.com (Emmanouil Piperakis) Date: Wed, 4 Oct 2006 10:27:53 +0900 Subject: [Nitro] Good news In-Reply-To: References: Message-ID: So now that you finished the military, and you are a free man... (and a REAL man, as some believe in Greece), we hope to see great things happening for Nitro... Welcome back to the civilian life my friend! Emmanouil On 10/2/06, George Moschovitis wrote: > > Hmm, seems I took some more days off ;-) but now I am back for good > ;-) It's great to be back! > > -g. > > On 10/1/06, Jonathan Buch wrote: > > Hi! > > > > > my army service period is over ;-) ;-) ;-) > > > > This is great! More George for us. ^_^ > > > > > Give me one day to *sleep* and I 'll be back in action ;-) > > > > Yes yes, I hear ya, I know that feeling after army. ;D > > > > Now start kicking ass (by starting to apply our patches ;D). I know you > > don't have DSL in your flat yet, but I hope our public repo and yours > > don't get seperated as much as it did before. :P > > > > Glad you're home! > > > > Jo > > > > -- > > Feel the love > > http://pinkjuice.com/pics/ruby.png > > _______________________________________________ > > Nitro-general mailing list > > Nitro-general at rubyforge.org > > http://rubyforge.org/mailman/listinfo/nitro-general > > > > > -- > http://www.gmosx.com > http://www.nitroproject.org > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- Dr Emmanouil Piperakis Tokyo Institute of Technology Neural Networks & Brain Theory epiperak at gmail.com, epiperak at isl.titech.ac.jp -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061004/87b99bed/attachment.html From george.moschovitis at gmail.com Wed Oct 4 04:04:40 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 4 Oct 2006 11:04:40 +0300 Subject: [Nitro] Good news In-Reply-To: References: Message-ID: > Welcome back to the civilian life my friend! thanks ;-) it's great to be back! -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 4 04:41:11 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 4 Oct 2006 11:41:11 +0300 Subject: [Nitro] SCGI In-Reply-To: <194d01c6e732$90633680$6442a8c0@musicbox> References: <194d01c6e732$90633680$6442a8c0@musicbox> Message-ID: I removed SCGI, this is not maintained any more. Please use mongrel instead. nitro --mongrel will do the trick or you can set Nitro.adapter = :mongrel for the same effect. -g. On 10/4/06, Bill Kelly wrote: > From: "George Moschovitis" > > > > I made a terrible mistake in this post. Please replace every > > occurrence of scgi with mongrel. > > Hi, > > On a related note. . . :-) > > I noticed on IRC this morning, that the SCGI adaptor is to > be removed? > > [09:24] you see zed worked on scgi and mongrel > [09:24] gmosx, remove the scgi adapter! ;D > [09:24] and I was confused... > [09:24] ok will remove it... > [09:24] Zed officially left scgi to die anyway :P > [09:24] and it doesn't use Nitro::Cgi which is bad > [09:24] and it confuses newcomers! > [09:25] people try to use it instead of fcgi and run > into walls and we always ask 'why don't you use fcgi?' ;D > [09:25] ok, i planned to remove it anyway ;-) > [09:26] great, one problem solved :P > [09:26] well that was an easy to fix problem ;-) > > I'm currently using Nitro + Apache 1.3.x + SCGI. > > The only reason, as a newcomer, I found it confusing, was > because I didn't realize it was as simple as: > > ruby run.rb --scgi > > After Guillaume Pierronnet explained to me that's all that > was needed, I don't see what could possibly be simpler. > > I never did get Nitro + Apache 1.3.x + FastCGI to work. > > > Regards, > > Bill > > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 4 04:59:30 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 4 Oct 2006 11:59:30 +0300 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: References: Message-ID: As I told you on IRC, I applied most of the patches. Can you please send me an updated bundle? Some comments: - can you please explain to me where is local_net? useful? - please use :adapter to refer to adapters (like sqlite) and not :store. - remove sendfile.rb I already have it as send_file.rb Btw, we must find a way to add non-essential/extra functionality to nitro. Something similar to Rails plugins. I do not think it is the right thing that we include stuff like the navbar helper to the main distribution. Anyone has any ideas how we can achive this? regards, George. -- http://www.gmosx.com http://www.nitroproject.org From john at oxyliquit.de Wed Oct 4 06:47:32 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 04 Oct 2006 12:47:32 +0200 Subject: [Nitro] Small configuration change... In-Reply-To: References: Message-ID: Hi, >> As an example I have attached some configuration files. If you have >> any problems or suggestions, let me know... related Q on Oxy: http://oxyliquit.de/question/78 Would you please take the time to answer this one? Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From transfire at gmail.com Wed Oct 4 06:49:13 2006 From: transfire at gmail.com (TRANS) Date: Wed, 4 Oct 2006 06:49:13 -0400 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: References: Message-ID: <4b6f054f0610040349m73d6702eu1ed8a388120724bd@mail.gmail.com> On 10/4/06, George Moschovitis wrote: > As I told you on IRC, I applied most of the patches. Can you please > send me an updated bundle? > > Some comments: > > - can you please explain to me where is local_net? useful? > - please use :adapter to refer to adapters (like sqlite) and not :store. > - remove sendfile.rb I already have it as send_file.rb > > Btw, we must find a way to add non-essential/extra functionality to > nitro. Something similar to Rails plugins. I do not think it is the > right thing that we include stuff like the navbar helper to the main > distribution. Anyone has any ideas how we can achive this? It is being worked d on ;-) But please give details on your conception of how it would need to work. T. From fabian at fabian-buch.de Wed Oct 4 08:09:43 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Wed, 4 Oct 2006 14:09:43 +0200 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: References: Message-ID: Am 04.10.2006 um 10:59 schrieb George Moschovitis: > - can you please explain to me where is local_net? useful? Manveru uses this on his business homepage app. Users behind his local network (intranet) have more rights; not by logging in, but only by noticing it's comming from inside his network they can see and edit more than the usual visitor. This method doesn't hurt and it's easy to use for cases like above. > Btw, we must find a way to add non-essential/extra functionality to > nitro. Something similar to Rails plugins. I do not think it is the > right thing that we include stuff like the navbar helper to the main > distribution. Anyone has any ideas how we can achive this? Parts could be used for this. Parts are till now mainly used for whole nitro apps to plug in, but could also be used for pure helper "plug-ins". For example with my new auth part or localization part (bot not yet released, but will as open source soon) I include appropriate helpers. For helper-only Parts, just don't define a Nitro::Server.map and by requiring this part its helper can be used just like other helpers. Navbar could be put into such a helper. I can take care of this after I finished some of the above parts, so you can leave it out of the Nitro main distro. I think this navbar came through Riffraffs Google Summer of Code stuff which has more of such goodies that could be turned into Parts and don't have to go into the Nitro main distribution. Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From john at oxyliquit.de Wed Oct 4 08:12:18 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 04 Oct 2006 14:12:18 +0200 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: References: Message-ID: Hi, > - can you please explain to me where is local_net? useful? Helper functionality, for example: authorization based on locality. > - please use :adapter to refer to adapters (like sqlite) and not :store. *grml* reason? alias? btw, you broke one of my patches: og.rb def start(options = {}) options = {:store => :sqlite}.update(options) This is what I had before, and for a reason. When specifying partial options (:sqlite is standard, so I shouldn't mess with that key) one also had to specify the store as well which is quite non-intuitive. And please, in the same function, write m.manage_classes(options[:classes]) instead of m.manage_classes This enables setting the classes at start time and avoids ObjectSpace searches for models (the functionality is already there and working). > - remove sendfile.rb I already have it as send_file.rb > Btw, we must find a way to add non-essential/extra functionality to > nitro. Something similar to Rails plugins. I do not think it is the > right thing that we include stuff like the navbar helper to the main > distribution. Anyone has any ideas how we can achive this? Yes you are right. I think this can be achieved by using Parts. Fabian is working on the first 'repo' of Parts which will probably be the perfect place for this. Stay tuned for updates. Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Wed Oct 4 08:13:06 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 04 Oct 2006 14:13:06 +0200 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: References: Message-ID: attached .. -- Feel the love http://pinkjuice.com/pics/ruby.png -------------- next part -------------- A non-text attachment was scrubbed... Name: bndl3.patch.tar.bz2 Type: application/bzip2 Size: 13730 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061004/174694ad/attachment-0001.bin From george.moschovitis at gmail.com Wed Oct 4 09:59:08 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 4 Oct 2006 16:59:08 +0300 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: <4b6f054f0610040349m73d6702eu1ed8a388120724bd@mail.gmail.com> References: <4b6f054f0610040349m73d6702eu1ed8a388120724bd@mail.gmail.com> Message-ID: > It is being worked d on ;-) > But please give details on your conception of how it would need to work. I don't have a concrete idea yet. What is your proposal? -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 4 10:13:36 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 4 Oct 2006 17:13:36 +0300 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: References: Message-ID: Yeap parts could be used for this. My parts include helpers and other utility code. Moreover, I have another name for smaller parts: components. Components are exactly like parts but the different name denotes that they provide small pieces of additional features. For example, the navbar could be a component (ie small part). regards, George. > Parts could be used for this. Parts are till now mainly used for > whole nitro apps to plug in, but could also be used for pure helper > "plug-ins". > For example with my new auth part or localization part (bot not yet > released, but will as open source soon) I include appropriate helpers. > For helper-only Parts, just don't define a Nitro::Server.map and by > requiring this part its helper can be used just like other helpers. > Navbar could be put into such a helper. I can take care of this after > I finished some of the above parts, so you can leave it out of the > Nitro main distro. > > I think this navbar came through Riffraffs Google Summer of Code > stuff which has more of such goodies that could be turned into Parts > and don't have to go into the Nitro main distribution. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 4 10:36:12 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 4 Oct 2006 17:36:12 +0300 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: References: Message-ID: > *grml* reason? alias? > store = sql, xml, file, memory, etc... adapter = mysql, postgresql, sqlite, kirby, sql server, oracle, etc, etc In 0.40 I use the name adapter to be in sync with Nitro adapters. adapters extend stores. regards, George. -- http://www.gmosx.com http://www.nitroproject.org From fabian at fabian-buch.de Wed Oct 4 13:07:17 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Wed, 4 Oct 2006 19:07:17 +0200 Subject: [Nitro] Helpers, Components, Parts In-Reply-To: References: Message-ID: <12052069-53E6-4AC8-B3FF-78893FBC3E83@fabian-buch.de> Am 04.10.2006 um 16:13 schrieb George Moschovitis: > Yeap parts could be used for this. My parts include helpers and other > utility code. Moreover, I have another name for smaller parts: > components. Components are exactly like parts but the different name > denotes that they provide small pieces of additional features. For > example, the navbar could be a component (ie small part). This could lead to confusions for newcommers. "What are helpers, components, parts? In Rails they are just called 'plug-ins'". Components would be plug-in helpers, installed in the same way as parts and are just not called helpers, b/c they are not in the main distribution. Apart from that the name sounds ok. Fabian PS: Copy to you, b/c the mailinglist is so slow at the moment. PPS: I had quite some ideas to this topic, had some discussions with Trans about it and developed something I didn't want to release to the public yet. I'll email the discussion with Trans to you in a bit, adding some more thoughts. Stay tuned. -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From fabian at fabian-buch.de Wed Oct 4 13:31:54 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Wed, 4 Oct 2006 19:31:54 +0200 Subject: [Nitro] Gen Part and related thoughts Message-ID: <5E2E7A7B-3CA6-4606-A06D-42AAE9AE1DCB@fabian-buch.de> hi George, Below are the thoughts about Rachets, Gen and Parts with Trans a few days ago. The basic site for Nitro Parts is already in an advanced state and the domain for it already ordered. I just want it to be more thought through and could be used in combination with Trans Ratchets (see below). Furthermore I'd like to at least let 0.40.0 glycerin stabelize a little more and maybe even release the site when Nitro 0.40.0 is released (or earlier, depending on developments in Nitro/Ratchets/ Parts area). Components (or whatever they will be called in the end) would fit exactly into all this, just like Parts, that don't get included into the standard Nitro distribution. read on below! Fabian Forwared E-Mail: > Von: Fabian Buch > Datum: 25. September 2006 11:27:00 MESZ > An: TRANS > Betreff: Re: [Nitro] Gen > > hi Trans, > > I just had a little more thought about Gen on weekend, especially > about gen part (or even gen app) and how I could extend it's > functionality. > At the moment Gen is not doing so much scuffolding. The currently > working generators are basically copying files. So it's not so much > having functionality of seed, but more of a different project of > yours (or might have, after what I thought out on the weekend). > > I'm writing to you, instead of the Nitro ML, b/c I'm planning a > site which I don't want to reveal to the general public yet. > Basically it'll be a site for Nitro Parts, maybe a little similar > to rubyforge, but only for Nitro parts, like collecting Nitro "plug- > ins" and providing them to other Nitro developers. > I thought about several ways how to package/provide Parts through > this site: gem, rolls, sow, ratchets.. Then I thought, hmm.. don't > like gem, Parts aren't full apps or libraries like the usual stuff > on rubyforge.. Trans is still taking a while with ratchets.. So why > not built-in a small downloader into "gen part" which downloads > Parts from my website, unpacks them and then does what it's doing > right now. > > But then I thought, that's simple, but it does stuff "gem" and > probably "ratchets" can do a lot better. Just that they can't do > the little copying of Gen. > Then again, reap will be part of ratchets, right? So, with some > "generator"-scripts for ratchets, it could take-over Gen's job, > even replacing Gen. Of course it would have to be easy for a user/ > web-developer to handle this, so it'd have to be as easy as saying > "gen part blogpart" to install the blogpart in current webapp > folder, from wherever (local path, or if not found remote url; > Nitro Parts from my site). > > I know ratchets has to be general purpose, but maybe you could do > it extendable, so that in Nitro served scripts could utilize > ratchets to take over the Gen job. Preferably easy and straight- > forward. > > Just some thoughts, > thanks for reading, > Fabian > > PS: do you know an approximate timeline for Ratchets already? > Anfang der weitergeleiteten E-Mail: > Von: Fabian Buch > Datum: 27. September 2006 00:11:30 MESZ > An: TRANS > Betreff: Re: [Nitro] Gen > > Thanks for your reply Trans, and don't worry about typos ;) > > Am 26.09.2006 um 19:00 schrieb TRANS: >> On 9/25/06, Fabian Buch wrote: >>> built-in a small downloader into "gen part" which downloads Parts >>> from my website, unpacks them and then does what it's doing right >>> now. >> >> Interesting idea. Facets has a Downloader class that woudl make the >> dowloading a qucik addition. > > Cool. The implementation is not the problem though. It's more the > question of whether I SHOULD implement that, since it duplicates > other apps functionality (gem, rachets). > >> Hmmm... I like that idea. It should be pretty easy implement and >> actually could be fairly general in implementation. And I agree that >> Ratchets would be the prefect platform for this. >> >> When you use 'gen part foo', that's to distinguish from say 'gen app >> foo'. Correct? Is the distinction actually needed? What I mean is, >> will it even be possible to name two projects foo on your hosting >> site, one a part and one an app? Or would the type be distinguishable >> by the name itself? I.e Project bar is an app and foo is a part. So >> all that's needed on the command line is 'gen foo'. > > Well, I'm thinking about Parts only, since they can (if wanted by > the author) be run as apps too, just use some general conventions > (opposed to normal nitro apps that can be in whatever layout). "gen > part foo" does actually a little more than "gen app bar". Both copy > stuff, the latter only the "proto"-dir to a path and "gen part" the > part to current dir plus it's public things into the apps public > dir, which are two copy/move operations. Additionally "gen part" > 'searches/finds' a part, whereas gen app knows where "proto" is. > > The difference is also that gen app produces something for you to > start developing an app and gen part provides you with fully > functioning, maybe feature-rich application parts, that can, but > don't have to be customized (among the parts I'll release with the > site are: an authentication-part, a blog-part and a photogallery- > part (the latter two even needing the first)). > >> project new {type} > > What can {type} be? > >>> I know ratchets has to be general purpose, but maybe you could do it >>> extendable, so that in Nitro served scripts could utilize >>> ratchets to >>> take over the Gen job. Preferably easy and straight-forward. >> >> Yep, it would be a pretty simple matter of taking th above and adding >> a feature to this that could check a remote site for the app/part if >> it isn't stored locally. That would be very cool! The hard part is >> actually settleing on a nomenclature of the CLI. > > Could it be stuff like: > > project new nitroapp {name} > project new nitropart {name} > project new webapp {name} > > ratchets install {whatever} --remote {url} > > where {whatever} is an app, nitroapp or part which have a > ProjectInfo that tells how it's gonna be installed? (if ProjectInfo > says "part" it does what "gen part" does and if it says "app" it's > installed in site-ruby) > > I'm not sure. Some more random idea shots: > > project new nitroapp {name} > project gen nitropart {name} > project gen nitroscuffold {model.rb} > > Or letting everything alive as is and "gen part" uses ratchets for > downloading/versioning. On the other hand, Gen isn't a big bunch of > code, it doesn't have to survive necessarily in my eyes. Replacing > it as something integrated in other software isn't so bad an idea > (doesn't have to be ratchets for all stuff, since there's a "nitro" > command too that might be able to take some more care too (for an > upcomming scuffolding e.g.)). > >>> PS: do you know an approximate timeline for Ratchets already? >> >> Very soon --days. I'm really just stuck on one last issue --a naming > > Great :). Go for ProjectInfo. > > Fabian btw. I think my site would broaden the Nitro community and its visibility a lot. People would see Nitro is actually being used apart from www.nitroproject.org and www.oxyliquit.de -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From transfire at gmail.com Wed Oct 4 16:04:23 2006 From: transfire at gmail.com (TRANS) Date: Wed, 4 Oct 2006 16:04:23 -0400 Subject: [Nitro] Ratchets, two final issues. Please help. Message-ID: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> Hi-- I'm closing in on an first release of Ratchets. I'm down to two outstanding major issues. 1) Whether to name the lib directory 'ratchet' or 'ratchets'. I'm stuck on this b/c on one hand I usually avoid plurals, but in this case the name of the project itself is ratchets, plural. So I'm not sure. And Facets doesn't give any guidance here either since it uses both singular and plural b/c of the trick of integrating the Facets/CORE and Facets/MORE libs. 2) Ratchets' main command line tool is called 'project'. Like 'rake' and 'reap' (RIP) 'project' can take a task name as an argument and will run that user-defined task. BUT, it can also take the name of a built-in Ratchets tool and run the tool directly. Ex: Here's a snip from a ProjecInfo file: tasks: history: !!changelog file: doc/HISTORY So on the command line we can do: $ project history and it will generate the changelog file, in this case at doc/HISTORY. But we can also do: $ project changelog --file doc/HISTORY To run the chngelog tool directly without defining a task. My debate is whether it works well enough to have both modes of functionality in the same command. (Note task definitions take precedence if there is a name clash.) I sort of worry that someone will go to run a task they think is there and inadvertently run a tool. But maybe I'm over blowing it. But if I did split it into two command, I have no idea what to call the other. Or maybe there is a way to mitigate the issue? Thoughts? Thanks, T. -- ( o- // trans. / / transfire at gmail.com People with courage and character always seem sinister to the rest. --Hermann Hesse http://weblands.blogspot.com http://7ranscode.blogspot.com http://stampact.blogspot.com From lasso at lassoweb.se Wed Oct 4 16:18:14 2006 From: lasso at lassoweb.se (Lars Olsson) Date: Wed, 04 Oct 2006 22:18:14 +0200 Subject: [Nitro] Small configuration change... In-Reply-To: References: Message-ID: <45241706.7030004@lassoweb.se> Thanks for answering on OxyLiquit, George! I have some follow-up questions though...attached them to the original question on OxyLiquit. If someone else feels like enlightening me, please feel free to do so :) Kindly /lasso ________________________________________ Lars Olsson lasso at lassoweb.se http://www.lassoweb.se/ Jonathan Buch skrev: > Hi, > >>> As an example I have attached some configuration files. If you have >>> any problems or suggestions, let me know... > > related Q on Oxy: > > http://oxyliquit.de/question/78 > > Would you please take the time to answer this one? > > Jo From billk at cts.com Wed Oct 4 19:28:24 2006 From: billk at cts.com (Bill Kelly) Date: Wed, 4 Oct 2006 16:28:24 -0700 Subject: [Nitro] SCGI References: <194d01c6e732$90633680$6442a8c0@musicbox> Message-ID: <1ba101c6e80c$ca1f0540$6442a8c0@musicbox> From: "George Moschovitis" > >I removed SCGI, this is not maintained any more. Please use mongrel instead. > > nitro --mongrel will do the trick or you can set > > Nitro.adapter = :mongrel > > for the same effect. OK, thanks. I'll switch to mongrel. In the hopes that any users Googling or searching the mailing list might benefit, I'll post my progress so far. Executive summary: Mongrel 0.3.13.3 working nicely, but my Apache 1.3.33 apparently was not compiled with --enable-proxy, etc. Details: Attempt to replace Nitro + SCGI + Apache 1.3.33 with Nitro + mongrel (reverse proxy) + Apache 1.3.33 on debian 3.1 stable. $ sudo gem install -y mongrel mongrel 0.3.13.4 was installed. $ ruby run.rb --mongrel Yay! It works! . . . . Except the "Content-length: 1234" header is showing as part of the document result. Google reveals this is an issue reported with 0.3.13.4, and reverting to 0.3.13.3 was recommended in some posts. $ sudo gem uninstall mongrel $ sudo gem install -v 0.3.13.3 mongrel $ ruby run.rb --mongrel Yay! It works! Now to set up the apache proxy ala the instructions for Rails at http://mongrel.rubyforge.org/docs/apache.html $ sudo vi /etc/apache/conf.d/Vhosts.conf ServerName my.site.com # ... ProxyRequests off ProxyPass / http://my.site.com:8888/ ProxyPassReverse / http://my.site.com:8888 ProxyPreserveHost on $ sudo apachectl graceful // failed $ sudo apachectl configtest // failed Syntax error on line 127 of /etc/apache/conf.d/Vhosts.conf: Invalid command 'ProxyRequests', perhaps mis-spelled or defined by a module not included in the server configuration It appears my Apache 1.3.33 apparently was not compiled with --enable-proxy, etc. I have left off here for now, but anticipate recompiling Apache with the appropriate proxy config options will clear the final hurdle. Regards, Bill From alex at msgpad.com Wed Oct 4 19:29:39 2006 From: alex at msgpad.com (Alex Pooley) Date: Thu, 05 Oct 2006 07:29:39 +0800 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: References: Message-ID: <1160004579.7477.14.camel@woof> > Btw, we must find a way to add non-essential/extra functionality to > nitro. Something similar to Rails plugins. I do not think it is the > right thing that we include stuff like the navbar helper to the main > distribution. Anyone has any ideas how we can achive this? I've been meaning to checkout 'gemplugins' (an offshoot from Mongrel). More info: http://mongrel.rubyforge.org/docs/gem_plugin.html http://mongrel.rubyforge.org/gem_plugin_rdoc/ The advantage of such a system (from what I understand so far) is in it's ease of distribution (based on gems) and it's auto-loading of dependencies, and of course the fact that it's already written. As an aside, I use gems to deploy my own code. I have four gems that I deploy and two of them contain executables that are installed via the gems system that execute the code. It's a very simple and effective way to work, so I'm for anything based on that. -- Alex Pooley (msgpad founder) w: http://msgpad.com e: alex at msgpad.com b: http://alexpooley.com From george.moschovitis at gmail.com Thu Oct 5 02:08:27 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 5 Oct 2006 09:08:27 +0300 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: <1160004579.7477.14.camel@woof> References: <1160004579.7477.14.camel@woof> Message-ID: Hmm this is an option too. But I think plain gems can do the trick anyway. -g. On 10/5/06, Alex Pooley wrote: > > Btw, we must find a way to add non-essential/extra functionality to > > nitro. Something similar to Rails plugins. I do not think it is the > > right thing that we include stuff like the navbar helper to the main > > distribution. Anyone has any ideas how we can achive this? > > I've been meaning to checkout 'gemplugins' (an offshoot from Mongrel). > > More info: > > http://mongrel.rubyforge.org/docs/gem_plugin.html > http://mongrel.rubyforge.org/gem_plugin_rdoc/ > > The advantage of such a system (from what I understand so far) is in > it's ease of distribution (based on gems) and it's auto-loading of > dependencies, and of course the fact that it's already written. > > As an aside, I use gems to deploy my own code. I have four gems that I > deploy and two of them contain executables that are installed via the > gems system that execute the code. It's a very simple and effective way > to work, so I'm for anything based on that. > > > -- > Alex Pooley (msgpad founder) > w: http://msgpad.com > e: alex at msgpad.com > b: http://alexpooley.com > > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Thu Oct 5 04:37:53 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 5 Oct 2006 11:37:53 +0300 Subject: [Nitro] Mongrel behind a proxy Message-ID: Dear devs, as I described in an earlier email, I was experiencing some strange slowdowns when i was running a mongrel cluster behind a lighttpd proxy. Today I experimented a bit with Apache 2.2 + nod_proxy_balancer as a proxy solution. And voila, my application runs just great ;-) Interestingly, the mongrel home page, also declares apache the prefer ed deployment option and mentions problems when running behind Lighttpd. regards, George. -- http://www.gmosx.com http://www.nitroproject.org From fabian at fabian-buch.de Thu Oct 5 08:39:10 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Thu, 5 Oct 2006 14:39:10 +0200 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> Message-ID: Am 04.10.2006 um 22:04 schrieb TRANS: > > I'm closing in on an first release of Ratchets. I'm down to two > outstanding major issues. Looking forward to it :) > 1) Whether to name the lib directory 'ratchet' or 'ratchets'. I'm > stuck on this b/c on one hand I usually avoid plurals, but in this > case the name of the project itself is ratchets, plural. So I'm not I prefer ratchets (plural). It's easier to remember if the project is called ratchets. And as another example: rubygems (the lib dir is in plural too, even if the command (gem) is in singular). If you had a command "ratchet" instead of "project" the command should be singular probably, but "project" is nicer indeed. > 2) Ratchets' main command line tool is called 'project'. Like 'rake' .. > My debate is whether it works well enough to have both modes of > functionality in the same command. (Note task definitions take > precedence if there is a name clash.) I sort of worry that someone > will go to run a task they think is there and inadvertently run a > tool. But maybe I'm over blowing it. But if I did split it into two > command, I have no idea what to call the other. Or maybe there is a > way to mitigate the issue? Thoughts? I think it's okay like you described. The problem still exists if users don't know all project keywords and just override them with their task definition. Overriding is ok I think, but maybe you could give a "WARNING" on command line. Just my thoughts. Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From fabian at fabian-buch.de Thu Oct 5 08:52:56 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Thu, 5 Oct 2006 14:52:56 +0200 Subject: [Nitro] Small configuration change... In-Reply-To: <45241706.7030004@lassoweb.se> References: <45241706.7030004@lassoweb.se> Message-ID: <905FB7CB-2A0A-4201-8E1F-586F305B443F@fabian-buch.de> Am 04.10.2006 um 22:18 schrieb Lars Olsson: > Thanks for answering on OxyLiquit, George! I have some follow-up > questions though...attached them to the original question on > OxyLiquit. > If someone else feels like enlightening me, please feel free to do > so :) Answered: http://oxyliquit.de/question/78 Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From fabian at fabian-buch.de Thu Oct 5 09:04:13 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Thu, 5 Oct 2006 15:04:13 +0200 Subject: [Nitro] [PATCH] Patch bundle, many psql and tc fixes In-Reply-To: <1160004579.7477.14.camel@woof> References: <1160004579.7477.14.camel@woof> Message-ID: <9827228C-6BD8-427F-B218-D46100508AC1@fabian-buch.de> Am 05.10.2006 um 01:29 schrieb Alex Pooley: > I've been meaning to checkout 'gemplugins' (an offshoot from Mongrel). Oh, didn't think of that. Should've a look at it again. Might take GemPlugins and Ratchets :) Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From al-nitrogen at none.at Thu Oct 5 09:06:00 2006 From: al-nitrogen at none.at (Alexander Lazic) Date: Thu, 5 Oct 2006 15:06:00 +0200 Subject: [Nitro] Mongrel behind a proxy In-Reply-To: References: Message-ID: <20061005130600.GA28220@none.at> On Don 05.10.2006 11:37, George Moschovitis wrote: > >as I described in an earlier email, I was experiencing some strange >slowdowns when i was running a mongrel cluster behind a lighttpd >proxy. Today I experimented a bit with Apache 2.2 + nod_proxy_balancer >as a proxy solution. And voila, my application runs just great ;-) > >Interestingly, the mongrel home page, also declares apache the prefer >ed deployment option and mentions problems when running behind >Lighttpd. Just for my curiosity: Have you thought to use nginx ( http://www.nginx.net/ )?! Regards Alex From george.moschovitis at gmail.com Thu Oct 5 12:16:13 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 5 Oct 2006 19:16:13 +0300 Subject: [Nitro] Mongrel behind a proxy In-Reply-To: <20061005130600.GA28220@none.at> References: <20061005130600.GA28220@none.at> Message-ID: Nope, frankly I am quite happy to use Apache. I think for the last 4 years or so, I have been tooooo experimental. Some times standard solutions are good for you ;-) regards, George PS: of coz anyone can try nitro with any frontend server ;-) suit yourself! On 10/5/06, Alexander Lazic wrote: > On Don 05.10.2006 11:37, George Moschovitis wrote: > > > >as I described in an earlier email, I was experiencing some strange > >slowdowns when i was running a mongrel cluster behind a lighttpd > >proxy. Today I experimented a bit with Apache 2.2 + nod_proxy_balancer > >as a proxy solution. And voila, my application runs just great ;-) > > > >Interestingly, the mongrel home page, also declares apache the prefer > >ed deployment option and mentions problems when running behind > >Lighttpd. > > Just for my curiosity: > > Have you thought to use nginx ( http://www.nginx.net/ )?! > > Regards > > Alex > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Thu Oct 5 12:56:08 2006 From: transfire at gmail.com (TRANS) Date: Thu, 5 Oct 2006 12:56:08 -0400 Subject: [Nitro] Setting up simple CGI on ubuntu Message-ID: <4b6f054f0610050956w50ee0d9fvec5e053ac2834099@mail.gmail.com> I've done all this numerous times before but, sigh, apparently I'm forgetting something again. I'm just trying to serve up a straight CGI script, nothing fancy. Running Ubuntu Apache2: #SetEnv RAILS_ENV development ServerName lilwiki DocumentRoot /serve/www/lilwiki/ ErrorLog /home/trans/file/projects/PsyTower/lilwiki/log/apache.log Options +ExecCGI +FollowSymLinks AddHandler cgi-script .rbx AllowOverride all Order allow,deny Allow from all By all accounts (I just spent the last 40 minutes seaching the web and mailing-list) the above should be all I need. But all it does is serve up .rbx files as plain text --it doesn't execute them. Any ideas? Thanks, T. From transfire at gmail.com Thu Oct 5 13:00:43 2006 From: transfire at gmail.com (TRANS) Date: Thu, 5 Oct 2006 13:00:43 -0400 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> Message-ID: <4b6f054f0610051000w132416cdv939978d7831260ef@mail.gmail.com> On 10/5/06, Fabian Buch wrote: > > Am 04.10.2006 um 22:04 schrieb TRANS: > > > > I'm closing in on an first release of Ratchets. I'm down to two > > outstanding major issues. > > Looking forward to it :) > > > 1) Whether to name the lib directory 'ratchet' or 'ratchets'. I'm > > stuck on this b/c on one hand I usually avoid plurals, but in this > > case the name of the project itself is ratchets, plural. So I'm not > > I prefer ratchets (plural). It's easier to remember if the project is > called ratchets. And as another example: rubygems (the lib dir is in > plural too, even if the command (gem) is in singular). If you had a > command "ratchet" instead of "project" the command should be singular > probably, but "project" is nicer indeed. Cool. That's done. Thanks for tipping the scale for me :) > > 2) Ratchets' main command line tool is called 'project'. Like 'rake' > .. > > My debate is whether it works well enough to have both modes of > > functionality in the same command. (Note task definitions take > > precedence if there is a name clash.) I sort of worry that someone > > will go to run a task they think is there and inadvertently run a > > tool. But maybe I'm over blowing it. But if I did split it into two > > command, I have no idea what to call the other. Or maybe there is a > > way to mitigate the issue? Thoughts? > > I think it's okay like you described. The problem still exists if > users don't know all project keywords and just override them with > their task definition. Overriding is ok I think, but maybe you could > give a "WARNING" on command line. Okay. I'll leave it as it is then. It can always be split later if needs be. Thanks Fabian! T. From transfire at gmail.com Thu Oct 5 13:27:35 2006 From: transfire at gmail.com (TRANS) Date: Thu, 5 Oct 2006 13:27:35 -0400 Subject: [Nitro] Google Group archive of ths list Message-ID: <4b6f054f0610051027g5d2d180dt41bc35f711806cf2@mail.gmail.com> George, I setup a google-group archive of this mailing list, So anyone can access it thru that interface instead of via email if they want to (something I prefer). Could you subscribe this address to the mailing list to complete the linkup? nitro-general-google-garchive-68693 at googlegroups.com I can;t do it b/c obviously I wouldn't be able to confirm from that address. Once done, from then on all new posts will be archived and searchable from google-groups. Cool? T. From george.moschovitis at gmail.com Thu Oct 5 14:31:19 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 5 Oct 2006 21:31:19 +0300 Subject: [Nitro] Mongrel behind a proxy In-Reply-To: References: <20061005130600.GA28220@none.at> Message-ID: Btw, Even though Mongrel seems to work quite nicely behind the Apache, we still need to cleanup the mongrel adapter implementation. Any help appreciated. Perhaps Zed could have a look at this? -g. On 10/5/06, George Moschovitis wrote: > Nope, > > frankly I am quite happy to use Apache. I think for the last 4 years > or so, I have been tooooo experimental. Some times standard solutions > are good for you ;-) > > regards, > George > > PS: of coz anyone can try nitro with any frontend server ;-) suit yourself! > > > > On 10/5/06, Alexander Lazic wrote: > > On Don 05.10.2006 11:37, George Moschovitis wrote: > > > > > >as I described in an earlier email, I was experiencing some strange > > >slowdowns when i was running a mongrel cluster behind a lighttpd > > >proxy. Today I experimented a bit with Apache 2.2 + nod_proxy_balancer > > >as a proxy solution. And voila, my application runs just great ;-) > > > > > >Interestingly, the mongrel home page, also declares apache the prefer > > >ed deployment option and mentions problems when running behind > > >Lighttpd. > > > > Just for my curiosity: > > > > Have you thought to use nginx ( http://www.nginx.net/ )?! > > > > Regards > > > > Alex > > _______________________________________________ > > Nitro-general mailing list > > Nitro-general at rubyforge.org > > http://rubyforge.org/mailman/listinfo/nitro-general > > > > > -- > http://www.gmosx.com > http://www.nitroproject.org > -- http://www.gmosx.com http://www.nitroproject.org From zedshaw at zedshaw.com Thu Oct 5 08:03:23 2006 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Thu, 5 Oct 2006 05:03:23 -0700 Subject: [Nitro] Mongrel behind a proxy In-Reply-To: <20061005130600.GA28220@none.at> References: <20061005130600.GA28220@none.at> Message-ID: <20061005050323.da9b5d58.zedshaw@zedshaw.com> On Thu, 5 Oct 2006 15:06:00 +0200 Alexander Lazic wrote: > On Don 05.10.2006 11:37, George Moschovitis wrote: > > > >as I described in an earlier email, I was experiencing some strange > >slowdowns when i was running a mongrel cluster behind a lighttpd > >proxy. Today I experimented a bit with Apache 2.2 + nod_proxy_balancer > >as a proxy solution. And voila, my application runs just great ;-) > > > >Interestingly, the mongrel home page, also declares apache the prefer > >ed deployment option and mentions problems when running behind > >Lighttpd. > > Just for my curiosity: > > Have you thought to use nginx ( http://www.nginx.net/ )?! > nginx is tasty, you should try it out. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From al-nitrogen at none.at Thu Oct 5 15:32:05 2006 From: al-nitrogen at none.at (Alexander Lazic) Date: Thu, 5 Oct 2006 21:32:05 +0200 Subject: [Nitro] Mongrel behind a proxy In-Reply-To: References: <20061005130600.GA28220@none.at> Message-ID: <20061005193205.GA20057@none.at> On Don 05.10.2006 19:16, George Moschovitis wrote: >Nope, > >frankly I am quite happy to use Apache. I think for the last 4 years or >so, I have been tooooo experimental. Some times standard solutions are >good for you ;-) Yep, thanks for answer ;-) Cheers Alex From george.moschovitis at gmail.com Thu Oct 5 15:47:45 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 5 Oct 2006 22:47:45 +0300 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> Message-ID: Excuse my ignorance, I feel a little bit lost with all these names. What exactly is ratchets and where can I download it? I understand it is some kind of a Reap replacement? -g. -- http://www.gmosx.com http://www.nitroproject.org From james.britt at gmail.com Thu Oct 5 17:17:07 2006 From: james.britt at gmail.com (James Britt) Date: Thu, 05 Oct 2006 14:17:07 -0700 Subject: [Nitro] Setting up simple CGI on ubuntu In-Reply-To: <4b6f054f0610050956w50ee0d9fvec5e053ac2834099@mail.gmail.com> References: <4b6f054f0610050956w50ee0d9fvec5e053ac2834099@mail.gmail.com> Message-ID: <45257653.6040903@gmail.com> TRANS wrote: > By all accounts (I just spent the last 40 minutes seaching the web and > mailing-list) the above should be all I need. But all it does is serve > up .rbx files as plain text --it doesn't execute them. chmod 750 on *.rbx ? -- James Britt "Inside every large system there's a small system trying to get out". - Chet Hendrickson From zedshaw at zedshaw.com Thu Oct 5 10:43:45 2006 From: zedshaw at zedshaw.com (Zed A. Shaw) Date: Thu, 5 Oct 2006 07:43:45 -0700 Subject: [Nitro] Mongrel behind a proxy In-Reply-To: References: <20061005130600.GA28220@none.at> Message-ID: <20061005074345.74211678.zedshaw@zedshaw.com> On Thu, 5 Oct 2006 21:31:19 +0300 "George Moschovitis" wrote: > Btw, > > Even though Mongrel seems to work quite nicely behind the Apache, we > still need to cleanup the mongrel adapter implementation. Any help > appreciated. Perhaps Zed could have a look at this? Sure, hook up with me next week so I can get the code and submit a patch or give advice. I'm looking to play with darcs anyway so might be a good practical exercise. -- Zed A. Shaw, MUDCRAP-CE Master Black Belt Sifu http://www.zedshaw.com/ http://mongrel.rubyforge.org/ http://www.lingr.com/room/3yXhqKbfPy8 -- Come get help. From transfire at gmail.com Thu Oct 5 20:04:43 2006 From: transfire at gmail.com (TRANS) Date: Thu, 5 Oct 2006 20:04:43 -0400 Subject: [Nitro] Setting up simple CGI on ubuntu In-Reply-To: <45257653.6040903@gmail.com> References: <4b6f054f0610050956w50ee0d9fvec5e053ac2834099@mail.gmail.com> <45257653.6040903@gmail.com> Message-ID: <4b6f054f0610051704g68d43b37k1ff3470bcca94ccb@mail.gmail.com> On 10/5/06, James Britt wrote: > TRANS wrote: > > > By all accounts (I just spent the last 40 minutes seaching the web and > > mailing-list) the above should be all I need. But all it does is serve > > up .rbx files as plain text --it doesn't execute them. > > chmod 750 on *.rbx ? Yep, got that. Thanks for responding though. I figured it out about an hour ago (sigh 5 hrs on this stupid thing!). All it was: AddHandler has to be in the VirtualHost section not the Directory section. Such a little thing. But aht's how it alwasy is with configuring Apache in my expirence. Would be nice if Apache reported an error in a log or something, but no, it just ignores it. Oh well. Fixed now. Thanks James! T. From transfire at gmail.com Thu Oct 5 20:39:45 2006 From: transfire at gmail.com (TRANS) Date: Thu, 5 Oct 2006 20:39:45 -0400 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> Message-ID: <4b6f054f0610051739q689d774dw124dc45f13c02545@mail.gmail.com> On 10/5/06, George Moschovitis wrote: > Excuse my ignorance, I feel a little bit lost with all these names. > What exactly is ratchets and where can I download it? I understand it > is some kind of a Reap replacement? That's right. Working on Reap, Rolls and Sow I realized I was making things much more complex than they needed to be. These projects were largely dependent so did an expirement and merged them. Well, everything came together like magic and so Ratchets was born. Of course it took some time to take full advantage of the merger but I'm getting very close to a first release now. The neat thing is, you can view Ratchets as library of build tools, like Facets is a library of programming tools. But of course Rathcets comes with some front-end commands too to make it easy to put them to use. T. P.S. Has anyone noticed that Ryan Davis is immitating me? He recently released Hoe which is essentially what Reap was when I first created it. Then he released an ascii-pictoral html table generator --something I did years ago. Now he's added a 'sow' command which is basically the same as my 'seed' command and conflicts with the namespace of my Sow project. Crazy. I wonder if he has any idea. How ironically lucky for him though, with the advent of Ratchets, it doesn't really matter (What was Sow will rebubbed Roll and be built on top of Ratchets which has 90% of needed functionality; and what was Roll is just library.rb now and is include in Ratchets). From george.moschovitis at gmail.com Fri Oct 6 01:33:32 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Fri, 6 Oct 2006 08:33:32 +0300 Subject: [Nitro] Mongrel behind a proxy In-Reply-To: <20061005074345.74211678.zedshaw@zedshaw.com> References: <20061005130600.GA28220@none.at> <20061005074345.74211678.zedshaw@zedshaw.com> Message-ID: > Sure, hook up with me next week so I can get the code and submit a patch or give advice. I'm looking to play with darcs anyway so might be a good practical exercise. Thanks, I will contact you next week then ;-) -g. -- http://www.gmosx.com http://www.nitroproject.org From al-nitrogen at none.at Fri Oct 6 04:03:19 2006 From: al-nitrogen at none.at (Aleksandar Lazic) Date: Fri, 6 Oct 2006 10:03:19 +0200 Subject: [Nitro] Mongrel behind a proxy In-Reply-To: References: <20061005130600.GA28220@none.at> Message-ID: <20061006080319.GD26560@none.at> On Don 05.10.2006 21:31, George Moschovitis wrote: >Btw, > >Even though Mongrel seems to work quite nicely behind the Apache, we >still need to cleanup the mongrel adapter implementation. Any help >appreciated. Perhaps Zed could have a look at this? Sorry, I'am to busy at the moment to help :-( I'am glad to here that Zed is here to help :-) Regards Aleks From fabian at fabian-buch.de Fri Oct 6 04:37:24 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Fri, 6 Oct 2006 10:37:24 +0200 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> Message-ID: <0E79335F-938F-4375-A253-FE8BAD7677F7@fabian-buch.de> Am 05.10.2006 um 21:47 schrieb George Moschovitis: > Excuse my ignorance, I feel a little bit lost with all these names. > What exactly is ratchets and where can I download it? I understand it > is some kind of a Reap replacement? Yes. You can't download it yet, b/c Trans didn't release it yet, but will soon :). I bet Trans will do a release announcement in this list too. Ratchets will combine Reap, Sow and Rolls as I understood Trans. One software for projects, tasks, meta-package management and something that could replace rubygems. Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From george.moschovitis at gmail.com Fri Oct 6 05:59:46 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Fri, 6 Oct 2006 12:59:46 +0300 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: <4b6f054f0610051739q689d774dw124dc45f13c02545@mail.gmail.com> References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> <4b6f054f0610051739q689d774dw124dc45f13c02545@mail.gmail.com> Message-ID: > That's right. Working on Reap, Rolls and Sow I realized I was making > things much more complex than they needed to be. These projects were > ... > comes with some front-end commands too to make it easy to put them to > use. Where can I download this? -g. -- http://www.gmosx.com http://www.nitroproject.org From aglarond at gmail.com Fri Oct 6 06:21:28 2006 From: aglarond at gmail.com (Dimitri Aivaliotis) Date: Fri, 6 Oct 2006 12:21:28 +0200 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: <4b6f054f0610051739q689d774dw124dc45f13c02545@mail.gmail.com> References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> <4b6f054f0610051739q689d774dw124dc45f13c02545@mail.gmail.com> Message-ID: <55c107bf0610060321m285d64b6qd81f0f6011e6e549@mail.gmail.com> On 10/6/06, TRANS wrote: > > > The neat thing is, you can view Ratchets as library of build tools, > like Facets is a library of programming tools. But of course Rathcets > comes with some front-end commands too to make it easy to put them to > use. > Cool! I'm looking forward to the release of Ratchets. So, I suppose I should wait till then, but I'll ask now anyways: will all the 'reap' tasks now be available to 'project', plus more? (I think 'project' is a great name for a command-line project-management tool, by the way.) P.S. Has anyone noticed that Ryan Davis is immitating me? He recently > released Hoe which is essentially what Reap was when I first created > it. > Indeed. I pointed this out on #nitro when he first released Hoe... His responses to Kirk's queries on the ML were not too enlightening. Or rather, enlightening as to his opinions, and not to the actual point of the questions about the differences between the two projects. - Dimitri -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061006/e80098c8/attachment.html From transfire at gmail.com Fri Oct 6 07:50:35 2006 From: transfire at gmail.com (TRANS) Date: Fri, 6 Oct 2006 07:50:35 -0400 Subject: [Nitro] Web Editor? Message-ID: <4b6f054f0610060450l6735ce49k708d3f7809a20a62@mail.gmail.com> Someone asked about a web editor? http://www.fckeditor.net/ T. From zimba.tm at gmail.com Fri Oct 6 09:50:07 2006 From: zimba.tm at gmail.com (Jonas Pfenniger) Date: Fri, 6 Oct 2006 15:50:07 +0200 Subject: [Nitro] Mongrel behind a proxy In-Reply-To: <20061006080319.GD26560@none.at> References: <20061005130600.GA28220@none.at> <20061006080319.GD26560@none.at> Message-ID: <3ff63f9b0610060650m5927369an7dd0152003159d15@mail.gmail.com> +1 for Nginx Last time i've used Lighttpd as a proxy it cached the whole request in memory before sending it furter. Not very nice for big files... -- Cheers, zimbatm http://zimbatm.oree.ch From john at oxyliquit.de Fri Oct 6 08:13:03 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Fri, 06 Oct 2006 14:13:03 +0200 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: <4b6f054f0610051739q689d774dw124dc45f13c02545@mail.gmail.com> References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> <4b6f054f0610051739q689d774dw124dc45f13c02545@mail.gmail.com> Message-ID: Hi, > P.S. Has anyone noticed that Ryan Davis is immitating me? He recently > released Hoe which is essentially what Reap was when I first created > it. Then he released an ascii-pictoral html table generator > --something I did years ago. Now he's added a 'sow' command which is > basically the same as my 'seed' command and conflicts with the > namespace of my Sow project. Crazy. I wonder if he has any idea. Yeah, I've seen the 'sow' on ruby-talk and it seemed confusingly similar to your project. I've been wanting to ask you what's up with that, but seeing you got no idea either... :P Either he really is your clone (ever got abducted by aliens?) or he likes duplicating your work. :P Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From fabian at fabian-buch.de Fri Oct 6 09:26:29 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Fri, 6 Oct 2006 15:26:29 +0200 Subject: [Nitro] small bug in global.rb Message-ID: hi George, Didn't want to make a patch (but can do if you want), since it's very small. In global.rb Global isn't in Nitro namespace. I don't want to discuss whether Global is a good namespace, but Session is in Nitro namespace. Do the following change and record it in one of your next patches: hunk ./nitro/lib/nitro/global.rb 34 - def setup(type = Session.cache_type) + def setup(type = Nitro::Session.cache_type) Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From william.full.moon at gmail.com Sat Oct 7 23:11:22 2006 From: william.full.moon at gmail.com (* William) Date: Sun, 8 Oct 2006 13:11:22 +1000 Subject: [Nitro] c.f. Take a look at: WSGI: Python's Secret Web Weapon Message-ID: <000001c6ea87$7b7be700$b0af07ca@ghostgum> Hello hello .. I haven't been about for a bit I have been reading -- things are evolving rapidly in the Nitro world I see. I'm getting a new business going at the moment. I plan to get back on the Nitro track as things stabilize. Call me when any of you need a success coach or a business coach. I thought I'd send this out to Nitro because I've seen the plethora of frameworks in the Python world and ... This kind of gateway structure for Ruby would be lovely. In saying this, there's no reason for a tool like Nitro to not make an effort to be flexible and catholic about the web framework and scaffolding business. ;;-) Keep up the good work all of you. Give these few pages a read. Aloha, William -----Original Message----- From: XML.com Newsletter [mailto:elists-admin at oreillynet.com] Sent: Saturday, 7 October 2006 10:01 To: william.full.moon at gmail.com Subject: Introducing WSGI: Python's Secret Web Weapon, Part Two XML.com Xtra! --------------------------------- The Email for XML.com Subscribers ================================================================= Dear Reader, Welcome to another issue of XML.com. Last week, James Gardner introduced us to WSGI, which is the secret Python web weapon that's making a huge difference in the way the Python web framework ecosphere is developing. This week James concludes his look at WSGI and shows us how to build a Introducing WSGI: Python's Secret Web Weapon, Part One: Getting Started http://www.xml.com/pub/a/2006/09/27/introducing-wsgi-pythons-secret-web-weap on.html Introducing WSGI: Python's Secret Web Weapon, Part Two http://www.xml.com/pub/a/2006/10/04/introducing-wsgi-pythons-secret-web-weap on-part-two.html Kurt Cagle, Live From AJAX World http://www.oreillynet.com/xml/blog/2006/10/ajax_world_first_report.html -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.407 / Virus Database: 268.13.0/464 - Release Date: 05-Oct-2006 From m.fellinger at gmail.com Sun Oct 8 05:43:57 2006 From: m.fellinger at gmail.com (Michael Fellinger) Date: Sun, 8 Oct 2006 18:43:57 +0900 Subject: [Nitro] c.f. Take a look at: WSGI: Python's Secret Web Weapon In-Reply-To: <000001c6ea87$7b7be700$b0af07ca@ghostgum> References: <000001c6ea87$7b7be700$b0af07ca@ghostgum> Message-ID: <9c00d3e00610080243n4d7c861cn646930074ac60e16@mail.gmail.com> On 10/8/06, * William wrote: > Hello hello > > .. I haven't been about for a bit I have been reading -- things are evolving > rapidly in the Nitro world I see. I'm getting a new business going at the > moment. I plan to get back on the Nitro track as things stabilize. Call me > when any of you need a success coach or a business coach. > > I thought I'd send this out to Nitro because I've seen the plethora of > frameworks in the Python world and ... This kind of gateway structure for > Ruby would be lovely. > > In saying this, there's no reason for a tool like Nitro to not make an > effort to be flexible and catholic about the web framework and scaffolding > business. ;;-) > > Keep up the good work all of you. Give these few pages a read. http://blade.nagaokaut.ac.jp/cgi-bin/vframe.rb/ruby/ruby-talk/215730?215541-216440 :) > > Aloha, > William > > -----Original Message----- > From: XML.com Newsletter [mailto:elists-admin at oreillynet.com] > Sent: Saturday, 7 October 2006 10:01 > To: william.full.moon at gmail.com > Subject: Introducing WSGI: Python's Secret Web Weapon, Part Two > > XML.com Xtra! > --------------------------------- > The Email for XML.com Subscribers > > ================================================================= > > Dear Reader, > > Welcome to another issue of XML.com. > > Last week, James Gardner introduced us to WSGI, which is the secret Python > web weapon that's making a huge difference in the way the Python web > framework ecosphere is developing. This week James concludes his look at > WSGI and shows us how to build a > > Introducing WSGI: Python's Secret Web Weapon, Part One: Getting Started > > > http://www.xml.com/pub/a/2006/09/27/introducing-wsgi-pythons-secret-web-weap > on.html > > Introducing WSGI: Python's Secret Web Weapon, Part Two > > http://www.xml.com/pub/a/2006/10/04/introducing-wsgi-pythons-secret-web-weap > on-part-two.html > > Kurt Cagle, Live From AJAX World > http://www.oreillynet.com/xml/blog/2006/10/ajax_world_first_report.html From william.full.moon at gmail.com Sun Oct 8 09:26:13 2006 From: william.full.moon at gmail.com (* William) Date: Sun, 8 Oct 2006 23:26:13 +1000 Subject: [Nitro] c.f. Take a look at: WSGI: Python's Secret Web Weapon In-Reply-To: <9c00d3e00610080243n4d7c861cn646930074ac60e16@mail.gmail.com> Message-ID: <003501c6eadd$5737e230$62af07ca@ghostgum> Thanks Michael ... For those who didn't pursue the link Michael provided: > http://blade.nagaokaut.ac.jp/cgi-bin/vframe.rb/ruby/ruby-talk/215730?215541- 216440 > > In Ruby, you look at something like Mongrel and it has to explicitly > > add Rails, Camping, Nitro support. In Python, if a server is WSGI, > > anything that supports WSGI will run on it. Some frameworks, like > > Pylons, have incorporated it throughout the stack to make it trivial > > to swap put template systems, ORMs, you name it. A few things I know from fast transaction processing environments is that clean architectures work faster than things that look like CICS or even J2EE or SAP. The WSGI idea makes that 'easy' by providing an onion skin layer approach to the solution. It is 'simple' -- it is Very Empowering. The one thing I noticed in Nitro is that is follows some of this ethos already. (or was tending to do so, previously) My poorly expressed final comment was suggestive of Nitro to Implement a 'pseudo WSGI' gateway layer in anticipation of consensus :-) Cheers, Will. _My_Bright_Ideas____________________________________________________abn:7742 5560110_ "You must BE the change you want." ~ Gandhi Success Coaching http://adroit-process.blogspot.com/ ph/sms: 041-476-1217 -----Original Message----- From: Michael Fellinger [mailto:m.fellinger at gmail.com] Sent: Sunday, 8 October 2006 19:44 To: william.full.moon at gmail.com; General discussion about Nitro Subject: Re: [Nitro] c.f. Take a look at: WSGI: Python's Secret Web Weapon Importance: Low On 10/8/06, * William wrote: > > I thought I'd send this out to Nitro because I've seen the plethora > of frameworks in the Python world and ... This kind of gateway > structure for Ruby would be lovely. > > In saying this, there's no reason for a tool like Nitro to not make an > effort to be flexible and catholic about the web framework and > scaffolding business. ;;-) > > Keep up the good work all of you. Give these few pages a read. http://blade.nagaokaut.ac.jp/cgi-bin/vframe.rb/ruby/ruby-talk/215730?215541- 216440 :) -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.407 / Virus Database: 268.13.0/464 - Release Date: 05-Oct-2006 From george.moschovitis at gmail.com Sun Oct 8 12:14:51 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 8 Oct 2006 19:14:51 +0300 Subject: [Nitro] Web Editor? In-Reply-To: <4b6f054f0610060450l6735ce49k708d3f7809a20a62@mail.gmail.com> References: <4b6f054f0610060450l6735ce49k708d3f7809a20a62@mail.gmail.com> Message-ID: Dojo's rte editor is better I think ;-) -g. On 10/6/06, TRANS wrote: > Someone asked about a web editor? > > http://www.fckeditor.net/ > > T. > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Sun Oct 8 14:22:50 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 8 Oct 2006 21:22:50 +0300 Subject: [Nitro] c.f. Take a look at: WSGI: Python's Secret Web Weapon In-Reply-To: <000001c6ea87$7b7be700$b0af07ca@ghostgum> References: <000001c6ea87$7b7be700$b0af07ca@ghostgum> Message-ID: thanks for the link, I will have a look at it! -g. On 10/8/06, * William wrote: > Hello hello > > .. I haven't been about for a bit I have been reading -- things are evolving > rapidly in the Nitro world I see. I'm getting a new business going at the > moment. I plan to get back on the Nitro track as things stabilize. Call me > when any of you need a success coach or a business coach. > > I thought I'd send this out to Nitro because I've seen the plethora of > frameworks in the Python world and ... This kind of gateway structure for > Ruby would be lovely. > > In saying this, there's no reason for a tool like Nitro to not make an > effort to be flexible and catholic about the web framework and scaffolding > business. ;;-) > > Keep up the good work all of you. Give these few pages a read. > > Aloha, > William > > -----Original Message----- > From: XML.com Newsletter [mailto:elists-admin at oreillynet.com] > Sent: Saturday, 7 October 2006 10:01 > To: william.full.moon at gmail.com > Subject: Introducing WSGI: Python's Secret Web Weapon, Part Two > > XML.com Xtra! > --------------------------------- > The Email for XML.com Subscribers > > ================================================================= > > Dear Reader, > > Welcome to another issue of XML.com. > > Last week, James Gardner introduced us to WSGI, which is the secret Python > web weapon that's making a huge difference in the way the Python web > framework ecosphere is developing. This week James concludes his look at > WSGI and shows us how to build a > > Introducing WSGI: Python's Secret Web Weapon, Part One: Getting Started > > > http://www.xml.com/pub/a/2006/09/27/introducing-wsgi-pythons-secret-web-weap > on.html > > Introducing WSGI: Python's Secret Web Weapon, Part Two > > http://www.xml.com/pub/a/2006/10/04/introducing-wsgi-pythons-secret-web-weap > on-part-two.html > > Kurt Cagle, Live From AJAX World > http://www.oreillynet.com/xml/blog/2006/10/ajax_world_first_report.html > > > > -- > No virus found in this outgoing message. > Checked by AVG Free Edition. > Version: 7.1.407 / Virus Database: 268.13.0/464 - Release Date: 05-Oct-2006 > > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 10 05:53:16 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 10 Oct 2006 12:53:16 +0300 Subject: [Nitro] Questions about the big bundle. Message-ID: Some questions regarding the latest big patch bundle. - what is the sqlite3 memory store? - can someone please describe the problem with index params, what exactly does this patch fix and how. - there is a patch named 'post params', what does it fix? thanks in advance, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 10 10:32:09 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 10 Oct 2006 17:32:09 +0300 Subject: [Nitro] OT: Bazaar Message-ID: Dear devs, here is an off-topic question for you. Has anyone on this list any experience with Bazaar, the Canonical sponsored cersion control system? thanks in advance for any info! -g. -- http://www.gmosx.com http://www.nitroproject.org From john at oxyliquit.de Tue Oct 10 10:42:58 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 10 Oct 2006 16:42:58 +0200 Subject: [Nitro] Questions about the big bundle. In-Reply-To: References: Message-ID: Hi, > Some questions regarding the latest big patch bundle. > > - what is the sqlite3 memory store? Apparently sqlite has the ability to use the memory as database when the filename is ':memory:', which is pretty cool I think. > - can someone please describe the problem with index params, what > exactly does this patch fix and how. Please provide the full patch descriptions as it is hard for me to remember exactly the patch when it was done some time ago ^^; I believe you mean this code piece in dispatcher.rb: unless found action = 'index' if klass.respond_to_action_or_template?(action) a = klass.instance_method(:index).arity if a < 0 || a >= parts.size idx = -1 found = true end end end as opposed to your unless found action = 'index' if klass.respond_to_action_or_template?(action) idx = -1 found = true end end This is merely a patch to the 'fail early' strategy. This patch can safely be ignored. > - there is a patch named 'post params', what does it fix? Not sure which patch you mean here, do you mean this one? Fri Sep 29 15:46:06 CEST 2006 Jonathan Buch * Remove query munching from dispatcher, this is done in cgi.rb already This prevented mixing POST and GET parameters together and only GET params were used. Possible problems with SCGI adapter. This is pretty much self explanatory: When doing a `POST /action/param/param?more=params` with some attached form data, the form data was thrown away and only the GET parameters where used. Anyway, to explain the other param changes just in case: Your code: param_count = @controller.instance_method(action.to_sym).arity if param_count != 0 code << %{ params = [] unless context.query_string.blank? all_params = context.query_string.split(/[&;]/) all_params.each_with_index do |param, i| break unless i < #{param_count}; if param.index '=' params << CGI.unescape(param.split(/=/).last || '') else params << CGI.unescape(param) end end end # Fill the array with nils for the missing params. (#{param_count} - params.size).times { params << nil } action_return_value = #{action}(*params) } else code << %{ action_return_value = #{action} } end This has a few problems: * It replaces not available parameters with `nil`. This might seem convenient at first, as no error gets thrown when the user enters a wrong URL, but it still is wrong. To create a variable parameter we write `def action(param1 = nil)` and not `def action(param1)`. Fail early, why should I catch this error in my own action when it can be cought before? * It mixes GET parameters into the nice-url parameters. Might seem convenient as well at first, still wrong. GET parameters can be in any order, they should be treated like a hash, not a list of parameters which are shoved into a action. Accessing GET (and POST) parameters via `request.params[]` is fast and is less error prone. * The arity of the method is used for determining the number of params. This is also wrong, since -1 and -2 are also possible as arity. Those two are linked to how Ruby works from the C side. (Copied from Ruby book.) argc Function prototype 0..17 VALUE func(VALUE self, VALUE arg...) The C function will be called with this many actual arguments. -1 VALUE func(int argc, VALUE *argv, VALUE self) The C function will be given a variable number of arguments passed as a C array. -2 VALUE func(VALUE self, VALUE args) The C function will be given a variable number of arguments passed as a Ruby array. Your function assumes that the arity will be greather or equal zero. It will work, when your function has more or the same amount of parameters than given on command-line. This problem is even worse when combined with aforementioned GET param mixin. All three points here create problems with certain kinds of usages, but work with others and or workarounds. code << %{ params = context.headers['ACTION_PARAMS'].to_s.split(';') begin action_return_value = #{action}(*params) rescue ArgumentError => e raise NoActionError, "No action for \#{@action_name}(\#{params.join(', ')})." end } This is my code. It assumes that the error handling is done one step after, when the code is actually eval'ed. It doesn't care what parameters it pushes to the actual function, as the ruby function itself knows what it wants best. It catches ArgumentErrors and returns to the same behaviour as it would when the action didn't exist. It might be that my theory is inherently flawed as you told me on IRC that there are problems with it. Please tell me what problems arose when you tried it, and if it's more the behaviour (not filling in missing params) or the strategy (not failing at once, catching `ArgumentError` too late?). If you test it, please tell me with what kinds of function it fails, read the tc_controller_params.rb, make more tests to that testcase which prove my method wrong etc. As I wrote that testcase, the testcase might be flawed as well, please look into it to check the behaviour and tell me if anything is wrong with it. Now to other small glitches in your repo: * dispatcher.rb 180: key, ignore_query = path.split('?', 2) 181: key = key.split('/') In your dispatcher the first line is missing. The query was first used for query munching (which is done in cgi.rb already). Now the query could be thrown away like this: 180: key, * = path.split('?', 2) But you don't have this line anymore, is this now done somewhere before that? When not doing this while having a URL like '/action/?asf=asd/sad' it would fail pretty hard, and even without the '/'. * publishable.rb `def self.action_methods`, this method has to be revamped again. Manveru had accidentially merged in a wrong version of this method. Patch attached. * og.rb 147: m.manage_classes This should read: 147: m.manage_classes(options[:classes]) And I propose to move the stuff in the .start function out of the begin/rescue block. A database dependent application should fail if the Og store can't be set up instead of silently failing. This change was done in one of my `rescue Object` fixes which where never merged. Read my post again back then for more info why `rescue Object` is a bad idea. Sorry for the long rant and I hope things are more clear now than they were before. So long, Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png -------------- next part -------------- A non-text attachment was scrubbed... Name: publ.patch.tar.bz2 Type: application/bzip2 Size: 10047 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061010/05a57e85/attachment.bin From lasso at lassoweb.se Tue Oct 10 12:04:37 2006 From: lasso at lassoweb.se (Lars Olsson) Date: Tue, 10 Oct 2006 18:04:37 +0200 Subject: [Nitro] Strange/dangerous behaviour on Lighttpd - please advice Message-ID: <452BC495.4040306@lassoweb.se> Hi list!! My Nitro apps have been spinning around nicely for a couple of weeks on Apache proxy + lighttpd + FastCGI now. The apps work fine, but today when I did some testing I discovered something startling. All my pages are available to the browser as source! If I use the url http://mysite/index everything is fine If I use the url http://mysite/index.xhtml the *source* of index.xhtml gets sent. I didn't have this problem when running solely on Apache, so apparently I must have messed something up with lighttpd.conf. I checked http://www.oxyliquit.de/tip/12 but I can't see any major differences from my setup (attached below). Can anyone see whats wrong? ## SERVER MODULES ## ## Please leave alone unless you know what you're doing ## ## See line 22 for start of required config ## server.modules = ( "mod_rewrite", "mod_redirect", "mod_access", "mod_auth", # "mod_status", "mod_fastcgi", # "mod_simple_vhost", # "mod_evhost", "mod_cgi", "mod_compress", # "mod_ssi", # "mod_usertrack", # "mod_rrdtool", "mod_proxy", "mod_accesslog" ) ########## REQUIRED SETTINGS ##################################### # You must change these settings to get Lighttpd up and running ## ################################################################## # Port assignment server.port = 12345 # IMPORTANT # From this point forward, you can do a search and replace for "yourusername" # without the quotes, and replacing it with your real username. Replace # rails_instance with the name of the Rails application in question # Document root and fastcgi settings server.document-root = "/home/username/nitro_sites/sitename/public/" fastcgi.server = ( ".php" => ( "localhost" => ( "socket" => "/home/username/lighttpd-php-username.socket", "bin-path" => "/usr/bin/php-cgi", "min-procs" => 1, "max-procs" => 1, "idle-timeout" => 60, "allow-x-send-file" => "enable" ) ), ".fcgi" => ( "localhost" => ( "socket" => "/home/username/lighttpd-fcgi-username.socket", "bin-path" => "/home/username/nitro_sites/sitename/public/dispatch.fcgi", "min-procs" => 1, "max-procs" => 1, "idle-timeout" => 60, "allow-x-send-file" => "enable" ) ) ) # Error logs and index file settings server.errorlog = "/home/username/logs/lighttpd_error_log" server.indexfiles = ( "index.php", "index.html", "index.htm", "default.htm" ) server.pid-file = "/home/username/lighttpd.pid" ########## OPTIONAL SETTINGS ###################################################### # If you want, you can change these settings, but the defaults work fine as well ## ################################################################################### # turn on or off index of directory without an indexfile server.dir-listing = "disable" # 404 error handler - this is recommended for Rails apps server.error-handler-404 = "/dispatch.fcgi" # preform URL rewriting (recommended you leave this alone unless you know what you're doing) #url.rewrite = ( "^/$" => "index.html", "^([^.]+)$" => "$1.html" ) # mimetype mapping mimetype.assign = ( ".pdf" => "application/pdf", ".sig" => "application/pgp-signature", ".spl" => "application/futuresplash", ".class" => "application/octet-stream", ".ps" => "application/postscript", ".torrent" => "application/x-bittorrent", ".dvi" => "application/x-dvi", ".gz" => "application/x-gzip", ".pac" => "application/x-ns-proxy-autoconfig", ".swf" => "application/x-shockwave-flash", ".tar.gz" => "application/x-tgz", ".tgz" => "application/x-tgz", ".tar" => "application/x-tar", ".zip" => "application/zip", ".mp3" => "audio/mpeg", ".m3u" => "audio/x-mpegurl", ".wma" => "audio/x-ms-wma", ".wax" => "audio/x-ms-wax", ".ogg" => "audio/x-wav", ".wav" => "audio/x-wav", ".gif" => "image/gif", ".jpg" => "image/jpeg", ".jpeg" => "image/jpeg", ".png" => "image/png", ".xbm" => "image/x-xbitmap", ".xpm" => "image/x-xpixmap", ".xwd" => "image/x-xwindowdump", ".css" => "text/css", ".html" => "text/html", ".htm" => "text/html", ".js" => "text/javascript", ".asc" => "text/plain", ".c" => "text/plain", ".conf" => "text/plain", ".text" => "text/plain", ".txt" => "text/plain", ".dtd" => "text/xml", ".xml" => "text/xml", ".mpeg" => "video/mpeg", ".mpg" => "video/mpeg", ".mov" => "video/quicktime", ".qt" => "video/quicktime", ".avi" => "video/x-msvideo", ".asf" => "video/x-ms-asf", ".asx" => "video/x-ms-asf", ".wmv" => "video/x-ms-wmv" ) # Use the "Content-Type" extended attribute to obtain mime type if possible # mimetypes.use-xattr = "enable" ## deny access the file-extensions # ~ is for backupfiles from vi, emacs, joe, ... # .inc is often used for code includes which should in general not be part # of the document-root url.access-deny = ("~", ".inc") Sincerely /lasso -- ________________________________________ Lars Olsson lasso at lassoweb.se http://www.lassoweb.se/ From noe.rubinstein at gmail.com Tue Oct 10 12:29:30 2006 From: noe.rubinstein at gmail.com (=?UTF-8?Q?No=C3=A9_Rubinstein?=) Date: Tue, 10 Oct 2006 18:29:30 +0200 Subject: [Nitro] OT: Bazaar In-Reply-To: References: Message-ID: Now, bazaar is replaced by Bazaar-NG, (==bzr). Never tried it. Well, it's written in Python, but we haven't any mature VCS in Ruby :'( (If you didn't, also take a look on Mercurial and Darcs). No? Rubinstein. 2006/10/10, George Moschovitis : > Dear devs, > > here is an off-topic question for you. Has anyone on this list any > experience with Bazaar, the Canonical sponsored cersion control > system? > > thanks in advance for any info! > -g. > > -- > http://www.gmosx.com > http://www.nitroproject.org > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > From john at oxyliquit.de Tue Oct 10 16:11:55 2006 From: john at oxyliquit.de (john at oxyliquit.de) Date: Tue, 10 Oct 2006 22:11:55 +0200 Subject: [Nitro] Questions about the big bundle. In-Reply-To: References: Message-ID: <20061010201154.GA22197@oxyliquit.de> Uh, slight glitch in the post right now about function arity: It's like I wrote before (not having to do with C), -2 meaning def a(a, *args), so 1 needed parameter and so on. I was slightly confused I guess. :P Jo From zimba.tm at gmail.com Tue Oct 10 14:55:39 2006 From: zimba.tm at gmail.com (Jonas Pfenniger) Date: Tue, 10 Oct 2006 20:55:39 +0200 Subject: [Nitro] Devlab anyone ? Message-ID: <3ff63f9b0610101155l4bab9a3cue295ae6504f4c3d9@mail.gmail.com> Hello, is anybody still using devlab ? I'm going to restructure the website to use Trac 0.10 and support multiple svn, now that trac-0.10 is in portage. Can I go ahead and erase everything ? -- Cheers, zimbatm http://zimbatm.oree.ch From fabian at fabian-buch.de Tue Oct 10 17:44:13 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Tue, 10 Oct 2006 23:44:13 +0200 Subject: [Nitro] Strange/dangerous behaviour on Lighttpd - please advice In-Reply-To: <452BC495.4040306@lassoweb.se> References: <452BC495.4040306@lassoweb.se> Message-ID: <355B8EB6-B2DC-4230-B14A-D37911ABBFA5@fabian-buch.de> do you have your templates (.xhtml) in public/ directory? then it's of course viewable directly. It's recommended to put them in a template/ directory (which is Nitro's convention), or some other dir, configurable by Nitro::Template.root Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From transfire at gmail.com Tue Oct 10 21:14:11 2006 From: transfire at gmail.com (TRANS) Date: Tue, 10 Oct 2006 21:14:11 -0400 Subject: [Nitro] Devlab anyone ? In-Reply-To: <3ff63f9b0610101155l4bab9a3cue295ae6504f4c3d9@mail.gmail.com> References: <3ff63f9b0610101155l4bab9a3cue295ae6504f4c3d9@mail.gmail.com> Message-ID: <4b6f054f0610101814k1308c5bcxe43f1e9c0f8103b0@mail.gmail.com> Okay on my end. T. From lasso at lassoweb.se Wed Oct 11 01:41:39 2006 From: lasso at lassoweb.se (Lars Olsson) Date: Wed, 11 Oct 2006 07:41:39 +0200 Subject: [Nitro] Strange/dangerous behaviour on Lighttpd - please advice In-Reply-To: <355B8EB6-B2DC-4230-B14A-D37911ABBFA5@fabian-buch.de> References: <452BC495.4040306@lassoweb.se> <355B8EB6-B2DC-4230-B14A-D37911ABBFA5@fabian-buch.de> Message-ID: <452C8413.2050207@lassoweb.se> Yes, I do. But: 1) It wasn't a problem when using *only* apache. 2) I still get the same behavior after moving all .xhtml files into src/template (lighttpd restarted too). Any ideas? /lasso Fabian Buch skrev: > do you have your templates (.xhtml) in public/ directory? then it's > of course viewable directly. It's recommended to put them in a > template/ directory (which is Nitro's convention), or some other dir, > configurable by Nitro::Template.root > > Fabian From zimba.tm at gmail.com Wed Oct 11 04:05:03 2006 From: zimba.tm at gmail.com (Jonas Pfenniger) Date: Wed, 11 Oct 2006 10:05:03 +0200 Subject: [Nitro] Devlab anyone ? In-Reply-To: <4b6f054f0610101814k1308c5bcxe43f1e9c0f8103b0@mail.gmail.com> References: <3ff63f9b0610101155l4bab9a3cue295ae6504f4c3d9@mail.gmail.com> <4b6f054f0610101814k1308c5bcxe43f1e9c0f8103b0@mail.gmail.com> Message-ID: <3ff63f9b0610110105l78378457ub60aeac56e865a38@mail.gmail.com> Devlab's trac also have been hit by spam pretty badly so I moved the tracs around but I would like to add a user registration system to prevent this. -- Cheers, zimbatm http://zimbatm.oree.ch From zimba.tm at gmail.com Wed Oct 11 04:23:49 2006 From: zimba.tm at gmail.com (Jonas Pfenniger) Date: Wed, 11 Oct 2006 10:23:49 +0200 Subject: [Nitro] OT: Bazaar In-Reply-To: References: Message-ID: <3ff63f9b0610110123x2cb13a23ta7ba36aefa876e6d@mail.gmail.com> Here is my opinion about various relevant VCS i've tried over the time : = Darcs = Interesting because of the patch theory they developped. It allows cherrypicking et al. Unfortunately, theory is not reality and it sometimes happen that you get race condition where it takes hours to solve a diff. This happened to me one time. = Mercurial = More practical than darcs. It's very fast and has about the same features. = Bazaar-NG = Slower than mercurial but it has good support since it's commercially supported by Canonical. I think it will evolve and get faster over time (it already does between 0.8, 0.9 and 0.10). Altrough I didn't test this one so I don't have a real usage opinion. = SVN = Not distributed The only one that supports push over http nicely. It's annoying when you have to create unix shell account to allow push over ssh. -- Cheers, zimbatm http://zimbatm.oree.ch From george.moschovitis at gmail.com Wed Oct 11 05:10:03 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 11 Oct 2006 12:10:03 +0300 Subject: [Nitro] OT: Bazaar In-Reply-To: References: Message-ID: > Now, bazaar is replaced by Bazaar-NG, (==bzr). Never tried it. yeah I am referring to bzr. > (If you didn't, also take a look on Mercurial and Darcs). I am using darcs an I am quite happy with it. What I dont like is that it is written in haskel (even tough I like haskel). regards, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 11 05:12:47 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 11 Oct 2006 12:12:47 +0300 Subject: [Nitro] Questions about the big bundle. In-Reply-To: <20061010201154.GA22197@oxyliquit.de> References: <20061010201154.GA22197@oxyliquit.de> Message-ID: Thanks for the detailed email! Anyway I have integrated the entire patch bundle ;-) So if you have more patches from manv's repo please send them my way. thanks, George. On 10/10/06, john at oxyliquit.de wrote: > Uh, > > slight glitch in the post right now about function arity: > > It's like I wrote before (not having to do with C), -2 meaning > def a(a, *args), so 1 needed parameter and so on. I was slightly > confused I guess. :P > > Jo > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 11 05:13:39 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 11 Oct 2006 12:13:39 +0300 Subject: [Nitro] Devlab anyone ? In-Reply-To: <4b6f054f0610101814k1308c5bcxe43f1e9c0f8103b0@mail.gmail.com> References: <3ff63f9b0610101155l4bab9a3cue295ae6504f4c3d9@mail.gmail.com> <4b6f054f0610101814k1308c5bcxe43f1e9c0f8103b0@mail.gmail.com> Message-ID: No prob with me too ;-) thanks for originally hosting this site btw! -g. On 10/11/06, TRANS wrote: > Okay on my end. > > T. > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 11 09:35:21 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 11 Oct 2006 16:35:21 +0300 Subject: [Nitro] Devlab anyone ? In-Reply-To: <3ff63f9b0610110105l78378457ub60aeac56e865a38@mail.gmail.com> References: <3ff63f9b0610101155l4bab9a3cue295ae6504f4c3d9@mail.gmail.com> <4b6f054f0610101814k1308c5bcxe43f1e9c0f8103b0@mail.gmail.com> <3ff63f9b0610110105l78378457ub60aeac56e865a38@mail.gmail.com> Message-ID: good idea, maybe a captcha system will do the trick too... -g. On 10/11/06, Jonas Pfenniger wrote: > Devlab's trac also have been hit by spam pretty badly so I moved the > tracs around but I would like to add a user registration system to > prevent this. > > > -- > Cheers, > zimbatm > > http://zimbatm.oree.ch > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Wed Oct 11 10:05:22 2006 From: transfire at gmail.com (TRANS) Date: Wed, 11 Oct 2006 10:05:22 -0400 Subject: [Nitro] OT: Bazaar In-Reply-To: <3ff63f9b0610110123x2cb13a23ta7ba36aefa876e6d@mail.gmail.com> References: <3ff63f9b0610110123x2cb13a23ta7ba36aefa876e6d@mail.gmail.com> Message-ID: <4b6f054f0610110705v5015d838ic8524a1f5c23e434@mail.gmail.com> If you are looking for an alternative to Darcs, try Git. Not quite as user friendly but it's distributed like Darcs and it's what Linus uses for Linux and what X.org uses. T. From vagabond at cataclysm-software.net Wed Oct 11 12:41:05 2006 From: vagabond at cataclysm-software.net (Andrew Thompson) Date: Wed, 11 Oct 2006 12:41:05 -0400 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> Message-ID: <20061011164105.GA5832@hijacked.us> Dude, you totally stole my project name ;) http://ratchet.rubyforge.org Mine's pretty inactive I have to admit, but i *might* get back to it one day. Not that I really care but googling for 'ratchet+ruby' does pop me up on page #1 :P Andrew From george.moschovitis at gmail.com Wed Oct 11 16:09:00 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 11 Oct 2006 23:09:00 +0300 Subject: [Nitro] OT: Bazaar In-Reply-To: <4b6f054f0610110705v5015d838ic8524a1f5c23e434@mail.gmail.com> References: <3ff63f9b0610110123x2cb13a23ta7ba36aefa876e6d@mail.gmail.com> <4b6f054f0610110705v5015d838ic8524a1f5c23e434@mail.gmail.com> Message-ID: bzr seems to be just as friendly as darcs (even friendlier) and uses python instead of haskel. -g. On 10/11/06, TRANS wrote: > If you are looking for an alternative to Darcs, try Git. Not quite as > user friendly but it's distributed like Darcs and it's what Linus uses > for Linux and what X.org uses. > > T. > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From m.fellinger at gmail.com Wed Oct 11 18:53:47 2006 From: m.fellinger at gmail.com (Michael Fellinger) Date: Thu, 12 Oct 2006 07:53:47 +0900 Subject: [Nitro] OT: Bazaar In-Reply-To: References: <3ff63f9b0610110123x2cb13a23ta7ba36aefa876e6d@mail.gmail.com> <4b6f054f0610110705v5015d838ic8524a1f5c23e434@mail.gmail.com> Message-ID: <9c00d3e00610111553k9f0b36evf286080bc19f7e17@mail.gmail.com> On 10/12/06, George Moschovitis wrote: > bzr seems to be just as friendly as darcs (even friendlier) and uses > python instead of haskel. Did you read the page of bzr? especially the comparision of VCS http://bazaar-vcs.org/RcsComparisons http://bazaar-vcs.org/Usability Here are some other run-downs http://changelog.complete.org/plugin/freetag/darcs http://zerokspot.com/node/637 http://blog.ianbicking.org/bazaar-ng-try-1.html The most popular opinion/experience seems to be that bzr is a nice idea, but buggy and hasn't reached a stable version in the last 2 years what would interest me is, what makes you think that we want to get rid of darcs, subsequently losing most of our patches...? < manveru > > -g. > > On 10/11/06, TRANS wrote: > > If you are looking for an alternative to Darcs, try Git. Not quite as > > user friendly but it's distributed like Darcs and it's what Linus uses > > for Linux and what X.org uses. > > > > T. > > _______________________________________________ > > Nitro-general mailing list > > Nitro-general at rubyforge.org > > http://rubyforge.org/mailman/listinfo/nitro-general > > > > > -- > http://www.gmosx.com > http://www.nitroproject.org > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > From george.moschovitis at gmail.com Thu Oct 12 01:55:04 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 12 Oct 2006 08:55:04 +0300 Subject: [Nitro] OT: Bazaar In-Reply-To: <9c00d3e00610111553k9f0b36evf286080bc19f7e17@mail.gmail.com> References: <3ff63f9b0610110123x2cb13a23ta7ba36aefa876e6d@mail.gmail.com> <4b6f054f0610110705v5015d838ic8524a1f5c23e434@mail.gmail.com> <9c00d3e00610111553k9f0b36evf286080bc19f7e17@mail.gmail.com> Message-ID: I am not interested to switch from darcs to bzr for the nitro project ;-) don't worry. I am reviewing vcs for my own projects ;-) regards, Georg On 10/12/06, Michael Fellinger wrote: > On 10/12/06, George Moschovitis wrote: > > bzr seems to be just as friendly as darcs (even friendlier) and uses > > python instead of haskel. > > Did you read the page of bzr? > especially the comparision of VCS > > http://bazaar-vcs.org/RcsComparisons > http://bazaar-vcs.org/Usability > > > Here are some other run-downs > > http://changelog.complete.org/plugin/freetag/darcs > http://zerokspot.com/node/637 > http://blog.ianbicking.org/bazaar-ng-try-1.html > > > The most popular opinion/experience seems to be that bzr is a nice > idea, but buggy and hasn't reached a stable version in the last 2 > years > > what would interest me is, what makes you think that we want to get > rid of darcs, subsequently losing most of our patches...? > > < manveru > > > > > -g. > > > > On 10/11/06, TRANS wrote: > > > If you are looking for an alternative to Darcs, try Git. Not quite as > > > user friendly but it's distributed like Darcs and it's what Linus uses > > > for Linux and what X.org uses. > > > > > > T. > > > _______________________________________________ > > > Nitro-general mailing list > > > Nitro-general at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/nitro-general > > > > > > > > > -- > > http://www.gmosx.com > > http://www.nitroproject.org > > _______________________________________________ > > Nitro-general mailing list > > Nitro-general at rubyforge.org > > http://rubyforge.org/mailman/listinfo/nitro-general > > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From manveru at weez-int.com Thu Oct 12 02:15:36 2006 From: manveru at weez-int.com (Michael Fellinger) Date: Thu, 12 Oct 2006 15:15:36 +0900 Subject: [Nitro] OT: Bazaar In-Reply-To: References: <9c00d3e00610111553k9f0b36evf286080bc19f7e17@mail.gmail.com> Message-ID: <200610121515.36768.manveru@weez-int.com> On Thursday 12 October 2006 14:55, George Moschovitis wrote: > I am not interested to switch from darcs to bzr for the nitro project > ;-) don't worry. I am reviewing vcs for my own projects ;-) Puh, i already feared the worst (^_^;) Hope this information helps you a bit though :) i haven't tried bzr myself, but around 95% of those who tried it and that i asked are not very pleased... > > regards, > Georg > > On 10/12/06, Michael Fellinger wrote: > > On 10/12/06, George Moschovitis wrote: > > > bzr seems to be just as friendly as darcs (even friendlier) and uses > > > python instead of haskel. > > > > Did you read the page of bzr? > > especially the comparision of VCS > > > > http://bazaar-vcs.org/RcsComparisons > > http://bazaar-vcs.org/Usability > > > > > > Here are some other run-downs > > > > http://changelog.complete.org/plugin/freetag/darcs > > http://zerokspot.com/node/637 > > http://blog.ianbicking.org/bazaar-ng-try-1.html > > > > > > The most popular opinion/experience seems to be that bzr is a nice > > idea, but buggy and hasn't reached a stable version in the last 2 > > years > > > > what would interest me is, what makes you think that we want to get > > rid of darcs, subsequently losing most of our patches...? > > > > < manveru > > > > > -g. > > > > > > On 10/11/06, TRANS wrote: > > > > If you are looking for an alternative to Darcs, try Git. Not quite as > > > > user friendly but it's distributed like Darcs and it's what Linus > > > > uses for Linux and what X.org uses. > > > > > > > > T. From fabian at fabian-buch.de Thu Oct 12 09:55:34 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Thu, 12 Oct 2006 15:55:34 +0200 Subject: [Nitro] Is this spam on nitroproject.org? Message-ID: <09817225-876F-4F3F-A466-CB70210D55CA@fabian-buch.de> http://nitroproject.org/read/%CE%95%CF%80%CE%B9%CF%83%CF%84%CF%81%CE% BF%CF%86%CE%AD%CF%82-%CF%83%CF%84%CE%BF-%CE%BB%CE%B9%CE%BC%CE%AC%CE%BD %CE%B9 From Reid.Thompson at ateb.com Thu Oct 12 10:23:22 2006 From: Reid.Thompson at ateb.com (Reid Thompson) Date: Thu, 12 Oct 2006 10:23:22 -0400 Subject: [Nitro] Is this spam on nitroproject.org? In-Reply-To: <09817225-876F-4F3F-A466-CB70210D55CA@fabian-buch.de> References: <09817225-876F-4F3F-A466-CB70210D55CA@fabian-buch.de> Message-ID: <1160663010.24285.13.camel@jhereg> On Thu, 2006-10-12 at 15:55 +0200, Fabian Buch wrote: > http://nitroproject.org/read/%CE%95%CF%80%CE%B9%CF%83%CF%84%CF%81%CE% > BF%CF%86%CE%AD%CF%82-%CF%83%CF%84%CE%BF-%CE%BB%CE%B9%CE%BC%CE%AC%CE%BD > %CE%B9 > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general looks like http://www.nitroproject.org and http://nitroproject.org point to two different servers owned by George. From Reid.Thompson at ateb.com Thu Oct 12 14:18:34 2006 From: Reid.Thompson at ateb.com (Reid Thompson) Date: Thu, 12 Oct 2006 14:18:34 -0400 Subject: [Nitro] OT: Bazaar In-Reply-To: <3ff63f9b0610110123x2cb13a23ta7ba36aefa876e6d@mail.gmail.com> References: <3ff63f9b0610110123x2cb13a23ta7ba36aefa876e6d@mail.gmail.com> Message-ID: <1160677115.20754.16.camel@jhereg> On Wed, 2006-10-11 at 10:23 +0200, Jonas Pfenniger wrote: > Here is my opinion about various relevant VCS i've tried over the time : > > = Darcs = > > Interesting because of the patch theory they developped. It allows > cherrypicking et al. Unfortunately, theory is not reality and it > sometimes happen that you get race condition where it takes hours to > solve a diff. This happened to me one time. > > = Mercurial = > > More practical than darcs. It's very fast and has about the same features. > > = Bazaar-NG = > > Slower than mercurial but it has good support since it's commercially > supported by Canonical. I think it will evolve and get faster over > time (it already does between 0.8, 0.9 and 0.10). Altrough I didn't > test this one so I don't have a real usage opinion. > > = SVN = > > Not distributed in what way do you mean it's not distributed? > The only one that supports push over http nicely. It's annoying when > you have to create unix shell account to allow push over ssh. > From transfire at gmail.com Thu Oct 12 20:36:27 2006 From: transfire at gmail.com (TRANS) Date: Thu, 12 Oct 2006 20:36:27 -0400 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: <20061011164105.GA5832@hijacked.us> References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> <20061011164105.GA5832@hijacked.us> Message-ID: <4b6f054f0610121736m2842aff5oc1a1fcaaa26e5a92@mail.gmail.com> On 10/11/06, Andrew Thompson wrote: > Dude, you totally stole my project name ;) > > http://ratchet.rubyforge.org > > Mine's pretty inactive I have to admit, but i *might* get back to it one > day. Not that I really care but googling for 'ratchet+ruby' does pop me > up on page #1 :P Great Scott!!! How did I miss that? The plural must have made all the difference. I'm really sorry. If only I had known.... Unfortunately, at this point I've put a hell of a lot work into the Ratchets theme. And it goes well with my other project's name: Facets. Or maybe I can entice you to seek an even better name for your project? The same thing happened to me once and that's what I ended up doing actually. Hell, I'd even be willing to throw in an incentive, say a 12-pack of your favorite beverage, or something. Just a thought. BTW, I tried to check out icecap and the site seems to be missing. T. From vagabond at cataclysm-software.net Thu Oct 12 21:57:14 2006 From: vagabond at cataclysm-software.net (Andrew Thompson) Date: Thu, 12 Oct 2006 21:57:14 -0400 Subject: [Nitro] Ratchets, two final issues. Please help. In-Reply-To: <4b6f054f0610121736m2842aff5oc1a1fcaaa26e5a92@mail.gmail.com> References: <4b6f054f0610041304k188c125ahc851faf0fc414760@mail.gmail.com> <20061011164105.GA5832@hijacked.us> <4b6f054f0610121736m2842aff5oc1a1fcaaa26e5a92@mail.gmail.com> Message-ID: <20061013015714.GA18069@hijacked.us> On Thu, Oct 12, 2006 at 08:36:27PM -0400, TRANS wrote: > Great Scott!!! How did I miss that? The plural must have made all the > difference. I'm really sorry. If only I had known.... Unfortunately, > at this point I've put a hell of a lot work into the Ratchets theme. > And it goes well with my other project's name: Facets. Or maybe I can > entice you to seek an even better name for your project? The same > thing happened to me once and that's what I ended up doing actually. > Hell, I'd even be willing to throw in an incentive, say a 12-pack of > your favorite beverage, or something. Just a thought. > I don't really object to your project name, I'm not sure how confusing things might get though. We'll have to see. If it does become an issue I can just have them delete the rubyforge page and I can find a new name if/when I get back to the project. I'd prefer to leave that until there's a definite issue though. > BTW, I tried to check out icecap and the site seems to be missing. I think someone broke the DNS, not sure when it'll be back up :( Andrew From zimba.tm at gmail.com Fri Oct 13 03:58:38 2006 From: zimba.tm at gmail.com (Jonas Pfenniger) Date: Fri, 13 Oct 2006 09:58:38 +0200 Subject: [Nitro] OT: Bazaar In-Reply-To: <1160677115.20754.16.camel@jhereg> References: <3ff63f9b0610110123x2cb13a23ta7ba36aefa876e6d@mail.gmail.com> <1160677115.20754.16.camel@jhereg> Message-ID: <3ff63f9b0610130058h15e980edta00602224a8235df@mail.gmail.com> On 12/10/06, Reid Thompson wrote: > > Not distributed > in what way do you mean it's not distributed? With all other SVC above, you can pull and push from any repos. There is no central repository unlike SVN and CVS. -- Cheers, zimbatm http://zimbatm.oree.ch From george.moschovitis at gmail.com Fri Oct 13 05:37:18 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Fri, 13 Oct 2006 12:37:18 +0300 Subject: [Nitro] Is this spam on nitroproject.org? In-Reply-To: <1160663010.24285.13.camel@jhereg> References: <09817225-876F-4F3F-A466-CB70210D55CA@fabian-buch.de> <1160663010.24285.13.camel@jhereg> Message-ID: will fix, thanks! -g. On 10/12/06, Reid Thompson wrote: > On Thu, 2006-10-12 at 15:55 +0200, Fabian Buch wrote: > > http://nitroproject.org/read/%CE%95%CF%80%CE%B9%CF%83%CF%84%CF%81%CE% > > BF%CF%86%CE%AD%CF%82-%CF%83%CF%84%CE%BF-%CE%BB%CE%B9%CE%BC%CE%AC%CE%BD > > %CE%B9 > > _______________________________________________ > > Nitro-general mailing list > > Nitro-general at rubyforge.org > > http://rubyforge.org/mailman/listinfo/nitro-general > > looks like http://www.nitroproject.org and http://nitroproject.org point > to two different servers owned by George. > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Fri Oct 13 05:52:54 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Fri, 13 Oct 2006 12:52:54 +0300 Subject: [Nitro] Is this spam on nitroproject.org? In-Reply-To: References: <09817225-876F-4F3F-A466-CB70210D55CA@fabian-buch.de> <1160663010.24285.13.camel@jhereg> Message-ID: Hmm, my apache vhost file seems wrong, I will have a look at this. thanks, George. On 10/13/06, George Moschovitis wrote: > will fix, thanks! > > -g. > > On 10/12/06, Reid Thompson wrote: > > On Thu, 2006-10-12 at 15:55 +0200, Fabian Buch wrote: > > > http://nitroproject.org/read/%CE%95%CF%80%CE%B9%CF%83%CF%84%CF%81%CE% > > > BF%CF%86%CE%AD%CF%82-%CF%83%CF%84%CE%BF-%CE%BB%CE%B9%CE%BC%CE%AC%CE%BD > > > %CE%B9 > > > _______________________________________________ > > > Nitro-general mailing list > > > Nitro-general at rubyforge.org > > > http://rubyforge.org/mailman/listinfo/nitro-general > > > > looks like http://www.nitroproject.org and http://nitroproject.org point > > to two different servers owned by George. > > _______________________________________________ > > Nitro-general mailing list > > Nitro-general at rubyforge.org > > http://rubyforge.org/mailman/listinfo/nitro-general > > > > > -- > http://www.gmosx.com > http://www.nitroproject.org > -- http://www.gmosx.com http://www.nitroproject.org From john at oxyliquit.de Wed Oct 11 01:37:57 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 11 Oct 2006 07:37:57 +0200 Subject: [Nitro] OT: Bazaar In-Reply-To: References: Message-ID: <20061011053757.GA30222@oxyliquit.de> Hi, > here is an off-topic question for you. Has anyone on this list any > experience with Bazaar, the Canonical sponsored cersion control > system? This depends on which Bazaar you mean. If you mean the _real_ bazaar which is a GNU Arch fork, then yes as I have worked with Arch before. Bazaar is abandoned by Canonical in favour of Bazaar-NG which is written in Python instead of C and is not based on the original Arch. Bazaar-NG apparently has been renamed to Bazaar 2.0 for whatever reason... Anyway. I have used the original (GNU Arch) extensively before switching to Darcs because of Nitro. I guess I'm a bit biased here but I followed the fork a little and I would never use either of the Bazaar versions. Tom Lord stepped down after that mess, Andy Tai is the new maintainer of GNU Arch. It isn't actively developed, but bugfixes are still being done. That said, I can say that I would choose Arch over any revision control system I have used, only with Darcs as a possible candidate. (The recent merging conflict issues on manvs repo really get to my nerves. ;/) Arch has 2 main problems: It doesn't work as well on windows as it could and the usage in the beginning is a little icky. One shouldn't have to always look into the (though well written) manual just to set up a repo.. So, to keep this short: If you meant the original bazaar, go for it, it's a good system (or better, go for Arch :P) but I can't comment on Bazaar-NG aka Bazaar 2.0 which I never used. Jonathan Buch From george.moschovitis at gmail.com Sun Oct 15 04:50:04 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 15 Oct 2006 11:50:04 +0300 Subject: [Nitro] Nitro IRC Meeting Message-ID: Dear devs, I would like to organize an IRC meeting to discuss the future of Nitro and especially how to organize a core team development around this project. Even though we have come up with great code and features for Nitro and Og (especially on the repo versions) we have failed miserably in organizing this project. Of course, as the maintainer of this project, I am the one to blame (even though I had some excuses, like my army service). I strongly believe that you can always make things right in life. Even though some people have been discouraged by the lack of organization and the 'black box'/'george-codes-in-his-appartment' development model, I believe there are people still interested in Nitro. If you are one of these people, lets find a suitable time for an IRC meeting and bring your ideas about how to better organize the project. A time that is suitable for me is: Tuesday 17/10/2006 20:00 CET regards, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Sun Oct 15 04:53:00 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 15 Oct 2006 11:53:00 +0300 Subject: [Nitro] The road to Nitro 0.40.0 Message-ID: Dear devs, after a long time with no new release, I think it is time to concentrate as a team to release the 0.40.0 version. A comfortable release date is Oct 31. To this end, here is a short todo list: - make tests pass - make postgres adapter run - make examples run - introduce new system part / get rid of old scaffolding. - introduce more patches from manveru's repository. - make compatible with latest facets (esp. the new annotation system) - make new deployment scripts (based on the new reap implementation) - cleanup code - update docs If you think that something is missing from this list, please let me know. For the moment I would like to publicly ask Tom (trans) to help me with porting Nitro to the new facets annotation system and help me build some deployment scripts with the new Reap replacement. We have collaboratively done so much work on the repository version of Nitro. This work really deserves to be released and be made known to the wider circle of ruby developers. best regards, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Sun Oct 15 05:14:54 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 15 Oct 2006 12:14:54 +0300 Subject: [Nitro] Nitro repo version Message-ID: Dear devs, I just replaced the Admin part with an improved System part in the repo. Don't complain if this break your apps. Remember this is the repo version, it is intended to break a few things. As described in an earlier email I am working on the examples, test cases, plus doc/MIGRATION. This will stabilize in a few days. Tomorrow I will also add a doc/TODO file that describes some of the ideas I would like to pursuit in the near future. regards, George. -- http://www.gmosx.com http://www.nitroproject.org From m.fellinger at gmail.com Sun Oct 15 06:33:05 2006 From: m.fellinger at gmail.com (Michael Fellinger) Date: Sun, 15 Oct 2006 19:33:05 +0900 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: References: Message-ID: <9c00d3e00610150333n7e0bda11g18a1e2c8c26188ad@mail.gmail.com> On 10/15/06, George Moschovitis wrote: > Dear devs, > > I would like to organize an IRC meeting to discuss the future of Nitro > and especially how to organize a core team development around this > project. Even though we have come up with great code and features for > Nitro and Og (especially on the repo versions) we have failed > miserably in organizing this project. Of course, as the maintainer of > this project, I am the one to blame (even though I had some excuses, > like my army service). > > I strongly believe that you can always make things right in life. Even > though some people have been discouraged by the lack of organization > and the 'black box'/'george-codes-in-his-appartment' development > model, I believe there are people still interested in Nitro. If you > are one of these people, lets find a suitable time for an IRC meeting > and bring your ideas about how to better organize the project. > > A time that is suitable for me is: Tuesday 17/10/2006 20:00 CET Berlin (Germany - Berlin) Tuesday, October 17, 2006 at 8:00:00 PM UTC+2 hours CEST Tokyo (Japan) Wednesday, October 18, 2006 at 3:00:00 AM UTC+9 hours well, i'd like to come, but i can't - i will be fast asleep by then > > > regards, > George. From george.moschovitis at gmail.com Sun Oct 15 07:51:31 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 15 Oct 2006 14:51:31 +0300 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: <9c00d3e00610150333n7e0bda11g18a1e2c8c26188ad@mail.gmail.com> References: <9c00d3e00610150333n7e0bda11g18a1e2c8c26188ad@mail.gmail.com> Message-ID: > Berlin (Germany - Berlin) Tuesday, October 17, 2006 at 8:00:00 PM > UTC+2 hours CEST > Tokyo (Japan) Wednesday, October 18, 2006 at 3:00:00 AM UTC+9 hours > > well, i'd like to come, but i can't - i will be fast asleep by then Ok, please propose another time ;-) -g. -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Sun Oct 15 19:05:45 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Sun, 15 Oct 2006 23:05:45 -0000 Subject: [Nitro] Google Group Archive Message-ID: <1160953545.891585.71930@k70g2000cwa.googlegroups.com> Hey all, George and I have set up a Google Group interface/archive of the Nitro mailing list. In fact I'm using it right now to post this message. This will also provide a searchable archive of all posts from today onward. Check it out at: http://groups.google.com/group/nitro-general-google T. From dan at tastapod.com Sun Oct 15 20:00:46 2006 From: dan at tastapod.com (Dan North) Date: Mon, 16 Oct 2006 01:00:46 +0100 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: References: Message-ID: <4532CBAE.9060807@tastapod.com> Hi folks. I've been a long-time lurker on this list, and a long-time fan of Nitro and Og, since Aidan first showed them to me. It seems to me that while Rails is the poster child and is getting all the press, Nitro is how I /want/ to write web apps in Ruby. I /get/ Nitro. I don't get Rails. I've introduced several people to Nitro, and I describe it as Webwork to Rails's Struts. Where Struts got all the press for Java web apps, all the smart kids use Webwork. I still haven't had the opportunity to write a proper web-facing app in anger in Ruby, but when I do, the choice of framework will be a no-brainer for me. As an enthusiastic observer, please let me encourage you guys to realise the potential of Nitro and Og as being the framework real developers will use to write real, enterprise scale Ruby apps. We all know the active record model doesn't scale. That's why O/R mapping is still the big, ugly monster that it is. Take a leaf from the Django community's book. Those guys have a simple mission: to make Django the Python web platform of choice for anyone. Period. From what I've seen of Nitro, I believe it can be the same thing for Ruby. Thanks for listening, Dan George Moschovitis wrote: > Dear devs, > > I would like to organize an IRC meeting to discuss the future of Nitro > and especially how to organize a core team development around this > project. Even though we have come up with great code and features for > Nitro and Og (especially on the repo versions) we have failed > miserably in organizing this project. Of course, as the maintainer of > this project, I am the one to blame (even though I had some excuses, > like my army service). > > I strongly believe that you can always make things right in life. Even > though some people have been discouraged by the lack of organization > and the 'black box'/'george-codes-in-his-appartment' development > model, I believe there are people still interested in Nitro. If you > are one of these people, lets find a suitable time for an IRC meeting > and bring your ideas about how to better organize the project. > > A time that is suitable for me is: Tuesday 17/10/2006 20:00 CET > > > regards, > George. > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061016/2e7f9abd/attachment.html From transfire at gmail.com Sun Oct 15 20:46:09 2006 From: transfire at gmail.com (TRANS) Date: Sun, 15 Oct 2006 20:46:09 -0400 Subject: [Nitro] The road to Nitro 0.40.0 In-Reply-To: References: Message-ID: <4b6f054f0610151746i4f6b36cfq638707f4f094adcd@mail.gmail.com> On 10/15/06, George Moschovitis wrote: > Dear devs, > > after a long time with no new release, I think it is time to concentrate > as a team to release the 0.40.0 version. A comfortable release date is > Oct 31. To this end, here is a short todo list: > > - make tests pass > - make postgres adapter run > - make examples run > - introduce new system part / get rid of old scaffolding. > - introduce more patches from manveru's repository. > - make compatible with latest facets (esp. the new annotation system) > - make new deployment scripts (based on the new reap implementation) > - cleanup code > - update docs > > If you think that something is missing from this list, please let me know. > > For the moment I would like to publicly ask Tom (trans) to help me > with porting Nitro to the new facets annotation system and help me > build some deployment scripts with the new Reap replacement. > > We have collaboratively done so much work on the repository version of > Nitro. This work really deserves to be released and be made known to > the wider circle of ruby developers. I'm with you 100%. Although I think a more realistic date might be a few more weeks off. Sorry about the delay on my end too. I had family fly in unexpectedly, so I've only had one full day to do any work since last Sunday. They returned home today though, so I'm back at it now. T. From george.moschovitis at gmail.com Mon Oct 16 05:53:01 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 16 Oct 2006 12:53:01 +0300 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: <4532CBAE.9060807@tastapod.com> References: <4532CBAE.9060807@tastapod.com> Message-ID: thanks for the encouraging words ;-) Be assured, nitro will contrinue to evolve and get better and more intuitive all the time. And we will *resolve* the organization issue. ragards, George. On 10/16/06, Dan North wrote: > > Hi folks. > > I've been a long-time lurker on this list, and a long-time fan of Nitro and > Og, since Aidan first showed them to me. > > It seems to me that while Rails is the poster child and is getting all the > press, Nitro is how I want to write web apps in Ruby. I get Nitro. I don't > get Rails. I've introduced several people to Nitro, and I describe it as > Webwork to Rails's Struts. Where Struts got all the press for Java web apps, > all the smart kids use Webwork. > > I still haven't had the opportunity to write a proper web-facing app in > anger in Ruby, but when I do, the choice of framework will be a no-brainer > for me. > > As an enthusiastic observer, please let me encourage you guys to realise > the potential of Nitro and Og as being the framework real developers will > use to write real, enterprise scale Ruby apps. > > We all know the active record model doesn't scale. That's why O/R mapping > is still the big, ugly monster that it is. > > Take a leaf from the Django community's book. Those guys have a simple > mission: to make Django the Python web platform of choice for anyone. > Period. > > >From what I've seen of Nitro, I believe it can be the same thing for Ruby. > > Thanks for listening, > Dan > > > > George Moschovitis wrote: > Dear devs, > > I would like to organize an IRC meeting to discuss the future of Nitro > and especially how to organize a core team development around this > project. Even though we have come up with great code and features for > Nitro and Og (especially on the repo versions) we have failed > miserably in organizing this project. Of course, as the maintainer of > this project, I am the one to blame (even though I had some excuses, > like my army service). > > I strongly believe that you can always make things right in life. Even > though some people have been discouraged by the lack of organization > and the 'black box'/'george-codes-in-his-appartment' > development > model, I believe there are people still interested in Nitro. If you > are one of these people, lets find a suitable time for an IRC meeting > and bring your ideas about how to better organize the project. > > A time that is suitable for me is: Tuesday 17/10/2006 20:00 CET > > > regards, > George. > > > > > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Mon Oct 16 05:54:40 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 16 Oct 2006 12:54:40 +0300 Subject: [Nitro] The road to Nitro 0.40.0 In-Reply-To: <4b6f054f0610151746i4f6b36cfq638707f4f094adcd@mail.gmail.com> References: <4b6f054f0610151746i4f6b36cfq638707f4f094adcd@mail.gmail.com> Message-ID: > I'm with you 100%. Thats great to hear ;-) > Although I think a more realistic date might be a > few more weeks off. Hmm lets see how this works out. Lets better have more aggressive schedules ;-) best regards, George. -- http://www.gmosx.com http://www.nitroproject.org From john at oxyliquit.de Mon Oct 16 08:35:03 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Mon, 16 Oct 2006 14:35:03 +0200 Subject: [Nitro] The road to Nitro 0.40.0 In-Reply-To: <4b6f054f0610151746i4f6b36cfq638707f4f094adcd@mail.gmail.com> References: <4b6f054f0610151746i4f6b36cfq638707f4f094adcd@mail.gmail.com> Message-ID: Hi, > I'm with you 100%. Although I think a more realistic date might be a > few more weeks off. I'd think so too, when the facets parts have to get touched... > Sorry about the delay on my end too. I had family fly in unexpectedly, > so I've only had one full day to do any work since last Sunday. They > returned home today though, so I'm back at it now. And here I thought that you just were thinking hard on name issues again! ;D Enjoy the family time. :) Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Mon Oct 16 08:35:04 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Mon, 16 Oct 2006 14:35:04 +0200 Subject: [Nitro] The road to Nitro 0.40.0 In-Reply-To: References: Message-ID: Hi. > after a long time with no new release, I think it is time to concentrate > as a team to release the 0.40.0 version. A comfortable release date is > Oct 31. To this end, here is a short todo list: My birthday, this would be cool! ;) > - make tests pass > - make postgres adapter run The postgres adapter runs quit good. Problem is the pure-ruby library of postgres (postgres-pr). It has a few limitations which I had worked around before... I have a compat layer here from an earlier repo, it has problems now since some changes didn't make it into the latest manv repo and yours. Will see if I can work on that again. > - make examples run > - introduce new system part / get rid of old scaffolding. > - introduce more patches from manveru's repository. Not many left patches left to merge to your repo from the current manv repo. The old manv repo still has some good stuff, but that's a little harder... Lets concentrate on getting your repo stable by the 31st and just release. Additional functionality from old repo can get introduced after that. > - make compatible with latest facets (esp. the new annotation system) Can we put that one release behind? It would delay the release a great deal. This touches many parts of Og and would have to get extensive testing. > - make new deployment scripts (based on the new reap implementation) > - cleanup code > - update docs > We have collaboratively done so much work on the repository version of > Nitro. This work really deserves to be released and be made known to > the wider circle of ruby developers. Yup yup :) Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Mon Oct 16 08:35:01 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Mon, 16 Oct 2006 14:35:01 +0200 Subject: [Nitro] Google Group Archive In-Reply-To: <1160953545.891585.71930@k70g2000cwa.googlegroups.com> References: <1160953545.891585.71930@k70g2000cwa.googlegroups.com> Message-ID: Hi, > George and I have set up a Google Group interface/archive of the Nitro > mailing list. In fact I'm using it right now to post this message. This > will also provide a searchable archive of all posts from today onward. > Check it out at: > > http://groups.google.com/group/nitro-general-google This is cool, searchable archive, nicely threaded. I hope that I won't have much use for it. ;) Thanks for doing this. :) Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Mon Oct 16 08:35:04 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Mon, 16 Oct 2006 14:35:04 +0200 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: References: Message-ID: Hi, > A time that is suitable for me is: Tuesday 17/10/2006 20:00 CET This would be ok to me, but finding the perfect time is kind of problematic for irc where people have quite different timezones... Best is before 12pm for manv (that'd be 17:00:00 CEST) but I can't come Tuesday at that time, Wednesday would be better for me. Not sure for the perfect time, just pop in a few times. :) Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From george.moschovitis at gmail.com Mon Oct 16 09:44:21 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 16 Oct 2006 16:44:21 +0300 Subject: [Nitro] The road to Nitro 0.40.0 In-Reply-To: References: Message-ID: > > - make compatible with latest facets (esp. the new annotation system) > > Can we put that one release behind? It would delay the release a great > deal. This touches many parts of Og and would have to get extensive > testing. hm, i tend to agree with this. -g. -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Mon Oct 16 10:17:53 2006 From: transfire at gmail.com (TRANS) Date: Mon, 16 Oct 2006 10:17:53 -0400 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: References: Message-ID: <4b6f054f0610160717q214362fau7e92ca4de431e7d9@mail.gmail.com> On 10/16/06, Jonathan Buch wrote: > Hi, > > > A time that is suitable for me is: Tuesday 17/10/2006 20:00 CET > > This would be ok to me, but finding the perfect time is kind of > problematic for irc where people have quite different timezones... > Best is before 12pm for manv (that'd be 17:00:00 CEST) but I can't > come Tuesday at that time, Wednesday would be better for me. > > Not sure for the perfect time, just pop in a few times. :) Myabe just have one in the morning and one in the evening. That should allow most people to partcipate at one or the other. T. From george.moschovitis at gmail.com Tue Oct 17 04:53:12 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 17 Oct 2006 11:53:12 +0300 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: <4b6f054f0610160717q214362fau7e92ca4de431e7d9@mail.gmail.com> References: <4b6f054f0610160717q214362fau7e92ca4de431e7d9@mail.gmail.com> Message-ID: Ok, since it is too late for Tuesday, can we find two (2) convienient times for Friday? Lets have 2 meetings ;-) regards, George. On 10/16/06, TRANS wrote: > On 10/16/06, Jonathan Buch wrote: > > Hi, > > > > > A time that is suitable for me is: Tuesday 17/10/2006 20:00 CET > > > > This would be ok to me, but finding the perfect time is kind of > > problematic for irc where people have quite different timezones... > > Best is before 12pm for manv (that'd be 17:00:00 CEST) but I can't > > come Tuesday at that time, Wednesday would be better for me. > > > > Not sure for the perfect time, just pop in a few times. :) > > Myabe just have one in the morning and one in the evening. That should > allow most people to partcipate at one or the other. > > T. > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 17 06:24:25 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 17 Oct 2006 13:24:25 +0300 Subject: [Nitro] JQuery is very nice Message-ID: Dear devs, following a suggestion on this list, I tried JQuery. I must admit that I am quite happy with this, even though I miss some dojo features like the rtf editor and the js-flash feature. morever, I realized that rails style rjs templates (or Nitro style ScriptGenerator/Client feautures) are rendered unecessary! So I am thinking about removing this half-implemented/baddly documented functionality from Nitro (ie the prototype helpers). What do you all think? regards, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 17 06:26:17 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 17 Oct 2006 13:26:17 +0300 Subject: [Nitro] glue => utils Message-ID: Dear devs, do you agree that we move files from: nitro/glue og/glue to nitro/mixin nitro/util og/mixin og/util as suggested by Trans some time ago? I would like to simplify nitro and make this more accessible to beginers. Is this a right move on this direction? regards, George. -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Tue Oct 17 07:11:01 2006 From: transfire at gmail.com (TRANS) Date: Tue, 17 Oct 2006 07:11:01 -0400 Subject: [Nitro] JQuery is very nice In-Reply-To: References: Message-ID: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> On 10/17/06, George Moschovitis wrote: > Dear devs, > > following a suggestion on this list, I tried JQuery. I must admit that > I am quite happy with this, even though I miss some dojo features like > the rtf editor and the js-flash feature. So Dojo and JQuery are completely incompatible then? T. From dan at tastapod.com Tue Oct 17 07:53:00 2006 From: dan at tastapod.com (Dan North) Date: Tue, 17 Oct 2006 12:53:00 +0100 Subject: [Nitro] JQuery is very nice In-Reply-To: References: Message-ID: <4534C41C.5060705@tastapod.com> Hi folks. As a punter rather than a framework developer, I'm very much of the opinion that less [magic] is more. I want to write a nice, simple, intuitive, /testable/ web app. One of Rails' big failings in my opinion is its poor support for the mid- to advanced- level developer (or non-trivial web app, I'm not sure which). If I don't (need to) care what's going on, then Rails works fine. If I do, then suddenly I'm searching through the source code for scaffold or trying to add a breakpoint to a non-existent (yet) method. Which sucks. I can't over-emphasise how impressed I am with Nitro & Og's lack of magic where it simply doesn't need it (and particularly how elegantly Og does O-R mapping in Ruby). Anything that generates code - especially on-the-fly - is a Bad Thing for anything other than trivial applications IMO. Thanks for listening, Dan George Moschovitis wrote: > Dear devs, > > following a suggestion on this list, I tried JQuery. I must admit that > I am quite happy with this, even though I miss some dojo features like > the rtf editor and the js-flash feature. > > morever, I realized that rails style rjs templates (or Nitro style > ScriptGenerator/Client feautures) are rendered unecessary! So I am > thinking about removing this half-implemented/baddly documented > functionality from Nitro (ie the prototype helpers). What do you all > think? > > regards, > George. > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061017/b99e4755/attachment.html From olle at olleolleolle.dk Tue Oct 17 08:13:12 2006 From: olle at olleolleolle.dk (Olle Jonsson) Date: Tue, 17 Oct 2006 14:13:12 +0200 Subject: [Nitro] JQuery is very nice In-Reply-To: References: Message-ID: <7DD1B9CF-9164-4E3B-9CA6-6C3687501F07@olleolleolle.dk> George: > morever, I realized that rails style rjs templates (or Nitro style > ScriptGenerator/Client feautures) are rendered unecessary! So I am > thinking about removing this half-implemented/baddly documented > functionality from Nitro (ie the prototype helpers). What do you all > think? I'm all for removing Prototype wrapper methods. Granted, this kind of wrapper serves a learning purpose. But that's not necessary everywhere, and certainly not in the main Nitro distribution. Using jQuery, the beginner can learn these things (DOM-fiddling, Ajax calls, structure) without the "support wheels" of wrapper methods in the web framework. Olle Jonsson, Denmark From vikingtux at gmail.com Tue Oct 17 08:52:45 2006 From: vikingtux at gmail.com (Alexandre Gravem) Date: Tue, 17 Oct 2006 10:52:45 -0200 Subject: [Nitro] JQuery is very nice In-Reply-To: <4534C41C.5060705@tastapod.com> References: <4534C41C.5060705@tastapod.com> Message-ID: <40b05ebe0610170552p521c10c3l7a9167e6fbaa395a@mail.gmail.com> I have coded some Jquery(+plugins) based Morphers. I have Draggable, Inline Editor, DatePicker and Round Corners working. I am coding now an Autocomplete plugin+morpher. They are attached, so anyone can try them out. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061017/a515c722/attachment.html -------------- next part -------------- A non-text attachment was scrubbed... Name: JQMorphers.rb Type: application/x-ruby Size: 1790 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061017/a515c722/attachment.bin From john at oxyliquit.de Tue Oct 17 09:58:42 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 17 Oct 2006 15:58:42 +0200 Subject: [Nitro] JQuery is very nice In-Reply-To: <4534C41C.5060705@tastapod.com> References: <4534C41C.5060705@tastapod.com> Message-ID: Hi, > As a punter rather than a framework developer, I'm very much of the > opinion that less [magic] is more. > > I want to write a nice, simple, intuitive, /testable/ web app. One of > Rails' big failings in my opinion is its poor support for the mid- to > advanced- level developer (or non-trivial web app, I'm not sure which). I don't know much about rails. Maybe you can clarify things a bit for me there. As I have seen, there are certain scripts in the scrip/ folder to work with. I rememeber a script called `breakpointer`, which seems to be for debugging. Is it common in Rails to use this functionality? How is the 'breakpoint' made avalable, maybe inside of `irb`? > If I don't (need to) care what's going on, then Rails works fine. If I > do, then suddenly I'm searching through the source code for scaffold or > trying to add a breakpoint to a non-existent (yet) method. Which sucks. Well, there are also non-existent metods in a Nitro request cycle. ;) You run into them, when you write bad HTML and it spits out an error in a `foo_action()` method. :P > I can't over-emphasise how impressed I am with Nitro & Og's lack of > magic where it simply doesn't need it (and particularly how elegantly Og > does O-R mapping in Ruby). Anything that generates code - especially > on-the-fly - is a Bad Thing for anything other than trivial applications > IMO. Yet Og does a hell lot of magic, I've been cursing at it sometimes. ;D And Og does very much code generation while enchanting the Model-class. Database reading and writing functions get eval'ed for example, sometimes evaled code even depends on which adapter one uses (mysql/psql). But yes, I have to agree that Og does the most elegant OR mapping I've seen. :P Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Tue Oct 17 09:58:44 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 17 Oct 2006 15:58:44 +0200 Subject: [Nitro] JQuery is very nice In-Reply-To: <40b05ebe0610170552p521c10c3l7a9167e6fbaa395a@mail.gmail.com> References: <4534C41C.5060705@tastapod.com> <40b05ebe0610170552p521c10c3l7a9167e6fbaa395a@mail.gmail.com> Message-ID: Hi, > I have coded some Jquery(+plugins) based Morphers. I have Draggable, > Inline > Editor, DatePicker and Round Corners working. I am coding now an > Autocomplete plugin+morpher. They are attached, so anyone can try them > out. can I contact you later about this Morpher library? This looks interesting and would fit exactly into the project my bro and I are doing atm. Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Tue Oct 17 09:58:43 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 17 Oct 2006 15:58:43 +0200 Subject: [Nitro] glue => utils In-Reply-To: References: Message-ID: Hi, > do you agree that we move files from: > > nitro/glue > og/glue > > to > > nitro/mixin > nitro/util > og/mixin > og/util > > as suggested by Trans some time ago? > > I would like to simplify nitro and make this more accessible to > beginers. Is this a right move on this direction? yes, I think this is the right direction. Proposed Roadmap: 0.40 Oct 31 - make tests pass - make postgres adapter run - make examples run - introduce new system part / get rid of old scaffolding. - introduce more patches from manveru's repository. - cleanup code - update docs - remove prototype javascript helpers 0.41 Nov 31 - make compatible with latest facets (esp. the new annotation system) - make new deployment scripts (based on the new reap implementation) - Move nitro/glue to nitro/mixin and nitro/util - Move og/glue to og/mixin and og/util - Move further 'glue' stuff to og and nitro to work towards removing glue alltogether So I would propose to do this move 1 release later, there has been moved enough this release. :) Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From vikingtux at gmail.com Tue Oct 17 10:28:28 2006 From: vikingtux at gmail.com (Alexandre Gravem) Date: Tue, 17 Oct 2006 12:28:28 -0200 Subject: [Nitro] JQuery is very nice In-Reply-To: References: <4534C41C.5060705@tastapod.com> <40b05ebe0610170552p521c10c3l7a9167e6fbaa395a@mail.gmail.com> Message-ID: <40b05ebe0610170728k27f463a0lf35d7e55a29c07ad@mail.gmail.com> > > can I contact you later about this Morpher library? This looks > interesting > and would fit exactly into the project my bro and I are doing atm. Sure ... it would be nice to be useful :) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061017/7838c0c9/attachment.html From william.full.moon at gmail.com Tue Oct 17 10:31:05 2006 From: william.full.moon at gmail.com (* William) Date: Wed, 18 Oct 2006 00:31:05 +1000 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: <4b6f054f0610160717q214362fau7e92ca4de431e7d9@mail.gmail.com> Message-ID: <00d801c6f1f8$e4fb5da0$0201a8c0@ghostgum> Hi gang :-) May I suggest a nice block-diagram (ascii art) is done from these discussions? I believe an architectural sub-systems view will assist growth, communication, later discussions, etc, etc. I know this is going to shock some people ;-) Some research we (masters project) did on project management (concerning software development/design) was interesting -- The essential outcome was that a project plan to plan the project design (yes, planning about planning), yielded at least one interesting result. Following the time-to-design schedule produces better a design, and makes the actual detailed design (water fall/iterative) model work better. Now, I might speculate that this result mirrors XP practices like functional programming. After all a fixed -- two month development cycle is like a "tightly scheduled design/build" mini-project. Now that detour is over, the connection is that a well maintained block diagram allows 'all those who care' to keep in step and follow the changes. I know I was out of the Nitro loop too long doing extra coach training and my own business planning -- An up to date (forward specification) block-diagram can bring people who slipped out-of-the-loop ... Back faster, and sometimes just 'back'. I also reckon the architectural complexity is getting to a point where things will have to be chunked in systems and sub-systems. This could be a first step. Keep up the BEST work !! Aloha, Will -----Original Message----- From: nitro-general-bounces at rubyforge.org [mailto:nitro-general-bounces at rubyforge.org] On Behalf Of TRANS Sent: Tuesday, 17 October 2006 00:18 To: General discussion about Nitro Subject: Re: [Nitro] Nitro IRC Meeting Importance: Low Myabe just have one in the morning and one in the evening. That should allow most people to partcipate at one or the other. T. _______________________________________________ Nitro-general mailing list Nitro-general at rubyforge.org http://rubyforge.org/mailman/listinfo/nitro-general -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.408 / Virus Database: 268.13.4/475 - Release Date: 13-Oct-2006 From vikingtux at gmail.com Tue Oct 17 10:32:49 2006 From: vikingtux at gmail.com (Alexandre Gravem) Date: Tue, 17 Oct 2006 12:32:49 -0200 Subject: [Nitro] JQuery is very nice In-Reply-To: References: <4534C41C.5060705@tastapod.com> <40b05ebe0610170552p521c10c3l7a9167e6fbaa395a@mail.gmail.com> Message-ID: <40b05ebe0610170732k9e1b11ekaa6f87b08b837401@mail.gmail.com> > > can I contact you later about this Morpher library? This looks > interesting > and would fit exactly into the project my bro and I are doing atm. Sure ... it would be nice to be useful :) -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061017/81a086e0/attachment-0001.html From george.moschovitis at gmail.com Wed Oct 18 06:06:41 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 18 Oct 2006 13:06:41 +0300 Subject: [Nitro] JQuery is very nice In-Reply-To: <40b05ebe0610170552p521c10c3l7a9167e6fbaa395a@mail.gmail.com> References: <4534C41C.5060705@tastapod.com> <40b05ebe0610170552p521c10c3l7a9167e6fbaa395a@mail.gmail.com> Message-ID: Thanks, this looks interesting, I will find time to try them ;-) -g. On 10/17/06, Alexandre Gravem wrote: > I have coded some Jquery(+plugins) based Morphers. I have Draggable, Inline > Editor, DatePicker and Round Corners working. I am coding now an > Autocomplete plugin+morpher. They are attached, so anyone can try them out. > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > > > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 18 06:07:31 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 18 Oct 2006 13:07:31 +0300 Subject: [Nitro] JQuery is very nice In-Reply-To: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> References: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> Message-ID: > So Dojo and JQuery are completely incompatible then? Dunno, but I will wait till the jquery developers provide a RTF editor ;-) I would also love to see an image cropper and perhaps even a spellchecker ;-) -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 18 06:09:12 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 18 Oct 2006 13:09:12 +0300 Subject: [Nitro] glue => utils In-Reply-To: References: Message-ID: Ok, this seems reasonable ;-) I agree! lets DO IT! -g. On 10/17/06, Jonathan Buch wrote: > Hi, > > > do you agree that we move files from: > > > > nitro/glue > > og/glue > > > > to > > > > nitro/mixin > > nitro/util > > og/mixin > > og/util > > > > as suggested by Trans some time ago? > > > > I would like to simplify nitro and make this more accessible to > > beginers. Is this a right move on this direction? > > yes, I think this is the right direction. > > Proposed Roadmap: > > 0.40 Oct 31 > > - make tests pass > - make postgres adapter run > - make examples run > - introduce new system part / get rid of old scaffolding. > - introduce more patches from manveru's repository. > - cleanup code > - update docs > - remove prototype javascript helpers > > 0.41 Nov 31 > > - make compatible with latest facets (esp. the new annotation system) > - make new deployment scripts (based on the new reap implementation) > - Move nitro/glue to nitro/mixin and nitro/util > - Move og/glue to og/mixin and og/util > - Move further 'glue' stuff to og and nitro to work towards removing > glue alltogether > > > So I would propose to do this move 1 release later, there has been > moved enough this release. :) > > Jonathan > > -- > Feel the love > http://pinkjuice.com/pics/ruby.png > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 18 06:11:04 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 18 Oct 2006 13:11:04 +0300 Subject: [Nitro] glue => utils In-Reply-To: References: Message-ID: Btw, Og (tested with Mysql) and Glue tests are passing 100% in my repo. Nitro tests (including tc_param ;-)) and the examples are next! -g. PS: If anyone can try the Og tests with postgres and sqlite and provide patches (if needed) I will really appreciate it! On 10/18/06, George Moschovitis wrote: > Ok, this seems reasonable ;-) > I agree! > > lets DO IT! > > -g. > > On 10/17/06, Jonathan Buch wrote: > > Hi, > > > > > do you agree that we move files from: > > > > > > nitro/glue > > > og/glue > > > > > > to > > > > > > nitro/mixin > > > nitro/util > > > og/mixin > > > og/util > > > > > > as suggested by Trans some time ago? > > > > > > I would like to simplify nitro and make this more accessible to > > > beginers. Is this a right move on this direction? > > > > yes, I think this is the right direction. > > > > Proposed Roadmap: > > > > 0.40 Oct 31 > > > > - make tests pass > > - make postgres adapter run > > - make examples run > > - introduce new system part / get rid of old scaffolding. > > - introduce more patches from manveru's repository. > > - cleanup code > > - update docs > > - remove prototype javascript helpers > > > > 0.41 Nov 31 > > > > - make compatible with latest facets (esp. the new annotation system) > > - make new deployment scripts (based on the new reap implementation) > > - Move nitro/glue to nitro/mixin and nitro/util > > - Move og/glue to og/mixin and og/util > > - Move further 'glue' stuff to og and nitro to work towards removing > > glue alltogether > > > > > > So I would propose to do this move 1 release later, there has been > > moved enough this release. :) > > > > Jonathan > > > > -- > > Feel the love > > http://pinkjuice.com/pics/ruby.png > > _______________________________________________ > > Nitro-general mailing list > > Nitro-general at rubyforge.org > > http://rubyforge.org/mailman/listinfo/nitro-general > > > > > -- > http://www.gmosx.com > http://www.nitroproject.org > -- http://www.gmosx.com http://www.nitroproject.org From al-nitrogen at none.at Wed Oct 18 08:03:34 2006 From: al-nitrogen at none.at (Aleksandar Lazic) Date: Wed, 18 Oct 2006 14:03:34 +0200 Subject: [Nitro] Maybe OT but help for a new app Message-ID: <20061018120334.GB19094@none.at> Hi, I want to go further with nitro but i haven't a glue how to go futher after the screencasts :-/ What I want to try is a portal with wiki/blog/inventory/ticketing/... System but a simple *test* app is a big issue for me :-/ Is there a, more or less, step by step howto how a *sample* app can look, I have look into the examples, wiki/blog/..., but the time for reverse engineering isn't necessary as long as you can help me ;-)) Please can anybody help me in this issue, thanks? Regards Aleks From john at oxyliquit.de Thu Oct 19 08:44:43 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Thu, 19 Oct 2006 14:44:43 +0200 Subject: [Nitro] Maybe OT but help for a new app In-Reply-To: <20061018120334.GB19094@none.at> References: <20061018120334.GB19094@none.at> Message-ID: Hi, > I want to go further with nitro but i haven't a clue how to go futher > after the screencasts :-/ too much white paper, usually the problem. ;) > What I want to try is a portal with wiki/blog/inventory/ticketing/... > System but a simple *test* app is a big issue for me :-/ > Is there a, more or less, step by step howto how a *sample* app can > look, I have look into the examples, wiki/blog/..., but the time for > reverse engineering isn't necessary as long as you can help me ;-)) Have you seen the tutorials on Oxyliquit? http://oxyliquit.de/tutorial/4?_page=3 Here for example I show a little how I make a new nitro application. (what files are necessary, which can be deleted, how to structure a run.rb, where to put the templates etc.) The scope of the tutorial however is a little more general and touches more subjects. The other tutorials are worth a read too, "Nitro In Flames" also talks a little about on how to set up a new project and is generally a nice introduction. Hope you can find what you need there. Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From al-nitrogen at none.at Thu Oct 19 14:26:01 2006 From: al-nitrogen at none.at (Aleksandar Lazic) Date: Thu, 19 Oct 2006 20:26:01 +0200 Subject: [Nitro] Maybe OT but help for a new app In-Reply-To: References: <20061018120334.GB19094@none.at> Message-ID: <20061019182601.GB14411@none.at> On Don 19.10.2006 14:44, Jonathan Buch wrote: >Aleksandar Lazic wrote: > >> I want to go further with nitro but i haven't a clue how to go futher >> after the screencasts :-/ > >too much white paper, usually the problem. ;) ;-) >> Is there a, more or less, step by step howto how a *sample* app can >> look, I have look into the examples, wiki/blog/..., but the time for >> reverse engineering isn't necessary as long as you can help me ;-)) > >Have you seen the tutorials on Oxyliquit? Some sorry I wasn't to deep as I see now :-/ >http://oxyliquit.de/tutorial/4?_page=3 > >Here for example I show a little how I make a new nitro application. >(what files are necessary, which can be deleted, how to structure a >run.rb, where to put the templates etc.) The scope of the tutorial >however is a little more general and touches more subjects. Thanks I haven't checked it that the further pages are usefull for me :-/ >Hope you can find what you need there. Thanks for help I will come back after studying the oxyliquit site. Regards Aleks From transfire at gmail.com Thu Oct 19 21:43:34 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Fri, 20 Oct 2006 01:43:34 -0000 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: References: <4b6f054f0610160717q214362fau7e92ca4de431e7d9@mail.gmail.com> Message-ID: <1161308614.421389.172690@m73g2000cwd.googlegroups.com> Times? (include Timezone) Thanks, T. From fabian at fabian-buch.de Fri Oct 20 09:01:59 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Fri, 20 Oct 2006 15:01:59 +0200 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: <1161308614.421389.172690@m73g2000cwd.googlegroups.com> References: <4b6f054f0610160717q214362fau7e92ca4de431e7d9@mail.gmail.com> <1161308614.421389.172690@m73g2000cwd.googlegroups.com> Message-ID: Am 20.10.2006 um 03:43 schrieb transfire at gmail.com: > Times? (include Timezone) It's difficult to plan IRC meeting times. If you drop into #nitro usually at least one of us (manveru, kashia (Jonathan) or me) is online, often even all three. But it's difficult to plan for all ahead to be online at a specific given time. Today I've been online from 9:00 to 15:00 CET (GMT+2). Kashia will probably be online all day till at least 23:00 CET (GMT+2). Manveru has been there from around 7:00 GMT+9 till now (probably longer) 22:00 GMT+9. This is usual for normal weekdays.. But not reliable of course. Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From eeklund at gmail.com Fri Oct 20 12:54:14 2006 From: eeklund at gmail.com (Eivind Eklund) Date: Fri, 20 Oct 2006 18:54:14 +0200 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: <00d801c6f1f8$e4fb5da0$0201a8c0@ghostgum> References: <4b6f054f0610160717q214362fau7e92ca4de431e7d9@mail.gmail.com> <00d801c6f1f8$e4fb5da0$0201a8c0@ghostgum> Message-ID: On 10/17/06, * William wrote: > Hi gang :-) > > May I suggest a nice block-diagram (ascii art) is done from these > discussions? I think block diagrams are a great idea, and that it may be even better to do them in graphviz than in ASCII. While graphs made in graphwiz are slightly harder to see initially (you'll have to process the source file with graphviz to create some sort of image or vector file), they are easier to maintain than ASCII diagrams. Much easier. And, when we're doing open source, keeping docs easy to maintain is extremely important :) BTW: I'd like to contribute to the organization discussion - I have experience from long term open source projects, including what problems the core team organization gives - but to contribute, I need a time. Eivind. From john at oxyliquit.de Sun Oct 22 10:16:18 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Sun, 22 Oct 2006 16:16:18 +0200 Subject: [Nitro] Nitro Development Message-ID: Nitro Development ================== As the meeting on IRC didn't work out (like I expected..) I agreed with George to discuss this on the ML. So, here it goes. (Document best viewed in a Markdown aware environment.) First, problems: ---------------- ### Broken Darcs repositories We had this quite a few times now. Symptoms: * Merging problems on untouched files * When trying to revert, reverts to inconsistent state Possible reasons this happens: * Moving files without tellings darcs (`mv`). * Touching too many lines in a file (indending many lines) plus moving chunks lines to other places in the same file. * Munching too many unrelated chunks into a single patch. * Too long sideways development, merges take different paths. * Patches, only marginally reworked getting `record`'ed anew. * Patches which get revoked on a central repository, but still on dev repos. In effect, Darcs fails to produce a valid repository state when too many and too complex changes are made. ### Only one central authority George can only do so much, he's only a single guy after all. The problem here is, that George is the main developer as well as the project maintainer. I guess noone in the Nitro community can fill either position atm. ### Detached community development Many people (Alex, manv, Fabian, me, nusgnaf and others I don't remember) worked on manverus repo. We often tried to collect patches from George into this repo, but we often faced the problem that either changes were already done or something else was done at the same places => merge problems. To resolve those, it's needed to make patches for patches, merge patches, which will never find their way back to George. Bad, inconsistent state. When trying to let the patches flow back to the head repo (George) we face the exact same problem. We need to ensure that we don't push crap to George. This is either work intensive (make new patches, based on a pure George repo) or messy (push also merge patches). Despite Darcs being a very sophisticated tool, it is not perfect, as shown above. The current development style is two-fold: The first side is George: Work on new features, push them to own repo, integrate occassional patch from outside (if it doesn't produce merge errors), check with own applications. Second is the community: Work on whatever fails, make it possible to run own applications without errors, push to manv repo. Many work goes into fixing Unit Tests. Finally try to push patches to George. ### Almost no communication between George and Community George loves working on new features ("I got something great worked out! You'll see it monday!"). The flow of information from George to the community isn't quite as strong as it perhaps should be. The other way round: In #nitro on irc the 'core' community developers coordinate their actions, nothing ever gets done twice, the feedback cycle is much faster. But this information doesn't flow back to George, as long as he isn't online (which he rarely is for longer than 10 minutes and once or twice in the week, due to having no internet connection at home). So information (some of which perhaps should be posted to ML or to George) stays only in the IRC community. How to make it better? ---------------------- ### Broken Darcs repositories Two options: 1. Stay on Darcs, but create fresh repo 2. Use other revision control system Problems with the first approach: It could happen again, if it does, we have to go for another rcs. In case 1 we will lose all history, in the second case one can think of transferring the history manually by "`record`'ing" the changes in the other rcs. When using another another rcs we have to consider a few things. * Popularity of the rcs When popular enough (speak: Subversion) it can be used to get additional developers. * Type of the rcs Distributed or central. When central, George (or whoever the maintainer is) has to set up a central repository where everybody works on (possibly in branches). Patches from outsiders (non core developers) have to be accepted by core-developers in normal diff/patch form. When using a distributed rcs, this is not needed and it is easier for non-core developers to create a branch, work on it and contribute to Nitro. * Platform the rcs runs on Not everyone is on Linux or other posix-aware systems. I think we have to support Windows users here as well. Options: http://en.wikipedia.org/wiki/Comparison_of_revision_control_software/ * Subversion Popularity: high Type: central Platform: any This would be my personal third choice. It is perhaps the best option for Nitro. No known problems with merging, used in many OSS projects. * Bazaar (aka Bazaar NG aka Bazaar 2.0) Popularity: low Type: distributed Platform: any (Python) George brought that one up. Created and maintained by Canonical. Apparently not really maintained actively. I have heard of problems using it for bigger projects. * Darcs Popularity: uh, low I guess Type: distributed Platform: any This would be my personal first choice. Too bad it can't handle all kinds of development. * SVK Popularity: no idea Type: distributed Platform: any Interesting? Uses subversion as backend, dunno how it works. (My personal second choice would be GNU Arch. Git would also be very interesting, but is Posix only.) I would like sticking to Darcs, but I can't keep working on broken repositories. I don't like Subversion... Lets make a survey, everyone please state his idea which revision control software should be used. Keep in mind that this will have influence on how the Nitro development model will look like. When going for a central repository, George (or the current maintainer) has to set up a central repo, where _all_ current core-developers work on, including George. Under no circumstances will I shuffle normal `diff`s. This has to be quite dynamic, as the developers can change quite rapidly (I want bryan and zimba back...). ### Only one central authority Maybe the maintainer role of George can be partly taken over by someone else. In 0.31 this already worked ok I think (this was devlab and release just like that). Many thanks to Zimba again to provide this place in the first place. This someone would have to do following: * Maintain the roadmap * Check with the main developers what has been done, who is doing what * Check the current 'stable to be' repo if it is on track to next roadmap * Make sure that repo is in a consistent state ### Detached community development This is more or less dependand on the communication between _all_ core-developers. I hope _William_ and _Eivind Eklund_ can help here. Basic layout of current community. * A single main contributor (George) * 3-4 core-developers (Manveru, Fabian, Jonathan) * Other people with only occasional patches (Nusgnaf, Alex and others) As you both have more experience with organizing (I for example have none, and probably never will have) I really hope you can give some pointers, observe how we do stuff, bring forth ideas which we haven't thought of. ### Almost no communication between George and Community This is perhaps the biggest problem right now (right after darcs merging problems). Any ideas? ### Development in general A quote from Tom Lord: > **Using commit Well ? The Idea of a Clean Changeset** >When you commit a set of changes, it is generally "best practice" to make > sure you are creating a clean changeset.A clean changeset is one that > contains only changes that are all related andfor a single purpose. For > example, if you have several bugs to fix, orseveral features to add, try > not to mix those changes up in a single commit.There are many advantages > to clean changesets but foremost among them are:**Easier Review** It is > easy for someone to understand a changeset if it isonly trying to do one > thing.**Easier Merging** As we'll learn in later chapters, there are > circumstancesin which you'll want to look at a collection of changesets > in an archive andpick-and-choose among them. Perhaps you want to grab > "bug fix A" but not"new feature B". If each changeset has only one > purpose, that kind ofcherrypicking is much more practical. So, my proposal for patches: * Clean Changesets * Unit Tests **always** have to run The second point is only valid, when working on small changes and or on the stable repo. When doing big structural changes to the whole source tree (like the adapter changes) this can't work. ### Over and Out Keep in mind, this is only my personal meaning and only meant to be a base for discussion. Things to think about: * Which revision control software to use * How to organize releases * How to organize quality control * How to organize the work to be done Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From transfire at gmail.com Sun Oct 22 13:18:30 2006 From: transfire at gmail.com (TRANS) Date: Sun, 22 Oct 2006 13:18:30 -0400 Subject: [Nitro] Nitro Development In-Reply-To: References: Message-ID: <4b6f054f0610221018k4400d18fvf2447012ce1d952c@mail.gmail.com> Hi-- I think the source of problems with the repository and communication, as well as the constant turnover of developers, derive from one simple fact. Nitro/Og is still largely George's personal project --much of Nitro/Og is still subject to major overhauls at George's personal discretion. There's nothing wrong with that in itself. Every project must go through an initial phase of this. But at some point George has to let go of the project in the sense that he alone no longer controls it's destiny. George will of course always have a major influence, but he no longer can simply change something because he feels like it. It is absolutely mandatory that that he consult with the community --as is the case for all developers. Going off and making a patch with consultation is risky business. Too much that and you have a mess. So likewise, there must be ONE central repository that all changes merge back to. It doesn't really matter which rcs is used. Darcs is fine, but good practices must be maintained --that's key. Also, baby steps must become the norm. Each release should focus on ONE significant change. I also think that every other release should be a clean-up, fix-bugs, improve docs and improve tests release which then would also be an "official release". So something like this: 0.40 - introduce more patches from manveru's repository - cleanup-release 0.41 - make postgres adapter run 0.42 - clean-up release 0.43 - make examples run 0.44 - clean-up release 0.45 - make compatible with latest facets (esp. the new annotation system) 0.46 - clean-up release 0.47 - introduce new system part / get rid of old scaffolding. 0.48 - clean-up release 0.49 - make new deployment scripts 0.50 - clean-up release Mind you, that's not to say other things won't get into odd releases, but they can only be small changes. All significant changes need to get there own release scheduling. T. From transfire at gmail.com Sun Oct 22 13:19:58 2006 From: transfire at gmail.com (TRANS) Date: Sun, 22 Oct 2006 13:19:58 -0400 Subject: [Nitro] Nitro Development In-Reply-To: <4b6f054f0610221018k4400d18fvf2447012ce1d952c@mail.gmail.com> References: <4b6f054f0610221018k4400d18fvf2447012ce1d952c@mail.gmail.com> Message-ID: <4b6f054f0610221019q7f9ada56p9f2408457cd2122f@mail.gmail.com> Typo: "Going off and making a patch WITHOUT consultation is risky business" T. From george.moschovitis at gmail.com Sun Oct 22 15:44:41 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 22 Oct 2006 22:44:41 +0300 Subject: [Nitro] Nitro Development In-Reply-To: <4b6f054f0610221019q7f9ada56p9f2408457cd2122f@mail.gmail.com> References: <4b6f054f0610221018k4400d18fvf2447012ce1d952c@mail.gmail.com> <4b6f054f0610221019q7f9ada56p9f2408457cd2122f@mail.gmail.com> Message-ID: Jonathan + Tom, In general I agree with what you are saying. I still thing that Jonathan's email is quite harsh on me, but that is not the big issue here. The issue is how to move Nitro forward. Regarding the communication problem, let me remind you that I was in the Army for this past year. But now my service is over. The last month I have immediately applied all patches that I have received, and generally answered all emails. Well, I realize that during my absence, people started using other repos, but I cannot do much now. The current version of my repository passes all tests (except some tests in tc_controller_params, but there are several issues here, some of them will be detailed in a forthcoming message by Jonathan). Most examples either are runnable or will be runnable in the next couple of days. I think that the best way to move this project forward is for the core developers to try to port their applications to my repo version. I know this is not that hard (the changes are minimal) and Jonathan seems to agree with this too (he said so in a recent conversation). And frankly, there dont seem to be that many core developers these days. I totally agree with Tom that Nitro needs shorter and more frequent releases. But not so small as he suggests. I think the proposed breakdown of features into 0.40 and 0.42 that Jonathan suggested is quite ok. Regarding the RCS issue, I suggest that we stay with Darcs for the next couple of versions. In the meantime we can continue discussing about moving to svn or something like bazaar. Even though I prefer a decentralized rcs, we can go to svn if that makes the project more accessible to more people. About the rcs commit privileges, I would also like to propose for the next couple of versions (ie for November) that I remain the sole commiter, to keep things easier to manage. During this time, we can identify the members of the community that truly have the will, time and ability to join the core developers team. For example, I know that people such as Tom have the ability and will, but I am not sure about time. Finally, we can find another person to handle community relations and eventually the repository. Bryan used to do a *great* job here, it is truly a shame that he got discouraged and left the project. I am open to more discussions on this topic. But at the same time, let me remind you that I need some real help to get 0.40 out of the door. Where you can help? - verify that og tests pass with postgres (fix possible bugs) - verify that og tests pass sqlite - report any bugs - create new packaging scripts: The current reap version seems to need the latest version of facets that breaks nitro. Can we find a solution here? - Something that I am missing? Of course there are more things you can do. For example create screencasts about how you use Nitro, have a look at doc/TODO, claim and implement a feature or two. Or you can send emails to the list with requests about stuff you would like to see. Remember, I have put a *lot* of effort into Nitro, and I want this project to go to the next level. I fully *realize* that I cannot do this alone. But I need some *real* help, not just remarks and proposals. kind regards, George -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Sun Oct 22 16:43:36 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Sun, 22 Oct 2006 20:43:36 -0000 Subject: [Nitro] Nitro Development In-Reply-To: References: <4b6f054f0610221018k4400d18fvf2447012ce1d952c@mail.gmail.com> <4b6f054f0610221019q7f9ada56p9f2408457cd2122f@mail.gmail.com> Message-ID: <1161549816.920155.58410@e3g2000cwe.googlegroups.com> George Moschovitis wrote: > Jonathan + Tom, > > In general I agree with what you are saying. I still thing that > Jonathan's email is quite harsh on me, but that is not the big issue > here. The issue is how to move Nitro forward. Just so you, I wasn't trying to be harsh. Please don't take it that way. And I doubt Jonathan meant to either. Rather I was just being matter of fact about what I think you as the creator and primary developer of Nitro will eventaullly need to do to move to the next level. > Regarding the communication problem, let me remind you that I was in > the Army for this past year. But now my service is over. The last > month I have immediately applied all patches that I have received, and > generally answered all emails. Well, I realize that during my absence, > people started using other repos, but I cannot do much now. > > The current version of my repository passes all tests (except some > tests in tc_controller_params, but there are several issues here, some > of them will be detailed in a forthcoming message by Jonathan). Most > examples either are runnable or will be runnable in the next couple of > days. I think that the best way to move this project forward is for > the core developers to try to port their applications to my repo > version. I know this is not that hard (the changes are minimal) and > Jonathan seems to agree with this too (he said so in a recent > conversation). And frankly, there dont seem to be that many core > developers these days. > > I totally agree with Tom that Nitro needs shorter and more frequent > releases. But not so small as he suggests. I think the proposed > breakdown of features into 0.40 and 0.42 that Jonathan suggested is > quite ok. I think there should maybe be a finer distinction between releases. Development releases vs. Official releases. That way there can be lots of small releases, which makes it easier to focus and everyone knows the schedule. Then every so often official releases can be announced. Right now it seems like the is only one kind of release. > Regarding the RCS issue, I suggest that we stay with Darcs for the > next couple of versions. In the meantime we can continue discussing > about moving to svn or something like bazaar. Even though I prefer a > decentralized rcs, we can go to svn if that makes the project more > accessible to more people. IMHO, I tried switching to SVN briefly. I had more conflict isses with SVN then with Darcs. Personally I miss the old days when you checked out file(s) and no one else could touch them til your were done. Obviously that's a bit too limiting these days, but if there is good communication and the release focus is tight the effect should be similiar. > About the rcs commit privileges, I would also like to propose for the > next couple of versions (ie for November) that I remain the sole > commiter, to keep things easier to manage. During this time, we can > identify the members of the community that truly have the will, time > and ability to join the core developers team. For example, I know that > people such as Tom have the ability and will, but I am not sure about > time. Granted. My hands are simply full with getting Ratchets ready right at the moment. > Finally, we can find another person to handle community relations and > eventually the repository. Bryan used to do a *great* job here, it is > truly a shame that he got discouraged and left the project. Is it b/c he couldn't get others to help? > I am open to more discussions on this topic. But at the same time, let > me remind you that I need some real help to get 0.40 out of the door. > Where you can help? > > - verify that og tests pass with postgres (fix possible bugs) > - verify that og tests pass sqlite > - report any bugs > - create new packaging scripts: The current reap version seems to need > the latest version of facets that breaks nitro. Can we find a solution > here? > > - Something that I am missing? Hmm... Maybe actually, for this release we should just take the time and get every major thing on the table taken care of. It'll take a little longer, but making a stop-gap release might actually be worse than just getting these things done at this point. Actually let me put it this way. We can have many small releases getting to this point. But none of them should be official until all this stuff is done. If we can do that, then I will be able to get Ratchets out the door and test Nitro/Og myself to get the build scripts working and the latest facets+annotations working. > Of course there are more things you can do. For example create > screencasts about how you use Nitro, have a look at doc/TODO, claim > and implement a feature or two. Or you can send emails to the list > with requests about stuff you would like to see. > > Remember, I have put a *lot* of effort into Nitro, and I want this > project to go to the next level. I fully *realize* that I cannot do > this alone. But I need some *real* help, not just remarks and > proposals. Which is why it's so important to get a solid development procedures in place. T. From william.full.moon at gmail.com Sun Oct 22 22:02:21 2006 From: william.full.moon at gmail.com (* William) Date: Mon, 23 Oct 2006 12:02:21 +1000 Subject: [Nitro] Nitro IRC Meeting In-Reply-To: Message-ID: <006f01c6f647$4c0eb120$0201a8c0@ghostgum> Yes Eivind! I'm a bit slow, there are great tools like inkScape to do standard open graphics in SVG that can show on the web. http://www.inkscape.org/ More critically, it can be 'shared' and refined. From work with dispersed groups, my suggestion is that such devices be moderated -- so changes are circulated as "suggested" and one or two people do the final update. Good idea ... /Will -----Original Message----- From: Eivind Eklund [mailto:eeklund at gmail.com] Sent: Saturday, 21 October 2006 02:54 To: william.full.moon at gmail.com; General discussion about Nitro Subject: Re: [Nitro] Nitro IRC Meeting Importance: Low On 10/17/06, * William wrote: > Hi gang :-) > > May I suggest a nice block-diagram (ascii art) is done from these > discussions? I think block diagrams are a great idea, and that it may be even better to do them in graphviz than in ASCII. While graphs made in graphwiz are slightly harder to see initially (you'll have to process the source file with graphviz to create some sort of image or vector file), they are easier to maintain than ASCII diagrams. Much easier. And, when we're doing open source, keeping docs easy to maintain is extremely important :) BTW: I'd like to contribute to the organization discussion - I have experience from long term open source projects, including what problems the core team organization gives - but to contribute, I need a time. Eivind. -- No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.1.408 / Virus Database: 268.13.9/490 - Release Date: 20-Oct-2006 From john at oxyliquit.de Mon Oct 23 07:54:53 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Mon, 23 Oct 2006 13:54:53 +0200 Subject: [Nitro] param handling Message-ID: Hi, this is a question, Nitro handles params. Please think about this a bit, and tell us (George and me) what you think would be the correct way. Normally you won't have any problems with params and either way works well when used in certain ways. Short example of the used method to describe requests in this mail: def action(par1, par2) GET /action/1/2 With this action-method and request it will lead to the result: { :arguments => [1, 2], :params => {} } So, arguments are used to call the `def action()` with, params can be accessed via the `request.params` hash. Now, on how to handle params: ### should GET parameter get mixed into arguments? def action(par1 = nil, par2 = nil) GET /action?par1=foo;par2=bar We have 2 possibilities: {:arguments => [1, 2], :params => {} } {:arguments => [nil, nil], :params => {'par1' => 'foo', 'par2' => 'bar'} } George wants the first to be possible, I don't. Problems: * How is decided, which parameters get mixed into the arguments? * What about `GET /action/1?par1=foo` * What about `GET /action/1/2/par1=foo;par2=bar` * What about `GET /action?par2=bar;par1=foo` * What about `GET /action?par1=bar;par1=bar1;par2=foo` * What about POST params? In my opinion, the GET parameters is a hash, not an array which is in any particular order and thus can not be expected to be merged into the arguments in the correct order. The usage of `par1` and `par2` as parameters is misleading due to them being the same as the action arguments. It (together with the next param problem) can lead to annoying problems and workarounds when used in certain ways. Read my earlier mails on this subject. Secondly: ### Strict param requirements? def action(par1, par2) GET /action We have again 2 possibilities to handle this situation: { :arguments => [nil, nil], :params => {} } return error George also wants the first to be possible. Problems with the first approach: * More error checking needed within the `action()` method. * The first can also be created by normal Ruby means: `def action(par1 = nil, par2 = nil)` So, please think about the following: * Should the param mixing be possible? * Should the param requirements be strict? Thanks for taking the time, Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From robbie.wilhelm at gmail.com Mon Oct 23 07:58:43 2006 From: robbie.wilhelm at gmail.com (Robert Wagner) Date: Mon, 23 Oct 2006 13:58:43 +0200 Subject: [Nitro] JQuery is very nice In-Reply-To: References: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> Message-ID: <5371ac740610230458t22b035abuf0b7c8b20854311e@mail.gmail.com> 2006/10/18, George Moschovitis : > > So Dojo and JQuery are completely incompatible then? > > Dunno, but I will wait till the jquery developers provide a RTF editor > ;-) I would also love to see an image cropper and perhaps even a > spellchecker ;-) > don't think they will do. jquery is just another way to deal with the dom. no big components. speelchek-king? hm. ff 2.0 should do that. i've seen some rather good working cropping script that should work along to jquery. plus there should be a way to integrate tinymce (whoever needs that :) arr site is down: http://72.14.221.104/search?q=cache:iY9XW6zvTYEJ:jquery.com/docs/Plugins/tinyMCE/+jquery+tinymce&hl=de&gl=de&ct=clnk&cd=11&client=firefox-a go with jquery. it rulez! :) -robert > -g. > -- > http://www.gmosx.com > http://www.nitroproject.org > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > From george.moschovitis at gmail.com Mon Oct 23 08:24:39 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 23 Oct 2006 15:24:39 +0300 Subject: [Nitro] Nitro Development In-Reply-To: <1161549816.920155.58410@e3g2000cwe.googlegroups.com> References: <4b6f054f0610221018k4400d18fvf2447012ce1d952c@mail.gmail.com> <4b6f054f0610221019q7f9ada56p9f2408457cd2122f@mail.gmail.com> <1161549816.920155.58410@e3g2000cwe.googlegroups.com> Message-ID: Hello Tom, > Just so you, I wasn't trying to be harsh. Please don't take it that > ... > level. I know your intentions were not bad, no need to apologize. In fact, lets forget this unimportant issue. > I think there should maybe be a finer distinction between releases. > ... > Right now it seems like the is only one kind of release. I am not sure we need developer releases. Developers can grab the repo version and can follow the CHANGELOG. If we define clear goals things will work out nicely. > IMHO, I tried switching to SVN briefly. I had more conflict isses with > SVN then with Darcs. Personally I miss the old days when you checked > ... > communication and the release focus is tight the effect should be > similiar. I think all participants on this conversation (me, you, jonathan) agree that we should give Darcs another chance before moving to another RCS. I will upload a new version of the repo and stop updating it through rsync, I will update through patch bundles. Lets see if this resolves the problems reported by Jonathan. > Is it b/c he couldn't get others to help? I am not sure... > If we can do that, then I will be able to get Ratchets out the door and > test Nitro/Og myself to get the build scripts working and the latest > facets+annotations working. I would not like to fix all standing problems with Nitro before 0.40.0 gets released. But I think it would be worthwhile to withold the release until you can help with creating new build scripts that are compatible with the latest versions of your tools. And making Nitro work with the latest implementation of annotations shouldnt be that difficult. Can you present us with a timeframe? Ie, when would you be able to help with the build scripts and the new version of annotations? thanks, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Mon Oct 23 08:39:03 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 23 Oct 2006 15:39:03 +0300 Subject: [Nitro] JQuery is very nice In-Reply-To: <5371ac740610230458t22b035abuf0b7c8b20854311e@mail.gmail.com> References: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> <5371ac740610230458t22b035abuf0b7c8b20854311e@mail.gmail.com> Message-ID: > don't think they will do. jquery is just another way to deal with the > dom. I am waiting for a plugin. For what I know the main developer is working on a rtf editor plugin. > i've seen some rather good working cropping script that should work > along to jquery. plus there should be a way to integrate tinymce Could you share with us this jquery compatible cropping script? ;-) best regards, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Mon Oct 23 08:44:59 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 23 Oct 2006 15:44:59 +0300 Subject: [Nitro] param handling In-Reply-To: References: Message-ID: Hey Jonathan, very descriptive email ;-) > George wants the first to be possible, I don't. In my design arguments == parameters. But after reading your nice email, I am begining to like your idea to separate args/params. I am not yet convinced though. Let's see what others think about this. > ### Strict param requirements? > ... > Problems with the first approach: > > * More error checking needed within the `action()` method. > * The first can also be created by normal Ruby means: > `def action(par1 = nil, par2 = nil)` Problems with the second approach: - have to error check on every request - less flexible code. anyway I have some code that implements this, will be available shortly on the repo. thanks, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Mon Oct 23 09:01:02 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 23 Oct 2006 16:01:02 +0300 Subject: [Nitro] Repo Message-ID: I have copied my own repo to the server. From now on, I will only update through patch bundles. Lets see if that solves the mergin errors. George. -- http://www.gmosx.com http://www.nitroproject.org From robbie.wilhelm at gmail.com Mon Oct 23 11:30:21 2006 From: robbie.wilhelm at gmail.com (Robert Wagner) Date: Mon, 23 Oct 2006 17:30:21 +0200 Subject: [Nitro] JQuery is very nice In-Reply-To: References: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> <5371ac740610230458t22b035abuf0b7c8b20854311e@mail.gmail.com> Message-ID: <5371ac740610230830h66f1abc7o57c6dd0708832256@mail.gmail.com> 2006/10/23, George Moschovitis : > > don't think they will do. jquery is just another way to deal with the > > dom. > > I am waiting for a plugin. For what I know the main developer is > working on a rtf editor plugin. > > > i've seen some rather good working cropping script that should work > > along to jquery. plus there should be a way to integrate tinymce > > Could you share with us this jquery compatible cropping script? ;-) > i uploaded a demo page: http://www.xorc.org/jquery-demo/index.html hope it helps. -robert > best regards, > George. > > -- > http://www.gmosx.com > http://www.nitroproject.org > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > From transfire at gmail.com Mon Oct 23 18:01:19 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Mon, 23 Oct 2006 22:01:19 -0000 Subject: [Nitro] JQuery is very nice In-Reply-To: <5371ac740610230830h66f1abc7o57c6dd0708832256@mail.gmail.com> References: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> <5371ac740610230458t22b035abuf0b7c8b20854311e@mail.gmail.com> <5371ac740610230830h66f1abc7o57c6dd0708832256@mail.gmail.com> Message-ID: <1161640879.069322.32450@i3g2000cwc.googlegroups.com> Robert Wagner wrote: > > i uploaded a demo page: > http://www.xorc.org/jquery-demo/index.html > hope it helps. > -robert Cool! I would love to see your javascript editor handle syntax highligting! (I had started working on one but just can't find the time). T. From m.fellinger at gmail.com Mon Oct 23 18:24:59 2006 From: m.fellinger at gmail.com (Michael Fellinger) Date: Tue, 24 Oct 2006 07:24:59 +0900 Subject: [Nitro] Repo In-Reply-To: References: Message-ID: <9c00d3e00610231524i1b3270a7n9b4af2e1fd1e314b@mail.gmail.com> On 10/23/06, George Moschovitis wrote: > I have copied my own repo to the server. From now on, I will only > update through patch bundles. Lets see if that solves the mergin > errors. how did you update before, if i may ask? > > George. From reid.thompson at ateb.com Mon Oct 23 20:37:49 2006 From: reid.thompson at ateb.com (Reid Thompson) Date: Mon, 23 Oct 2006 20:37:49 -0400 Subject: [Nitro] question about postgresql.rb && last_insert_id and insert_sql Message-ID: <453D605D.9090004@ateb.com> Hi list, could someone explain to me the reasoning behind the following code in postgresql.rb. If the klass.primary_key is a sequence, there is no need to explicitly set the primary key value in PostgreSQL, PG will automatically do it. You can do this by either not passing a value for that column, or by passing default or DEFAULT. This would make insert_sql a less costly call. What am I missing that requires the code to be written as it currently is?? --this comment is incorrect -- select nextval() does just that, advances the sequence and returns the next value ( it could be re-written as # Return what will become the last inserted row id. ) # Return the last inserted row id. def last_insert_id(klass) seq = klass.ann[klass.primary_key][:sequence] res = query("SELECT nextval('#{seq}')") lid = Integer(res.first_value) return lid end # The insert sql statements. def insert_sql(sql, klass) str = '' if klass.ann[klass.primary_key][:sequence] str << "@#{klass.primary_key} = store.last_insert_id(#{klass})\n" end str << "store.exec \"#{sql}\"" return str end ------example------ test=# \d List of relations Schema | Name | Type | Owner --------+-------------------------+----------+---------- public | seq_test | table | rthompso public | seq_test_oid_seq | sequence | rthompso (14 rows) test=# \d seq_test Table "public.seq_test" Column | Type | Modifiers ------------+---------+-------------------------------------------------------- username | text | first_name | text | last_name | text | e_mail | text | oid | integer | not null default nextval('seq_test_oid_seq'::regclass) test=# insert into seq_test values('uname','fname','lname','emailaddr'); INSERT 0 1 test=# insert into seq_test values('uname','fname','lname','emailaddr',default); INSERT 0 1 test=# select * from seq_test; username | first_name | last_name | e_mail | oid ----------+------------+-----------+-----------+----- uname | fname | lname | emailaddr | 1 uname | fname | lname | emailaddr | 2 (2 rows) test=# test=# insert into seq_test values('uname','fname','lname','emailaddr',DEFAULT); INSERT 0 1 From james.britt at gmail.com Mon Oct 23 17:50:57 2006 From: james.britt at gmail.com (James Britt) Date: Mon, 23 Oct 2006 14:50:57 -0700 Subject: [Nitro] param handling In-Reply-To: References: Message-ID: <453D3941.20603@gmail.com> George Moschovitis wrote: > Hey Jonathan, > > very descriptive email ;-) > > >>George wants the first to be possible, I don't. > > > In my design arguments == parameters. But after reading your nice > email, I am begining to like your idea to separate args/params. I am > not yet convinced though. Let's see what others think about this. > I like the transparency of having arguments in the URL. I like the idea that a controller and its methods not need have to look for some magic object holding additional parameters. controller/action/baz would map to Controller#action(baz) while controller/action/baz?x=y would either mean the passing of extraneous arguments, or that the action must be defined to accept a hash: Controller#action(baz, opts={}) I'm not entirely convinced of this, but I wrote a small MVC Web framework a few weeks ago, and tried to make it as obvious as could be reasonable. Later, I saw someone else announced a similar framework, but he included an ubiquitous 'params' thing. I hadn't found a need for that in my work, and I'm wondering if its inclusion is all that good. -- James Britt "People want simple stories." From m.fellinger at gmail.com Mon Oct 23 18:34:32 2006 From: m.fellinger at gmail.com (Michael Fellinger) Date: Tue, 24 Oct 2006 07:34:32 +0900 Subject: [Nitro] param handling In-Reply-To: References: Message-ID: <9c00d3e00610231534i7bb495c4j5bcdbe9fbd62cc21@mail.gmail.com> On 10/23/06, George Moschovitis wrote: > Hey Jonathan, > > very descriptive email ;-) > > > George wants the first to be possible, I don't. > > In my design arguments == parameters. But after reading your nice > email, I am begining to like your idea to separate args/params. I am > not yet convinced though. Let's see what others think about this. I'm fully for that, i hardly ever mix up GET/POST, but if it has a consistent behaviour, i'm all for at least providing the functionality :) it's just not very logical to me that /x?y=z&t=s should be handled the same as /x/z/s another thing is, GET-parameter cannot overwrite POST-params, right? > > > > ### Strict param requirements? > > ... > > Problems with the first approach: > > > > * More error checking needed within the `action()` method. > > * The first can also be created by normal Ruby means: > > `def action(par1 = nil, par2 = nil)` > > Problems with the second approach: > > - have to error check on every request > - less flexible code. > > anyway I have some code that implements this, will be available > shortly on the repo. > > > thanks, > George. From t_leitner at gmx.at Tue Oct 24 03:09:16 2006 From: t_leitner at gmx.at (Thomas Leitner) Date: Tue, 24 Oct 2006 09:09:16 +0200 Subject: [Nitro] param handling In-Reply-To: References: Message-ID: <20061024090916.2e135f1a@localhost> Hi, I'm quite new to Nitro but I would like to contribute, and I think this is a good way to start :-) | ### should GET parameter get mixed into arguments? | | def action(par1 = nil, par2 = nil) | GET /action?par1=foo;par2=bar | | We have 2 possibilities: | | {:arguments => [1, 2], :params => {} } | {:arguments => [nil, nil], :params => {'par1' => 'foo', 'par2' | => 'bar'} } I don't think the first possibility is a good idea because, like Jonathan said, parameters in query strings are inherently unordered. However, if Ruby would support named parameters, or, if one could annotate the method so that Nitro could find out in which order it has to provide the params, I would rather like the first possibility. Something like ann :action, :params => %w[par2 par1] def action(par2, par1) Also, I think there is a routing facility available in Nitro - what if the route to the method changes? Would there be a problem with the first version? | ### Strict param requirements? | | def action(par1, par2) | GET /action | | We have again 2 possibilities to handle this situation: | | { :arguments => [nil, nil], :params => {} } | return error | | George also wants the first to be possible. | | Problems with the first approach: | | * More error checking needed within the `action()` method. | * The first can also be created by normal Ruby means: | `def action(par1 = nil, par2 = nil)` I would vote for the first possibility here because if it happens that an action is called without the required parameters, the developer could respond with an error message that exactly fits the error. The second possibility would just return a general "too few arguments" error. This also raises the question how far Nitro should check for errors: with the first possibility it would be on action level, with the second on parameter level which is just one level deeper. I think that checking on action level is enough. Just my two cents, Thomas From john at oxyliquit.de Tue Oct 24 04:04:24 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 24 Oct 2006 10:04:24 +0200 Subject: [Nitro] question about postgresql.rb && last_insert_id and insert_sql In-Reply-To: <453D605D.9090004@ateb.com> References: <453D605D.9090004@ateb.com> Message-ID: <20061024080424.GA19713@oxyliquit.de> Hi, > could someone explain to me the reasoning behind the following code in > postgresql.rb. If the klass.primary_key is a sequence, there is no need > to explicitly set the primary key value in PostgreSQL, PG will > automatically do it. You can do this by either not passing a value for > that column, or by passing default or DEFAULT. This would make > insert_sql a less costly call. What am I missing that requires the code > to be written as it currently is?? The problem is, that the frontend (Og) has to know the oid which has been inserted. > --this comment is incorrect -- select nextval() does just that, advances > the sequence and returns the next value ( it could be re-written as # > Return what will become the last inserted row id. ) > # Return the last inserted row id. > def last_insert_id(klass) Yes, this comment is misleading. The function was copied from the generic sql adapter. I will see to it that there is a better comment the next release. When using 'default' instead of the actual id (gotten by the sequence): The problem here is, that you have no way of telling after the insert, which oid has been selected. The frontend has to know this, to identify the object. Unless you know some clever way of really getting the 'last insert id' which is quite... unfortunate anyway, what about many many inserts at once and the frontend trying to keep up with all that or doing clever blocking with transactions.... > test=# insert into seq_test > values('uname','fname','lname','emailaddr',default); haha, manv will laugh at me for that, but... Thank you for the 'default' keyword, I didn't know it. XD Jonathan From george.moschovitis at gmail.com Tue Oct 24 05:20:52 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 24 Oct 2006 12:20:52 +0300 Subject: [Nitro] Repo In-Reply-To: <9c00d3e00610231524i1b3270a7n9b4af2e1fd1e314b@mail.gmail.com> References: <9c00d3e00610231524i1b3270a7n9b4af2e1fd1e314b@mail.gmail.com> Message-ID: I used rsync. I didn't realize this caused problems. Lets see how this works out now. I will add a patch bundle later, lets see if darcs pull will work out correctly. -g. On 10/24/06, Michael Fellinger wrote: > On 10/23/06, George Moschovitis wrote: > > I have copied my own repo to the server. From now on, I will only > > update through patch bundles. Lets see if that solves the mergin > > errors. > > how did you update before, if i may ask? > > > > > George. > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 24 05:23:51 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 24 Oct 2006 12:23:51 +0300 Subject: [Nitro] JQuery is very nice In-Reply-To: <5371ac740610230830h66f1abc7o57c6dd0708832256@mail.gmail.com> References: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> <5371ac740610230458t22b035abuf0b7c8b20854311e@mail.gmail.com> <5371ac740610230830h66f1abc7o57c6dd0708832256@mail.gmail.com> Message-ID: > i uploaded a demo page: > http://www.xorc.org/jquery-demo/index.html > hope it helps. > -robert it helps indeed, thanks! -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 24 05:30:43 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 24 Oct 2006 12:30:43 +0300 Subject: [Nitro] JQuery is very nice In-Reply-To: <5371ac740610230830h66f1abc7o57c6dd0708832256@mail.gmail.com> References: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> <5371ac740610230458t22b035abuf0b7c8b20854311e@mail.gmail.com> <5371ac740610230830h66f1abc7o57c6dd0708832256@mail.gmail.com> Message-ID: > i uploaded a demo page: > http://www.xorc.org/jquery-demo/index.html > hope it helps. > -robert the demo page does not seem to use jquery, ie the 2 libraries used are not nicely wrapped in a jquery plugin. but thanks anyway... -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 24 06:08:17 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 24 Oct 2006 13:08:17 +0300 Subject: [Nitro] param handling In-Reply-To: <453D3941.20603@gmail.com> References: <453D3941.20603@gmail.com> Message-ID: you propose to skip params altogether? -g. > I'm not entirely convinced of this, but I wrote a small MVC Web > framework a few weeks ago, and tried to make it as obvious as could be > reasonable. Later, I saw someone else announced a similar framework, > but he included an ubiquitous 'params' thing. I hadn't found a need for > that in my work, and I'm wondering if its inclusion is all that good. > > > > -- > James Britt > > "People want simple stories." > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 24 06:10:01 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 24 Oct 2006 13:10:01 +0300 Subject: [Nitro] param handling In-Reply-To: <9c00d3e00610231534i7bb495c4j5bcdbe9fbd62cc21@mail.gmail.com> References: <9c00d3e00610231534i7bb495c4j5bcdbe9fbd62cc21@mail.gmail.com> Message-ID: > another thing is, GET-parameter cannot overwrite POST-params, right? you suggest that instead of request.params we have separate request.get_params/request.post_params? -g. -- http://www.gmosx.com http://www.nitroproject.org From robbie.wilhelm at gmail.com Tue Oct 24 07:20:37 2006 From: robbie.wilhelm at gmail.com (Robert Wagner) Date: Tue, 24 Oct 2006 13:20:37 +0200 Subject: [Nitro] JQuery is very nice In-Reply-To: References: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> <5371ac740610230458t22b035abuf0b7c8b20854311e@mail.gmail.com> <5371ac740610230830h66f1abc7o57c6dd0708832256@mail.gmail.com> Message-ID: <5371ac740610240420g2d3cb7fcrc6cfb0f97206a284@mail.gmail.com> 2006/10/24, George Moschovitis : > > i uploaded a demo page: > > http://www.xorc.org/jquery-demo/index.html > > hope it helps. > > -robert > > the demo page does not seem to use jquery, ie the 2 libraries used are > not nicely wrapped in a jquery plugin. but thanks anyway... > you are right. it was just to show that it works side by side. maybe sometime there will be a *native* version... i'd love to do it by myself but there are some evil men here... -robert > -g. > > -- > http://www.gmosx.com > http://www.nitroproject.org > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > From robbie.wilhelm at gmail.com Tue Oct 24 07:24:12 2006 From: robbie.wilhelm at gmail.com (Robert Wagner) Date: Tue, 24 Oct 2006 13:24:12 +0200 Subject: [Nitro] JQuery is very nice In-Reply-To: <1161640879.069322.32450@i3g2000cwc.googlegroups.com> References: <4b6f054f0610170411y6049e7d2tad8fa42fb0ac0e08@mail.gmail.com> <5371ac740610230458t22b035abuf0b7c8b20854311e@mail.gmail.com> <5371ac740610230830h66f1abc7o57c6dd0708832256@mail.gmail.com> <1161640879.069322.32450@i3g2000cwc.googlegroups.com> Message-ID: <5371ac740610240424w3b3b9cc6m952127cbf931e52e@mail.gmail.com> 2006/10/24, transfire at gmail.com : > > Robert Wagner wrote: > > > > i uploaded a demo page: > > http://www.xorc.org/jquery-demo/index.html > > hope it helps. > > -robert > > Cool! I would love to see your javascript editor handle syntax > highligting! (I had started working on one but just can't find the > time). > credit belongs to tinyMCE http://tinymce.moxiecode.com/ :) me personally would be satisfied with TABS and autoindention... -robert > T. > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > From george.moschovitis at gmail.com Tue Oct 24 07:27:26 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 24 Oct 2006 14:27:26 +0300 Subject: [Nitro] Regarding Glue Message-ID: Dear devs, I am aware that a lot of you would like that Glue goes away. In part I agree with this, one less library to support, one less namespace to support. Hower Glue plays one more important role: The glue namespace is included by default in the main namespace. This allows you to do: class Article include Markup end instead of class Article include Nitro::Markup end to keep the code clean. moreover there is code like cache, settings, etc that is used by both Nitro and Og and is not yet moved into facets. I would like to hear ideas about how we can solve these two problems. regards, George. -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Tue Oct 24 07:59:59 2006 From: transfire at gmail.com (TRANS) Date: Tue, 24 Oct 2006 07:59:59 -0400 Subject: [Nitro] Regarding Glue In-Reply-To: References: Message-ID: <4b6f054f0610240459mb8ab299t4a596a3fdcf0d13f@mail.gmail.com> On 10/24/06, George Moschovitis wrote: > Dear devs, > > I am aware that a lot of you would like that Glue goes away. In part I > agree with this, one less library to support, one less namespace to > support. Hower Glue plays one more important role: > > The glue namespace is included by default in the main namespace. This > allows you to do: > > class Article > include Markup > end > > instead of > > class Article > include Nitro::Markup > end > > to keep the code clean. Don't use a namespace. > moreover there is code like cache, settings, etc that is used by both > Nitro and Og and is not yet moved into facets. I think settings is in the latest version of Facets. I'll check. I'll have to look at cache. Are there others? T. From george.moschovitis at gmail.com Tue Oct 24 08:21:22 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 24 Oct 2006 15:21:22 +0300 Subject: [Nitro] Regarding Glue In-Reply-To: <4b6f054f0610240459mb8ab299t4a596a3fdcf0d13f@mail.gmail.com> References: <4b6f054f0610240459mb8ab299t4a596a3fdcf0d13f@mail.gmail.com> Message-ID: > I think settings is in the latest version of Facets. I'll check. I'll > have to look at cache. Are there others? there are some other, will have to look at this. -g. -- http://www.gmosx.com http://www.nitroproject.org From james.britt at gmail.com Tue Oct 24 10:28:46 2006 From: james.britt at gmail.com (James Britt) Date: Tue, 24 Oct 2006 07:28:46 -0700 Subject: [Nitro] param handling In-Reply-To: References: <453D3941.20603@gmail.com> Message-ID: <453E231E.2010702@gmail.com> George Moschovitis wrote: > you propose to skip params altogether? Yes. -- James Britt "I often work by avoidance." - Brian Eno From george.moschovitis at gmail.com Tue Oct 24 11:14:44 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 24 Oct 2006 18:14:44 +0300 Subject: [Nitro] param handling In-Reply-To: <453E231E.2010702@gmail.com> References: <453D3941.20603@gmail.com> <453E231E.2010702@gmail.com> Message-ID: > George Moschovitis wrote: > > you propose to skip params altogether? > > Yes. But, this would be inconsistent if you have only a template and no action. Remember, nitro supports php style coding (ie no controller-view separation) -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Tue Oct 24 11:31:36 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 24 Oct 2006 18:31:36 +0300 Subject: [Nitro] param handling In-Reply-To: <20061024090916.2e135f1a@localhost> References: <20061024090916.2e135f1a@localhost> Message-ID: > I would vote for the first possibility here because if it happens that > an action is called without the required parameters, the developer could > respond with an error message that exactly fits the error. The second > possibility would just return a general "too few arguments" error. nice point ;-) -g. -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Tue Oct 24 11:48:50 2006 From: transfire at gmail.com (TRANS) Date: Tue, 24 Oct 2006 11:48:50 -0400 Subject: [Nitro] Regarding Glue In-Reply-To: References: <4b6f054f0610240459mb8ab299t4a596a3fdcf0d13f@mail.gmail.com> Message-ID: <4b6f054f0610240848s136ee0f4wae602759489c8d58@mail.gmail.com> O.T. How do I edit my mailing list preferences for nitro-general? From transfire at gmail.com Tue Oct 24 11:52:36 2006 From: transfire at gmail.com (TRANS) Date: Tue, 24 Oct 2006 11:52:36 -0400 Subject: [Nitro] param handling In-Reply-To: References: <20061024090916.2e135f1a@localhost> Message-ID: <4b6f054f0610240852t6cc78568qed401536e99b67cd@mail.gmail.com> On 10/24/06, George Moschovitis wrote: > > I would vote for the first possibility here because if it happens that > > an action is called without the required parameters, the developer could > > respond with an error message that exactly fits the error. The second > > possibility would just return a general "too few arguments" error. Although a callback could be added to handle it via 'rescue ArgumentError'. T. From james.britt at gmail.com Tue Oct 24 11:53:56 2006 From: james.britt at gmail.com (James Britt) Date: Tue, 24 Oct 2006 08:53:56 -0700 Subject: [Nitro] param handling In-Reply-To: References: <453D3941.20603@gmail.com> <453E231E.2010702@gmail.com> Message-ID: <453E3714.6070606@gmail.com> George Moschovitis wrote: >>George Moschovitis wrote: >> >>>you propose to skip params altogether? >> >>Yes. > > > > But, this would be inconsistent if you have only a template and no action. > Remember, nitro supports php style coding (ie no controller-view separation) Well, I'm mainly tossing it out here for discussion. I've not thought through all the implications. Perhaps action-free templates could get a implicit controller/action that automagically handles params. One thing I find interesting about Nitro is that plain Ruby class can be controllers; methods are passed the arguments as deduced from the calling environment. Having params may be like having a console app that takes the command-line arguments and puts them into a global hash, but when invoking the application code it does not pass those arguments to methods. Instead, methods then have to look in params. It's as if every method has this (or a similar) signature: def m( params={}) end (I realize that params is a method, but when nearly every action has to use it to get data required for processing, the end effect is about the same as passing a hash to the method. Except you don't have argument checking.) So I'm wondering if forcing explicit argument passing makes for code that is easier to read, test, and maintain. When people write console apps, how common is it to use a global hash of values to inform methods? To turn it around: outside of a Web app, where would one want to use a params object, and with what expectations or constraints? Another view is to accept that controllers *are* special, and need to be so, and that they should not be treated as anything other than delegators that hook the operating environment to the business objects. Controllers then would be easy to follow and not need much testing because they shouldn't do much besides call into business objects and populate variables for the views. In that case, if you have a console app and want to move it to the Web, you would then add the controllers, rather than trying use the existing classes as controllers. -- James Britt http://www.ruby-doc.org - Ruby Help & Documentation http://www.artima.com/rubycs/ - The Journal By & For Rubyists http://www.rubystuff.com - The Ruby Store for Ruby Stuff http://www.rubyaz.org - Hacking in the Desert From wyhaines at gmail.com Tue Oct 24 11:54:47 2006 From: wyhaines at gmail.com (Kirk Haines) Date: Tue, 24 Oct 2006 09:54:47 -0600 Subject: [Nitro] param handling In-Reply-To: References: <453D3941.20603@gmail.com> <453E231E.2010702@gmail.com> Message-ID: On 10/24/06, George Moschovitis wrote: > > Yes. > > > But, this would be inconsistent if you have only a template and no action. > Remember, nitro supports php style coding (ie no controller-view separation) The cutting edge IOWA codebase has param support. When deliberating about how that was to work out of the box, I chose to not support using the values in the query string as param values. So the standard dispatcher leaves it up to the application code to decide what to do with those. Kirk Haines From transfire at gmail.com Tue Oct 24 11:56:29 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Tue, 24 Oct 2006 15:56:29 -0000 Subject: [Nitro] question about postgresql.rb && last_insert_id and insert_sql In-Reply-To: <20061024080424.GA19713@oxyliquit.de> References: <453D605D.9090004@ateb.com><20061024080424.GA19713@oxyliquit.de> Message-ID: <1161705389.796686.164940@b28g2000cwb.googlegroups.com> Jonathan Buch wrote: > The problem here is, that you have no way of telling after the insert, > which oid has been selected. The frontend has to know this, to identify > the object. If run in the same transaction as the insert, I'm pretty sure you can do a select query on the index sequence and thus get the new id. T. From john at oxyliquit.de Tue Oct 24 13:19:38 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 24 Oct 2006 19:19:38 +0200 Subject: [Nitro] param handling In-Reply-To: <20061024090916.2e135f1a@localhost> References: <20061024090916.2e135f1a@localhost> Message-ID: Hi, thanks for taking the time to answer. > I don't think the first possibility is a good idea because, like > Jonathan said, parameters in query strings are inherently unordered. > However, if Ruby would support named parameters, or, if one could > annotate the method so that Nitro could find out in which order it has > to provide the params, I would rather like the first possibility. > Something like > > ann :action, :params => %w[par2 par1] > def action(par2, par1) Using annotations is quite costly (in facets < 1.7, dunno about 1.7, trans?) But it would be a possibility to make the version from George run without inconsistencies, so one could call GET /action?par2=foo;par1=bar and get {:params => [bar, foo]}, I like it, nice idea :) > Also, I think there is a routing facility available in Nitro - what if > the route to the method changes? Would there be a problem with the first > version? Hmm... no, I don't think so, routes just action on the 'action' part ( template or function name). > I would vote for the first possibility here because if it happens that > an action is called without the required parameters, the developer could > respond with an error message that exactly fits the error. The second > possibility would just return a general "too few arguments" error. > This also raises the question how far Nitro should check for errors: > with the first possibility it would be on action level, with the second > on parameter level which is just one level deeper. I think that > checking on action level is enough. Valid points... Good points actually. Slightly unrelated idea: How about different error pages for different errors? Like when a ArgumentError is getting raised, or when a NameError occurs (404).... Something like a hash with error classes and or error codes... Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Tue Oct 24 13:19:41 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 24 Oct 2006 19:19:41 +0200 Subject: [Nitro] param handling In-Reply-To: References: <9c00d3e00610231534i7bb495c4j5bcdbe9fbd62cc21@mail.gmail.com> Message-ID: On Tue, 24 Oct 2006 12:10:01 +0200, George Moschovitis wrote: >> another thing is, GET-parameter cannot overwrite POST-params, right? > > you suggest that instead of request.params we have separate > request.get_params/request.post_params? Maybe... Suggestion: When method == POST, use request.post_params as .params but merge them with .get_params (not overriding the .post_params). def params post? ? get_params.update(post_params) : get_params end Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From wyhaines at gmail.com Tue Oct 24 14:44:23 2006 From: wyhaines at gmail.com (Kirk Haines) Date: Tue, 24 Oct 2006 12:44:23 -0600 Subject: [Nitro] param handling In-Reply-To: References: <20061024090916.2e135f1a@localhost> Message-ID: On 10/24/06, Jonathan Buch wrote: > Slightly unrelated idea: > How about different error pages for different errors? Like when a > ArgumentError is getting raised, or when a NameError occurs (404).... > Something like a hash with error classes and or error codes... Jonathan, in IRC, encouraged me to jump in here, too. I've had this capability in IOWA for a long time, and while I've only really needed to use the ability to display different pages for different errors a couple times, it was _very_ handy to have it when I needed it. The way that it works in IOWA is pretty simple. In the configuration for the app, one can have a 'screens' section. A simple might look like this: screens: - /.*/: GeneralException What that says is that if there is an error processing a request, the GeneralException component will be given control of the request if the class of the exception matches the regular expression. That could also be expressed as: screens: - Exception: GeneralException That would specifically match any exception class that has Exception as one of its ancestors. The code simply iterates through the exception screens that are defined, looking for the first one that matches. One can have any number of them. So: screens: - UnauthorizedAccess: SecurityViolation - /^ExternalApp/: ExternalAppError - Exception: GeneralException Would specify that if an UnauthorizedAccess exception were thrown, SecurityViolation would get the request. If any of several different kinds of exceptions with class names starting with ExternalApp, ExternalAppError would handle those, and everything else would fall to GeneralException. It's a simple mechanism, but my experience with it is very positive. Kirk Haines From john at oxyliquit.de Tue Oct 24 14:48:57 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 24 Oct 2006 20:48:57 +0200 Subject: [Nitro] [PATCH] psql stuff Message-ID: Hi, Tue Oct 24 19:46:37 CEST 2006 Jonathan Buch * Rework Og.start() a little, add m.manage_classes(options[:classes]) Tue Oct 24 19:57:27 CEST 2006 Jonathan Buch * Add compatibility layer for postgres-pr and early postgres lib versions Tue Oct 24 20:19:04 CEST 2006 Jonathan Buch * Change manage_classes, use less .managed_classes calls, add check for manageable? Tue Oct 24 20:43:43 CEST 2006 Jonathan Buch * more checks in get/put_store The original can lead to weird errors when Og.start gets called many times and many stores are used concurrently. All tests run through with mysql and postgresql (not tested with postgres-pr). Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png -------------- next part -------------- A non-text attachment was scrubbed... Name: pg.patch.tar.bz2 Type: application/bzip2 Size: 13378 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061024/d207d6a9/attachment-0001.bin From john at oxyliquit.de Tue Oct 24 15:34:15 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 24 Oct 2006 21:34:15 +0200 Subject: [Nitro] question about postgresql.rb && last_insert_id and insert_sql In-Reply-To: <1161705389.796686.164940@b28g2000cwb.googlegroups.com> References: <20061024080424.GA19713@oxyliquit.de> <1161705389.796686.164940@b28g2000cwb.googlegroups.com> Message-ID: <20061024193415.GA21562@oxyliquit.de> Hi, > Jonathan Buch wrote: > > The problem here is, that you have no way of telling after the insert, > > which oid has been selected. The frontend has to know this, to identify > > the object. > > If run in the same transaction as the insert, I'm pretty sure you can > do a select query on the index sequence and thus get the new id. Which would defeat the original purpose of speeding it up by using a single query. Also, like I said, I'm pretty sure that there are race conditions when doing that... Well, that is, unless one is using transaction (not sure which locking level one has to use then, since one has to verify that nothing has been written to the same table while the insert transaction has the lock). So this transaction would have to block this totally while it's inserting... Not sure if that'd have impact on performance as well. When getting the next oid beforehand, this is fixed and other inserts can't get the same oid. Jonathan From john at oxyliquit.de Tue Oct 24 15:35:41 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 24 Oct 2006 21:35:41 +0200 Subject: [Nitro] Regarding Glue In-Reply-To: <4b6f054f0610240848s136ee0f4wae602759489c8d58@mail.gmail.com> References: <4b6f054f0610240459mb8ab299t4a596a3fdcf0d13f@mail.gmail.com> <4b6f054f0610240848s136ee0f4wae602759489c8d58@mail.gmail.com> Message-ID: <20061024193541.GB21562@oxyliquit.de> Hi, > O.T. How do I edit my mailing list preferences for nitro-general? > http://rubyforge.org/mailman/listinfo/nitro-general look here. Jonathan From fabian at fabian-buch.de Tue Oct 24 15:50:57 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Tue, 24 Oct 2006 21:50:57 +0200 Subject: [Nitro] param handling In-Reply-To: References: <20061024090916.2e135f1a@localhost> Message-ID: Am 24.10.2006 um 19:19 schrieb Jonathan Buch: > Slightly unrelated idea: > How about different error pages for different errors? Like when a > ArgumentError is getting raised, or when a NameError occurs (404).... > Something like a hash with error classes and or error codes... That'd be great. Much better for Search Engines (Google) for example, cause they wouldn't index an error page, but instead know it's non- existent. Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From fabian at fabian-buch.de Tue Oct 24 16:02:49 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Tue, 24 Oct 2006 22:02:49 +0200 Subject: [Nitro] Regarding Glue In-Reply-To: <4b6f054f0610240848s136ee0f4wae602759489c8d58@mail.gmail.com> References: <4b6f054f0610240459mb8ab299t4a596a3fdcf0d13f@mail.gmail.com> <4b6f054f0610240848s136ee0f4wae602759489c8d58@mail.gmail.com> Message-ID: Am 24.10.2006 um 17:48 schrieb TRANS: > O.T. How do I edit my mailing list preferences for nitro-general? http://rubyforge.org/mailman/listinfo/nitro-general Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From transfire at gmail.com Tue Oct 24 19:20:12 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Tue, 24 Oct 2006 23:20:12 -0000 Subject: [Nitro] question about postgresql.rb && last_insert_id and insert_sql In-Reply-To: <20061024193415.GA21562@oxyliquit.de> References: <20061024080424.GA19713@oxyliquit.de> <1161705389.796686.164940@b28g2000cwb.googlegroups.com> <20061024193415.GA21562@oxyliquit.de> Message-ID: <1161732012.845355.158980@b28g2000cwb.googlegroups.com> Jonathan Buch wrote: > Hi, > > > Jonathan Buch wrote: > > > The problem here is, that you have no way of telling after the insert, > > > which oid has been selected. The frontend has to know this, to identify > > > the object. > > > > If run in the same transaction as the insert, I'm pretty sure you can > > do a select query on the index sequence and thus get the new id. > > Which would defeat the original purpose of speeding it up by using a > single query. Also, like I said, I'm pretty sure that there are race > conditions when doing that... > Well, that is, unless one is using transaction (not sure which locking > level one has to use then, since one has to verify that nothing has been > written to the same table while the insert transaction has the lock). > So this transaction would have to block this totally while it's > inserting... Not sure if that'd have impact on performance as well. > > When getting the next oid beforehand, this is fixed and other inserts > can't get the same oid. True. Definitely a better way to do it. T. From transfire at gmail.com Tue Oct 24 19:25:51 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Tue, 24 Oct 2006 23:25:51 -0000 Subject: [Nitro] param handling In-Reply-To: References: <20061024090916.2e135f1a@localhost> Message-ID: <1161732351.723063.251980@i3g2000cwc.googlegroups.com> Jonathan Buch wrote: > Hi, > > thanks for taking the time to answer. > > > I don't think the first possibility is a good idea because, like > > Jonathan said, parameters in query strings are inherently unordered. > > However, if Ruby would support named parameters, or, if one could > > annotate the method so that Nitro could find out in which order it has > > to provide the params, I would rather like the first possibility. > > Something like > > > > ann :action, :params => %w[par2 par1] > > def action(par2, par1) > > Using annotations is quite costly (in facets < 1.7, dunno about 1.7, trans?) > But it would be a possibility to make the version from George run without > inconsistencies, so one could call A little better but still costly I'm afraid. I'd love to lighten them up more but the magic dot notion and storing their identity within them (eg. name, class), limits how far that can go. T. From transfire at gmail.com Tue Oct 24 19:29:23 2006 From: transfire at gmail.com (TRANS) Date: Tue, 24 Oct 2006 19:29:23 -0400 Subject: [Nitro] Regarding Glue In-Reply-To: References: <4b6f054f0610240459mb8ab299t4a596a3fdcf0d13f@mail.gmail.com> <4b6f054f0610240848s136ee0f4wae602759489c8d58@mail.gmail.com> Message-ID: <4b6f054f0610241629k60d6c11brd7f35b07c8e86fcf@mail.gmail.com> On 10/24/06, Fabian Buch wrote: > > Am 24.10.2006 um 17:48 schrieb TRANS: > > O.T. How do I edit my mailing list preferences for nitro-general? > > http://rubyforge.org/mailman/listinfo/nitro-general Duh. I've done this enough times before. Nonetheless, I looked and looked at that page and didn't see it. But there it is "change password or edit options" at the bottom. Alwasy thought that was a crumy interface and now I KNOW it is ;-) Thanks. T. From manveru at weez-int.com Tue Oct 24 21:09:04 2006 From: manveru at weez-int.com (Michael Fellinger) Date: Wed, 25 Oct 2006 10:09:04 +0900 Subject: [Nitro] param handling In-Reply-To: References: Message-ID: <200610251009.05037.manveru@weez-int.com> On Wednesday 25 October 2006 02:19, Jonathan Buch wrote: > On Tue, 24 Oct 2006 12:10:01 +0200, George Moschovitis wrote: > >> another thing is, GET-parameter cannot overwrite POST-params, right? > > > > you suggest that instead of request.params we have separate > > request.get_params/request.post_params? > > Maybe... > > Suggestion: When method == POST, use request.post_params as .params > but merge them with .get_params (not overriding the .post_params). > > def params > post? ? get_params.update(post_params) : get_params > end > > Jo I agree with that, there were enough problems with that in PHP, we should learn from their errors :) ^manveru From reid.thompson at ateb.com Tue Oct 24 23:11:19 2006 From: reid.thompson at ateb.com (Reid Thompson) Date: Tue, 24 Oct 2006 23:11:19 -0400 Subject: [Nitro] question about postgresql.rb && last_insert_id and insert_sql In-Reply-To: <20061024080424.GA19713@oxyliquit.de> References: <453D605D.9090004@ateb.com> <20061024080424.GA19713@oxyliquit.de> Message-ID: <453ED5D7.5040604@ateb.com> Jonathan Buch wrote: > Hi, > > >> could someone explain to me the reasoning behind the following code in >> postgresql.rb. If the klass.primary_key is a sequence, there is no need >> to explicitly set the primary key value in PostgreSQL, PG will >> automatically do it. You can do this by either not passing a value for >> that column, or by passing default or DEFAULT. This would make >> insert_sql a less costly call. What am I missing that requires the code >> to be written as it currently is?? >> > > The problem is, that the frontend (Og) has to know the oid which has > been inserted. > Why does the frontend need to know which oid has been inserted? When I think of an activity that requires insertion ( the creation of a new record in the DB ), I think in terms that all actions that need to be performed on the object are performed prior to .create .save, etc. I.E. at the point that I insert into the DB, that is the last action I expect to take on that object. If I need to alter the record after it's created, then I expect to have to query for it first. From manveru at weez-int.com Wed Oct 25 04:41:44 2006 From: manveru at weez-int.com (Michael Fellinger) Date: Wed, 25 Oct 2006 17:41:44 +0900 Subject: [Nitro] [PATCH] Fix an exploitable bug in CGI multipart parsing Message-ID: <200610251741.44867.manveru@weez-int.com> patch attached, it's still warm :) please apply ASAP (also you guys who use 0.31, please patch) This fully closes a previously-reported but partially-fixed vulnerability: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-0983 http://www.securityfocus.com/bid/11618/info thanks to zedas who informed us :) ^ manveru -------------- next part -------------- New patches: [Fix an exploitable bug in CGI multipart parsing which affects Ruby <= 1.8.5 manveru at weez-int.com**20061025083802 when the input stream returns "" (empty string) instead of nil on EOF. Certain malformed multipart requests leave the parser in a non-terminating state, leaving the program vulnerable to denial of service attack. The fix more carefully checks for input stream EOF. affected: standalone CGI, Mongrel unaffected: FastCGI, mod_ruby, WEBrick found and fixed by zedas ] { hunk ./nitro/lib/nitro/cgi.rb 264 - if c.nil? + if c.nil? || c.empty? } Context: [Updated why_wiki. George Moschovitis **20061024154145] [Updated CHANGELOG. George Moschovitis **20061024124642] [You guessed it, more changes to examples ;-) George Moschovitis **20061024082500] [More changes to examples, even more to come. George Moschovitis **20061024082419] [Many changes to examples, flare, spark to convert to latest code, more to come. George Moschovitis **20061024082333] [Moved system view dirs to template dirs. George Moschovitis **20061024062032] [Adde set_attributes, instace_attribute_set methods in entity, for easy (and fast) update+save of attributes. Custom Mysql quote. George Moschovitis **20061023115253] [Some work on dispatcher for tc_params. George Moschovitis **20061023115213] [Updates in TODO. George Moschovitis **20061023115147] [Multiple fixes to make Nitro tests pass. All pass except tc_session with Og cachse and tc_controller_params. Can anyone help with these two? George Moschovitis **20061019152957] [More flexible controller_map setting. Allows presetting of controller maps in parts. Have a look at the system part for an example. George Moschovitis **20061019092453] [Minor. George Moschovitis **20061018074820] [More effective $cache.cleanup George Moschovitis **20061018074708] [Many changes to make all Og tests pass with MySQL, yeah! Anyone can try prostgres/sqlite? George Moschovitis **20061017191259] [All Glue tests pass cleanly. George Moschovitis **20061016082957] [Added doc/TODO to offer a glimpse to the future of Nitro. George Moschovitis **20061016071926] [Skip redirects on ajax/rpc requests. Allows to write more reusable code. George Moschovitis **20061016071453] [Removed all Admin/Scaffolding stuff. Lets clear the directory structure a bit ;-) George Moschovitis **20061014170714] [Added new System part that will replace old Admin part. The implementation is much simpler, it supports plugins and more. In general it is a better place for improvment. Ooh, and should startup faster too ;-) George Moschovitis **20061014165130] [Mark instances started by the bin/nitro command with the application name for easy identification when running ps. George Moschovitis **20061013132756] [Improved handling of index params in dispatcher, fixes bug when only template exists and no action (tiny example runs now ;-)) George Moschovitis **20061013074907] [Fix in Global. George Moschovitis **20061013064758] [Converted blog example. George Moschovitis **20061013063711] [Fix: Made sweeper compatible with new cache scheme. George Moschovitis **20061013060625] [Fix in feed link calculation (no '//') George Moschovitis **20061011081124] [Fix in mailer outgoing. George Moschovitis **20061011081100] [Fix Glue testcases, many failing though Jonathan Buch **20060930150921] [Revamp tc params to also allow POST requests, add POST multipart test Jonathan Buch **20060929134324] [Add test to tc params for action_methods / module including Jonathan Buch **20060928142918] [repair Controller.action_methods Jonathan Buch **20060928142621] [Insert testcase for params, bugreport ray Jonathan Buch **20060928133450] [Change the way /index with parameters handled Jonathan Buch **20060927223815 This behaviour is documented in tc_controller_params.rb in the two tcs test_index_handling and test_index_handling_bad. ] [Replace refs to the old 9999 port with the new 9000 port. George Moschovitis **20061010111635] [Removed some obsolete files. George Moschovitis **20061010111154] [More flexible elements namespace selection, you can easier have multiple skins in your web app, per controller, per controller group etc. Read the source for more details. A low level example: ann :self, :elements => CustomSkin. I will add some DSL macro for this though. George Moschovitis **20061010084527] [this allows you to use the sqlite-memory-store (sqlite3) by setting the :name to ':memory:' manveru at weez-int.com**20060929075743] [Fix sti bug, used subclass name for foreign_key Jonathan Buch **20061003103231 Foo has_many Bar; User has_many Foo; Admin < User; Admin.foos #=> SQL ERROR: DB error no such column: admin_oid, [SELECT * FROM ogcustomer WHERE admin_oid = 1] Thx to Rayman for catching that bug, added testcase as well ] [Small tc reverse fix, also works on psql now! Jonathan Buch **20060929174147] [Fixed emit labels in relation controls. George Moschovitis **20061009193439] [Another cool flash helper, concat. Useful for error handling in cooperation with the new form builder features. George Moschovitis **20061009192031] [Nitro unescapes request params (even for nice urls), more cases handled. George Moschovitis **20061009161125] [Improved form builder error handling, more intuitive implementation of flash.push. George Moschovitis **20061009160120] [Fix in text_key/key annotation, it is handles correctly now. George Moschovitis **20061009072919] [Form helper should ignore polymorphic_marker relations. George Moschovitis **20061008085628] [When deleting an Og entity load the object, so og_delete aspects can access instance variables. Useful for sophisticated cache sweepers. George Moschovitis **20061008080957] [Updated scaffold model to use the new OgSystem stuff. George Moschovitis **20061008080926] [WebFile.override_files = true by default. George Moschovitis **20061008072452] [Made strange router urls more compatible with Apache. George Moschovitis **20061008072113] [At last, output caching generates files, not directories. Improved apache/webrick/mongrel rewrite rules. George Moschovitis **20061008071447] [Added a nasty hack that fixes a truly nasty bug. For details read in the webrick/mongrel adapters. We must find a better solution though. George Moschovitis **20061007173056] [Reverted some changes in compiler/dispatcher, cleaned up the mess. Sorry Fabian, your changes where invalid, but I will make your updated testcases pass. Gimme some more time ;-) George Moschovitis **20061007153307] [More correct calculation of managed_classes. George Moschovitis **20061007070202] [Added some comments. George Moschovitis **20061005182903] [Added useful handle_static_files setting in Server. When running in production mode set to false (the frontend webserver should handle static files). Allows an ingenious rewrite rule to handle admin servers ;-) George Moschovitis **20061005182522] [added nitro/tc_template for coming move of Glue::Template -> Nitro::Template manveru at weez-int.com**20060925203752] [added nitro/tc_markup (this will become important after the Glue::Markup -> Nitro::Markup move manveru at weez-int.com**20060925203051] [Make OgCache faster by adding primary_key index Jonathan Buch **20060929164816] [ The huge Template|Markup move from Glue to Nitro manveru at weez-int.com**20060928092324] [Fix tc_validation_loop Jonathan Buch **20060928112058] [Fix tc_reverse Jonathan Buch **20060928111438] [Add psql rollback/savepoints for transactions Jonathan Buch **20060928111226] [Try fix sti, ogtype resolution for mysql < 5, -pr psql Jonathan Buch **20060928105756] [add fatal failed testcases to the failed testcases :) manveru at weez-int.com**20060927223059] [Fix bug, used String for primary_key for psql auto generated values. Jonathan Buch **20060927224042] [Fix tc has_many Jonathan Buch **20060927212206] [Fix param handling and param testcases Jonathan Buch **20060927212044] [Fix tc controller, remove unnessessary action_methods Jonathan Buch **20060927210246] [Fix tc multi_validation and tc kirby. Jonathan Buch **20060927160905] [Fix tc primary key for psql, change sequence handling Jonathan Buch **20060927160518 Moves sequence description to a annotation for the primary key instead of using a constant in the class. Only uses sequences if the sql for the pk includes the keyword SERIAL. This does not account for manually created sequences, TODO. ] [Fix reverse tc, makes it pass for mysql Jonathan Buch **20060927133118] [Fix inheritance tc Jonathan Buch **20060927132223] [Fix sti for psql Jonathan Buch **20060927132149] [retry when sqlite database locked Alex Pooley **20060908140800] [Make inline C in tc_cgi more robust Jonathan Buch **20060927122119] [Add more tests to tc param Jonathan Buch **20060926205950] [More and better testcases for params Jonathan Buch **20060926124647] [More testcases for tc_controller_params, refactor Jonathan Buch **20060926114453] [support for request.local_net? to check if a request comes from a local network [3] Fabian Buch **20060925210146 (RFC1918 + localhost) including testcase idea by Manveru, algorithm by Jonathan and implementation by Fabian ] [update to nitro/tc_dispatcher manveru at weez-int.com**20060925210647] [just a typo in nitro/tc_session manveru at weez-int.com**20060925203734] [updated to nitro/tc_render to reflect lots of changes in nitro-source manveru at weez-int.com**20060925203647] [updated nitro/tc_controller - will reflect the current ways of nitro a lot better manveru at weez-int.com**20060925202935] [updated nitro/tc_cgi (kashia added ruby-inline to make it faster) and some other fixes for it manveru at weez-int.com**20060925202725] [updated nitro/helper/tc_table manveru at weez-int.com**20060925202300] [add testcase for nitros parameter-handling (finally) [2] Fabian Buch **20060925195011 original by Manveru ] [gen part uses lib/ directory now Fabian Buch **20060913094740 so parts reside in lib/part/partname public stuff of parts are still in public/part/partname/ ] [Removed scgi adapter. This is not maintained anymore by the original author. You are advised to use the mongrel adapter instead. George Moschovitis **20061003203706] [Added nitro restart command. George Moschovitis **20060925135127] [Nitro cluster command spawns correct number of app servders and implies daemon mode. George Moschovitis **20060925131813] [Fixed response cookies problem od the Mongrel adapter. George Moschovitis **20060924202240] [Added part callbacks for more structures and flexible part initialization. George Moschovitis **20060923024859] [Improved Global initialization, more flexible, in sync with session. George Moschovitis **20060923024711] [Improved handling of Session.cache_type for flexible initialization. George Moschovitis **20060923022541] [Updated configuration system to make more flexible, imporved drb sessions and Nitro initialization in general. Still some related work to do though (especially update the examples). Warning this patch will break your apps. Some text that will explain the small changes needed is forthcoming. George Moschovitis **20060922184512] [Improved nitro command to handle state server, added kill option. George Moschovitis **20060921204412] [Added some initial cache management (from the console) features. George Moschovitis **20060921185724] [Make YAML-properties with postgresql work again manveru at weez-int.com**20060914091150] [notice about new script/test :) manveru at weez-int.com**20060912105803] [Huge refactoring of script/test.rb, to use the new capability just 'gem install popen4' manveru at weez-int.com**20060912070838] [added tc_primary_key (which fails right now, like every good tc should ;) manveru at weez-int.com**20060908022410] [fix little bug with parse_timestamp (utils.rb) manveru at weez-int.com**20060906093558] [Og close_store fix nusgnaf at gmail.com**20060826205335 We use @store to maintain database connection when Og.thread_safe is false and @pool when Og.thread_safe is true. Right now in close_store, we fall back to @store.close when @pool.empty? is true, that not correct, the following patch fixes this. ] [fixed bug in tc_store.rb Fabian Buch **20060828075201] [making some other testcases pass again (issue with result of psql) manveru at weez-int.com**20060825172828] [making tc_build.rb pass again manveru at weez-int.com**20060825142113] [make aggregations work again (tc_aggregations_calculations) manveru at weez-int.com**20060824235925] [fixing STI manveru at weez-int.com**20060824142441] [adding some raise "Not implemented" in og/store.rb for empty methods manveru at weez-int.com**20060824114541] [minor change in tc_scope, still doesn't pass though manveru at weez-int.com**20060822122540] [changed script/test.rb so it runs the tests seperate (useful for og, if one test fails, not all others blow up) manveru at weez-int.com**20060822090716] [Fix scope bug in collection.rb, use count for finding number of joins_many relations Jonathan Buch **20060912124344] [Fix for deleting has_many belongs/refers_to relations Jonathan Buch **20060911144233] [fix for deleting belongs_to relationships Jonathan Buch **20060911122205] [add testcase for deleting relations Jonathan Buch **20060911112315] [More small og test fixes Jonathan Buch **20060906214008] [Fix more og testcases Jonathan Buch **20060906211602] [.save returns affected rows again, fix subclass creation in relation.rb Jonathan Buch **20060906210953] [Enable object annotating for custom styles in form attributes. Jonathan Buch **20060903154923 Can be used like following: {:control_style => 'border:1px solid red;'} end if flash[:VERROR] ?> This traverses over validation errors and sets a red border around those attributes with errors. ] [Replace pk.inspects by quote(pk) Jonathan Buch **20060903112405 Fixes problems with text/integer keys. ] [One line fix for 'Various Changes' patch Jonathan Buch **20060903111201] [Various changes Jonathan Buch **20060902224949 * Revise resolve_polymorphic_relations, remove FIXME, change the eval to const_set. * Change symbol_to_class to return nil when no matching class was found. * Fix aggregation code, only use order_by when group_by is given. ] [minor fix for manage_classes Jonathan Buch **20060902164458] [remove ObjectSpace search in manage_classes when classes are specified Jonathan Buch **20060902163817] [OgKlass.create_with is now able to accept arrays for collections Jonathan Buch **20060830180923] [Fix bug with Pager and aggregations Jonathan Buch **20060828221005 The option array got changed by the new aggregation code and in `paginate` the array got reused. Testcase also attached. This patch also makes an alias named :limit for :per_page. Makes paginate more compatible to other sql based functions. ] [minor testcase bugfixes Jonathan Buch **20060827232013] [only use transactions in og_delete when cascading is activated Jonathan Buch **20060827231901] [Automatic deletion of many2many relationships when one side gets removed Jonathan Buch **20060827231733] [add testcase for many to many relationships and deleting one side of the relationship Jonathan Buch **20060827231057] [prop_accessor -> attr_accessor Jonathan Buch **20060827230931] [fix taggable, reload needed when deleting tag Jonathan Buch **20060827223558] [change all prop_accessor to attr_accessor Jonathan Buch **20060825230930] [patch for many postgresql store errors, makes more tests pass Jonathan Buch **20060825224327 Most importantly this changes the lookup rule for symbol_to_class in relation.rb, changes annotating of primary keys when invoked by `set_primary_key :name, String`. Minor enhanced test files, updated to new syntax etc. ] [Add transaction, commit, rollback to psql adapter Jonathan Buch **20060825172522] [Let `def aggregation` use `resolve_options` Jonathan Buch **20060825155121 It duplicated functionality already available in `resolve_options` and didn't know about join tables etc. ] [Add Fabian Buch as contributor, rename nick Kashia to Jonathan Jonathan Buch **20060831181201] [Minor fixes. George Moschovitis **20060912152127] [removed unmatched require in server.rb Fabian Buch **20060911155626] [fixed call/answer (render.rb) to work correctly [2] Fabian Buch **20060911155557] [FeedHelper fix that lets its unit test pass again [2] Fabian Buch **20060911155026] [removing "nil"-Strings from has_many and refers_to controls [2] Fabian Buch **20060911154851 since you don't want "nil" for NULL in your database ] [webfile bugfix and to-be-improved tc_webfile.rb added [2] Fabian Buch **20060911154544 also: don't override files by default and more logical file permissions ] [adding generator for parts (gen part) [2] Fabian Buch **20060911153811 gen part partname copies the given part to the current folder (so you should be in your applications main folder) and moves the part's public files to public/part/partname ] [let mongrels request_uri and query_string behave like the ones of webrick and fcgi Fabian Buch **20060911205524] [Cleaned up many files. George Moschovitis **20060910192003] [Test for :serializable_attributes in Manager#manageable? Pangloss **20060909212814] [Update Og::Cacheable to use facets 1.4.5 Pangloss **20060909212038] [Small fix in exclude patch to get rid fo the warning. George Moschovitis **20060910084803] [adding option[:exclude] to all_attributes in form helper Fabian Buch **20060908182429 now you can exclude single attribute for example: f.attributes(:exclude => :password) or f.attributes(:exclude => [:password, :name]) ] [Allow label override in form helper. George Moschovitis **20060909070515] [Minor stuff. George Moschovitis **20060909065751] [Some improvements in caching and scaffolding. George Moschovitis **20060907195840] [Access server from context (req/res) George Moschovitis **20060905200321] [New cluster friendly nitro script. George Moschovitis **20060905200208] [fix latest Runner bugs Fabian Buch **20060831134122 ruby run.rb -m for example didn't work, it always used webrick unless Nitro.adapter was set ] [Some more fixes in the the new param parser, it works better with the router now. George Moschovitis **20060831173030] [FileControl and PasswordControl added Fabian Buch **20060830191849] [Added support for mongrel, execution modes and more in the nitro startup script (bin/nitro). George Moschovitis **20060828212153] [Minor stuff. George Moschovitis **20060828171549] [Alexander Lazic's Mongrel Adapter changes + mine Fabian Buch **20060826102734 it uses Mongrel::Configurator to setup mongrel Logger for a more unified look fixes trap to use stop() ] [Fixed 'true' bug in sub-elements. George Moschovitis **20060826074839] [Small improvements in taggable. George Moschovitis **20060826074740] [Improved sub-element functionality, add some comments to explain the usage. George Moschovitis **20060825195559] [Removed src dir, moved path into lib. Cleaner layout and trnsparently supports my new webapp deployment script. nice ;-) George Moschovitis **20060824175446] [tell evolution to accept the properties of its relatives manveru at weez-int.com**20060824143623] [Added more FIXMEs for rescue Object and removed a few Jonathan Buch **20060822123730] [removing spurious "p" rff.rff at gmail.com**20060819140258] [better error handling for helper.rb ??rff.rff at gmail.com**20060819134639] [Some improvements in the new scaffolding code, auto detection of per model controllers. George Moschovitis **20060822150735] [Misc small changes for improved robustness. George Moschovitis **20060820093250] [Various validation related fixes and small improvements. George Moschovitis **20060817071240] [Default error page sets 501 status George Moschovitis **20060817060455] [This patch contains the following changes: rff.rff at gmail.com**20060729141757 M ./nitro/lib/nitro/helper/form.rb +8 ] [This patch refactors the code used in the scaffolded view to be usable as a single helper. rff.rff at gmail.com**20060729141306 It basically creates a div containing a list of li tags, each of one contains a message for each error in flash[:ERRORS] This patch contains the following changes: M ./nitro/lib/nitro/helper/form.rb +12 ] [Intuitive handling of text keys, allows code like u = User['gmosx'] and u = User[1] at the same time. George Moschovitis **20060801203732] [encode_url better handles index actions. George Moschovitis **20060801203714] [Some small fixes. George Moschovitis **20060730132126] [bugfix-glue-validate_value bryan.a.soto at gmail.com**20060717205050 Ticket #44: http://devlab.oree.ch/trac/glycerin/ticket/44 Credit to matt DOT moriarity AT gmail DOT com. ] [fix conflict mongrel adapter rff.rff at gmail.com**20060729105408] [bugfix-nitro-mongrel-adapter bryan.a.soto at gmail.com**20060717060648 Fixes multi-part form processing, which was broken by my previous patch. Basically, image uploads work now for mongrel. ] [fix conflict on "undescore" typo rff.rff at gmail.com**20060729104933] [bugfix-nitro-ticket-43 bryan.a.soto at gmail.com**20060711010702 Fixed a bug/type as suggested by rff_rff AT yahoo DOT it http://devlab.oree.ch/trac/glycerin/ticket/43 ] [bugfix-nitro-ticket-34 bryan.a.soto at gmail.com**20060711010350 Fixed as per billk AT cts DOT com suggestion on Ticket #34. http://devlab.oree.ch/trac/glycerin/ticket/34 ] [navigation menu helper rff_rff at yahoo.it**20060705193224 This helper allows easy creation of xhtml/css based navigation menus, producing an xhtml that is suitable to be used with examples found at listamatic, and with automatic handling of "current page" highliting, setting proper xhtml for it. The helper adds two methods, one allows to create a menu like menu_for(HomeController, Pages, Feed) and the other gives more fine grained control through: menu_from_hash('/home'=>'Home Page', '/pages'=>'Wiki', '/feed/rss'=>'RSS2.0') ] [hack-enh-fcgi-rewind bryan.a.soto at gmail.com**20060609220620 A small hack to ensure that you can access the raw_body of a request, by converting the incoming stream to a StringIO if it doesn't respond to :rewind. ] [test-fix-og-tc_ez bryan.a.soto at gmail.com**20060518001436 Fixes up the ez testcase Manveru submitted to make it run and pass. ] [ez-fix for trueclass and testcase for it m.fellinger at gmail.com**20060513111040] [error-page-fix for source-preview m.fellinger at gmail.com**20060513110945] [test-fix-nitro-tc_render bryan.a.soto at gmail.com**20060517223259 Makes the TestController subclass Nitro::Controller so it get's the #encode_url method. ] [adds-some-blank-lines-to-og-tc_setup bryan.a.soto at gmail.com**20060517222452] [gabrielle-renzis-linefeeds bryan.a.soto at gmail.com**20060517221725 Switches line endings from Dos to Unix. ] [solves the conflict between repo and devlab (Og.setup now handles arguments in rff.rff at gmail.com**20060729102534 a saner way and crashes ASAP when there is no chance to recover ] [crash-early Og.setup surrender_it at yahoo.it**20060505123051 This patch removed the Exception handling routine from Og.setup. With the current code if an exception is raised during the execution of the method there is no crash, but the crash will happen every time someone references Og.manager, cause that variable won't be initialized . This patch makes Og.setup crash as soon as possible, thus allowing faster diagnostics. The patch also adds a simple test case for Og.setup, which seem not tested anywhere, but the test case may need some love for proper setup (it relies on glycerin as of now, cause loading CONFIG.rb seem to raise a strange exception related to mixed use of facets 1.3 and 1.0 on my box) ] [better test logging surrender_it at yahoo.it**20060505010206 As of now tests for Og swallow every error ingormation while not in $DBG mode, this one-line patch allows visualization of logged informations at WARN level and more, which has little impact on the visualization of the tests and still allows quick diagnostics while staying out of $DBG ] [add-ostruct-require bryan.a.soto at gmail.com**20060512060511 Adds missing ostruct require to testcase.rb. ] [nitro-proto-page bryan.a.soto at gmail.com**20060510060546 Updates the intro page with a link to the rubyforge page for examples to be downloaded as suggested by James Britt. ] [Made redirect_on_empty (buffer) true by default. George Moschovitis **20060729083954] [More fault tolerant populate_attributes. George Moschovitis **20060727192802] [Added objects_to_options helper. George Moschovitis **20060726115346] [Hack fixed fcgi/console Og polymorphic bug, will investigate later. George Moschovitis **20060726115238] [Minor fixes and cleanup. George Moschovitis **20060723141916] [fragments_fix nusgnaf at gmail.com**20060720211817 kill the usage of @@cache in nitro/lib/nitro/caching/framents.rb, use self.cache instead. ] [Minor. George Moschovitis **20060720182002] [Improved postgreslq adapter. George Moschovitis **20060720180657] [form.fix nusgnaf at gmail.com**20060721015451 ensure we render all_attributes before we yield to block. ] [MysqlAdapter database creation Jonas Pfenniger **20060720133458] [More cleanup in Og files. George Moschovitis **20060719214222] [Small updates in source files, removed some obsolete files. George Moschovitis **20060719203755] [Better refactoring of last_insert_id/insert_sql. George Moschovitis **20060719170347] [Further Og adapter refactoring. George Moschovitis **20060719163823] [Mongrel large file fix. [fang sun] George Moschovitis **20060719153444] [Updated source. George Moschovitis **20060718202542] [Added postgresql.rb main adapter file. George Moschovitis **20060718174745] [Updated RELEASES. George Moschovitis **20060718174725] [More source/doc updates. George Moschovitis **20060718155406] [Misc doc/source updates. George Moschovitis **20060718154516] [Reimplemented postgresql adapter (not fully working yet). George Moschovitis **20060717220903] [Further refactoring/cleanup of the Og adapter code. George Moschovitis **20060717220831] [Small fixes in examples to make work with latest code. George Moschovitis **20060717220750] [Added special resolve_polymorphic behaviour to many_to_many/joins_many relations. George Moschovitis **20060716164436] [Even more intelligent dispatches, handles some more useful nice url cases. It rocks! George Moschovitis **20060716160628] [More flexible resolve_polymorphic_relations. George Moschovitis **20060716154721] [Check for join tables even if main table exists to be make Og more self-healing (and adaptive to changin schemas). George Moschovitis **20060716145000] [Polymorphic relations use again Owner::Class subclasses, but they are more flexible, there is no more the need for foreign_name declarations, plus cleaned up some Og code. George Moschovitis **20060716130632] [Virtualized table_already_exists? for mysql and sqlite3 to allow a single create table method for both adapters (!!!). George Moschovitis **20060713172658] [Reimplemented the sqlite adapter under the new model. George Moschovitis **20060713171143] [Remarkable refactoring/simplification of the Og adapter model. Cleaned up Mysql Adapter, more robust code. George Moschovitis **20060713171040] [Options control now takes reverse dictonary as a parameter, more useful. George Moschovitis **20060712164255] [MAJOR, BACKWARDS UNCOMPATIBLE CHANGE: Polymorphic classes are not nested. Ie now ArticleComment is created instead of Article::Comment. George Moschovitis **20060710210736] [Added rename_schema method in Og evolution. George Moschovitis **20060710190814] [Removed og evolution from og main dir to avoid confusion with store/evolution (renamed to dump.rb) George Moschovitis **20060710155539] [Misc form helper and controls improvements. George Moschovitis **20060709164509] [Improved StaticInclude compiler to handle recursive static includes (extremely useful). George Moschovitis **20060709164423] [Minor George Moschovitis **20060709083138] [Some fixes in the admin templates. George Moschovitis **20060709082357] [Removed old form helper code, added float control, some cleanup. George Moschovitis **20060709080905] [Added OptionsControl for attributes that take discreet options. George Moschovitis **20060708082406] [Updated contributors. George Moschovitis **20060708082323] [Extacted publishable.rb from controller.rb, added mount_path helper to publishable. [renzi] George Moschovitis **20060708073814] [Minor. George Moschovitis **20060706204217] [Small render fix. George Moschovitis **20060706204140] [Added support for nested controllers, cleaned up render (no base), updated admin part to work with changes. George Moschovitis **20060706203550] [Added initial versions of scaffold/controller, scaffold/model. George Moschovitis **20060706155447] [Changed render_template (for the moment uses a 'hack' implementation, but it works!) [james_b] George Moschovitis **20060705193130] [Og load/reload handle nil primary keys (by returning nil). George Moschovitis **20060705181328] [Simplified hidden method in xhtml helper. George Moschovitis **20060701072425] [Applied james britt's mongrel patch. George Moschovitis **20060630190711] [author backwards compatibility (atom) Kashia Buch **20060622175214 Request by Fabian ] [Added handle_sql_exception for MysqlAdapter#create_table Jonas Pfenniger **20060627135225] [Added String to Car's property in tc_inheritance.rb Jonas Pfenniger **20060627132219] [Removed Glue::Flexob testcase since it does't exist anymore Jonas Pfenniger **20060627132017] [Fixed add_rule in dispatcher [james_b] George Moschovitis **20060629151558] [Removed paramix-fix, not needed in facets 1.4.3 George Moschovitis **20060629151520] [Argh and again argh, extend OpenStruct instead of OpenObject in FileTemplate to fix weird and NASTY eval bug. George Moschovitis **20060626191414] [consoleapp -> command. George Moschovitis **20060626172152] [Changes to make compatible with 1.4.2 George Moschovitis **20060626163705] [Added some new files. George Moschovitis **20060620065144] [Applied patches by neokolor at gmx.de, plus some minor stuff. [neokolor at gmx.de] George Moschovitis **20060620064746] [Deprecated RSS helper (use the new feed helper instead). George Moschovitis **20060618102546] [Updated spark and flare examples to use the feed helper. George Moschovitis **20060618102431] [Updated blog example to work with latest, slightly improved feed parser in the process. George Moschovitis **20060618101830] [Allow override of style in controls (+ minor fixes). George Moschovitis **20060618090054] [bugfix-mongrel-adapter-request-uri bryan.a.soto at gmail.com**20060605211152 Removes REQUEST_URI header manipulation and accomodates an upcoming change in Mongrel 0.3.13. An ugly class check... Lovely. ] [more-mongrel-adapter-fixes bryan.a.soto at gmail.com**20060510222051 Fixes up static file serving. ] [mongrel-fixes bryan.a.soto at gmail.com**20060510060439 Gives the Mongrel adapter some need updating. ] [Fixed Orderable to work with latest Og. George Moschovitis **20060616082740] [Allow for relative/absolute expiration of affected cached pages for extra flexibity. George Moschovitis **20060614071336] [Fixes in output caching (root setting). George Moschovitis **20060614070409] [Renamed evolution.rb to dump.rb to avoid confusion with the dynamic schema evolution feature. George Moschovitis **20060614061620] [Refactored og cloning to a separate file to keep entity.rb cleaner. George Moschovitis **20060614061451] [Added sendfile support to render. [jlambert] George Moschovitis **20060613175624] [Taggable tagstring_linked. George Moschovitis **20060613175606] [Small changes in FeedHelper. George Moschovitis **20060613060649] [Removed deprecated and buggy static include code from Template, the StaticInclude compiler is used instead. George Moschovitis **20060612083733] [Added {{..}} and #<..> aliases to #{R ..}. George Moschovitis **20060609083834] [Refactored webrick vcr functionality to a separate file. George Moschovitis **20060609081950] [Added again examples, flare, spark George Moschovitis **20060607152438] [Using the new building code, fixed the admin hasmany/joinsmany control. George Moschovitis **20060607011350] [Implemented collection build mode for efficient object relation initialization w/o excessive saves. George Moschovitis **20060607005902] [Small fix in template_for_action to avoid unhelpful error message on missing action (and symbol passed). George Moschovitis **20060606075731] [Added many new files. George Moschovitis **20060605182624] [Many many changes (New control system, Emit labels in the controls, Relation controls (hack fix), Show form errors in admin screens, Removed credit lines, Updated docs, Og.destroy_schema, and more...) under heavy construction. George Moschovitis **20060605182411] [Honour port in Mysql create/destroy [james_b] George Moschovitis **20060528072603] [Updated docs. George Moschovitis **20060526094620] [Minor. George Moschovitis **20060522103204] [Refactored and rationalized evolution support for sql stores. George Moschovitis **20060522102946] [Introduced new control system. Still under construction. George Moschovitis **20060522064146] [Fixes in validation and scaffolding. George Moschovitis **20060521090718] [After some more fixes tc_store.rb passes ;-) George Moschovitis **20060520093243] [Fixes in mysql insert. George Moschovitis **20060520092051] [Fixed finders. George Moschovitis **20060520085837] [Fixed some more problems. George Moschovitis **20060520084729] [Added join support, rationalized primary key setup. George Moschovitis **20060520081153] [Better support for non integer primary keys. George Moschovitis **20060519074722] [More fixes to support update. George Moschovitis **20060519074304] [Rationalized og_delete. George Moschovitis **20060519072950] [More fixes to support reading. George Moschovitis **20060519072248] [After some more changes, a small example works ;-) George Moschovitis **20060519063007] [Rationalized sql index definition: attr_accessor :age, Fixnum, :index => true, :pre_index => ..., :post_index => ... George Moschovitis **20060519061721] [Major Og rewrite, updating to the new attribute system, cleaning the code and migrating to the new adapter model. Many many more changes. In progress. George Moschovitis **20060519060701] [Removed alpha og stores. George Moschovitis **20060518070101] [Many changes to support the switch to attributes instead of properties. George Moschovitis **20060518065907] [Minor. George Moschovitis **20060516150705] [Moved examples, spark, flare to a separate repository. George Moschovitis **20060516073246] [Removed wee helper and example. Not really useful in Nitro, better use wee standalone + Og if you like Wee components (or wait for a Nitro solution). George Moschovitis **20060516072823] [Removed controller_name from Render, user controller.mount_path instead. George Moschovitis **20060516072350] [Fixed: dont overwrite already defined methods in the new scaffold code. George Moschovitis **20060516071615] [Improved R (encode_url) handles strings and entities. Redirect implicitly uses R. Form builder implicitly uses R for form actions. George Moschovitis **20060516071508] [Fixed name_to_jsfile (absolute url). George Moschovitis **20060515065439] [Reenabled format in Logger. George Moschovitis **20060513042251] [Added some :nodoc: all to cleanup generated RDocs. George Moschovitis **20060513034929] [Bumbed version number in many files. George Moschovitis **20060512154849] [Wrote a detailed parts howto in RDoc form in parts.rb as requested by Jonas. To be improved after community feedback. George Moschovitis **20060512153754] [Initial code for the new scaffolding system, *very* under construction, ignore for the moment. George Moschovitis **20060511101456] [Added a model macro to controllers that links related classes. At the moment it is used in the sweeper do delete cached pages from the linked controller base directory. George Moschovitis **20060510102836] [Fixed Session.current and Controller.current George Moschovitis **20060508075645] [Store current context in a thread local variable, accesible through Context.current George Moschovitis **20060507160715] [Removed glue/attribute, use Facet's cattr instead. Updated nitro/og source to make compatible. George Moschovitis **20060507085703] [Added script adapter file. George Moschovitis **20060507062034] [Removed flexob and references to it, use Facet's OpenObject instead. George Moschovitis **20060507061555] [Renamed to ScriptAdapter, keep ConsoleAdapter alias. George Moschovitis **20060506103921] [Yeah, the ConsoleAdapter kinda works now ;-) George Moschovitis **20060506102010] [Introduced new nitro command/runner that will replace the current spaghetti code. Based on facetes Console::Command. Also introduced the ConsoleAdapter. George Moschovitis **20060506095503] [Removed accumulate (in facets). George Moschovitis **20060506080052] [Some small updates. George Moschovitis **20060506075526] [TAG 0.30.0 George Moschovitis **20060506075053] Patch bundle hash: c1be9ee361094d91911f481f13e59c102c9d1bed From george.moschovitis at gmail.com Wed Oct 25 06:17:45 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 25 Oct 2006 13:17:45 +0300 Subject: [Nitro] [PATCH] psql stuff In-Reply-To: References: Message-ID: Thanks, let me check and apply this. -g. On 10/24/06, Jonathan Buch wrote: > Hi, > > Tue Oct 24 19:46:37 CEST 2006 Jonathan Buch > * Rework Og.start() a little, add m.manage_classes(options[:classes]) > > Tue Oct 24 19:57:27 CEST 2006 Jonathan Buch > * Add compatibility layer for postgres-pr and early postgres lib versions > > Tue Oct 24 20:19:04 CEST 2006 Jonathan Buch > * Change manage_classes, use less .managed_classes calls, add check for manageable? > > Tue Oct 24 20:43:43 CEST 2006 Jonathan Buch > * more checks in get/put_store > The original can lead to weird errors when Og.start gets called many times > and many stores are used concurrently. > > All tests run through with mysql and postgresql (not tested with postgres-pr). > > Jonathan > > -- > Feel the love > http://pinkjuice.com/pics/ruby.png > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > > > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 25 06:19:41 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 25 Oct 2006 13:19:41 +0300 Subject: [Nitro] IRC connection problems Message-ID: Dear devs, I am using xchat-gnome on Ubuntu Edgy, and most of the time I cannot connect to the IRC channel. Here is the error message: Auto-away plugin 0.4 loaded (using GNOME screensaver) --- Looking up irc.freenode.net.. Connecting to chat.freenode.net (82.96.64.4) port 6667.. Connected. Now logging in.. *** Looking up your hostname... *** Checking ident *** Couldn't look up your hostname The strange thing is that sometimes (perhaps once a day) I *do* connect after this message is displayed. I cannot connect with Gaim 2.0 either. Any ideass? George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 25 08:26:37 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 25 Oct 2006 15:26:37 +0300 Subject: [Nitro] param handling In-Reply-To: <453E3714.6070606@gmail.com> References: <453D3941.20603@gmail.com> <453E231E.2010702@gmail.com> <453E3714.6070606@gmail.com> Message-ID: > Well, I'm mainly tossing it out here for discussion. I've not thought > ... > In that case, if you have a console app and want to move it to the Web, > you would then add the controllers, rather than trying use the existing > classes as controllers. Perhaps we could keep the current behaviour (the request.params hash is populated) but if the method signature defines a hash last argument like this: def my_action(oid, val, params = {}) end this could be populated with the request parameters. what do you think? -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 25 08:28:48 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 25 Oct 2006 15:28:48 +0300 Subject: [Nitro] param handling In-Reply-To: References: <9c00d3e00610231534i7bb495c4j5bcdbe9fbd62cc21@mail.gmail.com> Message-ID: > Suggestion: When method == POST, use request.post_params as .params > but merge them with .get_params (not overriding the .post_params). > > def params > post? ? get_params.update(post_params) : get_params > end I like this. How about providing a patch? ;-) -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Wed Oct 25 08:30:39 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Wed, 25 Oct 2006 15:30:39 +0300 Subject: [Nitro] param handling In-Reply-To: References: <20061024090916.2e135f1a@localhost> Message-ID: Something like this is needed. Something to add in 0.41.0? -g. On 10/24/06, Fabian Buch wrote: > > Am 24.10.2006 um 19:19 schrieb Jonathan Buch: > > Slightly unrelated idea: > > How about different error pages for different errors? Like when a > > ArgumentError is getting raised, or when a NameError occurs (404).... > > Something like a hash with error classes and or error codes... > > That'd be great. Much better for Search Engines (Google) for example, > cause they wouldn't index an error page, but instead know it's non- > existent. > > Fabian > > > > -- > Nitro Q&A: http://oxyliquit.de/ > Blog: http://blog.fabian-buch.de > > > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From john at oxyliquit.de Wed Oct 25 08:55:59 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 25 Oct 2006 14:55:59 +0200 Subject: [Nitro] question about postgresql.rb && last_insert_id and insert_sql In-Reply-To: <453ED5D7.5040604@ateb.com> References: <453D605D.9090004@ateb.com> <20061024080424.GA19713@oxyliquit.de> <453ED5D7.5040604@ateb.com> Message-ID: Hi, >> The problem is, that the frontend (Og) has to know the oid which has >> been inserted. >> > Why does the frontend need to know which oid has been inserted? > When I think of an activity that requires insertion ( the creation of a > new record in the DB ), I think in terms that all actions that need to > be performed on the object are performed prior to .create .save, etc. > I.E. at the point that I insert into the DB, that is the last action I > expect to take on that object. If I need to alter the record after it's > created, then I expect to have to query for it first. Lets use a simple example: class OgModel proptery :name, String has_many OgModel end Now we create a instance and save it to the database with either of those methods: m = OgModel.create_with(:name => 'George') m = OgModel.new m.name = 'Stella' m.save After that statement, we have an object called 'm'. When I now work on this object (same object, not gotten anew from database): m.name = 'Takeo' m.save What happens? The .save method needs to UPDATE the model we just CREATEd and it can only do this, if it can exactly identify the model. So we need to know at this point which oid (or any other primary key) the model has. So, .save is by far not the last action, it is merely the first step. But, taking your example that you use .save as the last, and querying the database when you want to use the object further: How (when you haven't got the primary key) do you know, that you get exactly the object you want? OgModel.create_with(:name => 'Chichi') OgModel.find_with_oid(... what oid to use here?...) Also, when working with relations, it would be mighty inconvenient to not be able to work on the same object; maybe adding a few other related objects to a has_many for example (which must know the primary key for insertion in the related objects) to a just created OgModel instance. But maybe I'm just getting you wrong somehow.. Was my explanation right now enough to convince you that Og needs to know the primary key before really inserting? If not, I will try to think of another way to explain this. Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Wed Oct 25 08:59:05 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 25 Oct 2006 14:59:05 +0200 Subject: [Nitro] param handling In-Reply-To: <1161732351.723063.251980@i3g2000cwc.googlegroups.com> References: <20061024090916.2e135f1a@localhost> <1161732351.723063.251980@i3g2000cwc.googlegroups.com> Message-ID: Hi, > A little better but still costly I'm afraid. I'd love to lighten them > up more but the magic dot notion and storing their identity within them > (eg. name, class), limits how far that can go. it'd be ok in this case I guess, since it'd not be regularily be used, just in special cases where that extra magic of param munching is wanted. Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Wed Oct 25 09:08:27 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 25 Oct 2006 15:08:27 +0200 Subject: [Nitro] [PATCH] psql stuff In-Reply-To: References: Message-ID: On Wed, 25 Oct 2006 12:17:45 +0200, George Moschovitis wrote: > Thanks, > > let me check and apply this. >> All tests run through with mysql and postgresql (not tested with postgres-pr). Uh yeah, I think manveru and Fabian had problems with the -pr adapter and my compat fixes for it. Something with sql errors I think. This compat stuff is from an old manv repo where it worked very good (it had my sql-error patches in it). Please, everyone who has the -pr library to connect to postgresql, please test this and report errors. Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Wed Oct 25 09:33:33 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 25 Oct 2006 15:33:33 +0200 Subject: [Nitro] param handling In-Reply-To: References: <453D3941.20603@gmail.com> <453E231E.2010702@gmail.com> <453E3714.6070606@gmail.com> Message-ID: Hi, > Perhaps we could keep the current behaviour (the request.params hash > is populated) but if the method signature defines a hash last argument > like this: > > def my_action(oid, val, params = {}) > end > > this could be populated with the request parameters. > > what do you think? How would you accomplish that with ruby while not using ParseTree to check for the exact type of the last argument? def my_action(oid, val, params = {}) end ann :my_action, :param_populate => true Or something similar might work? But I see no real advantage of using `params` instead of `request.params` ... (Or request['param'] for that matter.) Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Wed Oct 25 09:40:29 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 25 Oct 2006 15:40:29 +0200 Subject: [Nitro] param handling In-Reply-To: References: <20061024090916.2e135f1a@localhost> Message-ID: Hi, > Something like this is needed. Something to add in 0.41.0? I would propose to move this one back further, 0.42 0.40 Oct 31 - make tests pass - make postgres adapter run - make examples run - introduce new system part / get rid of old scaffolding. - introduce more patches from manveru's repository. - cleanup code - update docs - remove prototype javascript helpers 0.41 Nov 31 - make compatible with latest facets (esp. the new annotation system) - make new deployment scripts (based on the new reap implementation) - Move nitro/glue to nitro/mixin and nitro/util - Move og/glue to og/mixin and og/util - better testing sqlite - rework evolution a little to not warn for missing classes when using STI 0.42 2007 - implement error redirection (different errors/error codes -> custom error pages) - Move further 'glue' stuff to og and nitro to work towards removing glue alltogether George, are we on track for 0.40? Only thing left is a little testing with postgres-pr for postgres. How is the other stuff coming along? Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Wed Oct 25 09:42:48 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 25 Oct 2006 15:42:48 +0200 Subject: [Nitro] [PATCH] Fix an exploitable bug in CGI multipart parsing In-Reply-To: <200610251741.44867.manveru@weez-int.com> References: <200610251741.44867.manveru@weez-int.com> Message-ID: On Wed, 25 Oct 2006 10:41:44 +0200, Michael Fellinger wrote: > patch attached, it's still warm :) > please apply ASAP (also you guys who use 0.31, please patch) > > This fully closes a previously-reported but partially-fixed vulnerability: > http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-0983 > http://www.securityfocus.com/bid/11618/info > > thanks to zedas who informed us :) > > ^ manveru > Ah, very nice, thanks manv, zedas. Good that I run on fcgi ;) Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From transfire at gmail.com Wed Oct 25 11:51:06 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Wed, 25 Oct 2006 15:51:06 -0000 Subject: [Nitro] param handling In-Reply-To: References: <20061024090916.2e135f1a@localhost> Message-ID: <1161791466.647774.36510@h48g2000cwc.googlegroups.com> Jonathan Buch wrote: > Hi, > > > Something like this is needed. Something to add in 0.41.0? > > I would propose to move this one back further, 0.42 > > 0.40 Oct 31 > > - make tests pass > - make postgres adapter run > - make examples run > - introduce new system part / get rid of old scaffolding. > - introduce more patches from manveru's repository. > - cleanup code > - update docs > - remove prototype javascript helpers This will be ready in six days? From lasso at lassoweb.se Wed Oct 25 13:55:04 2006 From: lasso at lassoweb.se (Lars Olsson) Date: Wed, 25 Oct 2006 19:55:04 +0200 Subject: [Nitro] Accessing a database column with two different names Message-ID: <453FA4F8.7@lassoweb.se> Hi list! Consider the following simple db schema: class StorageFile property :filename, String property :realname, String property :content_type, String has_one :owner, StorageUser has_many :viewers, StorageUser validate_unique :filename end class StorageUser property :username, String property :password, String property :realname, String property :email, String end When I tried finding all files belonging to I got an error: @myfiles = StorageFile.find do |file| file.owner == some_storageuser.oid end as the column 'owner' doesn't exist. I then checked SQLite for the table definition: sqlite> .schema ogstoragefile CREATE TABLE ogstoragefile (filename text, owner_oid integer, oid integer PRIMARY KEY, content_type text, realname text); which claims I should be accessing the owner with the 'owner_oid' name. I find this quite unintuitive. If I use 'owner' when I create an object I expect to be able to reuse that name when extracting information from the very same object. Is this a bug or by design? Sincerely /lasso -- ________________________________________ Lars Olsson lasso at lassoweb.se http://www.lassoweb.se/ From john at oxyliquit.de Wed Oct 25 17:36:19 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 25 Oct 2006 23:36:19 +0200 Subject: [Nitro] param handling In-Reply-To: <1161791466.647774.36510@h48g2000cwc.googlegroups.com> References: <20061024090916.2e135f1a@localhost> <1161791466.647774.36510@h48g2000cwc.googlegroups.com> Message-ID: Hi, >> 0.40 Oct 31 >> >> - make tests pass >> - make postgres adapter run >> - make examples run >> - introduce new system part / get rid of old scaffolding. >> - introduce more patches from manveru's repository. >> - cleanup code >> - update docs >> - remove prototype javascript helpers > > This will be ready in six days? I hope so? ;) /me pokes George Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From vikingtux at gmail.com Wed Oct 25 17:47:58 2006 From: vikingtux at gmail.com (Alexandre Gravem) Date: Wed, 25 Oct 2006 19:47:58 -0200 Subject: [Nitro] Accessing a database column with two different names In-Reply-To: <453FA4F8.7@lassoweb.se> References: <453FA4F8.7@lassoweb.se> Message-ID: <40b05ebe0610251447l3da651d5m15d44561c1ff4771@mail.gmail.com> > > @myfiles = StorageFile.find do |file| > file.owner == some_storageuser.oid > end > I think you should use file.owner == some_storageuser or file.owner_oid == some_storageuser.oid ... but it's odd to compare an object (owner) with a field (oid). -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061025/fcc9b3bb/attachment.html From john at oxyliquit.de Wed Oct 25 17:48:12 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Wed, 25 Oct 2006 23:48:12 +0200 Subject: [Nitro] Accessing a database column with two different names In-Reply-To: <453FA4F8.7@lassoweb.se> References: <453FA4F8.7@lassoweb.se> Message-ID: Hi, > class StorageFile > > property :filename, String > property :realname, String > property :content_type, String > has_one :owner, StorageUser > has_many :viewers, StorageUser > > validate_unique :filename > > end > > class StorageUser > > property :username, String > property :password, String > property :realname, String > property :email, String has_many :owned_files, StorageFile > > end Look at the change here, I refer to that one later. > When I tried finding all files belonging to I got an error: > > @myfiles = StorageFile.find do |file| > file.owner == some_storageuser.oid > end > > as the column 'owner' doesn't exist. > > I then checked SQLite for the table definition: > > sqlite> .schema ogstoragefile > CREATE TABLE ogstoragefile (filename text, owner_oid integer, oid > integer PRIMARY KEY, content_type text, realname text); > > which claims I should be accessing the owner with the 'owner_oid' name. > I find this quite unintuitive. If I use 'owner' when I create an object > I expect to be able to reuse that name when extracting information from > the very same object. Is this a bug or by design? This is by design. When you extend the model like I did above, you can do this: @myfiles = some_storeageuser.owned_files Looks better (, avoids calling Ez) and is much more convenient. But using your query example: You're comparing apples with oranges (oid (an integer, 'oid') with a model (an object, 'owner')). So using `file.owner_oid == some_storageuser.oid` makes imo more sense. Or even `file.owner == some_storeageuser`. That said, I know nothing about Ez and how it creates SQL statements, I tend to avoid it. Hope that helps, Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From riku.raisanen at walkingwoods.com Wed Oct 25 17:57:11 2006 From: riku.raisanen at walkingwoods.com (=?ISO-8859-1?Q?Riku_R=E4is=E4nen?=) Date: Thu, 26 Oct 2006 00:57:11 +0300 Subject: [Nitro] Accessing a database column with two different names In-Reply-To: References: Message-ID: <453FDDB7.1070001@walkingwoods.com> It is by design if you try to access it through accessors. further more, you're trying to compare a serialized ruby object with a fixnum. try: @myfiles = StorageFile.find do |file| file.owner == some_storageuser end btw feeding the .find a block makes it use eZ for building the query. I'm not quite sure how it handles ruby objects. You might want to add .oid to both, not just one of them. -Riku R?is?nen -------------- next part -------------- A non-text attachment was scrubbed... Name: riku.raisanen.vcf Type: text/x-vcard Size: 353 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061026/beff17e1/attachment.vcf From Reid.Thompson at ateb.com Thu Oct 26 04:30:49 2006 From: Reid.Thompson at ateb.com (Reid Thompson) Date: Thu, 26 Oct 2006 04:30:49 -0400 Subject: [Nitro] question about postgresql.rb && last_insert_id and insert_sql In-Reply-To: References: <453D605D.9090004@ateb.com> <20061024080424.GA19713@oxyliquit.de> <453ED5D7.5040604@ateb.com> Message-ID: <45407239.8050000@ateb.com> Jonathan Buch wrote: > Hi, > > >>> The problem is, that the frontend (Og) has to know the oid which has >>> been inserted. >>> >>> >> Why does the frontend need to know which oid has been inserted? >> When I think of an activity that requires insertion ( the creation of a >> new record in the DB ), I think in terms that all actions that need to >> be performed on the object are performed prior to .create .save, etc. >> I.E. at the point that I insert into the DB, that is the last action I >> expect to take on that object. If I need to alter the record after it's >> created, then I expect to have to query for it first. >> > > Lets use a simple example: > Lets use a more realistic example: > class OgModel > property :name, String, :unique => true > > has_many OgModel > end > > Now we create a instance and save it to the database with either of > those methods: > > m = OgModel.create_with(:name => 'George') > > m = OgModel.new > m.name = 'Stella' > m.save > > After that statement, we have an object called 'm'. When I now work on > this object (same object, not gotten anew from database): > 'Oops, I created that record with the wrong name' m = OgModel.find_by_name('Stella') > m.name = 'Takeo' > m.save > > What happens? The .save method needs to UPDATE the model we just CREATEd > and it can only do this, if it can exactly identify the model. > which it can > So we need to know at this point which oid (or any other primary key) the > model has. > > we do > So, .save is by far not the last action, it is merely the first step. > I contend that it should be the last step. Every column should be populated that you have information for before initiating the insert. Why make more than one DB call if you don't have to. If you don't have all the information that you need, then when the point comes that you have that information, you retrieve that record and update it. > But, taking your example that you use .save as the last, and querying > the database when you want to use the object further: > How (when you haven't got the primary key) do you know, that you get > exactly the object you want? > By using a realistic model in which a sequence generated integer oid is not the only means of identifying the column you want. Situations where the sequence oid is the only unique identifier on a table should be the abnormality -- for those cases perhaps a method that returns nextval() for that table's oid sequence should be provided. I.E. in what situation would a table such as this be used in a production app -- where name is not unique? class OgModel property :name, String has_many OgModel end Given this model, one could create 1*N up to N*N records with the name 'Stella', each with a different oid. When you come back later, how do you know which 'Stella' you want? > OgModel.create_with(:name => 'Chichi') > OgModel.find_with_oid(... what oid to use here?...) > OgModel.create_with(:name => 'Chichi') ( where name is unique ) OgModel.find_by_name('Chichi') or for those cases where you must... aoid = OgModel.oid_nextval OgModel.create_with(:name => 'Chichi', :oid => aoid) OgModel.find_with_oid(aoid) > Also, when working with relations, it would be mighty inconvenient to > not be able to work on the same object; maybe adding a few other related > objects to a has_many for example (which must know the primary key for > insertion in the related objects) to a just created OgModel instance. > As shown above, this would not be an issue. > But maybe I'm just getting you wrong somehow.. > Was my explanation right now enough to convince you that Og needs to know > the primary key before really inserting? If not, I will try to think of > another way to explain this. > I understand fine( and the current implementation is fine, I was just wondering if a different implementation may be more efficient for the majority of cases most of the time?). It just seems the reverse of the normal sequence of record generation/usage. If the majority of records that are inserted require an immediate update of that record, or some other immediate action requires the oid then it's two DB transactions regardless of the implementation. However, if the majority of records inserted do not require an immediate update and do not require an other immediate action using the oid -- then you've eliminated a DB transaction( not a good example, but => if you're bulk loading 300K records from a data file the current implementation will make 600K DB calls,...) Do the majority of Og record creations require an immediate update of the record or an immediate use of it's oid? If yes, then it's a moot point; if not, then altering the implementation may be much more efficient. > Jonathan > > From reid.thompson at ateb.com Thu Oct 26 00:59:45 2006 From: reid.thompson at ateb.com (Reid Thompson) Date: Thu, 26 Oct 2006 00:59:45 -0400 Subject: [Nitro] question about postgresql.rb && last_insert_id and insert_sql In-Reply-To: <45407239.8050000@ateb.com> References: <453D605D.9090004@ateb.com> <20061024080424.GA19713@oxyliquit.de> <453ED5D7.5040604@ateb.com> <45407239.8050000@ateb.com> Message-ID: <454040C1.7000604@ateb.com> Reid Thompson wrote: > Jonathan Buch wrote: > >> Hi, >> >> >> >>>> The problem is, that the frontend (Og) has to know the oid which has >>>> been inserted. >>>> >>>> >>>> >>> Why does the frontend need to know which oid has been inserted? >>> When I think of an activity that requires insertion ( the creation of a >>> new record in the DB ), I think in terms that all actions that need to >>> be performed on the object are performed prior to .create .save, etc. >>> I.E. at the point that I insert into the DB, that is the last action I >>> expect to take on that object. If I need to alter the record after it's >>> created, then I expect to have to query for it first. >>> >>> >> Lets use a simple example: >> >> > Lets use a more realistic example: > >> class OgModel >> >> > property :name, String, :unique => true > > >> >> has_many OgModel >> end >> >> Now we create a instance and save it to the database with either of >> those methods: >> >> m = OgModel.create_with(:name => 'George') >> >> m = OgModel.new >> m.name = 'Stella' >> m.save >> >> After that statement, we have an object called 'm'. When I now work on >> this object (same object, not gotten anew from database): >> >> > 'Oops, I created that record with the wrong name' > m = OgModel.find_by_name('Stella') > > >> m.name = 'Takeo' >> m.save >> >> What happens? The .save method needs to UPDATE the model we just CREATEd >> and it can only do this, if it can exactly identify the model. >> >> > which it can > >> So we need to know at this point which oid (or any other primary key) the >> model has. >> >> >> > we do > >> So, .save is by far not the last action, it is merely the first step. >> >> > I contend that it should be the last step. Every column should be populated > that you have information for before initiating the insert. Why make more > than one DB call if you don't have to. If you don't have > all the information that you need, then when the point comes that you have > that information, you retrieve that record and update it. > > >> But, taking your example that you use .save as the last, and querying >> the database when you want to use the object further: >> How (when you haven't got the primary key) do you know, that you get >> exactly the object you want? >> >> > By using a realistic model in which a sequence generated integer oid is > not the only means of identifying the column you want. Situations where the > sequence oid is the only unique identifier on a table should be the > abnormality -- for those cases perhaps a method that returns nextval() > for that table's oid sequence should be provided. > I.E. in what situation would a table such as this be used in a production app > -- where name is not unique? > class OgModel > property :name, String > has_many OgModel > end > Given this model, one could create 1*N up to N*N records with the name 'Stella', each with > a different oid. When you come back later, how do you know which 'Stella' you > want? > > >> OgModel.create_with(:name => 'Chichi') >> OgModel.find_with_oid(... what oid to use here?...) >> >> > OgModel.create_with(:name => 'Chichi') ( where name is unique ) > OgModel.find_by_name('Chichi') > > or for those cases where you must... > aoid = OgModel.oid_nextval > OgModel.create_with(:name => 'Chichi', :oid => aoid) > OgModel.find_with_oid(aoid) > actually, thinking about this,, what about a default param for create/save that turns on/off pre-fetches of the oid. So one could bypass the pre-fetch in those cases where the programmer knows that immediate re-use of the object or immediate use of the objects's oid is not going to occur???? > >> Also, when working with relations, it would be mighty inconvenient to >> not be able to work on the same object; maybe adding a few other related >> objects to a has_many for example (which must know the primary key for >> insertion in the related objects) to a just created OgModel instance. >> >> > As shown above, this would not be an issue. > >> But maybe I'm just getting you wrong somehow.. >> Was my explanation right now enough to convince you that Og needs to know >> the primary key before really inserting? If not, I will try to think of >> another way to explain this. >> >> > I understand fine( and the current implementation is fine, I was just > wondering if a different implementation may be more efficient for the > majority of cases most of the time?). It just seems the reverse of the > normal sequence of record generation/usage. If the majority of records > that are inserted require an immediate update of that record, or some > other immediate action requires the oid then it's two DB transactions > regardless of the implementation. However, if the majority of records > inserted do not require an immediate update and do not require an other > immediate action using the oid -- then you've eliminated a DB > transaction( not a good example, but => if you're bulk loading 300K > records from a data file the current implementation will make 600K DB > calls,...) Do the majority of Og record creations require an immediate > update of the record or an immediate use of it's oid? If yes, then it's > a moot point; if not, then altering the implementation may be much more > efficient. > > >> Jonathan >> >> >> > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > From fabian at fabian-buch.de Thu Oct 26 04:01:28 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Thu, 26 Oct 2006 10:01:28 +0200 Subject: [Nitro] IRC connection problems In-Reply-To: References: Message-ID: Am 25.10.2006 um 12:19 schrieb George Moschovitis: > I am using xchat-gnome on Ubuntu Edgy, and most of the time I cannot > connect to the IRC channel. Here is the error message: > > Auto-away plugin 0.4 loaded (using GNOME screensaver) > --- Looking up irc.freenode.net.. > Connecting to chat.freenode.net (82.96.64.4) port 6667.. > Connected. Now logging in.. > *** Looking up your hostname... > *** Checking ident > *** Couldn't look up your hostname > > The strange thing is that sometimes (perhaps once a day) I *do* > connect after this message is displayed. I cannot connect with Gaim > 2.0 either. > > Any ideass? Just a shot into the blue: identd not running properly? http://www.ircnet.com/forum/viewtopic.php? t=332&sid=afa315bfa0dd5f49facdca52d1695a28 Even though I would've guessed Ubuntu sets up all that stuff properly. Never really used it myself, but wasn't it very user-friendly? Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From george.moschovitis at gmail.com Thu Oct 26 07:14:05 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 26 Oct 2006 14:14:05 +0300 Subject: [Nitro] [PATCH] psql stuff In-Reply-To: References: Message-ID: Well, if you have more psql-pr related fixes, please email them my way ;-) -g. On 10/25/06, Jonathan Buch wrote: > On Wed, 25 Oct 2006 12:17:45 +0200, George Moschovitis wrote: > > > Thanks, > > > > let me check and apply this. > > >> All tests run through with mysql and postgresql (not tested with postgres-pr). > > Uh yeah, I think manveru and Fabian had problems with the -pr adapter and > my compat fixes for it. Something with sql errors I think. This compat stuff > is from an old manv repo where it worked very good (it had my sql-error patches > in it). > > Please, everyone who has the -pr library to connect to postgresql, please > test this and report errors. > > Jonathan > > -- > Feel the love > http://pinkjuice.com/pics/ruby.png > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Thu Oct 26 07:15:33 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 26 Oct 2006 14:15:33 +0300 Subject: [Nitro] [PATCH] Fix an exploitable bug in CGI multipart parsing In-Reply-To: <200610251741.44867.manveru@weez-int.com> References: <200610251741.44867.manveru@weez-int.com> Message-ID: vulnerability? hmm let me check diz ;-) -g. On 10/25/06, Michael Fellinger wrote: > patch attached, it's still warm :) > please apply ASAP (also you guys who use 0.31, please patch) > > This fully closes a previously-reported but partially-fixed vulnerability: > http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-0983 > http://www.securityfocus.com/bid/11618/info > > thanks to zedas who informed us :) > > ^ manveru > > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > > > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Thu Oct 26 07:24:32 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 26 Oct 2006 14:24:32 +0300 Subject: [Nitro] param handling In-Reply-To: <1161791466.647774.36510@h48g2000cwc.googlegroups.com> References: <20061024090916.2e135f1a@localhost> <1161791466.647774.36510@h48g2000cwc.googlegroups.com> Message-ID: > > - make tests pass - almost done? > > - make postgres adapter run - almost done? > > - make examples run - done > > - introduce new system part / get rid of old scaffolding. - done > > - introduce more patches from manveru's repository. - i think this is done? > > - cleanup code - more or less done for the next version, more cleanup in future versions. > > - update docs - will do, mainly the doc/RELEASES file. > > - remove prototype javascript helpers I will not remove them for 0.40.0 > This will be ready in six days? Lets try. The only real problem are the build scripts. I cannot install the latest reap, because it needs the latest facets. I am wondering if you have time the next week to work with me on the new annotation and making the latest facets/reap work with nitro. We could postpone the release a few more days to make this work. What do you think? -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Thu Oct 26 07:27:08 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 26 Oct 2006 14:27:08 +0300 Subject: [Nitro] IRC connection problems In-Reply-To: References: Message-ID: i installed gidentd, still doesnt work... very strange, btw wtf is identd? any other unix-guru has any idea? -g. On 10/26/06, Fabian Buch wrote: > > Am 25.10.2006 um 12:19 schrieb George Moschovitis: > > I am using xchat-gnome on Ubuntu Edgy, and most of the time I cannot > > connect to the IRC channel. Here is the error message: > > > > Auto-away plugin 0.4 loaded (using GNOME screensaver) > > --- Looking up irc.freenode.net.. > > Connecting to chat.freenode.net (82.96.64.4) port 6667.. > > Connected. Now logging in.. > > *** Looking up your hostname... > > *** Checking ident > > *** Couldn't look up your hostname > > > > The strange thing is that sometimes (perhaps once a day) I *do* > > connect after this message is displayed. I cannot connect with Gaim > > 2.0 either. > > > > Any ideass? > > Just a shot into the blue: identd not running properly? > > http://www.ircnet.com/forum/viewtopic.php? > t=332&sid=afa315bfa0dd5f49facdca52d1695a28 > > Even though I would've guessed Ubuntu sets up all that stuff > properly. Never really used it myself, but wasn't it very user-friendly? > > Fabian > > > > -- > Nitro Q&A: http://oxyliquit.de/ > Blog: http://blog.fabian-buch.de > > > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From al-nitrogen at none.at Thu Oct 26 08:44:06 2006 From: al-nitrogen at none.at (Aleksandar Lazic) Date: Thu, 26 Oct 2006 14:44:06 +0200 Subject: [Nitro] IRC connection problems In-Reply-To: References: Message-ID: <20061026124406.GA16668@none.at> On Don 26.10.2006 14:27, George Moschovitis wrote: >i installed gidentd, still doesnt work... >very strange, btw wtf is identd? Ident is the protocoll which try to identify a loggedin user: ftp://ftp.rfc-editor.org/in-notes/rfc1413.txt The proto is a little bit old, but still in use as many other protos ;-) >any other unix-guru has any idea? not really a guru but lets try ;-) >On 10/26/06, Fabian Buch wrote: >> >> Am 25.10.2006 um 12:19 schrieb George Moschovitis: >> > I am using xchat-gnome on Ubuntu Edgy, and most of the time I cannot >> > connect to the IRC channel. Here is the error message: >> > >> > Auto-away plugin 0.4 loaded (using GNOME screensaver) >> > Connecting to chat.freenode.net (82.96.64.4) port 6667.. >> > Connected. Now logging in.. >> > *** Looking up your hostname... >> > *** Checking ident >> > *** Couldn't look up your hostname Looks like there isn't a reverse entry for your ip address. what do you get on: host $YOUR_EXTERNAL_IP >> > The strange thing is that sometimes (perhaps once a day) I *do* >> > connect after this message is displayed. I cannot connect with Gaim >> > 2.0 either. >> > >> > Any ideass? >> >> Just a shot into the blue: identd not running properly? Regards Aleks From aglarond at gmail.com Thu Oct 26 09:02:59 2006 From: aglarond at gmail.com (Dimitri Aivaliotis) Date: Thu, 26 Oct 2006 15:02:59 +0200 Subject: [Nitro] IRC connection problems In-Reply-To: References: Message-ID: <55c107bf0610260602i58f8009et8ce9b1eb39ba1690@mail.gmail.com> On 10/26/06, George Moschovitis wrote: > > i installed gidentd, still doesnt work... > very strange, btw wtf is identd? > identd is an 'identity server' - it's a holdback from the innocent days of the internet when everybody trusted everybody else. Each server would host an 'identd' to identify users on the system. See http://en.wikipedia.org/wiki/Identd for more details. It's not strictly necessary to run an identd in order to connect to freenode. I'm connected without one. But I also have both a forward and reverse DNS entry for my host, so maybe that plays a role. Here's a typical connect log for me: 07:14 !irc.freenode.net *** Looking up your hostname... 07:14 !irc.freenode.net *** Checking ident 07:14 !irc.freenode.net *** Found your hostname 07:14 !irc.freenode.net *** No identd (auth) response If you're still having trouble connecting, try a different server. - Dimitri -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061026/6d820066/attachment.html From george.moschovitis at gmail.com Thu Oct 26 10:52:31 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 26 Oct 2006 17:52:31 +0300 Subject: [Nitro] IRC connection problems In-Reply-To: <20061026124406.GA16668@none.at> References: <20061026124406.GA16668@none.at> Message-ID: > > Looks like there isn't a reverse entry for your ip address. > > what do you get on: > > host $YOUR_EXTERNAL_IP I am on a dynamic ADSL conection, no static ip. -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Thu Oct 26 11:14:01 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Thu, 26 Oct 2006 18:14:01 +0300 Subject: [Nitro] Accessing a database column with two different names In-Reply-To: <453FA4F8.7@lassoweb.se> References: <453FA4F8.7@lassoweb.se> Message-ID: This shold be like this: class StorageFile attr_accessor :filename, String attr_accessor :realname, String attr_accessor :content_type, String belongs_to :owner, StorageUser has_many :viewers, StorageUser validate_unique :filename end class StorageUser attr_accessor :username, String attr_accessor :password, String attr_accessor :realname, String attr_accessor :email, String has_many :files, StorageFile end then: user = User['myusername'] user_files = user.files thats all ;-) -g. PS: If you are using an older version of Og replace attr_accessor with property and User['name'] with User.find_by_name('name') On 10/25/06, Lars Olsson wrote: > Hi list! > > Consider the following simple db schema: > > class StorageFile > > property :filename, String > property :realname, String > property :content_type, String > has_one :owner, StorageUser > has_many :viewers, StorageUser > > validate_unique :filename > > end > > class StorageUser > > property :username, String > property :password, String > property :realname, String > property :email, String > > end > > > When I tried finding all files belonging to I got an error: > > @myfiles = StorageFile.find do |file| > file.owner == some_storageuser.oid > end > > as the column 'owner' doesn't exist. > > I then checked SQLite for the table definition: > > sqlite> .schema ogstoragefile > CREATE TABLE ogstoragefile (filename text, owner_oid integer, oid > integer PRIMARY KEY, content_type text, realname text); > > which claims I should be accessing the owner with the 'owner_oid' name. > I find this quite unintuitive. If I use 'owner' when I create an object > I expect to be able to reuse that name when extracting information from > the very same object. Is this a bug or by design? > > > Sincerely > > > /lasso > > -- > ________________________________________ > Lars Olsson > lasso at lassoweb.se > http://www.lassoweb.se/ > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From al-nitrogen at none.at Thu Oct 26 13:21:13 2006 From: al-nitrogen at none.at (Aleksandar Lazic) Date: Thu, 26 Oct 2006 19:21:13 +0200 Subject: [Nitro] IRC connection problems In-Reply-To: References: <20061026124406.GA16668@none.at> Message-ID: <20061026172113.GF742@none.at> On Don 26.10.2006 17:52, George Moschovitis wrote: >> >> Looks like there isn't a reverse entry for your ip address. >> >> what do you get on: >> >> host $YOUR_EXTERNAL_IP > >I am on a dynamic ADSL conection, no static ip. Me too but your provider should have a reverse entry for his dynamic range. Here : host 85.124.175.248 248.175.124.85.in-addr.arpa domain name pointer \ 85-124-175-248.dynamic.xdsl-line.inode.at. Hth Aleks From lasso at lassoweb.se Thu Oct 26 14:36:06 2006 From: lasso at lassoweb.se (Lars Olsson) Date: Thu, 26 Oct 2006 20:36:06 +0200 Subject: [Nitro] Accessing a database column with two different names In-Reply-To: References: <453FA4F8.7@lassoweb.se> Message-ID: <45410016.6060107@lassoweb.se> Thanks George (and everybody else)! Maybe I'm stupid, but with your suggested model I still get some strange behaviour: sqlite> .schema ogstoragefile CREATE TABLE ogstoragefile (filename text, realname text, content_type text, owner_oid integer, oid integer PRIMARY KEY); Ok... sqlite> .schema ogstorageuser CREATE TABLE ogstorageuser (username text, password text, realname text, email text, storage_file_oid integer, oid integer PRIMARY KEY); Now, please explain the function of the field 'storage_file_oid' in this table to me. Sincerely /lasso ________________________________________ Lars Olsson lasso at lassoweb.nu http://www.lassoweb.nu/ George Moschovitis skrev: > This shold be like this: > > > class StorageFile > attr_accessor :filename, String > attr_accessor :realname, String > attr_accessor :content_type, String > belongs_to :owner, StorageUser > has_many :viewers, StorageUser > > validate_unique :filename > end > > > class StorageUser > attr_accessor :username, String > attr_accessor :password, String > attr_accessor :realname, String > attr_accessor :email, String > > has_many :files, StorageFile > end > > then: > > user = User['myusername'] > user_files = user.files > > thats all ;-) > > -g. > > > PS: If you are using an older version of Og replace attr_accessor with > property and User['name'] with User.find_by_name('name') > > > > > > > On 10/25/06, Lars Olsson wrote: >> Hi list! >> >> Consider the following simple db schema: >> >> class StorageFile >> >> property :filename, String >> property :realname, String >> property :content_type, String >> has_one :owner, StorageUser >> has_many :viewers, StorageUser >> >> validate_unique :filename >> >> end >> >> class StorageUser >> >> property :username, String >> property :password, String >> property :realname, String >> property :email, String >> >> end >> >> >> When I tried finding all files belonging to I got an error: >> >> @myfiles = StorageFile.find do |file| >> file.owner == some_storageuser.oid >> end >> >> as the column 'owner' doesn't exist. >> >> I then checked SQLite for the table definition: >> >> sqlite> .schema ogstoragefile >> CREATE TABLE ogstoragefile (filename text, owner_oid integer, oid >> integer PRIMARY KEY, content_type text, realname text); >> >> which claims I should be accessing the owner with the 'owner_oid' name. >> I find this quite unintuitive. If I use 'owner' when I create an object >> I expect to be able to reuse that name when extracting information from >> the very same object. Is this a bug or by design? >> >> >> Sincerely >> >> >> /lasso >> >> -- >> ________________________________________ >> Lars Olsson >> lasso at lassoweb.se >> http://www.lassoweb.se/ >> _______________________________________________ >> Nitro-general mailing list >> Nitro-general at rubyforge.org >> http://rubyforge.org/mailman/listinfo/nitro-general >> > > -- ________________________________________ Lars Olsson lasso at lassoweb.se http://www.lassoweb.se/ From john at oxyliquit.de Thu Oct 26 15:18:44 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Thu, 26 Oct 2006 21:18:44 +0200 Subject: [Nitro] [PATCH] psql stuff In-Reply-To: References: Message-ID: Hi, >>> All tests run through with mysql and postgresql (not tested with postgres-pr). > > Uh yeah, I think manveru and Fabian had problems with the -pr adapter and > my compat fixes for it. Something with sql errors I think. This compat stuff > is from an old manv repo where it worked very good (it had my sql-error patches > in it). > > Please, everyone who has the -pr library to connect to postgresql, please > test this and report errors. yeh... well... My brother tested this and apparently -pr is completely unusable. :P What are we gonna do? George, when you remove the compat patch, -pr works at least partly... (the second part of the patch is at fault (well.. not really), the first part about server_version is good) The problems -pr has are very similar to the ones of sqlite... Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From fabian at fabian-buch.de Thu Oct 26 17:31:20 2006 From: fabian at fabian-buch.de (Fabian Buch) Date: Thu, 26 Oct 2006 23:31:20 +0200 Subject: [Nitro] nitro command vs run.rb Message-ID: Don't want to debate on whether either of them is better, there are and will be uses for both (actually I prefer run.rb for various reasons). But I just found a problem with running nitro directly via run.rb instead of via the nitro command: I have the following in my run.rb: Configuration.load Og.start Nitro.start So running "ruby run.rb --live" first loads conf/WHAT? It loads conf/ debug.rb not conf/live.rb and that's because --live is parsed in Nitro.start and Configuration.load knows nothing about it. Nitro is started in live mode, but debug configuration is loaded. That wouldn't be a problem if the Runner would load live conf later, but that's commented in runner.rb # load_external_configuration(:live) George, I want that uncommented again and don't tell me to use the "nitro" command. I don't want to. Is it somehow possible to get "ruby run.rb --live" back? Worked nicely in the past. Fabian -- Nitro Q&A: http://oxyliquit.de/ Blog: http://blog.fabian-buch.de From vikingtux at gmail.com Thu Oct 26 17:54:25 2006 From: vikingtux at gmail.com (Alexandre Gravem) Date: Thu, 26 Oct 2006 18:54:25 -0300 Subject: [Nitro] Accessing a database column with two different names In-Reply-To: <45410016.6060107@lassoweb.se> References: <453FA4F8.7@lassoweb.se> <45410016.6060107@lassoweb.se> Message-ID: <40b05ebe0610261454teb3aeadyedad8cb91fca263a@mail.gmail.com> It may be because StorageFile has many StorageUser, as viewers: class StorageFile attr_accessor :filename, String attr_accessor :realname, String attr_accessor :content_type, String belongs_to :owner, StorageUser has_many :viewers, StorageUser validate_unique :filename end On 10/26/06, Lars Olsson wrote: > > Thanks George (and everybody else)! > > Maybe I'm stupid, but with your suggested model I still get some strange > behaviour: > > sqlite> .schema ogstoragefile > CREATE TABLE ogstoragefile (filename text, realname text, content_type > text, owner_oid integer, oid integer PRIMARY KEY); > > Ok... > > sqlite> .schema ogstorageuser > CREATE TABLE ogstorageuser (username text, password text, realname text, > email text, storage_file_oid integer, oid integer PRIMARY KEY); > > Now, please explain the function of the field 'storage_file_oid' in this > table to me. > > Sincerely > > /lasso > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/nitro-general/attachments/20061026/91e5e54f/attachment.html From george.moschovitis at gmail.com Fri Oct 27 06:05:11 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Fri, 27 Oct 2006 13:05:11 +0300 Subject: [Nitro] [PATCH] psql stuff In-Reply-To: References: Message-ID: For the moment, can you send me the stuff that removes the -pr compat code? -g. On 10/26/06, Jonathan Buch wrote: > Hi, > > >>> All tests run through with mysql and postgresql (not tested with postgres-pr). > > > > Uh yeah, I think manveru and Fabian had problems with the -pr adapter and > > my compat fixes for it. Something with sql errors I think. This compat stuff > > is from an old manv repo where it worked very good (it had my sql-error patches > > in it). > > > > Please, everyone who has the -pr library to connect to postgresql, please > > test this and report errors. > > yeh... well... My brother tested this and apparently -pr is completely > unusable. :P > What are we gonna do? > > George, when you remove the compat patch, -pr works at least partly... > (the second part of the patch is at fault (well.. not really), the first > part about server_version is good) > > The problems -pr has are very similar to the ones of sqlite... > > Jo > > -- > Feel the love > http://pinkjuice.com/pics/ruby.png > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Fri Oct 27 06:06:12 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Fri, 27 Oct 2006 13:06:12 +0300 Subject: [Nitro] nitro command vs run.rb In-Reply-To: References: Message-ID: Ok, Fab will fix this. -g. On 10/27/06, Fabian Buch wrote: > Don't want to debate on whether either of them is better, there are > and will be uses for both (actually I prefer run.rb for various > reasons). But I just found a problem with running nitro directly via > run.rb instead of via the nitro command: > > I have the following in my run.rb: > > Configuration.load > Og.start > Nitro.start > > So running "ruby run.rb --live" first loads conf/WHAT? It loads conf/ > debug.rb not conf/live.rb and that's because --live is parsed in > Nitro.start and Configuration.load knows nothing about it. Nitro is > started in live mode, but debug configuration is loaded. > > That wouldn't be a problem if the Runner would load live conf later, > but that's commented in runner.rb > > # load_external_configuration(:live) > > George, I want that uncommented again and don't tell me to use the > "nitro" command. I don't want to. Is it somehow possible to get "ruby > run.rb --live" back? Worked nicely in the past. > > Fabian > > > -- > Nitro Q&A: http://oxyliquit.de/ > Blog: http://blog.fabian-buch.de > > > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From john at oxyliquit.de Fri Oct 27 09:06:18 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Fri, 27 Oct 2006 15:06:18 +0200 Subject: [Nitro] [PATCH] sqlite/postgres-pr fixes Message-ID: Hi, tcs should run through now, all fixed (not completely sure about sqlite, but -pr works flawless) Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png -------------- next part -------------- A non-text attachment was scrubbed... Name: prsqlitechanges.patch.tar.bz2 Type: application/bzip2 Size: 12914 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061027/c759bd31/attachment-0001.bin From john at oxyliquit.de Fri Oct 27 09:36:36 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Fri, 27 Oct 2006 15:36:36 +0200 Subject: [Nitro] Param stuff (yes, I'm sorry ^^;) Message-ID: Hi, sorry to bother you all again, but George: params is even more broken than before :) `def action(par = nil)` can't be called :P (Found that out by testing, Oxy, haven't checked any other testcase than the one below.) Loaded suite /Volumes/Data/build/cvs/nitro/nitro-0.40-own/nitro/test/nitro/tc_controller_params Started DEBUG: Compiling action 'TC_ControllerParams::TestController#m1_2' DEBUG: Rendering '/m1_2/One'. F Finished in 0.244347 seconds. 1) Failure: test_m1(TC_ControllerParams) method assert_request_good in tc_controller_params.rb at line 205 method test_m1 in tc_controller_params.rb at line 483 method test_m1 in tc_controller_params.rb at line 482 <"/m1_2/One"> returned error. Result: "{:action=>:m1_2, :klass=>TC_ControllerParams::TestController, :params=>{}, :arguments=>[nil, nil], :method=>:get}" Instead of: {:action=>:m1_2, :params=>{}, :arguments=>["One", nil]} 1 tests, 2 assertions, 1 failures, 0 errors where m1_2: def m1_2(arg1 = nil, arg2 = nil) return_results arg1, arg2 end So, the 'One' argument doesn't get put into 'arg1'. I'm really sorry, but could you either revert back to the original partial broken param handling or test with my testcase properly without randomly commenting valid testcases (which are not touching the two issues I raised in my last post about params)? ^^; With `def action(par = nil)` broken we can't release on the 31st. ^^; Thank you for your attention, Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Fri Oct 27 09:38:57 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Fri, 27 Oct 2006 15:38:57 +0200 Subject: [Nitro] [PATCH] psql stuff In-Reply-To: References: Message-ID: <20061027133857.GA23764@oxyliquit.de> Hi, > For the moment, can you send me the stuff that removes the -pr compat code? ah, no need, I was lucky and found the cause, see [PATCH] below :D Jo From john at oxyliquit.de Fri Oct 27 10:16:01 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Fri, 27 Oct 2006 16:16:01 +0200 Subject: [Nitro] param handling In-Reply-To: <20061024090916.2e135f1a@localhost> References: <20061024090916.2e135f1a@localhost> Message-ID: Hi, >> def action(par1, par2) >> GET /action >> { :arguments => [nil, nil], :params => {} } >> return error >> * The first can also be created by normal Ruby means: >> `def action(par1 = nil, par2 = nil)` > I would vote for the first possibility here because if it happens that > an action is called without the required parameters, the developer could > respond with an error message that exactly fits the error. The second > possibility would just return a general "too few arguments" error. thought a little more about what you said here. That general "too few arguments" error would only appear with `def action(par1, par2)` and not with `def action(par1 = nil, par2 = nil)`. IMHO the first says: This function does not handle the case where both parameters are missing. The second says: just push me whatever, I'll handle it. For custom error handling, the second would be used, the first will just throw an error. Am I just thinking too much here? Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From george.moschovitis at gmail.com Fri Oct 27 15:52:48 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Fri, 27 Oct 2006 22:52:48 +0300 Subject: [Nitro] [PATCH] sqlite/postgres-pr fixes In-Reply-To: References: Message-ID: Ok thanks, will check and apply over the w/e. -g. On 10/27/06, Jonathan Buch wrote: > Hi, > > tcs should run through now, all fixed (not completely sure about > sqlite, but -pr works flawless) > > Jonathan > > -- > Feel the love > http://pinkjuice.com/pics/ruby.png > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > > > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Fri Oct 27 15:56:29 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Fri, 27 Oct 2006 22:56:29 +0300 Subject: [Nitro] Param stuff (yes, I'm sorry ^^;) In-Reply-To: References: Message-ID: > I'm really sorry, but could you either revert back to the original partial > broken param handling or test with my testcase properly without randomly > commenting valid testcases (which are not touching the two issues I raised > in my last post about params)? ^^; > With `def action(par = nil)` broken we can't release on the 31st. ^^; I havent randomly remarked your tests. I just haven worked on this issue yet. It is in my immediate todo list. Btw, if you can make a patch of your implementation against the current repo, it would be really helpful. Just this single patch, it is too difficult to understand your changes in that biiiig bundle you have sent me some time ago. thanks in advance and sorry for the inconvienience, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Sat Oct 28 08:48:59 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sat, 28 Oct 2006 15:48:59 +0300 Subject: [Nitro] nitro command vs run.rb In-Reply-To: References: Message-ID: Jonathan, > "nitro" command. I don't want to. Is it somehow possible to get "ruby > run.rb --live" back? Worked nicely in the past. It did *not* work nicely. A typical run.rb would go like this: require 'nitro' ... require 'stuf' ... Nitro.start because the configuration mode was decided after 'stuff' was required there was no way to easily configure stuff. Moreover, Og was typically initialized before the configuration mode was decided too. Uncommenting that line seems like a hack, can we find a better solution? Btw, please notice that the prefered way to set the configuration mode is to set an environment variable: $ export CONFIGURATION_MODE=debug The nice bonus is that you can have a different setting on your debug machine and a different on your live server. Then you just rsync and give ruby run.rb and everything works as it should. You could also try: $ CONFIGURATION_MODE=live; ruby run.rb But in any case, thanks for mentioning this, I will try to find a solution. Of course if you have another proposal let me know. regards, George. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Sat Oct 28 08:51:39 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sat, 28 Oct 2006 15:51:39 +0300 Subject: [Nitro] Making nitro work with latest facets. Message-ID: Dear devs, I will use a shortcut to make nitro work with tha latest facets. I will copy the 1.4.3 annotation.rb / annattr.rb files into glue and use them instead of the new versions in facets. This will allow us to release a version compatible with the latest facets and without spending much time to convert our codebase. As an added bonus, we will have more time to cooperate with Tom on a better implementation. Any comments? George. -- http://www.gmosx.com http://www.nitroproject.org From john at oxyliquit.de Sat Oct 28 10:01:52 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Sat, 28 Oct 2006 16:01:52 +0200 Subject: [Nitro] Param stuff (yes, I'm sorry ^^;) In-Reply-To: References: Message-ID: Hi, >> I'm really sorry, but could you either revert back to the original partial >> broken param handling or test with my testcase properly without randomly >> commenting valid testcases (which are not touching the two issues I raised >> in my last post about params)? ^^; >> With `def action(par = nil)` broken we can't release on the 31st. ^^; > > I havent randomly remarked your tests. I just haven worked on this > issue yet. It is in my immediate todo list. Btw, if you can make a > patch of your implementation against the current repo, it would be > really helpful. Just this single patch, it is too difficult to > understand your changes in that biiiig bundle you have sent me some > time ago. > > thanks in advance and sorry for the inconvienience, yes, randomly was indeed the wrong word here. Attached are 2 patches which do what I was proposing (probably). This time it should even work with routes.. Sat Oct 28 15:21:40 CEST 2006 Jonathan Buch * Rework parameter handling Quite big change on how parameters are handled. * Use new context.action_params instead of .query_params to distinguish between GET params and the ones from nice urls. * When route is given merge the route parameters into the GET params, add route parameter values into .action_params. * Change Router#decode_route to use Dictionary instead of Hash (to preserve order, important for action arguments). * action raises `ActionError, "Wrong parameter count"` on wrong usage. * Uncommented testcases in tc_controller_params again * Added testcase for routes (TODO: need more of those) * Single line fix for tc_dispatcher, it still used NoActionError. Sat Oct 28 15:48:33 CEST 2006 Jonathan Buch * Bugfix for params and actions with arity 0 Since the same params are used for rendering included parts and the /error page, actions with arity 0 have to be treated differently. The current implementation is probably not as fast as it could be, but we can optimize this later I guess. I have to admit that I hate digging into this Nitro code... I feel much more at home with Og. ^^; Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png -------------- next part -------------- A non-text attachment was scrubbed... Name: params.patch.tar.bz2 Type: application/bzip2 Size: 13952 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061028/8b67a727/attachment-0001.bin From john at oxyliquit.de Sat Oct 28 10:06:27 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Sat, 28 Oct 2006 16:06:27 +0200 Subject: [Nitro] Making nitro work with latest facets. In-Reply-To: References: Message-ID: Hi, > I will use a shortcut to make nitro work with tha latest facets. I > will copy the 1.4.3 annotation.rb / annattr.rb files into glue and use > them instead of the new versions in facets. This will allow us to > release a version compatible with the latest facets and without > spending much time to convert our codebase. As an added bonus, we will > have more time to cooperate with Tom on a better implementation. > > Any comments? This sounds good. It even sounds so easy that it can go into 0.40. :D Welcome new facets! I just hope that the other stuff from facets is still the same... Be sure to test everything as good as possible. Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From george.moschovitis at gmail.com Sat Oct 28 10:31:10 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sat, 28 Oct 2006 17:31:10 +0300 Subject: [Nitro] Making nitro work with latest facets. In-Reply-To: References: Message-ID: I have a problem: /home/gmosx/code/public/glue/lib/glue/annotation.rb:124: uninitialized constant BasicObject (NameError) from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in `require' from /home/gmosx/code/public/glue/lib/glue/attribute.rb:12 Tom, which object replaces basic object? -g. On 10/28/06, Jonathan Buch wrote: > Hi, > > > I will use a shortcut to make nitro work with tha latest facets. I > > will copy the 1.4.3 annotation.rb / annattr.rb files into glue and use > > them instead of the new versions in facets. This will allow us to > > release a version compatible with the latest facets and without > > spending much time to convert our codebase. As an added bonus, we will > > have more time to cooperate with Tom on a better implementation. > > > > Any comments? > > This sounds good. It even sounds so easy that it can go into 0.40. :D > Welcome new facets! > I just hope that the other stuff from facets is still the same... Be > sure to test everything as good as possible. > > Jo > > -- > Feel the love > http://pinkjuice.com/pics/ruby.png > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Sat Oct 28 12:10:56 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Sat, 28 Oct 2006 16:10:56 -0000 Subject: [Nitro] Making nitro work with latest facets. In-Reply-To: References: Message-ID: <1162051856.265566.210410@h48g2000cwc.googlegroups.com> George Moschovitis wrote: > Dear devs, > > I will use a shortcut to make nitro work with tha latest facets. I > will copy the 1.4.3 annotation.rb / annattr.rb files into glue and use > them instead of the new versions in facets. This will allow us to > release a version compatible with the latest facets and without > spending much time to convert our codebase. As an added bonus, we will > have more time to cooperate with Tom on a better implementation. > > Any comments? Good idea! Although the new annotations is much simpler then the old one, I'm still not happy with it (and obviously it still has some issues). T. From transfire at gmail.com Sat Oct 28 13:13:08 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Sat, 28 Oct 2006 17:13:08 -0000 Subject: [Nitro] Making nitro work with latest facets. In-Reply-To: References: Message-ID: <1162055588.770164.131820@f16g2000cwb.googlegroups.com> George Moschovitis wrote: > I have a problem: > > /home/gmosx/code/public/glue/lib/glue/annotation.rb:124: uninitialized > constant BasicObject (NameError) > from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:27:in > `require' > from /home/gmosx/code/public/glue/lib/glue/attribute.rb:12 > > Tom, which object replaces basic object? Should still be there. Make sure it's getting required. T. From george.moschovitis at gmail.com Sun Oct 29 06:05:21 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 29 Oct 2006 13:05:21 +0200 Subject: [Nitro] Param stuff (yes, I'm sorry ^^;) In-Reply-To: References: Message-ID: Ok, thanks for this patch, I will have a look ASAP. -g. On 10/28/06, Jonathan Buch wrote: > Hi, > > >> I'm really sorry, but could you either revert back to the original partial > >> broken param handling or test with my testcase properly without randomly > >> commenting valid testcases (which are not touching the two issues I raised > >> in my last post about params)? ^^; > >> With `def action(par = nil)` broken we can't release on the 31st. ^^; > > > > I havent randomly remarked your tests. I just haven worked on this > > issue yet. It is in my immediate todo list. Btw, if you can make a > > patch of your implementation against the current repo, it would be > > really helpful. Just this single patch, it is too difficult to > > understand your changes in that biiiig bundle you have sent me some > > time ago. > > > > thanks in advance and sorry for the inconvienience, > > yes, randomly was indeed the wrong word here. > > Attached are 2 patches which do what I was proposing (probably). > This time it should even work with routes.. > > Sat Oct 28 15:21:40 CEST 2006 Jonathan Buch > * Rework parameter handling > Quite big change on how parameters are handled. > > * Use new context.action_params instead of .query_params to distinguish > between GET params and the ones from nice urls. > * When route is given merge the route parameters into the GET params, > add route parameter values into .action_params. > * Change Router#decode_route to use Dictionary instead of Hash (to > preserve order, important for action arguments). > * action raises `ActionError, "Wrong parameter count"` on wrong usage. > * Uncommented testcases in tc_controller_params again > * Added testcase for routes (TODO: need more of those) > * Single line fix for tc_dispatcher, it still used NoActionError. > > Sat Oct 28 15:48:33 CEST 2006 Jonathan Buch > * Bugfix for params and actions with arity 0 > Since the same params are used for rendering included parts and the > /error page, actions with arity 0 have to be treated differently. > > The current implementation is probably not as fast as it could be, but > we can optimize this later I guess. > I have to admit that I hate digging into this Nitro code... I feel much > more at home with Og. ^^; > > Jonathan > > -- > Feel the love > http://pinkjuice.com/pics/ruby.png > > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > > > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Sun Oct 29 06:06:25 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 29 Oct 2006 13:06:25 +0200 Subject: [Nitro] BasicObject In-Reply-To: <4b6f054f0610281035q692f0aaesbcae68027987356d@mail.gmail.com> References: <4b6f054f0610281035q692f0aaesbcae68027987356d@mail.gmail.com> Message-ID: Hmm, I cannot make nitro wrok with the latest facets... I run into random/strange errors all the time. This will have to wait a bit. -g. On 10/28/06, TRANS wrote: > George, > > Mailing list is either slow at the moment or Rubyforge is down again. > > Just wanted to tell you that BasicObject should still be there. Make > sure it's being required. It will be deprecated eventually though. The > new annotations system no longer uses it. > > T. > -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Sun Oct 29 06:08:03 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 29 Oct 2006 13:08:03 +0200 Subject: [Nitro] Making nitro work with latest facets. In-Reply-To: <1162051856.265566.210410@h48g2000cwc.googlegroups.com> References: <1162051856.265566.210410@h48g2000cwc.googlegroups.com> Message-ID: > Good idea! Good idea, but i still cannot make this work :( I have reverted to 1.4.3 again, perhaps someone else (jonathan/manv?) can try this. -g. -- http://www.gmosx.com http://www.nitroproject.org From transfire at gmail.com Sun Oct 29 06:37:51 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Sun, 29 Oct 2006 11:37:51 -0000 Subject: [Nitro] Serious discussion on Annotaitons - Part I Message-ID: <1162121871.247100.5130@e3g2000cwe.googlegroups.com> First of all here is the code for the annotations system in the latest Facets. If you compare it to the old version you'll see it's a lot less complex. Now appearently something doesn't work right in Nitro with it but as of yet no one has been able to give me one concrete error as to what is going wrong. Off the top of my head I know that some meta-information methods (like #inheritance) is no longer there so that would break things, or if one were trying to jerry things using inheritor which is no longer used. But in using it normally it should work, I have a bunch of test cases and they all work --so I really need to get some concerete idea about what the problem is so I can fix it. Thanks, T. (P.S. I'm going to follow this up with a discussion of annotations in general). # --- annotations.rb class Annotations def initialize( base ) @base, @ann = base, {} end def [](key) key = :self if key == @base @ann[key] ||= Annotation.new(@base, key) end def []=(key, note) raise ArgumentError unless Annotation === note @ann[key] = note end def ==(other) @ann == other.to_h end def to_h() @ann end def key?(key) @ann.key?(key) end def each(&yld) @ann.each(&yld) end def update( other ) @ann.update( other.to_h ) self end private :update def self self[:self] end def annotated_base() @base end def method_missing( key, *args, &blk ) if key?(key) self[key] #.heritage else if @base.ancestors.any?{|anc| anc.annotations.key?(key)} return self[key].heritage #ann[name].heritage end super end end end # class Annotation < OpenObject def initialize( base, key, orig=nil ) @base = base @key = key @orig = orig || self super() end def original @orig end #def class # self[:class] #end def inspect "#<#{object_class.name}(#{@base}##{@key}) #{super}>" end def annotation_key @key end def heritage( orig=nil ) ah = {} @base.ancestors.reverse_each do |anc| if anc.annotations.key?(@key) anc.annotations[@key].each { |k,v| case v when Module ah[k] = v else ah[k] = v.dup rescue v end } end end a = Annotation.new( @base, @key, orig || @orig ) a.send(:replace, ah) a end def method_missing( sym, *args, &blk ) type = sym.to_s[-1,1] key = sym.to_s.gsub(/[=!?]$/, '').to_sym case type when '=' @orig[key] = args[0] #, *args, &blk ) when '!' #r = super( key, *args, &blk ) if key?(key) self[key] else self[key] = heritage(self)[key] end else heritage[sym] end end end class Module def annotations @annotations ||= Annotations.new(self) end def ann( key=nil, *options ) return annotations unless key return name.collect{|k,v| ann k,*v} if Hash === key return annotations[key] if options.empty? opt = {} opt.update options.pop if Hash === options.last opt[:class] = options.pop if Class === options.last keys = [key].concat options keys.each do |key| note = annotations[key] #unless options.empty? # (hopt[:tags] ||= []) << options #end note.send(:update,opt) end keys end end module Kernel # Any object can be annotated. #-- # Not sure about this. #++ def ann( *args ) #if singleton_class? (class << self; self; end).ann( *args ) #else # self.class.ann( *args ) #end end end From transfire at gmail.com Sun Oct 29 07:24:27 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Sun, 29 Oct 2006 12:24:27 -0000 Subject: [Nitro] Serious discussion on Annotaitons - Part II Message-ID: <1162124667.089192.148110@e64g2000cwd.googlegroups.com> I direct you to ruby-talk:202245 in which Ara points out: i use method_missing too but, in this case, you'd have to provide an extremely strong argument why an interface like this won't suffice: harp:~ > cat a.rb class Module def ann meth, arg = nil @ann ||= {} if Hash === arg arg ? (@ann[meth] ||= {}).update(arg) : @ann[meth] else arg ? @ann[meth][arg] : @ann[meth] end end end class X ann :x, :class => String, :default => 10, :foo => :bar end X.ann :x, :class #=> String X.ann :x, :default #=> 10 X.ann :x, :foo #=> :bar X.ann :x #=> {:class => String, :default => 10, :foo => :baz} Now this implementatin leaves out some of the needed shortcuts (like implied class annotation) and it also leaves out the BIG issue of inheritance, but those can of course can be worked in. The main thing here is the simplicty of the interface. I realize it's a big change but I think Ara has a point. The simplicy, uniformity and consistancy has it's own merits over the elegance of the magic dot notation. Then main complexity and overheas arises with the addition of two new types of objects: an 'Annotation' an 'Annotations'. The other thing to discuss is the need for even one Annotation class to support class/name storage in the annotation itself. Ie. Should X.ann :x #=> {:class => String, :default => 10, :foo => :baz} be X.ann :x #=> # and maybe also X.ann :x, :class #=> # The later allows the name and class/module of annotation to be stored inside the annotation itself at the expense of an additional object. This can be helpful in some cases and other benefits may arise from having separate class(es), like a extra X.ann(:x).foo notation. But there are potential issues with this, and I fear the added complexity might in fact be causing the latest version of annotation.rb not to work right. The problem being that if we define an annotation in a module then it gets attacthed to that module and when using it in inheritance that might cause issues down the inheritance chain --athough I can't invsion what that might look like at this point, it may in fact be the problem with current Nitro. In anycase it runs a greater risk and complication in that regard, but much larger overhead since every annotation is a new object. So I don't know if it a good idea. And I suspect something isn't quite right if we need to ask an annotation what class it belongs to. In such cases I would suggest passing a Hash instead: C.ann a, n x = { :class => C, :note => a, :name => n } x[:class].ann(x[:note], x[:name]) Or make a Struct for the paricular case. Ann = Strunct.new(:class, :note, :name) x = Ann.new(C,a,n) x.class.ann(x.note, x.name) And for a quick return to the original argument, using the magic dot notation here leads to the last lines in the examples to be: x[:class].ann.send(x[:note]).send(x[:name]) and x.class.ann.send(x.note).send(x.name) T. From transfire at gmail.com Sun Oct 29 07:30:34 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Sun, 29 Oct 2006 12:30:34 -0000 Subject: [Nitro] Serious discussion on Annotations - Part I In-Reply-To: <1162121871.247100.5130@e3g2000cwe.googlegroups.com> References: <1162121871.247100.5130@e3g2000cwe.googlegroups.com> Message-ID: <1162125034.447485.163960@e3g2000cwe.googlegroups.com> Hehe. Mispelled the subject both times! I love copy and paste ;-) From george.moschovitis at gmail.com Sun Oct 29 07:45:22 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Sun, 29 Oct 2006 14:45:22 +0200 Subject: [Nitro] Serious discussion on Annotaitons - Part I In-Reply-To: <1162121871.247100.5130@e3g2000cwe.googlegroups.com> References: <1162121871.247100.5130@e3g2000cwe.googlegroups.com> Message-ID: > complex. Now appearently something doesn't work right in Nitro with it > but as of yet no one has been able to give me one concrete error as to > what is going wrong. Off the top of my head I know that some perhaps the problem is with something else in facets. nitro uses many more features from facets. As I said, this issue requires careful invstigation. I will find some time to devote into this over the following days. -g. -- http://www.gmosx.com http://www.nitroproject.org From zimba.tm at gmail.com Sun Oct 29 09:23:44 2006 From: zimba.tm at gmail.com (Jonas Pfenniger) Date: Sun, 29 Oct 2006 15:23:44 +0100 Subject: [Nitro] Serious discussion on Annotaitons - Part II In-Reply-To: <1162124667.089192.148110@e64g2000cwd.googlegroups.com> References: <1162124667.089192.148110@e64g2000cwd.googlegroups.com> Message-ID: <3ff63f9b0610290623t4eb88bf6w59245f4553028ea4@mail.gmail.com> Perhaps the real problem is that Annotation is just too generic. You can 't keep it simple and have all the features. Especially the inheritance. So what are the boundaries of the annotation system ? * inheritance ? * type-casting system ? * central storage ? * default settings ? * description ? What do you envision it beeing used for ? -- Cheers, zimbatm http://zimbatm.oree.ch From transfire at gmail.com Sun Oct 29 11:42:15 2006 From: transfire at gmail.com (transfire at gmail.com) Date: Sun, 29 Oct 2006 16:42:15 -0000 Subject: [Nitro] Serious discussion on Annotaitons - Part II In-Reply-To: <3ff63f9b0610290623t4eb88bf6w59245f4553028ea4@mail.gmail.com> References: <1162124667.089192.148110@e64g2000cwd.googlegroups.com> <3ff63f9b0610290623t4eb88bf6w59245f4553028ea4@mail.gmail.com> Message-ID: <1162140135.913068.106250@h48g2000cwc.googlegroups.com> Jonas Pfenniger wrote: > Perhaps the real problem is that Annotation is just too generic. You > can 't keep it simple and have all the features. Especially the > inheritance. So what are the boundaries of the annotation system ? > > * inheritance ? > * type-casting system ? > * central storage ? > * default settings ? > * description ? All of the above and more. Yes, it is very general. The intent is to be general, eg. a reusable/programmable notes system. Of course being as general as it is there is potential for anme clash, for instance if I define an annotation and you define one by the same name but for differnt uses. T. From manveru at weez-int.com Sun Oct 29 21:05:43 2006 From: manveru at weez-int.com (Michael Fellinger) Date: Mon, 30 Oct 2006 11:05:43 +0900 Subject: [Nitro] Making nitro work with latest facets. In-Reply-To: References: <1162051856.265566.210410@h48g2000cwc.googlegroups.com> Message-ID: <200610301105.43863.manveru@weez-int.com> On Sunday 29 October 2006 20:08, George Moschovitis wrote: > > Good idea! > > Good idea, but i still cannot make this work :( > > I have reverted to 1.4.3 again, perhaps someone else (jonathan/manv?) > can try this. I'll give it a try when i have some more time... busy season :) > > -g. From george.moschovitis at gmail.com Mon Oct 30 04:48:42 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 30 Oct 2006 11:48:42 +0200 Subject: [Nitro] Making nitro work with latest facets. In-Reply-To: <200610301105.43863.manveru@weez-int.com> References: <1162051856.265566.210410@h48g2000cwc.googlegroups.com> <200610301105.43863.manveru@weez-int.com> Message-ID: > I'll give it a try when i have some more time... busy season :) thanks, -g. -- http://www.gmosx.com http://www.nitroproject.org From george.moschovitis at gmail.com Mon Oct 30 04:55:14 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Mon, 30 Oct 2006 11:55:14 +0200 Subject: [Nitro] params Message-ID: Jonathan, I worked a bit with your patch. I have twor problems: - the code barks with non english (for example greek ;-)) params ;-) for example my_action/GREEK_PARAM does not get unescaped correctly. but I can find a solution for this. - I would like the current behaviour: def my_action(oid, val) end should handle bothP my_action/1/23 and my_action?oid=1;val=23 even though the params are not ordered as hash (though we can use a dictionary here) the query string is ordered and it makes the my_action implementation cleaner (ie i can use oid instead of request['oid']) moreover I really want to use my_action?oid=1;val=23 instead of the nice url. I only want to use niceurls in links. I want to use normal query strings in 'actions' and rest/programmatic request. can you somehow adapt your code to handle the second problem? Moreover, could you add a separation of get/post parameters? thanks, George. -- http://www.gmosx.com http://www.nitroproject.org From john at oxyliquit.de Mon Oct 30 09:36:30 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Mon, 30 Oct 2006 15:36:30 +0100 Subject: [Nitro] params In-Reply-To: References: Message-ID: Hi, > I worked a bit with your patch. I have two problems: Was to be expected. ;D > - the code barks with non english (for example greek ;-)) params ;-) > for example my_action/GREEK_PARAM does not get unescaped correctly. > but I can find a solution for this. Hmm.. I got no idea how to work with other languages, good that you do this. ;D > even though the params are not ordered as hash (though we can use a > dictionary here) the query string is ordered and it makes the > my_action implementation cleaner (ie i can use oid instead of > request['oid']) Reworked cgi.rb parameter parsing to use Dictionary. > moreover I really want to use my_action?oid=1;val=23 instead of the > nice url. I only want to use niceurls in links. I want to use normal > query strings in 'actions' and rest/programmatic request. > can you somehow adapt your code to handle the second problem? Configurable: Nitro::Compiler.setting :mixin_get_parameters, :default => false > Moreover, could you add a separation of get/post parameters? Lets do this next release, will add this to my todo list. As an extra: Nitro::Compiler.setting :non_strict_action_calling, :default => false This can be used to configure if `def my_action(oid, val)` should be treated as `def my_action(oid = nil, val = nil)`. I thought after all that disagreement that perhaps a setting is best. Just don't touch the default! ;D Oh right, and the testcases for these two new functions have to be increased, I only added 1 per setting. [Bounty] So, anyone here up for some testcase adding? It's quite easy work and can be done by someone new wanting to get a little into the Nitro code. Just add more tests and look how it gets handled and if it's correct what it does. (For example, try with more params, less params, incomplete params, mixed params/action-params, param mixing together with non-strict action calling. etc.) George, a little thought. How can we test for correctly unescaped paramets (any more places where this could go wrong?)? Would be great if you could add a little testcase somewhere appropriate. Have a nice day everyone. :) Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png -------------- next part -------------- A non-text attachment was scrubbed... Name: params2.patch.tar.bz2 Type: application/bzip2 Size: 14739 bytes Desc: not available Url : http://rubyforge.org/pipermail/nitro-general/attachments/20061030/3b388090/attachment-0001.bin From george.moschovitis at gmail.com Tue Oct 31 03:46:46 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 31 Oct 2006 10:46:46 +0200 Subject: [Nitro] Whitespace Message-ID: Dear devs, Nitro generates excessive whitespace (just view the source of a nitro generated page). I would like to compress some of this whitespace without impacting performance. I know two-three places where I can improve things but would like to hear your ideas on this issue. regards, George. -- http://www.gmosx.com http://www.nitroproject.org From john at oxyliquit.de Tue Oct 31 05:25:41 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 31 Oct 2006 11:25:41 +0100 Subject: [Nitro] Whitespace In-Reply-To: References: Message-ID: <20061031102539.GA30141@oxyliquit.de> Hi, > Nitro generates excessive whitespace (just view the source of a nitro > generated page). I would like to compress some of this whitespace > without impacting performance. I know two-three places where I can > improve things but would like to hear your ideas on this issue. How about just adding another compiler at the end of the compiler pipeline? That way it'd be optional and can be enabled when short on bandwidth but still enough cpu power available. I suddenly think.. how about optional .gz compression when the browser supports it... Jo From george.moschovitis at gmail.com Tue Oct 31 06:41:36 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 31 Oct 2006 13:41:36 +0200 Subject: [Nitro] Whitespace In-Reply-To: <20061031102539.GA30141@oxyliquit.de> References: <20061031102539.GA30141@oxyliquit.de> Message-ID: the problem with the compiler is that it cant handle the dynamic content. > I suddenly think.. how about optional .gz compression when the browser > supports it... nah, apache handles that ;-) -g. -- http://www.gmosx.com http://www.nitroproject.org From zimba.tm at gmail.com Tue Oct 31 07:36:33 2006 From: zimba.tm at gmail.com (Jonas Pfenniger) Date: Tue, 31 Oct 2006 13:36:33 +0100 Subject: [Nitro] Whitespace In-Reply-To: References: <20061031102539.GA30141@oxyliquit.de> Message-ID: <3ff63f9b0610310436p6f0dff1bha2e45423da7bba9d@mail.gmail.com> IMHO : If you have .gz compression, removing white spaces is really not worth the hassle. Especially with clunky browser where those spaces my play a role that they shouldn't. -- Cheers, zimbatm http://zimbatm.oree.ch From george.moschovitis at gmail.com Tue Oct 31 08:41:28 2006 From: george.moschovitis at gmail.com (George Moschovitis) Date: Tue, 31 Oct 2006 15:41:28 +0200 Subject: [Nitro] Whitespace In-Reply-To: <3ff63f9b0610310436p6f0dff1bha2e45423da7bba9d@mail.gmail.com> References: <20061031102539.GA30141@oxyliquit.de> <3ff63f9b0610310436p6f0dff1bha2e45423da7bba9d@mail.gmail.com> Message-ID: I would like to see more professional/elegant output when I press 'View Source' in my browser. -g. On 10/31/06, Jonas Pfenniger wrote: > IMHO : > > If you have .gz compression, removing white spaces is really not worth > the hassle. Especially with clunky browser where those spaces my play > a role that they shouldn't. > > > -- > Cheers, > zimbatm > > http://zimbatm.oree.ch > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general > -- http://www.gmosx.com http://www.nitroproject.org From lasso at lassoweb.se Tue Oct 31 10:15:59 2006 From: lasso at lassoweb.se (Lars Olsson) Date: Tue, 31 Oct 2006 15:15:59 -0000 (UTC) Subject: [Nitro] Whitespace In-Reply-To: References: <20061031102539.GA30141@oxyliquit.de> <3ff63f9b0610310436p6f0dff1bha2e45423da7bba9d@mail.gmail.com> Message-ID: <37728.192.176.230.1.1162307759.squirrel@webmail.lassoweb.se> Hi! Even though I find this quite important too, wouldn't it be better to focus on sending correct XHTML to the browser. Nitro still eats my DOCTYPEs (I know I can use skin.rb to get around this). Kindly /lasso On Tue, October 31, 2006 13:41, George Moschovitis wrote: > I would like to see more professional/elegant output when I press > 'View Source' in my browser. > > > -g. From zimba.tm at gmail.com Tue Oct 31 11:37:32 2006 From: zimba.tm at gmail.com (Jonas Pfenniger) Date: Tue, 31 Oct 2006 17:37:32 +0100 Subject: [Nitro] Whitespace In-Reply-To: <37728.192.176.230.1.1162307759.squirrel@webmail.lassoweb.se> References: <20061031102539.GA30141@oxyliquit.de> <3ff63f9b0610310436p6f0dff1bha2e45423da7bba9d@mail.gmail.com> <37728.192.176.230.1.1162307759.squirrel@webmail.lassoweb.se> Message-ID: <3ff63f9b0610310837p11a479dof825912de6453634@mail.gmail.com> Lars, XHTML is not supported by IE -- Cheers, zimbatm http://zimbatm.oree.ch From john at oxyliquit.de Tue Oct 31 11:39:06 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 31 Oct 2006 17:39:06 +0100 Subject: [Nitro] Whitespace In-Reply-To: References: <20061031102539.GA30141@oxyliquit.de> <3ff63f9b0610310436p6f0dff1bha2e45423da7bba9d@mail.gmail.com> Message-ID: Hi, > I would like to see more professional/elegant output when I press > 'View Source' in my browser. ah! So It's more a question about how people read the code. ;) Some 'html-tidy' compiler will do then. :P Jonathan -- Feel the love http://pinkjuice.com/pics/ruby.png From john at oxyliquit.de Tue Oct 31 13:03:21 2006 From: john at oxyliquit.de (Jonathan Buch) Date: Tue, 31 Oct 2006 19:03:21 +0100 Subject: [Nitro] SQLite working Message-ID: Hi, just tested SQLite after getting this: http://redhanded.hobix.com/cult/sqlite3Gem_whySSensibilitiesRepack.html Works flawless (except with my tc_evolution, which you don't have anyway). So, everyone who wants to use SQLite and Og, this is now tested and should work for almost any case (don't use multiple stores). Have fun! Jo -- Feel the love http://pinkjuice.com/pics/ruby.png From lasso at lassoweb.se Tue Oct 31 13:33:42 2006 From: lasso at lassoweb.se (Lars Olsson) Date: Tue, 31 Oct 2006 19:33:42 +0100 Subject: [Nitro] Whitespace In-Reply-To: <3ff63f9b0610310837p11a479dof825912de6453634@mail.gmail.com> References: <20061031102539.GA30141@oxyliquit.de> <3ff63f9b0610310436p6f0dff1bha2e45423da7bba9d@mail.gmail.com> <37728.192.176.230.1.1162307759.squirrel@webmail.lassoweb.se> <3ff63f9b0610310837p11a479dof825912de6453634@mail.gmail.com> Message-ID: <45479706.3020300@lassoweb.se> Hello again! DOCTYPE isn't specific to XHTML in any way...it's an integral part of SGML and was first defined in 1986! (ISO8879-1). Every version of HTML/XHTML has required it to be present in order to identify the type of document sent to the browser. In theory that is...Many browsers are very permissive when it comes to omitting the DOCTYPE. Both IE, FF and Opera usually renders documents mostly correct even if the DOCTYPE is missing. One very important point of XHTML (Strict) is that it it enforces the XML rules rigorously (no unclosed tags etc). This means that applications capable of processing XML can also process XHTML. The tools available today include a lot more than browsers... Now, Nitro already does a lot to help with conformance to XML rules. SInce every template is processed by REXML it also has to be valid XML. No problem there. REXML already supports DOCTYPEs. The problem is that Nitro strips the DOCTYPE *after* REXML has processed the template. Since some XML tools require this type of information in order to function they are unable to parse pages rendered by Nitro. This is *very* bad in my opinion (luckily there are workarounds). Oh, and by the way, IE has supported XHTML for ages. Sincerely /lasso ________________________________________ Lars Olsson lasso at lassoweb.se http://www.lassoweb.se/ Jonas Pfenniger skrev: > Lars, XHTML is not supported by IE From m.fellinger at gmail.com Tue Oct 31 17:05:15 2006 From: m.fellinger at gmail.com (Michael Fellinger) Date: Wed, 1 Nov 2006 07:05:15 +0900 Subject: [Nitro] Whitespace In-Reply-To: References: <20061031102539.GA30141@oxyliquit.de> <3ff63f9b0610310436p6f0dff1bha2e45423da7bba9d@mail.gmail.com> Message-ID: <9c00d3e00610311405l1e769ecdy863fa90e9f5f51cb@mail.gmail.com> On 11/1/06, Jonathan Buch wrote: > Hi, > > > I would like to see more professional/elegant output when I press > > 'View Source' in my browser. > > ah! So It's more a question about how people read the code. ;) > Some 'html-tidy' compiler will do then. :P Well, i gave G. one... it just has to be included correctly :) > > Jonathan > > -- > Feel the love > http://pinkjuice.com/pics/ruby.png > _______________________________________________ > Nitro-general mailing list > Nitro-general at rubyforge.org > http://rubyforge.org/mailman/listinfo/nitro-general >