| 1 |
May 19 20:07:28 <Remi> Alright, let's get started :-) |
|---|
| 2 |
May 19 20:07:41 <Remi> First topic: The spam on the wiki |
|---|
| 3 |
May 19 20:08:12 --- Lawouach_ gives channel operator status to Remi |
|---|
| 4 |
May 19 20:08:15 <Remi> Remco patched Trac so it will now stop bots from automatically adding a bunch of links ... |
|---|
| 5 |
May 19 20:08:21 <Lawouach_> you can change the topic if needed |
|---|
| 6 |
May 19 20:08:28 <Remi> This was put live a few days ago. |
|---|
| 7 |
May 19 20:08:29 --> ^Devil^ (~lbolognin@83-70-76-19.b-ras1.srl.dublin.eircom.net) has joined #cherrypy |
|---|
| 8 |
May 19 20:09:11 <Remi> Hopefully we should be getting a lot less spam now (unless spammers get smarter) ... Let's wait and see ... |
|---|
| 9 |
May 19 20:09:24 <Lawouach_> how does it work roughly? |
|---|
| 10 |
May 19 20:10:52 <Remi> It's pretty basic: if someone makes a change with too many links they get an error. This only works as long as this patch is not wide-spread and thus spammers don't learn a way around it. |
|---|
| 11 |
May 19 20:11:38 <Remi> Next topic: Europython |
|---|
| 12 |
May 19 20:11:53 <Lawouach_> hold on |
|---|
| 13 |
May 19 20:11:54 <Lawouach_> remi |
|---|
| 14 |
May 19 20:11:59 <Lawouach_> just have one question |
|---|
| 15 |
May 19 20:12:00 <Remi> ok |
|---|
| 16 |
May 19 20:12:03 <Lawouach_> regarding the wiki |
|---|
| 17 |
May 19 20:12:19 <Lawouach_> basically, on the list i've put a link of extensions for trac |
|---|
| 18 |
May 19 20:12:22 <Lawouach_> some might be useful |
|---|
| 19 |
May 19 20:12:30 <Lawouach_> like a site tree |
|---|
| 20 |
May 19 20:12:38 <Lawouach_> because we get more and more pages on the wiki |
|---|
| 21 |
May 19 20:12:47 <Lawouach_> but it's hard to find them |
|---|
| 22 |
May 19 20:12:58 <Lawouach_> could be useful to add some extensions, don't you think? |
|---|
| 23 |
May 19 20:13:26 <Remi> right. the wiki is getting a bit messy ... |
|---|
| 24 |
May 19 20:13:42 <Lawouach_> yeah a bit |
|---|
| 25 |
May 19 20:13:56 <Remi> I'll add this "site tree" extension. |
|---|
| 26 |
May 19 20:14:52 <Remi> any more questions about the wiki ? |
|---|
| 27 |
May 19 20:14:52 <Lawouach_> nice |
|---|
| 28 |
May 19 20:14:55 <Lawouach_> nope |
|---|
| 29 |
May 19 20:15:02 <verbosus> Remi: do you have any plans for what will be after the wiki? |
|---|
| 30 |
May 19 20:15:20 <Lawouach_> verbosus, do you feel we need more? |
|---|
| 31 |
May 19 20:15:24 <Remi> verbosus: in this IRC session ? |
|---|
| 32 |
May 19 20:15:39 <mikerobi> verbosus: do you mean formal docs? |
|---|
| 33 |
May 19 20:15:43 <Almad> btw, I'd like to have a question too...I think it'll be useful to have wikipage with backward-incompatible changes in cp2 |
|---|
| 34 |
May 19 20:16:07 <verbosus> Lawouach_: I mean, since we????????????re going to outgrow the wiki anyway, I reckon, are there any plans for what will come afterwards? |
|---|
| 35 |
May 19 20:16:17 <Remi> almad: the list of backward-incompatibilities is included with each release |
|---|
| 36 |
May 19 20:16:52 <fernique> Remi: how about to implement anti-bot check feature with graphic picture with digits, literals or something like this? |
|---|
| 37 |
May 19 20:16:53 <Remi> verbosus: no, no plans to move to something else in the short term ... |
|---|
| 38 |
May 19 20:16:55 --> rsz (~d9992716@webuser.thegrebs.com) has joined #cherrypy |
|---|
| 39 |
May 19 20:17:00 <verbosus> ok, thanks |
|---|
| 40 |
May 19 20:17:12 <Remi> fernique: sure, if you want to write the Trac patch, I'll gladly include it ... |
|---|
| 41 |
May 19 20:17:20 <Almad> remi: in changelog? |
|---|
| 42 |
May 19 20:17:42 <Lawouach_> verbosus, sure but I didn't feel like the wiki would be limited even if the community gets bigger. but surely it would need to be improved a bit |
|---|
| 43 |
May 19 20:17:58 --> deelan (~chatzilla@ip-137-11.sn2.eutelia.it) has joined #cherrypy |
|---|
| 44 |
May 19 20:17:59 <Remi> Almad: right now I think it's only in the release notes (on the website). But you're right, it *should* be in the ChangeLog |
|---|
| 45 |
May 19 20:18:07 <fernique> Remi: ok, do you know how this feature named officially? |
|---|
| 46 |
May 19 20:18:21 <Almad> Remi: Well, I think it should have a single page too |
|---|
| 47 |
May 19 20:18:21 <mikerobi> Haven't a revision history would be awsome |
|---|
| 48 |
May 19 20:19:04 <Remi> fernique: not sure what the usual name is for this ... |
|---|
| 49 |
May 19 20:19:17 <fumanchu> Almad: maybe a wiki page for major version only |
|---|
| 50 |
May 19 20:19:21 <Almad> Remi: as in changelog it's hidden between other changes...and this is the most important thing...it should contain only incompatible changes only against latest stable release |
|---|
| 51 |
May 19 20:19:27 <Almad> fum: right |
|---|
| 52 |
May 19 20:19:32 <fernique> Remi: I know it is named after it's author |
|---|
| 53 |
May 19 20:19:42 <steadicat> fernique: http://en.wikipedia.org/wiki/Captcha |
|---|
| 54 |
May 19 20:19:57 <mikerobi> Almad: you bring up a good point, too many questions on the ml pertain to features in the wiki that are not in the official release |
|---|
| 55 |
May 19 20:20:06 <fernique> steadicat: thanks a lot! |
|---|
| 56 |
May 19 20:20:32 <mikerobi> fernique: YOu could use ascii art generated by figlet http://www.figlet.org/ |
|---|
| 57 |
May 19 20:20:42 <fernique> yeah, it is Turing's test. |
|---|
| 58 |
May 19 20:21:45 * Lawouach_ hopes Remi takes notes :) |
|---|
| 59 |
May 19 20:22:13 <steadicat> next topic? |
|---|
| 60 |
May 19 20:22:14 * fumanchu notes IRC takes notes |
|---|
| 61 |
May 19 20:22:36 <verbosus> steadicat: Remi was mentioning Europython, I reckon |
|---|
| 62 |
May 19 20:22:40 <-- rsz has quit (Quit: http://thegrebs.com/oftc/) |
|---|
| 63 |
May 19 20:22:51 <Remi> OK, EuroPython |
|---|
| 64 |
May 19 20:22:51 --> lexmeta (~mc@terminal-dogma.metacarta.com) has joined #cherrypy |
|---|
| 65 |
May 19 20:23:11 <Remi> There isn't much to say: I'll be giving a 45 min persentation. It'll will be mostly targeted for beginners |
|---|
| 66 |
May 19 20:23:48 <Remi> I hope to put some faces behind some e-mail addresses :-) |
|---|
| 67 |
May 19 20:24:01 <mortenbagai> will the presentation be made available for dl, for those of us not there? |
|---|
| 68 |
May 19 20:24:06 <Remi> sure |
|---|
| 69 |
May 19 20:24:09 <mortenbagai> cool |
|---|
| 70 |
May 19 20:24:10 <JZ> will be movie available online with your presentation? |
|---|
| 71 |
May 19 20:24:57 <Remi> hmm .. don't think there'll be a movie. I tried it last year with a camcorder but you couldn't hear anything ... We'd need a very good camera with a very good microphone, which I don't have ... |
|---|
| 72 |
May 19 20:25:12 <Remi> I don't think the Europython people will provide one ... |
|---|
| 73 |
May 19 20:25:22 <JZ> organizators should deal with that |
|---|
| 74 |
May 19 20:25:41 <Remi> well, they didn't in the past and I doubt they will this year ... |
|---|
| 75 |
May 19 20:26:40 <steadicat> fair enough |
|---|
| 76 |
May 19 20:26:40 <Remi> alright, next topic ... |
|---|
| 77 |
May 19 20:26:51 <Remi> CherryObject ? |
|---|
| 78 |
May 19 20:26:55 <Lawouach_> :) |
|---|
| 79 |
May 19 20:26:57 <Lawouach_> yup |
|---|
| 80 |
May 19 20:27:42 <fumanchu> I. What is CO? |
|---|
| 81 |
May 19 20:27:42 <Remi> It will be under very active development over the next few weeks/months, since I need to develop a pretty big application with it |
|---|
| 82 |
May 19 20:27:42 <JZ> it looks like another subway project |
|---|
| 83 |
May 19 20:27:47 <himizu> will there be a webcast of the EuroPython presentation, or an archive? |
|---|
| 84 |
May 19 20:28:04 <Remi> himizu: most likely just some slides |
|---|
| 85 |
May 19 20:28:15 <verbosus> fumanchu: http://cherryobject.python-hosting.com/ |
|---|
| 86 |
May 19 20:28:22 <JZ> Remi: r u serious? big appl with cp2? |
|---|
| 87 |
May 19 20:28:40 <deelan> why not? :) |
|---|
| 88 |
May 19 20:28:40 <Lawouach_> JZ: hmm why not? |
|---|
| 89 |
May 19 20:28:43 <JZ> I think cp2 is not enough mature. We had meny problems with it |
|---|
| 90 |
May 19 20:28:48 <Remi> JZ: There are already some big apps with CP ... |
|---|
| 91 |
May 19 20:28:58 <JZ> yes, our is the bigiest |
|---|
| 92 |
May 19 20:29:05 <Lawouach_> JZ: no showstoppers AFAIK |
|---|
| 93 |
May 19 20:29:43 <Almad> however, i'm agreeing with jz |
|---|
| 94 |
May 19 20:29:43 <JZ> we had problems with locking, with forks, with sessions, with stability |
|---|
| 95 |
May 19 20:30:00 <JZ> cp2 shoud focus its atentions on core, not new features |
|---|
| 96 |
May 19 20:30:10 <climbus> right |
|---|
| 97 |
May 19 20:30:13 <fumanchu> Note that CherryObject will be designed for multiple frontends besides CherryPy |
|---|
| 98 |
May 19 20:30:15 <Lawouach_> those are important issues yeah, but they don't mean you can't run any kind of app with cp |
|---|
| 99 |
May 19 20:30:51 <JZ> i want to say cp2 is not mature now, and it is a mistake to focus on new features instead of core |
|---|
| 100 |
May 19 20:31:00 <Remi> jz: that's the whole point: CP will remain low-level and CO is another level on top of it (just like Subway is) |
|---|
| 101 |
May 19 20:31:03 <JZ> like twisted did |
|---|
| 102 |
May 19 20:31:14 <Remi> JZ: http://groups-beta.google.com/group/comp.lang.python/browse_thread/thread/52021001ad3bbeec/00221985ece6ddfd?q=cherrypy&rnum=11#00221985ece6ddfd |
|---|
| 103 |
May 19 20:31:17 <fumanchu> separate distros, I should think |
|---|
| 104 |
May 19 20:31:53 <JZ> co is build on top of unstable cp2... |
|---|
| 105 |
May 19 20:32:08 <JZ> basemant should be strong |
|---|
| 106 |
May 19 20:32:10 <climbus> so co will be unstable:) |
|---|
| 107 |
May 19 20:32:21 <Lawouach_> JZ: I totally agree that we need to fix many annoying bugs and even stabilize for once the api. but still, i'm quite ocnfident you can run average applications with it |
|---|
| 108 |
May 19 20:32:34 <Lawouach_> JZ: CP api is pretty stable |
|---|
| 109 |
May 19 20:32:42 <Remi> JZ: If you want we can talk about your stability problems later ... I'm running big CP apps as well and they are *very* stable ... |
|---|
| 110 |
May 19 20:32:44 <Lawouach_> the way it works internally is not a problem of CO |
|---|
| 111 |
May 19 20:33:16 <Remi> Anyway, back to CO ... |
|---|
| 112 |
May 19 20:33:17 <JZ> it is not the problem of co, right. but it is the problem od cp2 |
|---|
| 113 |
May 19 20:33:37 <Lawouach_> yes |
|---|
| 114 |
May 19 20:33:37 <-- Prip has quit (Read error: Connection reset by peer) |
|---|
| 115 |
May 19 20:33:55 --> Prip (~Prip@62.211.255.34) has joined #cherrypy |
|---|
| 116 |
May 19 20:33:56 <Lawouach_> but both can be built at the same time as long as the api from cp2 is stable |
|---|
| 117 |
May 19 20:33:57 <JZ> Remi: give me some links to those big appls if you can |
|---|
| 118 |
May 19 20:34:21 <Remi> Well, the main one is a BackOffice so you won't be able to log-in ... |
|---|
| 119 |
May 19 20:34:29 <verbosus> guys, I think we should stick to the agenda for now |
|---|
| 120 |
May 19 20:35:00 <steadicat> yes, JZ, we'll talk about core and stability later |
|---|
| 121 |
May 19 20:35:01 <Lawouach_> verbosus, right |
|---|
| 122 |
May 19 20:35:03 <Remi> JZ: Let's talk about your problems later ... But for now, let's get moving on the agenda |
|---|
| 123 |
May 19 20:35:27 --> vargas (~52439345@webuser.thegrebs.com) has joined #cherrypy |
|---|
| 124 |
May 19 20:35:53 <Remi> So, CO is basically another layer on top of CP that adds many of the things that are missing from CP: From handling, Authentication, ... |
|---|
| 125 |
May 19 20:36:26 <verbosus> Remi: my main issue with it is that it????????????s rewriting bits of FormEncode and SQLObject, to be honest |
|---|
| 126 |
May 19 20:36:35 <Remi> But it is *much* more than that ... It's true that it might look similar to Subway or Rails at first sight but it is actually much more |
|---|
| 127 |
May 19 20:36:36 <Lawouach_> Remi, can we be sure that CP will never require CO? |
|---|
| 128 |
May 19 20:36:47 <Remi> Lawouach: 100% sure :-) |
|---|
| 129 |
May 19 20:36:51 <Lawouach_> great |
|---|
| 130 |
May 19 20:36:58 <Lawouach_> that's all i'm interested in for now :) |
|---|
| 131 |
May 19 20:37:07 <Lawouach_> keep cp independant |
|---|
| 132 |
May 19 20:37:21 <Remi> verbosus: that's probably true, but that's because it does much more than FormEncode and SQLObject ... |
|---|
| 133 |
May 19 20:37:29 <Lawouach_> then let us know, how is it more? |
|---|
| 134 |
May 19 20:37:31 <Lawouach_> in a few lines |
|---|
| 135 |
May 19 20:37:39 <Lawouach_> or is it too early |
|---|
| 136 |
May 19 20:37:48 <mikerobi> i think we should get back to CP |
|---|
| 137 |
May 19 20:38:06 <Remi> support for multiple backends (ex: MySql, PostgreSql, XML-RPC server, ...) and multiple frontends (ex: CherryPy, wxPython, XML-RPC server, ...) |
|---|
| 138 |
May 19 20:39:25 <Remi> But anyway, I think the best way to convince people of its power is to write an actual application with it (ie: a web forum) and to show them how easy it is ... |
|---|
| 139 |
May 19 20:39:32 <Lawouach_> hmmm, i think it will need a lot of tutorial for me to get the all image here :) |
|---|
| 140 |
May 19 20:39:41 <Remi> It is not 100% there yet but it will be in the next few weeks ... |
|---|
| 141 |
May 19 20:39:52 <Lawouach_> but sounds a good layer that a lot of newbies would like to have atop CP I think |
|---|
| 142 |
May 19 20:40:11 <Remi> All you need to know for now is that CP will remain quite low level, as it is now |
|---|
| 143 |
May 19 20:41:52 <Remi> I think that within a few weeks, we won't need all the little recipes about how to do authentication, how to do form handling, etc ... |
|---|
| 144 |
May 19 20:41:52 <mikerobi> can we move on? |
|---|
| 145 |
May 19 20:42:03 <verbosus> mikerobi: +1 |
|---|
| 146 |
May 19 20:42:06 <Remi> OK, let's move one |
|---|
| 147 |
May 19 20:42:07 <Lawouach_> :) |
|---|
| 148 |
May 19 20:42:08 <Remi> on |
|---|
| 149 |
May 19 20:42:13 <Remi> CP-2.1 |
|---|
| 150 |
May 19 20:42:21 <mikerobi> important tickets? |
|---|
| 151 |
May 19 20:42:38 <Lawouach_> yeah, many things need to be fixed before we get there |
|---|
| 152 |
May 19 20:42:39 <Remi> My top priority (I hope to finish it tomorrow) is to finish the new configuration system |
|---|
| 153 |
May 19 20:43:04 <Remi> (ticket-112) |
|---|
| 154 |
May 19 20:43:06 <fumanchu> Is there an expected 2. release date? |
|---|
| 155 |
May 19 20:43:09 <fumanchu> 2.1 |
|---|
| 156 |
May 19 20:43:15 <mikerobi> I think the new config system should use unrepr to convert values to python objects |
|---|
| 157 |
May 19 20:43:27 <mikerobi> validation could then be done with isinstance |
|---|
| 158 |
May 19 20:43:53 <verbosus> Remi: will we be able to have custom values in the config file, and access them from the Cpy app? |
|---|
| 159 |
May 19 20:43:53 <-- vargas has quit (Quit: http://thegrebs.com/oftc/ (EOF)) |
|---|
| 160 |
May 19 20:44:05 <mikerobi> verbosus: yes |
|---|
| 161 |
May 19 20:44:10 <Remi> verbosus: what do u mean by custom values ? |
|---|
| 162 |
May 19 20:44:39 <Remi> mikerobi: I think it's up to each component that reads stuff from the config file to know which type it expects and to convert the value to the right type |
|---|
| 163 |
May 19 20:44:46 <verbosus> Remi: values that are not related to the Cpy server |
|---|
| 164 |
May 19 20:44:47 <fumanchu> I think he means, values not used by the core itself |
|---|
| 165 |
May 19 20:45:00 <Lawouach_> I don't follow you guys |
|---|
| 166 |
May 19 20:45:01 <deelan> i guess you can already access to custom values |
|---|
| 167 |
May 19 20:45:06 <Remi> verbosus: sure, you can already put those ... |
|---|
| 168 |
May 19 20:45:18 --> vargas (~52439345@67.18.92.222) has joined #cherrypy |
|---|
| 169 |
May 19 20:45:45 <steadicat> is it documented? |
|---|
| 170 |
May 19 20:45:59 <Remi> So anyway, I'll create a 2.1 branch and I'll start coding in there |
|---|
| 171 |
May 19 20:46:04 <JZ> ann: jak ktos tu mowi po polsku to prosze na priva (sorry, i am looking some guiys here) |
|---|
| 172 |
May 19 20:46:19 <mikerobi> Remi: i don't disagree, I also think knowTypes should be moved from _cpconfig to _cpdefaults |
|---|
| 173 |
May 19 20:46:39 <Remi> right |
|---|
| 174 |
May 19 20:47:32 <Lawouach_> Remi, what other showstopper tickets for 2.1? |
|---|
| 175 |
May 19 20:47:35 <verbosus> deelan: how do you access these custom values? |
|---|
| 176 |
May 19 20:47:39 <Remi> verbosus: they're in configMap |
|---|
| 177 |
May 19 20:48:01 <Remi> So, once we have this configuration system we can implement a better system for filters |
|---|
| 178 |
May 19 20:48:03 <verbosus> Remi: thanks, I'll have a look |
|---|
| 179 |
May 19 20:48:13 <Remi> I'll try to do that tomorrow as well |
|---|
| 180 |
May 19 20:48:56 <Remi> Basically, a lot of the filters will be included by default, but they'll be disabled. And all you'll have to do to enable them is flip a switch in the config file |
|---|
| 181 |
May 19 20:49:36 <mikerobi> I think filter filenames should follow the same conventions as filter classes |
|---|
| 182 |
May 19 20:49:42 <Remi> which filter filenames |
|---|
| 183 |
May 19 20:49:44 <Remi> ? |
|---|
| 184 |
May 19 20:49:47 <fumanchu> mikerobi: you mean with caps? |
|---|
| 185 |
May 19 20:49:53 <mikerobi> fumanchu: yes |
|---|
| 186 |
May 19 20:50:00 <mikerobi> i'll even write a conversion script |
|---|
| 187 |
May 19 20:50:31 <Remi> Isn't it in PEP8 that filename should be lowercase ? |
|---|
| 188 |
May 19 20:50:35 <Remi> filenames |
|---|
| 189 |
May 19 20:50:40 <Lawouach_> yeah |
|---|
| 190 |
May 19 20:50:48 <fumanchu> some platforms have problems with caps in filenames, hence PEP 8 guideline |
|---|
| 191 |
May 19 20:50:49 <Lawouach_> i do not like caps too much |
|---|
| 192 |
May 19 20:50:53 <Lawouach_> it looks like old C |
|---|
| 193 |
May 19 20:51:10 <deelan> all lowercase, please |
|---|
| 194 |
May 19 20:51:27 <Remi> So anyway, these 2 changes (new config system + new filter system) are coming up soon. |
|---|
| 195 |
May 19 20:51:44 <deelan> i've nightmares about from StringIO import StringIO |
|---|
| 196 |
May 19 20:51:51 <mikerobi> I really missrepresend what I was doing with the session system, When i clean it up and post some examples I think people will really like it, |
|---|
| 197 |
May 19 20:52:08 <mikerobi> very easy to add new storage types |
|---|
| 198 |
May 19 20:52:16 <Lawouach_> yeah, that's nice but some tickets really needs to be fixed before a 2.1. which ones are the most important to you remi? |
|---|
| 199 |
May 19 20:52:33 <Remi> Another change I have in mind is this: each config file should have a variable called "env" or so that could be "development", "staging" or "production" |
|---|
| 200 |
May 19 20:53:20 <Remi> And things like default.cpOnError could behave differently based on this (for instance, in production, it could return real HTTP errors, but in development, it could return 200 with a traceback, as it does now) |
|---|
| 201 |
May 19 20:53:21 <fumanchu> "env" sounds nice, but where would the switching be done? |
|---|
| 202 |
May 19 20:53:31 <Remi> in the config file |
|---|
| 203 |
May 19 20:53:42 <fumanchu> I mean consumers of that file |
|---|
| 204 |
May 19 20:54:10 <Lawouach_> env is not meaningful i think |
|---|
| 205 |
May 19 20:54:20 <Lawouach_> reagarding what you want to do with it |
|---|
| 206 |
May 19 20:54:33 <fumanchu> maybe "stage" |
|---|
| 207 |
May 19 20:54:35 <Remi> it would only affect the default behavior of some components (ie: default.cpOnError, default.cpLogMessage, some filers, ...) |
|---|
| 208 |
May 19 20:54:37 <himizu> can that adaptable behavior be done via an aspect? |
|---|
| 209 |
May 19 20:55:00 <deelan> how does it work in rails? it has the "development", "staging" or "production" thing too. |
|---|
| 210 |
May 19 20:55:08 <verbosus> I'm afraid but I must leave, I'll check the logs later. Cheers. |
|---|
| 211 |
May 19 20:55:14 <-- verbosus has quit (Quit: verbosus) |
|---|
| 212 |
May 19 20:55:41 <Remi> the idea is that in a development environment, you have by default things like this: check HTML with Tidy, log page info (build time, session size, ...), nice tracebacks in the browser, ... |
|---|
| 213 |
May 19 20:56:02 <Remi> deelan: yes, I think that rails has this too |
|---|
| 214 |
May 19 20:56:52 <Remi> Alright, now let's talk about tickets and problems that people are having with CP |
|---|
| 215 |
May 19 20:57:02 <mikerobi> I know ticket 102 is slated for 2.2, but I believe its nearly complete, is it a possibillity for 2.1 |
|---|
| 216 |
May 19 20:57:14 <mikerobi> some users are very eager |
|---|
| 217 |
May 19 20:57:59 <Lawouach_> Remi: this is not cler for me what exactly will have to be fixed/changed before 2.1. I mean a complete TODO would clarify things. Could we check that later on before i post a summary of the meeting? |
|---|
| 218 |
May 19 20:58:45 <Remi> mikerobi: I think that Remco is almost finished with 102 so it should be included in 2.1 |
|---|
| 219 |
May 19 20:58:54 <Lawouach_> good |
|---|
| 220 |
May 19 20:59:20 <Lawouach_> Remi, then what about ticket 86? http://www.cherrypy.org/ticket/86 |
|---|
| 221 |
May 19 20:59:21 <fumanchu> What's the approach to HTTP/1.1 in general?... |
|---|
| 222 |
May 19 20:59:25 <Lawouach_> full http1.1 support |
|---|
| 223 |
May 19 20:59:26 <mikerobi> will 2.1 need to work in python < 2.4 |
|---|
| 224 |
May 19 20:59:29 <fumanchu> Are we just adding bits as we find them? |
|---|
| 225 |
May 19 21:00:04 <Remi> mikerobi: yes, CP supports python-2.3 and later |
|---|
| 226 |
May 19 21:00:16 <fumanchu> I'm worried we're handling PUT, DELETE but using HTTP/1.0 in the headers |
|---|
| 227 |
May 19 21:00:21 <Lawouach_> yeah, we can't drop Python 2.3. too soon |
|---|
| 228 |
May 19 21:00:39 <mikerobi> I think ticket #88 is fixed, but I don't quite understand the original post |
|---|
| 229 |
May 19 21:00:54 <Remi> fumanchu: HTTP/1.1 will not be in CP-2.1 |
|---|
| 230 |
May 19 21:01:15 <Lawouach_> hmmm then we should be careful about what we add to 2.1 :) |
|---|
| 231 |
May 19 21:01:24 <Lawouach_> otherwise clients might react weirdly |
|---|
| 232 |
May 19 21:01:38 <fumanchu> right--so new verbs are for CP 2.2 |
|---|
| 233 |
May 19 21:02:24 <Remi> Well, it doesn't hurt to add them now ... But you're right, I don't know if they're useful with HTTP/1.0 |
|---|
| 234 |
May 19 21:02:53 <Lawouach_> Regarding all of this, I have two questions : 1. could we make sure that when opening a ticket, it has a very clear description. It's hard sometimes to get to the point of some tickets. 2. could we build some unitestin or regression testing for all our modification? |
|---|
| 235 |
May 19 21:03:01 <fumanchu> Can apps set their own _protocolVersion if using a server other than CherryHTTPServer? |
|---|
| 236 |
May 19 21:03:30 <mikerobi> Lawouach_: I think the current unitest is to difficult to extend |
|---|
| 237 |
May 19 21:03:47 <fumanchu> mikerobi, totally agree |
|---|
| 238 |
May 19 21:04:03 <fumanchu> fighting a test for 147 right now |
|---|
| 239 |
May 19 21:04:12 <Lawouach_> i'm not good at unitesting so i can't tell. but it'd be nice to have one to rely on |
|---|
| 240 |
May 19 21:04:22 <Remi> well, it's not a unittest ... it's an "integration test". Nothing stops you from adding some real unittests in each module |
|---|
| 241 |
May 19 21:05:20 <fumanchu> I plan to run all tests against the new wsgiapp interface... |
|---|
| 242 |
May 19 21:05:27 <Remi> Let me try to summarize the roadmap for CP2.1: |
|---|
| 243 |
May 19 21:05:33 <Remi> 1- New config system |
|---|
| 244 |
May 19 21:05:34 <Lawouach_> Remi, well i think it'd be useful at least to test the URL-to-obecjt routine extensively :) |
|---|
| 245 |
May 19 21:05:34 <fumanchu> so I'll probably hit that hard and abstract as much as possible |
|---|
| 246 |
May 19 21:05:41 <Remi> 2- New filter system |
|---|
| 247 |
May 19 21:06:09 <Remi> 3- New file upload system (yes, I'm ready to change it) |
|---|
| 248 |
May 19 21:06:14 <alankila> that's good news |
|---|
| 249 |
May 19 21:06:24 <Lawouach_> what will change exactly for 2) ? |
|---|
| 250 |
May 19 21:06:30 <Remi> 4- Maybe new session implementation (if we have a good one) |
|---|
| 251 |
May 19 21:06:38 <mikerobi> we will, i promise |
|---|
| 252 |
May 19 21:06:54 <alankila> mikerobi: as soon as you give up your requirement of predeclaring the keys... |
|---|
| 253 |
May 19 21:07:07 <mikerobi> alankila: already done |
|---|
| 254 |
May 19 21:07:16 <alankila> thanks a lot. It's a big relief to me. |
|---|
| 255 |
May 19 21:07:24 <JZ> It would be nice to add c based cgi adapter between eg. apache and cp server |
|---|
| 256 |
May 19 21:07:41 <fumanchu> JZ: wsgi? |
|---|
| 257 |
May 19 21:08:09 <JZ> i am not sure. rather small adapter like webware has (did you see wkcgi?) |
|---|
| 258 |
May 19 21:08:26 <Remi> Lawouach: most standard filters will be *always* included |
|---|
| 259 |
May 19 21:08:30 <mikerobi> i think mod_webit could easily be adapted |
|---|
| 260 |
May 19 21:08:37 <JZ> it is easy to join cp with apache if you cannot use tcp ports |
|---|
| 261 |
May 19 21:08:53 <alankila> JZ: for what purpose, isn't the mod_proxy-based TCP-using adapter good enough? |
|---|
| 262 |
May 19 21:08:56 <Lawouach_> Remi, ok. will there be a procedure or some standards to follow to be included? how ill choose? |
|---|
| 263 |
May 19 21:08:58 <-- lsnduck (~lsnduck@i-195-137-105-14.freedom2surf.net) has left #cherrypy |
|---|
| 264 |
May 19 21:09:06 <Lawouach_> alankila, i quite agree with you |
|---|
| 265 |
May 19 21:09:23 <Remi> lawouach: standard filters will *always* be included but will be turned on/off through the config file |
|---|
| 266 |
May 19 21:09:33 <JZ> alankila: e.g. i can start cp using forks and unix socket and how to use it if i cannot use tcp port? |
|---|
| 267 |
May 19 21:09:34 <alankila> hmm, being unable to use CGI ports could be an issue... If Apache allowed pushing requests to unix sockets and cherry could listen to them the problem would be solved, yes? |
|---|
| 268 |
May 19 21:09:40 <alankila> s/CGI/TPC |
|---|
| 269 |
May 19 21:09:52 <alankila> still wrong. I'm cursed. |
|---|
| 270 |
May 19 21:09:52 --> ksmith (~ksmith939@206-55-248-2.dsl.mbay.net) has joined #cherrypy |
|---|
| 271 |
May 19 21:09:59 <mikerobi> alankila: i think thats what lihui did with mod_python |
|---|
| 272 |
May 19 21:10:03 <climbus> is forking stable and finished? |
|---|
| 273 |
May 19 21:10:17 <JZ> alakila: yes, but the problem is apache can push reuest to unix sockets? |
|---|
| 274 |
May 19 21:10:30 <-- vargas has quit (Quit: http://thegrebs.com/oftc/ (Ping timeout)) |
|---|
| 275 |
May 19 21:10:40 <Remi> Forking support was dropped ... The recommended setup is thread pool |
|---|
| 276 |
May 19 21:10:55 <alankila> JZ: that's a good question. I'd hope mod_proxy would have a url syntax like local:///tmp/socket or something |
|---|
| 277 |
May 19 21:10:57 <Remi> JZ: Let's talk about your setup if you want |
|---|
| 278 |
May 19 21:11:13 <Remi> First of all, I'm curious to know why you can't use TCP ports ? |
|---|
| 279 |
May 19 21:11:18 <alankila> it shouldn't be too hard to be done |
|---|
| 280 |
May 19 21:11:38 <Lawouach_> Remi : standard filters will *always* be included but will be turned on/off through the config file <-- yeah but my question is not "how it wil work" but "what are you defining as a 'standard filter'?" (those that we have today?) |
|---|
| 281 |
May 19 21:11:43 <JZ> Remi: many providers forbid |
|---|
| 282 |
May 19 21:12:08 <JZ> file based unix socket are always available |
|---|
| 283 |
May 19 21:12:23 <Remi> JZ: Then you can run CP on a unix socket and use mod_rewrite |
|---|
| 284 |
May 19 21:13:02 <JZ> Remi: but how to rewrite request to unix socket? is it possible? i always thought it can proxy to tcp ports |
|---|
| 285 |
May 19 21:13:02 <climbus> we write big app in cp on forking and you droped this, good news |
|---|
| 286 |
May 19 21:13:07 <Remi> But I need to fix ticket 16 so that you can run multiple threads (the fix should be trivial) |
|---|
| 287 |
May 19 21:13:23 <Remi> JZ: yes, just use something liks this: |
|---|
| 288 |
May 19 21:13:52 <Remi> [hold on ... searching ...] |
|---|
| 289 |
May 19 21:14:35 <alankila> climbus: there are probably ways to emulate forking, such as run 5 servers and let apache pick a free server and write request to that -- I assume you fork because you are using a library that only allows a single thread? |
|---|
| 290 |
May 19 21:14:59 <Remi> JZ: Actually, you're right ... I think you need to use the little "cherrypcgi.cgi" script from CP1 ... |
|---|
| 291 |
May 19 21:15:23 <climbus> we like forks |
|---|
| 292 |
May 19 21:15:25 <climbus> :) |
|---|
| 293 |
May 19 21:15:31 <mikerobi> the biggest (only) advantage of forking is process migration to multiple processors |
|---|
| 294 |
May 19 21:15:49 <JZ> forks for our 2xXeon works faster |
|---|
| 295 |
May 19 21:16:07 <Remi> Just start 2 processes then ... |
|---|
| 296 |
May 19 21:16:20 <alankila> until python fixes the global interpreter lock, if ever |
|---|
| 297 |
May 19 21:16:26 <climbus> when we start writing cp wasn't thread safe, i think |
|---|
| 298 |
May 19 21:16:37 <mikerobi> alankila: python 3, i hope |
|---|
| 299 |
May 19 21:16:42 <alankila> yes, the python 3. |
|---|
| 300 |
May 19 21:17:10 <Remi> anyway, JZ, can you talk about the stability problems that you're having ? |
|---|
| 301 |
May 19 21:17:14 <Lawouach_> the pb is not to judge whether an user is right or wrong to do it. the problem for CP is to state officially whether it supports it or not. if yes, then we need some fixing. if not then too bad. I think CP is low level and flexible but we should not try to do everything. |
|---|
| 302 |
May 19 21:17:16 <mikerobi> aren't threads cheap enough to create one for every request? |
|---|
| 303 |
May 19 21:18:07 <fumanchu> mikerobi: not all apps are thread-safe |
|---|
| 304 |
May 19 21:18:20 <Remi> JZ ? |
|---|
| 305 |
May 19 21:18:33 <JZ> it is a pity, robert, guy who had to fix those cp2 bugs cannot be now online. :( |
|---|
| 306 |
May 19 21:18:39 <mikerobi> mikerobi: wouldn't you have the same problem with a thread pool you would have creating one for every request? |
|---|
| 307 |
May 19 21:18:59 <mikerobi> I just adressed a question to myself |
|---|
| 308 |
May 19 21:19:11 * fumanchu laughs |
|---|
| 309 |
May 19 21:19:23 <JZ> we had problems with sessions |
|---|
| 310 |
May 19 21:19:34 <climbus> we had problems with sessions and blocking files and cleaning files |
|---|
| 311 |
May 19 21:19:42 <JZ> files was not locked against paraller access |
|---|
| 312 |
May 19 21:20:21 <fumanchu> mikerobi: more, since apps rarely clean out threads when they're done with them |
|---|
| 313 |
May 19 21:20:27 <alankila> mikerobi: what was your system's take on the locking? You went for a read/write lock? |
|---|
| 314 |
May 19 21:20:36 <JZ> we had to fix several different fixes ad hoc and now we cannot easy upgrade cp2, because our applcan fail |
|---|
| 315 |
May 19 21:20:48 <Remi> I agree: "file storage" for sessions isn't very well tested ... |
|---|
| 316 |
May 19 21:21:00 <climbus> CP2 is satble? |
|---|
| 317 |
May 19 21:21:05 <climbus> stable |
|---|
| 318 |
May 19 21:21:10 <climbus> and not tested? |
|---|
| 319 |
May 19 21:21:27 <alankila> climbus: the entire file-based session thing is just a handful of lines of code |
|---|
| 320 |
May 19 21:21:58 <mikerobi> alankila: i'm not to keen when it comes to threads, but I like the mrow sollution http://www.cherrypy.org/wiki/CherryPySessions |
|---|
| 321 |
May 19 21:22:23 <alankila> yes, I see |
|---|
| 322 |
May 19 21:22:43 <JZ> mikerobi: it is memory based sessions, not file based |
|---|
| 323 |
May 19 21:23:06 <alankila> this sounds like you would be serializing the _smlock_ in sessionMap |
|---|
| 324 |
May 19 21:23:12 <alankila> definitely is going to crash and burn, yes? |
|---|
| 325 |
May 19 21:23:38 <mikerobi> I thought the file session use a lock |
|---|
| 326 |
May 19 21:24:19 <mikerobi> JZ: I wasn't pointing to mrow as an application solution, but as a possible internal fix |
|---|
| 327 |
May 19 21:24:33 <alankila> but I agree with the general concept of @sessionReader and @sessionWriter |
|---|
| 328 |
May 19 21:25:39 <JZ> mikerobi: i know, but this shows that cp2 is not ready to enterprise solution |
|---|
| 329 |
May 19 21:26:20 <JZ> so my point is: first foundations later walls and windows should be built |
|---|
| 330 |
May 19 21:26:26 * fumanchu dreams of wsgi session middleware |
|---|
| 331 |
May 19 21:27:13 <Remi> JZ: The problem is that people want to use CP in all sort of different ways ... |
|---|
| 332 |
May 19 21:27:41 <JZ> Remi: What you mean by different ways? |
|---|
| 333 |
May 19 21:28:03 <Remi> Well, for instance, this page "http://www.cherrypy.org/wiki/CherryPyProductionSetup" recommends to use CP behind Apache with mod_rewrite |
|---|
| 334 |
May 19 21:28:16 <Lawouach_> JZ: that's pretty much what is happening right now. I don't think we saw Remi doing some ads saying that Remi was the next WebLogic ;). Yes you're right, CP has some issues. Some importants but none that makes yoyu unable to use it live. |
|---|
| 335 |
May 19 21:28:30 <Remi> And this is in my opinion a rock-solid setup |
|---|
| 336 |
May 19 21:28:33 <Lawouach_> -Remi+CP |
|---|
| 337 |
May 19 21:28:50 <JZ> We use cp behind apache of course. it is not the point |
|---|
| 338 |
May 19 21:28:53 <Remi> But if people start using it with mod_python or wsgi and whatnot, then it may be less stable |
|---|
| 339 |
May 19 21:29:11 --> goodchilde (~d8c211c2@webuser.thegrebs.com) has joined #cherrypy |
|---|
| 340 |
May 19 21:29:23 <Remi> I probably should have written a similar page about sessions ... |
|---|
| 341 |
May 19 21:29:29 <goodchilde> good afternoon. |
|---|
| 342 |
May 19 21:29:30 <fumanchu> Remi: mod_py and wsgi fixes can be VERY simple |
|---|
| 343 |
May 19 21:29:45 <Lawouach_> hi goodchilde |
|---|
| 344 |
May 19 21:30:05 <fumanchu> ...if we can get generators all the way down, that's half the battle |
|---|
| 345 |
May 19 21:30:06 <climbus> "CherryPy supports sessions out of the box with multiple storage types (Database, RAM, file, ...)." - file not tested, Database? |
|---|
| 346 |
May 19 21:30:14 <goodchilde> I'm trying to use cherrypy to build a toolbox app. |
|---|
| 347 |
May 19 21:30:30 <alankila> Database is not implemented |
|---|
| 348 |
May 19 21:30:36 <alankila> there's some awful cookie-based storage commented out. |
|---|
| 349 |
May 19 21:30:49 <goodchilde> Where I work, we have a collection of Python CGI tools for tech support. |
|---|
| 350 |
May 19 21:30:58 <Remi> climus: For DB, you have to override some methods yourself |
|---|
| 351 |
May 19 21:31:05 <goodchilde> I'm tasked to gather them into a web app. |
|---|
| 352 |
May 19 21:31:08 <alankila> someone should eliminate it completely or add digital signature to the cookie to prevent browser from modifying the data that's going to get deserialized |
|---|
| 353 |
May 19 21:31:09 <JZ> Remi: hiding cobehind apache does not solve the main problems with session, lacking of working reloading (with python2.4.1), lackng of ready to use /etc/init.d/startup.sh etc.etc |
|---|
| 354 |
May 19 21:31:34 <Lawouach_> JZ: actually, i think it would be really useful for CP if you could send a message on the list stating what you feel needs to be stabilized. It's the way CP has been working for a while now. It's always nice to hearing from people. |
|---|
| 355 |
May 19 21:31:57 <goodchilde> I'm trying to figure out how to get each generated page in the toolbox to have navigation to all other pages in the toolbox. |
|---|
| 356 |
May 19 21:31:58 <^Devil^> JZ can u open specific tickets on the problems u are having? |
|---|
| 357 |
May 19 21:32:22 <goodchilde> Where ideally each app in the toolbox could be a stand-alone app. |
|---|
| 358 |
May 19 21:32:25 <Lawouach_> goodchilde, it's gonna be a bit hard to focus on your issue right now :) Hold on a minute ;) |
|---|
| 359 |
May 19 21:32:30 <JZ> I can open them but it does not change the problem I have now |
|---|
| 360 |
May 19 21:32:35 <fumanchu> we're having a meeting goodchilde |
|---|
| 361 |
May 19 21:32:46 <^Devil^> JZ it will never be fixed then |
|---|
| 362 |
May 19 21:32:55 <climbus> if app is stable, all features are stable and tested |
|---|
| 363 |
May 19 21:32:55 <goodchilde> No worries. Sorry to intrude. |
|---|
| 364 |
May 19 21:33:04 <Lawouach_> goodchilde, no pb. welcome on board :) |
|---|
| 365 |
May 19 21:33:05 <mikerobi> goodchilde: stick around you might learn somethign |
|---|
| 366 |
May 19 21:33:21 <JZ> I have to decide for choosing good and stable pythonic framework for our next several big applications. |
|---|
| 367 |
May 19 21:33:24 <Remi> climbus: tell that to Microsoft ! |
|---|
| 368 |
May 19 21:33:35 <Lawouach_> thin ice... |
|---|
| 369 |
May 19 21:33:36 <Lawouach_> :) |
|---|
| 370 |
May 19 21:33:58 <JZ> And I am afraid of cp after our experience. I am thinking about twisted2 and nevow although it seems more complicated |
|---|
| 371 |
May 19 21:34:01 <climbus> you write that cp has something and somebody must go to cp code and check this |
|---|
| 372 |
May 19 21:34:49 --> peterhunt (~petaire@c-24-61-144-229.hsd1.ma.comcast.net) has joined #cherrypy |
|---|
| 373 |
May 19 21:34:49 <peterhunt> hello |
|---|
| 374 |
May 19 21:34:49 <deelan> hi man |
|---|
| 375 |
May 19 21:34:49 <fumanchu> hi peter |
|---|
| 376 |
May 19 21:34:49 <JZ> climbus: maybe cp should have more unittest? |
|---|
| 377 |
May 19 21:34:50 <^Devil^> hi peterhunt |
|---|
| 378 |
May 19 21:34:51 <Remi> JZ: We all agreed that there was a concurrency issue with the current session implementation (which can be taken care in your application code if you use locks on your own). Apart from that, I'm not aware of any other stability problem ... |
|---|
| 379 |
May 19 21:34:56 <-- lexmeta (~mc@terminal-dogma.metacarta.com) has left #cherrypy |
|---|
| 380 |
May 19 21:34:56 <peterhunt> was not able to get here until now |
|---|
| 381 |
May 19 21:34:59 <climbus> i tell this to you, you are better, i think |
|---|
| 382 |
May 19 21:35:08 <fumanchu> JZ: yes more tests. Please write some. :) |
|---|
| 383 |
May 19 21:35:24 <Lawouach_> climbus, JZ, yes you're both right. CP ain't twisted nor Zope. But CP2 started something like 10 months ago only. So "stable" might not mean "enterprise stable" but you may feel it is stable enough in most cases. Plus CP is evolving quite quickly |
|---|
| 384 |
May 19 21:35:38 <Lawouach_> peterhunt, hi peter! |
|---|
| 385 |
May 19 21:35:38 <peterhunt> what's the topic of discussion? |
|---|
| 386 |
May 19 21:35:45 <^Devil^> JZ write the reproduction steps and describe the environment u're using along with some logs in the tickets |
|---|
| 387 |
May 19 21:35:56 <mikerobi> peterhunt: i think we are debating if software should be stable |
|---|
| 388 |
May 19 21:35:57 <Lawouach_> well the fact that CP is not ready for enterprise solutions |
|---|
| 389 |
May 19 21:36:01 <climbus> write this in yours website |
|---|
| 390 |
May 19 21:36:03 <peterhunt> ah |
|---|
| 391 |
May 19 21:36:08 <JZ> fumanchu: i have no time i am afraid. i have to quickly choose stable framework. it is not easy choice if i wanted to use python |
|---|
| 392 |
May 19 21:36:09 <peterhunt> may i add my 2 cents? |
|---|
| 393 |
May 19 21:36:20 <Lawouach_> peterhunt, sure |
|---|
| 394 |
May 19 21:36:22 <Lawouach_> shoot |
|---|
| 395 |
May 19 21:36:28 <uche> back |
|---|
| 396 |
May 19 21:36:30 <peterhunt> i think that the 2.0 series should be merely bugfixes |
|---|
| 397 |
May 19 21:36:45 <peterhunt> i think absolutely no backwards compatibility changes should occur whatsoever |
|---|
| 398 |
May 19 21:36:48 <mikerobi> JZ: it would probably take less time to fix any related cherry bugs than to learn zope |
|---|
| 399 |
May 19 21:36:49 <Lawouach_> JZ : twisted is much more stable but also much more complex. CP evolves really quickly. |
|---|
| 400 |
May 19 21:36:52 <peterhunt> (not that i really have a say in this) |
|---|
| 401 |
May 19 21:36:54 <alankila> climbus: I agree with you there. The wiki is overly optimistic about CherryPy's capabilities. The good news is that it actually _is_ improving. |
|---|
| 402 |
May 19 21:37:09 <fumanchu> agree with mikerobi |
|---|
| 403 |
May 19 21:37:24 <Lawouach_> uche : still crazy week? ;) |
|---|
| 404 |
May 19 21:37:26 <peterhunt> i agree as well |
|---|
| 405 |
May 19 21:37:32 <fumanchu> peterhunt: but I have so many fixes!! ;) |
|---|
| 406 |
May 19 21:37:34 <Lawouach_> so do i |
|---|
| 407 |
May 19 21:37:38 --> goodchil1e (~zathrus@veryclever.net) has joined #cherrypy |
|---|
| 408 |
May 19 21:37:53 <JZ> mikerobi: zope is not good, it is extemaly slow and is too complicated and has inconherent, messy API. it is not only my appinion, zope3 guys wrote it |
|---|
| 409 |
May 19 21:38:06 <uche> yesh |
|---|
| 410 |
May 19 21:38:15 <peterhunt> fumanchu: fixes are OK, but silly things like reworking the object mapping or session api just for the hell of it is kind of not so good |
|---|
| 411 |
May 19 21:38:15 <uche> huge logs to read here... |
|---|
| 412 |
May 19 21:38:18 <Lawouach_> yes, and it took them almost 8 years to admit it |
|---|
| 413 |
May 19 21:38:28 <Lawouach_> CP2 started 8 months ago |
|---|
| 414 |
May 19 21:38:34 <Lawouach_> :) |
|---|
| 415 |
May 19 21:38:36 <peterhunt> and zope3 is overengineered |
|---|
| 416 |
May 19 21:38:48 <Lawouach_> uche : i'll make a summary |
|---|
| 417 |
May 19 21:38:54 <peterhunt> yes please do |
|---|
| 418 |
May 19 21:39:01 <steadicat> peterhunt: who gets to decide which proposed changes are 'silly'? |
|---|
| 419 |
May 19 21:39:15 <himizu> steadicat: The Ministry of Silly Walks, naturally |
|---|
| 420 |
May 19 21:39:15 <climbus> in 8 months you done goo job |
|---|
| 421 |
May 19 21:39:15 <peterhunt> if they break backwards compatibility |
|---|
| 422 |
May 19 21:39:22 <Almad> (hi peter) |
|---|
| 423 |
May 19 21:39:23 <climbus> but tell truth:) |
|---|
| 424 |
May 19 21:39:54 <fumanchu> steadicat: the CPBDFL, of course |
|---|
| 425 |
May 19 21:39:55 <peterhunt> to tell you the truth, CP2 gives off a really good, polished, warm fuzzy feeling |
|---|
| 426 |
May 19 21:39:58 <JZ> Lawouach_: zope3 is not oveerengineered, it looks promise, but it is too monolitic for our purpose |
|---|
| 427 |
May 19 21:40:04 <alankila> but I do think the session system needs some changes. I think the new one has a good chance to be fully backwards compatible, too. |
|---|
| 428 |
May 19 21:40:07 <steadicat> peterhunt: i feel the exact opposite |
|---|
| 429 |
May 19 21:40:23 <peterhunt> steadicat: i meant to say should :) |
|---|
| 430 |
May 19 21:40:31 <steadicat> ;) |
|---|
| 431 |
May 19 21:40:41 <peterhunt> but it does in a limited sense |
|---|
| 432 |
May 19 21:40:42 <mortenbagai> is there any place to find out more about mikerobi's proposed new session system at this point? |
|---|
| 433 |
May 19 21:40:53 <mikerobi> mortenbagai: when i get around to writing it |
|---|
| 434 |
May 19 21:40:56 <mikerobi> mortenbagai: I just moved |
|---|
| 435 |
May 19 21:40:59 <peterhunt> i mean, CherryPy 2.0.0 sounds so much better than nevow 0.4, for example |
|---|
| 436 |
May 19 21:41:05 <mikerobi> mortenbagai: so i'm a little behind |
|---|
| 437 |
May 19 21:41:10 <fumanchu> amen, peter |
|---|
| 438 |
May 19 21:41:14 <mortenbagai> mikerobi: cool |
|---|
| 439 |
May 19 21:41:17 <climbus> sounds |
|---|
| 440 |
May 19 21:41:32 <JZ> peterhunt: i am not sure, nevow is based on much, much stable and mature framework twisted2 is |
|---|
| 441 |
May 19 21:41:35 <peterhunt> the reason most people are afraid to use python for web development is that none appear to be mature |
|---|
| 442 |
May 19 21:41:52 <JZ> peterhunt: exactly! |
|---|
| 443 |
May 19 21:41:57 <climbus> right |
|---|
| 444 |
May 19 21:41:58 <peterhunt> JZ: i know, but it still feels beta when looking at docs etc |
|---|
| 445 |
May 19 21:41:59 <mortenbagai> for someone who's new to cp, this is one of the things that i'd like to see a more easy-to-use implementation of. sessions, that is |
|---|
| 446 |
May 19 21:42:11 <peterhunt> mortenbagai: what do you mean? |
|---|
| 447 |
May 19 21:42:19 <climbus> cp is beta and has 2.0 number |
|---|
| 448 |
May 19 21:42:26 <peterhunt> clumbus: there's a final out |
|---|
| 449 |
May 19 21:42:33 <JZ> i see, it looks misleading |
|---|
| 450 |
May 19 21:42:47 <mortenbagai> i was trying to get url-based sessions to work following the recipe, and it just won't for me. |
|---|
| 451 |
May 19 21:43:07 <climbus> somthing not tested, somthing not implemented, stable? |
|---|
| 452 |
May 19 21:43:12 <climbus> fineal? |
|---|
| 453 |
May 19 21:43:18 <alankila> I think the url-based sessions should be made with a helper function to generate urls for cherrypy apps. It would appear to be the simplest solution to me... |
|---|
| 454 |
May 19 21:43:21 <peterhunt> climbus: yeah, that's why i have an issue |
|---|
| 455 |
May 19 21:43:54 <himizu> is CP2 good with respect to reference leaks and such? can I put a simple CP2-based app on an embedded device and leave it running for a long time w/o the memory getting exhausted? |
|---|
| 456 |
May 19 21:44:10 <mikerobi> mortenbagai: If you are using my branch, then the session filter definately won't work, it needs to be updated to work with my system |
|---|
| 457 |
May 19 21:44:14 <peterhunt> climbus: cherrypy 2.0.0 final is out, so in-my-humble-opinion-which-will-yield-to-remi's-in-an-instant, i don't think there should be any monumental changes to CP2 |
|---|
| 458 |
May 19 21:44:35 <JZ> right! |
|---|
| 459 |
May 19 21:45:02 <fumanchu> peterhunt: I'd say no monumental changes to the app interface, but internals are fine, aren't they? |
|---|
| 460 |
May 19 21:45:08 <peterhunt> yeah |
|---|
| 461 |
May 19 21:45:17 <peterhunt> you can rewrite the internals all you want, as long as it doesn't break the api |
|---|
| 462 |
May 19 21:45:18 <steadicat> *relief* |
|---|
| 463 |
May 19 21:45:21 <Remi> Well, hopefully mikerobi will give us a good/stable session implementation |
|---|
| 464 |
May 19 21:45:25 <Lawouach_> peterhunt, +1 |
|---|
| 465 |
May 19 21:45:38 <JZ> fumachu: no, internals are not fine |
|---|
| 466 |
May 19 21:45:48 <fumanchu> example? |
|---|
| 467 |
May 19 21:45:58 <climbus> internal should be stable |
|---|
| 468 |
May 19 21:46:13 <peterhunt> Remi: i just humbly request that cpg.request.sessionMap survives, even if its depreciated, and that there are no limits (except with respect to pickling) to what can be stored in sessions |
|---|
| 469 |
May 19 21:46:15 <fumanchu> OK, given the caveat that changes will have tests |
|---|
| 470 |
May 19 21:46:22 <JZ> fumachu: w.g. sessions and concurrent access |
|---|
| 471 |
May 19 21:46:30 <climbus> i write 10 methods with pass, is this stable app? |
|---|
| 472 |
May 19 21:46:31 <mikerobi> peterhunt: there won't be limits, only for certian storage typs |
|---|
| 473 |
May 19 21:46:39 <peterhunt> what really put me off about the new session api is that there was a limitation on what can be stored in a session |
|---|
| 474 |
May 19 21:46:54 <peterhunt> mikerobi: why not just pickle? |
|---|
| 475 |
May 19 21:46:55 <alankila> peterhunt: now lifted |
|---|
| 476 |
May 19 21:47:05 <alankila> mikerobi has agreed to pressure, it seems. (Good for him.) |
|---|
| 477 |
May 19 21:47:10 <peterhunt> ah |
|---|
| 478 |
May 19 21:47:33 <mikerobi> peterhunt: storing pickled objects in a relational database defeats the purpose of a rdmbs |
|---|
| 479 |
May 19 21:47:52 <alankila> so not using pickled there unless user wants to is the way to go. |
|---|
| 480 |
May 19 21:48:03 <JZ> mikerobi: not necessary.skunkweb uses rdbms for storage with success |
|---|
| 481 |
May 19 21:48:05 <fumanchu> "the purpose"? |
|---|
| 482 |
May 19 21:48:14 <peterhunt> mikerobi: if you have a changing interface for different storage backend plugins, then you're defeating the purpose of OOP and encapsulation |
|---|
| 483 |
May 19 21:48:15 <alankila> the purpose is to allow session data to be used like ordinary table data |
|---|
| 484 |
May 19 21:48:29 <fumanchu> No, the purpose is for data to persist |
|---|
| 485 |
May 19 21:48:41 <peterhunt> if i develop my app using RAM sessions, and then deploy on SQL, it could cause unforseen development errors |
|---|
| 486 |
May 19 21:48:41 <mikerobi> peterhunt: just wait till i have some time to make some updates and write some more documentation |
|---|
| 487 |
May 19 21:48:48 <alankila> sure we can quibble over that but relational systems can offer that one extra benefit, if it is a benefit to you |
|---|
| 488 |
May 19 21:48:52 <alankila> so let it do that. |
|---|
| 489 |
May 19 21:49:14 <Lawouach_> if you're done with the session system, could i bring the subject of Aspect? |
|---|
| 490 |
May 19 21:49:16 <mikerobi> peterhunt: with ram sessions added a new key is trivial, but adding a collumn to a table is not |
|---|
| 491 |
May 19 21:49:17 <alankila> it's not a benefit for me so I strongly maintain that pickling is the default way to go |
|---|
| 492 |
May 19 21:49:21 <fumanchu> I'll let it do that if it doesn't limit the types |
|---|
| 493 |
May 19 21:49:21 <Lawouach_> ok not now :) |
|---|
| 494 |
May 19 21:49:22 <peterhunt> mikerobi: how about a pickleValue configuration setting? |
|---|
| 495 |
May 19 21:49:32 <mikerobi> peterhunt: lets debate this later |
|---|
| 496 |
May 19 21:49:36 <fumanchu> yeah |
|---|
| 497 |
May 19 21:49:37 <peterhunt> k |
|---|
| 498 |
May 19 21:49:49 <fumanchu> who's using Aspect? |
|---|
| 499 |
May 19 21:49:55 <peterhunt> i used to |
|---|
| 500 |
May 19 21:49:55 <Lawouach_> me |
|---|
| 501 |
May 19 21:50:14 <Remi> I'm only using it in csauthenticate but this should be replaced with a filter |
|---|
| 502 |
May 19 21:50:24 <peterhunt> why don't we just link to logilab and deprecate it? |
|---|
| 503 |
May 19 21:50:40 <Lawouach_> I feel like AOP impl in Cp is too simple to be useful. And quite miselading if you wnat more. |
|---|
| 504 |
May 19 21:50:51 <Remi> I agree |
|---|
| 505 |
May 19 21:50:54 <peterhunt> yeah |
|---|
| 506 |
May 19 21:51:00 <alankila> I think we should point to 3rd party Aspect implementation as well |
|---|
| 507 |
May 19 21:51:01 <peterhunt> logilab provides a full-featured aop suite |
|---|
| 508 |
May 19 21:51:03 <alankila> it sounds most sensible. |
|---|
| 509 |
May 19 21:51:07 <Lawouach_> yup |
|---|
| 510 |
May 19 21:51:09 <Lawouach_> ok good |
|---|
| 511 |
May 19 21:51:18 <Lawouach_> was quicker than the session system subject :) |
|---|
| 512 |
May 19 21:51:27 <alankila> Cherry might retain a small compatibility class for users who now use Aspect, but that's it. |
|---|
| 513 |
May 19 21:51:28 <fumanchu> FYI http://www.logilab.org/projects/aspects |
|---|
| 514 |
May 19 21:51:42 <peterhunt> alankila: we should leave it in there as it is, but just give a deprecation warning |
|---|
| 515 |
May 19 21:51:47 <peterhunt> fumanchu: yes, that |
|---|
| 516 |
May 19 21:51:49 <alankila> (I suppose the current implementation is very simple to begin with though, I haven't looked at the code.) |
|---|
| 517 |
May 19 21:52:11 <alankila> peterhunt: yeah, agree |
|---|
| 518 |
May 19 21:52:12 <alankila> 2:44 <@Lawouach_> I feel like AOP impl in Cp is too simple to be useful. And |
|---|
| 519 |
May 19 21:52:12 <alankila> quite miselading if you wnat more. |
|---|
| 520 |
May 19 21:52:20 <alankila> sorry ;-) |
|---|
| 521 |
May 19 21:53:04 <peterhunt> hows the wsgi app coming along? |
|---|
| 522 |
May 19 21:53:09 <Lawouach_> alankila, :) |
|---|
| 523 |
May 19 21:53:19 <Lawouach_> yeah my fingers are going to fast |
|---|
| 524 |
May 19 21:53:26 <fumanchu> ? Besides the checked in patches? ;) |
|---|
| 525 |
May 19 21:53:48 <peterhunt> are they in? |
|---|
| 526 |
May 19 21:54:06 <fumanchu> I don't have SVN access--see ticket 146 |
|---|
| 527 |
May 19 21:54:24 <fumanchu> I meant "posted" not "checked in" :( |
|---|
| 528 |
May 19 21:54:35 <peterhunt> yeah, i'm waiting for checkin :) |
|---|
| 529 |
May 19 21:55:11 <peterhunt> by the way, was looking at other web frameworks for python...cherrypy is the best by far :) |
|---|
| 530 |
May 19 21:55:43 <fumanchu> just did the same assessment and agree completely |
|---|
| 531 |
May 19 21:55:43 <fumanchu> abandoning my own for cp |
|---|
| 532 |
May 19 21:55:45 <alankila> I also checked them out. I really breathed a sigh of relief when I saw how simple cherrypy apps were |
|---|
| 533 |
May 19 21:56:10 <fumanchu> It should stay that way if we can only stave off Ian's Paste ;) |
|---|
| 534 |
May 19 21:56:15 <alankila> I was completely sure I'd be using it when I glanced at a 5-line hello world or so |
|---|
| 535 |
May 19 21:56:16 <JZ> peterhunt: i thought the same until i started to make big apllications in cp |
|---|
| 536 |
May 19 21:56:17 <mikerobi> nice to agree on something |
|---|
| 537 |
May 19 21:56:25 <peterhunt> JZ: what happened? |
|---|
| 538 |
May 19 21:56:30 <fumanchu> not again |
|---|
| 539 |
May 19 21:56:49 <peterhunt> fumanchu: i based subway off of paste, it's moving so fast that it's scary |
|---|
| 540 |
May 19 21:56:58 <fumanchu> heh, yeah, j/k |
|---|
| 541 |
May 19 21:56:59 <JZ> peterhunt: many problems with stabilty, sessions etc. :) we had discussion once here :) |
|---|
| 542 |
May 19 21:57:12 <goodchilde> peterhunt: subway operates on top of cherrypy? |
|---|
| 543 |
May 19 21:57:25 <peterhunt> yes |
|---|
| 544 |
May 19 21:57:31 <peterhunt> JZ: with subway or paste? |
|---|
| 545 |
May 19 21:57:46 <JZ> peterhunt: with pure cp2 |
|---|
| 546 |
May 19 21:58:01 <peterhunt> oh there were? |
|---|
| 547 |
May 19 21:58:08 <JZ> i tried to use subway but i do not like sqlobject |
|---|
| 548 |
May 19 21:58:18 <peterhunt> heh, you don't want to use subway just yet |
|---|
| 549 |
May 19 21:58:20 <fumanchu> ops: back to showstoppers for 2.1... |
|---|
| 550 |
May 19 21:58:31 --> Maciek (~m.starzyk@195.46.43.177) has joined #cherrypy |
|---|
| 551 |
May 19 21:58:32 <fumanchu> Ticket 147 should be fixed asap |
|---|
| 552 |
May 19 21:58:35 <JZ> peterhunt: r u asking for link to our appl? |
|---|
| 553 |
May 19 21:58:46 <peterhunt> ? |
|---|
| 554 |
May 19 21:58:51 <peterhunt> what's appl? |
|---|
| 555 |
May 19 21:59:58 <JZ> peterhunt: so i didn't undersdand your answer "oh there were?" |
|---|
| 556 |
May 19 22:00:11 <Remi> JZ: I'm curious: what is your app :-) |
|---|
| 557 |
May 19 22:00:21 <JZ> http://bank.muratordom.pl |
|---|
| 558 |
May 19 22:00:22 <peterhunt> no i wasn't asking, was just wondering how severe they were |
|---|
| 559 |
May 19 22:00:45 <JZ> it is splitted to also http://bank.muratorplus.pl |
|---|
| 560 |
May 19 22:00:51 <^Devil^> JZ u keep repeating this stuff since 2 weeks. it's time to open some tickets. everything might have been fixed by now |
|---|
| 561 |
May 19 22:01:07 <Remi> Nice site |
|---|
| 562 |
May 19 22:01:20 <climbus> what about threadsafe |
|---|
| 563 |
May 19 22:01:32 <climbus> when we change for to thread |
|---|
| 564 |
May 19 22:01:38 <climbus> forks |
|---|
| 565 |
May 19 22:01:44 <mikerobi> climbus: refering to the sessionmaps? |
|---|
| 566 |
May 19 22:01:45 <fumanchu> what are you asking climbus? |
|---|
| 567 |
May 19 22:01:48 <peterhunt> can't it be done manually? |
|---|
| 568 |
May 19 22:02:02 <JZ> dev: i know, i know. but you can understand, i have several new simillar complex site to prepare and i am afrais of using cp2 with its state |
|---|
| 569 |
May 19 22:02:21 <^Devil^> yeah that was your same line 2 weeks ago... |
|---|
| 570 |
May 19 22:02:25 <Almad> agreeing with JZ |
|---|
| 571 |
May 19 22:02:25 <Remi> JZ: Well, how can we make you less scare ?? |
|---|
| 572 |
May 19 22:02:33 <climbus> about changing without changes in code |
|---|
| 573 |
May 19 22:02:48 <fumanchu> climbus: changing WHAT? |
|---|
| 574 |
May 19 22:03:04 <climbus> forkin to thread |
|---|
| 575 |
May 19 22:03:20 <Almad> as I'd like to have site stable for next few, say, five years...with backward compatible api |
|---|
| 576 |
May 19 22:03:29 <JZ> cp should assume like myghty project did: huge traffic, many several request |
|---|
| 577 |
May 19 22:03:56 <^Devil^> JZ u should be using perl mason then |
|---|
| 578 |
May 19 22:03:59 <fumanchu> AFAICT CP is thread-safe... |
|---|
| 579 |
May 19 22:03:59 <JZ> only with those assumptions in mind we can stard to buld good sessions and other core |
|---|
| 580 |
May 19 22:04:22 <peterhunt> ^Devil^: JZ has a good point |
|---|
| 581 |
May 19 22:04:23 <JZ> dev: i do not like perlish philosophy |
|---|
| 582 |
May 19 22:04:26 <peterhunt> a very good one |
|---|
| 583 |
May 19 22:05:20 <peterhunt> i have a controversial idea i've been mulling over... |
|---|
| 584 |
May 19 22:05:27 <^Devil^> yeah peterhunt i'd like to have something i can rely on too. just asking for a more positive approach. if there's a problem either u fix it or u open a ticket. that's what open source is for i believe |
|---|
| 585 |
May 19 22:05:29 <mikerobi> peterhunt: CherrypPerl? |
|---|
| 586 |
May 19 22:05:35 <^Devil^> :) |
|---|
| 587 |
May 19 22:05:44 <peterhunt> not that controversial :) |
|---|
| 588 |
May 19 22:05:49 <peterhunt> dumping the built-in web server |
|---|
| 589 |
May 19 22:05:49 <goodchilde> CherryRuby? |
|---|
| 590 |
May 19 22:06:01 <fumanchu> peterhunt: don't dump--just abstract better |
|---|
| 591 |
May 19 22:06:07 <peterhunt> making it a pure WSGI app, and then perhaps including a default WSGI server to run it |
|---|
| 592 |
May 19 22:06:10 <steadicat> peterhunt: been thinking about that myself |
|---|
| 593 |
May 19 22:06:13 <fumanchu> should be able to develop each in isolation |
|---|
| 594 |
May 19 22:06:19 <fumanchu> YEA |
|---|
| 595 |
May 19 22:06:25 <steadicat> this http server is way too simple |
|---|
| 596 |
May 19 22:06:29 <steadicat> it doesn't support head |
|---|
| 597 |
May 19 22:06:35 <steadicat> it crashes if the Host: header is missing |
|---|
| 598 |
May 19 22:06:41 <peterhunt> yeah |
|---|
| 599 |
May 19 22:06:47 <fumanchu> right--instant access to HTTP/1.1 |
|---|
| 600 |
May 19 22:06:48 <steadicat> it doesn't support keepalives |
|---|
| 601 |
May 19 22:07:07 <Remi> This is exactly why I recommend to run CP behind Apache !!! |
|---|
| 602 |
May 19 22:07:08 <JZ> maybe we should borrow some ideas of how to create good http server from twisted? its asynchronic server isvery fast and stable |
|---|
| 603 |
May 19 22:07:10 <peterhunt> and also, if only a wsgi-app was developed and not two separate servers (wsgi and cp server), there wouldn't be issues such as ticket 146 |
|---|
| 604 |
May 19 22:07:34 <peterhunt> that's my primary reason for supporting it |
|---|
| 605 |
May 19 22:07:48 <peterhunt> because you can already deploy it behind apache and via wsgi |
|---|
| 606 |
May 19 22:08:06 <JZ> Remi: you cannot run python of cp behind apache :) IT is only for static files. Nothing more |
|---|
| 607 |
May 19 22:08:10 <mikerobi> is there a performace boost? |
|---|
| 608 |
May 19 22:08:28 <mikerobi> with wsgi? |
|---|
| 609 |
May 19 22:08:43 <peterhunt> not neccesarily |
|---|
| 610 |
May 19 22:09:00 <peterhunt> but if you have a solid, optimized WSGI implementation, you can instantly deploy on fastcgi, mod_python, and IIS ISAPI, to name a few |
|---|
| 611 |
May 19 22:09:10 <fumanchu> so performance depends on server you choose |
|---|
| 612 |
May 19 22:09:11 <peterhunt> or twisted, or BaseHTTP, or plain cgi |
|---|
| 613 |
May 19 22:09:17 <alankila> I think the case is compelling, unless using WSGI makes something else suck |
|---|
| 614 |
May 19 22:09:21 <JZ> is there any solid wsgi anywhere? |
|---|
| 615 |
May 19 22:09:30 <fumanchu> ..but you could then choose the deployment server which best matches your data and environment |
|---|
| 616 |
May 19 22:09:47 <deelan> mike orr has written a very nice doc about WSGI |
|---|
| 617 |
May 19 22:09:49 <peterhunt> JZ: yes, those that i just named are stable |
|---|
| 618 |
May 19 22:09:58 <deelan> dunno if you guys known it |
|---|
| 619 |
May 19 22:10:26 <peterhunt> CP would just need to refactor its current server to just be the default WSGI gateway instead of have cherrypy code in it |
|---|
| 620 |
May 19 22:10:36 <deelan> WSGI Explorations with Python -- http://rex.kicks-ass.net/python/wsgi-explorations.html |
|---|
| 621 |
May 19 22:11:28 <fumanchu> peterhunt: If this is the consensus, I was already ready to try it this week and next |
|---|
| 622 |
May 19 22:11:35 <fumanchu> I was going to do it skunkworks anyway |
|---|
| 623 |
May 19 22:12:01 <alankila> are there downsides, if any, known to using WSGI? Is the code good? Will it work? Is there some weird dependencies, stuff nobody has installed already? Etc. |
|---|
| 624 |
May 19 22:12:33 <peterhunt> it works today |
|---|
| 625 |
May 19 22:12:34 <fumanchu> WSGI is a protocol--downsides will depend on specific implementations |
|---|
| 626 |
May 19 22:12:34 <mikerobi> the standalone server is so easy for development |
|---|
| 627 |
May 19 22:12:47 <mikerobi> i wouldn't want it to disappear |
|---|
| 628 |
May 19 22:12:52 <peterhunt> i have to go :( |
|---|
| 629 |
May 19 22:12:53 <alankila> aha, so it's a protocol. All right. Then the question didn't make sense. |
|---|
| 630 |
May 19 22:12:57 <fumanchu> mikerobi: we can support both |
|---|
| 631 |
May 19 22:13:02 <Remi> peterhunt: do filters still work fine with WSGI ? |
|---|
| 632 |
May 19 22:13:14 <fumanchu> with my new 146 fix, filters work |
|---|
| 633 |
May 19 22:13:15 <steadicat> there is a standalone wsgi server in paste, right? |
|---|
| 634 |
May 19 22:13:21 <peterhunt> Remi: i haven't tried the patch yet, but before, input filters and _cpOnError were broken |
|---|
| 635 |
May 19 22:13:33 <peterhunt> steadicat: wsgiref and wsgiutils have them |
|---|
| 636 |
May 19 22:13:39 <fumanchu> peterhunt: before you go, what was the problem with cpOnError? |
|---|
| 637 |
May 19 22:13:47 <peterhunt> it didn't catch errors :) |
|---|
| 638 |
May 19 22:13:58 <fumanchu> OK, I'll add a test for that |
|---|
| 639 |
May 19 22:13:58 <peterhunt> i just couldn't get _cpOnError to get called |
|---|
| 640 |
May 19 22:14:06 <peterhunt> one last thing before i leave... |
|---|
| 641 |
May 19 22:14:13 <fumanchu> It should nw be called, since that try/except is inside doRequest |
|---|
| 642 |
May 19 22:14:22 <peterhunt> a nice feature enhancement would be |
|---|
| 643 |
May 19 22:14:26 <peterhunt> [staticContent] |
|---|
| 644 |
May 19 22:14:30 <peterhunt> .=somedir/ |
|---|
| 645 |
May 19 22:14:43 <peterhunt> to automatically have staticContent at the root |
|---|
| 646 |
May 19 22:15:13 <peterhunt> now i really need to be going |
|---|
| 647 |
May 19 22:15:18 <peterhunt> goodbye |
|---|
| 648 |
May 19 22:15:20 <Remi> bye |
|---|
| 649 |
May 19 22:15:21 <fumanchu> bye |
|---|
| 650 |
May 19 22:15:30 <-- peterhunt has quit (Quit: ) |
|---|
| 651 |
May 19 22:15:45 <fumanchu> Remi: so, yes, filters and _cpOnError should both be fixed now with Ticket 146 |
|---|
| 652 |
May 19 22:15:55 <Remi> what about xml-rpc ? |
|---|
| 653 |
May 19 22:15:55 <-- Prip has quit (Read error: Connection reset by peer) |
|---|
| 654 |
May 19 22:16:12 <fumanchu> haven't tried, because I don't have a test :( |
|---|
| 655 |
May 19 22:16:43 <fumanchu> The point is, the new wsgiapp just calls doRequest, exactly like CherryHTTPServer does |
|---|
| 656 |
|
|---|
| 657 |
May 19 22:16:53 <Remi> ok |
|---|
| 658 |
May 19 22:17:02 <Lawouach_> oops missed quite some lines |
|---|
| 659 |
May 19 22:17:20 <Lawouach_> I'd like to react to "<steadicat> this http server is way too simple" |
|---|
| 660 |
May 19 22:17:32 <Lawouach_> To be honest, I fairly agree. |
|---|
| 661 |
May 19 22:17:41 <steadicat> but? ;) |
|---|
| 662 |
May 19 22:17:51 <Remi> hence http://www.cherrypy.org/wiki/CherryPyProductionSetup |
|---|
| 663 |
May 19 22:17:59 <mikerobi> on the topic of doRequest, that giant try block might catch exceptions that should be raised back to the aplication |
|---|
| 664 |
May 19 22:18:01 <alankila> I'm only worried that changing it will make development/deployment more painful. Right now it's nice. |
|---|
| 665 |
May 19 22:18:01 <Lawouach_> I really think we would have less trouble/work by basing CP routines on a better Web server |
|---|
| 666 |
May 19 22:18:20 <Lawouach_> Remi: i agree. I'm using apache in front of CP |
|---|
| 667 |
May 19 22:18:24 <Lawouach_> but this is not an answer |
|---|
| 668 |
May 19 22:18:27 <Lawouach_> this is a workaround |
|---|
| 669 |
May 19 22:18:30 <alankila> and I don't have much love for apache, either, although nothing specific against it. |
|---|
| 670 |
May 19 22:18:46 <fumanchu> alankila: again, we can support both models |
|---|
| 671 |
May 19 22:18:53 <Lawouach_> the real issue is : "is it worth the pain keeping the actual web server we have?" |
|---|
| 672 |
May 19 22:18:56 <fernique> thanks a lot guys. bye! |
|---|
| 673 |
May 19 22:19:01 <fumanchu> hasta |
|---|
| 674 |
May 19 22:19:21 <Lawouach_> i mean, try to telnet a CP application server. it crashes and doesn't react well to a simple "GET / HTTP/1.0" |
|---|
| 675 |
May 19 22:19:25 <-- fernique (~igor@jabber.hst.ru) has left #cherrypy |
|---|
| 676 |
May 19 22:19:29 <Lawouach_> this is far from being good |
|---|
| 677 |
May 19 22:19:34 <alankila> well, I would imagine that if main cherrypy listens to wsgi then writing an adapter from tcp-to-wsgi or most likely using an existing such adapter is a no-brainer |
|---|
| 678 |
May 19 22:19:40 <Lawouach_> we could fix all those bugs maybe. but is it worth the value? |
|---|
| 679 |
May 19 22:19:48 <fumanchu> mikerobi: if you want exceptions to go back to the app, then write a cusomt _cpOnError for your Root class. |
|---|
| 680 |
May 19 22:19:55 <fumanchu> custom |
|---|
| 681 |
May 19 22:19:59 <steadicat> alankila: such adapter already exists, and it would probably be included in cpy |
|---|
| 682 |
May 19 22:20:05 <steadicat> so you can develop like you do now |
|---|
| 683 |
May 19 22:20:16 <alankila> steadicat: then I see no downsides at all. |
|---|
| 684 |
May 19 22:20:23 <steadicat> me neither |
|---|
| 685 |
May 19 22:20:32 <alankila> and plenty of benefits, including the possibility to skip Apache alltogether. |
|---|
| 686 |
May 19 22:20:50 <Lawouach_> I mean no offense Remi. You did a great job with the web server. But does it fulfill what developers are waiting from CP ? |
|---|
| 687 |
May 19 22:21:17 <fumanchu> Lawouach_: it's worth keeping a simple server in order to attract new developers, at least -- quick startup is a plus |
|---|
| 688 |
May 19 22:21:27 <mikerobi> fumanchu: the problem is that the function has a generic except: block |
|---|
| 689 |
May 19 22:21:37 <alankila> quick startup is essentialy. Every step it takes to run the thing is costing in new users. |
|---|
| 690 |
May 19 22:21:39 <goodchilde> FWIW, the quick startup is a bunch of what sold me on CP. |
|---|
| 691 |
May 19 22:21:42 <Lawouach_> fumanchu, I agree but it can be misleading too as people tend to always ask more from simple things :) |
|---|
| 692 |
May 19 22:21:59 <goodchilde> That, and the magic URLs. |
|---|
| 693 |
May 19 22:22:00 <fumanchu> mikerobi: and that except block calls _cpOnError, right? |
|---|
| 694 |
May 19 22:22:08 <mikerobi> no |
|---|
| 695 |
May 19 22:22:14 <Remi> Lawouach: what do you suggest ? |
|---|
| 696 |
May 19 22:22:16 <Lawouach_> then we should keep it and insist on the fact it should not be used in production |
|---|
| 697 |
May 19 22:22:19 <Lawouach_> period |
|---|
| 698 |
May 19 22:22:25 <alankila> the URL mapper is not nice, but it isn't *too* awful either. If anything it's just trying to be too smart, I think. |
|---|
| 699 |
May 19 22:22:32 <Almad> to be honest...Apache is simply mature, tested...I prefer it too |
|---|
| 700 |
May 19 22:22:46 <steadicat> Lawouach_: we can keep the simplicity with a stand alone wsgi server, can't we? |
|---|
| 701 |
May 19 22:22:47 <fumanchu> mikerobi: mine does, line 220 |
|---|
| 702 |
May 19 22:22:49 <fumanchu> 220 |
|---|
| 703 |
May 19 22:23:07 <mikerobi> ahh silly me |
|---|
| 704 |
May 19 22:23:21 <steadicat> that's what peterhunt suggested, i think |
|---|
| 705 |
May 19 22:23:22 <mikerobi> fumanchu: I did a search but with a type |
|---|
| 706 |
May 19 22:23:29 <fumanchu> steadicat: we'd have to write our own standalone wsgi server in that case, or require inclusion of wsgiref or other |
|---|
| 707 |
May 19 22:23:43 <steadicat> i'd say we include wsgiref or similar |
|---|
| 708 |
May 19 22:24:03 <Lawouach_> Remi : I don't know to be honest. I don't have one best option :( |
|---|
| 709 |
May 19 22:25:04 <Lawouach_> I use CP behind Apache but I've found that it was useless to go through two webservers... |
|---|
| 710 |
May 19 22:25:27 <Remi> Well, I think it's reasonable to package CP with an internal HTTP server that's OK for testing and require another HTTP server (ie: Apache) in front of it for production sites |
|---|
| 711 |
May 19 22:25:39 <Lawouach_> one solution might be to write a mod_cherrypy. just for parsing the request and feeding the application server behind |
|---|
| 712 |
May 19 22:25:54 <fumanchu> sure |
|---|
| 713 |
May 19 22:26:02 <fumanchu> Let us know when you're done. ;) |
|---|
| 714 |
May 19 22:26:11 <Lawouach_> fumanchu, lol |
|---|
| 715 |
May 19 22:26:18 * Lawouach_ is goind away... |
|---|
| 716 |
May 19 22:26:20 <JZ> Lawouach_: webware can work without its httpd at all. |
|---|
| 717 |
May 19 22:26:21 <Lawouach_> far far away |
|---|
| 718 |
May 19 22:26:27 <JZ> So cp could also |
|---|
| 719 |
May 19 22:26:28 <Remi> Lawouach: but in practise you'll gain very little speed by doing this (compared to using mod_rewrite) |
|---|
| 720 |
May 19 22:26:31 <mikerobi> Lawouach_: with a well written mod_cherrypy, you could probably approach php speed |
|---|
| 721 |
May 19 22:26:41 <Lawouach_> Remi: speed is not my concern |
|---|
| 722 |
May 19 22:26:56 <Remi> so why would mod_cherrypy be better than mod_rewrite ? |
|---|
| 723 |
May 19 22:27:11 <mikerobi> mod_rewrite is complicated/overwhelming |
|---|
| 724 |
May 19 22:27:23 <Remi> mikerobi: ??? How so ? |
|---|
| 725 |
May 19 22:27:43 <Remi> The only drawback is that you have to use BaseUrlFilter in your CP app ... |
|---|
| 726 |
May 19 22:27:49 <Lawouach_> OK. so whether or not we keep ot for production. we definitely need a better support of HTTP 1.1 |
|---|
| 727 |
May 19 22:28:14 <mikerobi> "mod_rewrite's major drawback is that it is not easy to understand and use for the beginner" apache documentation |
|---|
| 728 |
May 19 22:28:41 <Remi> Lawouach: Well, that's the whole point ... By putting Apache in front of CP you get HTTP/1.1 between the browser and Apache ... |
|---|
| 729 |
May 19 22:28:47 <Lawouach_> well i quite agree that mod_rewrite 3 lines i had to use for my own server drove me crazy |
|---|
| 730 |
May 19 22:28:53 <Lawouach_> but it might just be me :) |
|---|
| 731 |
May 19 22:29:03 <alankila> mod_proxy is much better than mod_rewrite |
|---|
| 732 |
May 19 22:29:16 <alankila> it does the simple case with much less weird-looking stuff like (.*) and $1 |
|---|
| 733 |
May 19 22:29:25 <Remi> mod_rewrite can be tricky if you try to do complicated stuff, but it's very easy for simple things ... |
|---|
| 734 |
May 19 22:29:35 <Lawouach_> alankila, the nice thing with mod_rewrite is that it works from within .htaccess |
|---|
| 735 |
May 19 22:29:45 <Lawouach_> and thus needs less permissions |
|---|
| 736 |
May 19 22:29:46 <alankila> doesn't mod_proxy, then? |
|---|
| 737 |
May 19 22:29:52 <Lawouach_> i don't think so |
|---|
| 738 |
May 19 22:29:55 <Lawouach_> but i might be wrong |
|---|
| 739 |
May 19 22:29:59 <alankila> Illogical. But Apache is like that. |
|---|
| 740 |
May 19 22:29:59 <JZ> alankila: i do not like mod_proxy, mod_rewrite is more flexible and can work with other different rules |
|---|
| 741 |
May 19 22:30:06 <Remi> mod_proxy works just as well ... |
|---|
| 742 |
May 19 22:30:21 <Remi> It's just that with mod_rewrite you can easily configure Apache to serve static files directly |
|---|
| 743 |
May 19 22:30:54 <Lawouach_> mod_proxy uses mod_rewrite if i'm not mistaken anyhow |
|---|
| 744 |
May 19 22:30:58 * mikerobi has to give his dog a bone |
|---|
| 745 |
May 19 22:31:14 <steadicat> i think it's the other way round |
|---|
| 746 |
May 19 22:31:18 <steadicat> mod_rewrite uses mod_proxy |
|---|
| 747 |
May 19 22:31:22 <Lawouach_> hmmm |
|---|
| 748 |
May 19 22:31:24 <Lawouach_> let me check |
|---|
| 749 |
May 19 22:31:26 <steadicat> with the [P] flag |
|---|
| 750 |
May 19 22:31:32 <JZ> alankila: i am using mod_rewrite for proxing plone and excuting php under the same vhost. it is very difficult to do the same using only mod_proxy |
|---|
| 751 |
May 19 22:31:57 <Remi> Lawouach: Did we have anything else on the agenda ? |
|---|
| 752 |
May 19 22:31:57 <alankila> mod_rewrite does not support ProxyPassReverse |
|---|
| 753 |
May 19 22:32:09 <Lawouach_> Remi, don't think so no |
|---|
| 754 |
May 19 22:32:12 <alankila> but you can use it in tandem with mod_rewrite though |
|---|
| 755 |
May 19 22:32:20 <alankila> I just think the end result looks more logical with ProxyPass |
|---|
| 756 |
May 19 22:32:20 <Lawouach_> we approached everything we needed |
|---|
| 757 |
May 19 22:32:34 <JZ> steadicat: mod_rewrite is a differe module, but with flag [p] it can do proxy work |
|---|
| 758 |
May 19 22:33:10 <steadicat> yes, and it does it using mod_proxy |
|---|
| 759 |
May 19 22:33:15 <mortenbagai> well, from a newcomer's perspective, mod_rewrite works as well as anything, but having said that, the ease of establishing a development setup with the built-in server is one the primary attractions of cp |
|---|
| 760 |
May 19 22:33:18 <JZ> alankila: i do not need proxypassreverse, plone works fine without it |
|---|
| 761 |
May 19 22:33:18 <Lawouach_> guys |
|---|
| 762 |
May 19 22:33:19 <Lawouach_> guys |
|---|
| 763 |
May 19 22:33:19 <Lawouach_> guys |
|---|
| 764 |
May 19 22:33:24 <Lawouach_> anything else to add ? |
|---|
| 765 |
May 19 22:33:32 <steadicat> autoreload |
|---|
| 766 |
May 19 22:33:40 <steadicat> is there any way to get it to work |
|---|
| 767 |
May 19 22:33:57 <steadicat> cause rails's autoreload is really sexy and tempting :P |
|---|
| 768 |
May 19 22:33:59 <fumanchu> Just that I'll go ahead and work on abstracting the server from the rest of the core, like we were saying above |
|---|
| 769 |
May 19 22:34:38 <Remi> fumanchu: OK, but I still want a way of running "Hello world" without any external dependencies ... |
|---|
| 770 |
May 19 22:34:45 <fumanchu> steadicat: reload of cpg.root classes? |
|---|
| 771 |
May 19 22:34:50 <fumanchu> Remi: right, absolutely. |
|---|
| 772 |
May 19 22:34:51 <Lawouach_> fumanchu, i'd be happy to discuss that as well |
|---|
| 773 |
May 19 22:35:12 <Remi> steadicat: doesn't autoreload work for you ? |
|---|
| 774 |
May 19 22:35:14 <Lawouach_> it'd be great if CP could be web ser |
|---|