IRC Logs

2008 9
Mo Tu We Th Fr Sa So
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

23. 09 2008

[00:06:49] <nosklo> mitsuhiko, hm, this pottymouth seems nicer for what I want :)
[00:07:10] <mitsuhiko> but the implementation is hideous. i better not look at it too much :)
[00:08:16] * mitsuhiko mails the developer
[00:14:09] * leche has quit IRC
[00:16:22] * Kaelten has quit IRC
[00:24:25] * leche has joined #pocoo
[00:29:26] <nosklo> mitsuhiko, do you plan into adding it?
[00:29:39] <mitsuhiko> nosklo: adding what? :)
[00:29:58] <nosklo> mitsuhiko, :) this pottymouth stuff
[00:30:13] <mitsuhiko> into zine? yep
[00:30:21] <mitsuhiko> but once the implementation looks less hideous
[00:31:26] <ronny> pottymouth?
[00:35:38] <hads> It's in that google thing
[00:38:14] * leche has quit IRC
[00:45:52] * leche has joined #pocoo
[00:53:09] * leche has quit IRC
[00:59:47] * riltim has quit IRC
[01:54:15] * rawb has joined #pocoo
[01:56:59] * davidcramer has left #pocoo
[02:05:24] <prencher> grumpy - ping
[02:08:23] <prencher> fine, mail inc
[02:19:45] * alowry has quit IRC
[02:20:02] * mtrichardson has quit IRC
[02:54:17] * heikkit has quit IRC
[03:05:44] * KirkMcDonald has joined #pocoo
[03:12:35] * aconbere has joined #pocoo
[03:13:14] * kaelten has joined #pocoo
[03:31:15] * |[diecast]| has joined #pocoo
[03:32:35] * [diecast] has quit IRC
[03:36:46] * nosklo has quit IRC
[04:22:44] * davidcramer has joined #pocoo
[04:47:04] * Baumichel has quit IRC
[06:01:29] * alowry has joined #pocoo
[06:10:24] * Crast_ has joined #pocoo
[06:17:31] * kleinweby has joined #pocoo
[06:59:56] * heikkit has joined #pocoo
[07:12:39] * delroth has quit IRC
[07:12:48] * delroth has joined #pocoo
[07:18:21] * alowry has quit IRC
[07:53:47] * sashav has joined #pocoo
[08:07:22] * davidcramer has quit IRC
[08:07:57] * davidcramer has joined #pocoo
[08:16:52] * heikkit has quit IRC
[08:25:44] * bzed has quit IRC
[08:25:48] * bzed has joined #pocoo
[09:26:22] <asmodai> http://www.youtube.com/watch?v=5nuBZm0cXe8
[09:43:00] <davidcramer> lol wtf
[09:43:54] <davidcramer> i like the reaction on the black guys face
[09:53:29] <asmodai> :)
[09:54:38] <davidcramer> there's a neat proposal in django for a simple denormalized field
[09:56:03] <davidcramer> author_username = DenormField('user', 'username')
[10:01:50] * aconbere has quit IRC
[10:08:10] * jpcw2002 has joined #pocoo
[10:11:38] * asmodai hasn't touched Django in a long time now
[10:17:33] <asmodai> *kicks firefox*
[10:17:40] <asmodai> I only pressed ctrl-w to close a tab damn you
[10:28:31] * davidcramer has quit IRC
[11:21:27] * damjan_ is now known as damjan
[11:38:02] * luks has quit IRC
[11:41:25] * luks has joined #pocoo
[11:57:08] <asmodai> ok
[11:57:13] <asmodai> nginx, 0.6.x or 0.7.x?
[12:10:07] * jpcw2002 has quit IRC
[12:43:03] * grumpy has joined #pocoo
[12:48:22] * maix has joined #pocoo
[12:55:17] * grumpy has joined #pocoo
[13:04:38] * grumpy has quit IRC
[13:24:51] * highwaychile has joined #pocoo
[13:32:19] * maix has quit IRC
[13:47:28] * dennda has quit IRC
[13:50:09] * dennda has joined #pocoo
[14:00:58] <aa_> woah zine.utils.forms is quite cool
[14:01:04] <aa_> it generates entire forms
[14:03:50] <aa_> but then it has downsides too
[14:03:57] <aa_> I think I should probably blog it
[14:04:05] <birkenfeld> oh noes
[14:04:33] <aa_> well, the downsides are thaat it is inextricably linked to the app/framework
[14:04:48] <birkenfeld> (which isn't one)
[14:04:52] <aa_> but that's just an upside for glashammer because it and zine share an architecture
[14:05:20] <aa_> man, I bet if people knew armin had written glashammer they would use it
[14:17:15] * kaelten has quit IRC
[14:23:01] <asmodai> birkenfeld!
[14:23:35] <birkenfeld> asmodai?
[14:23:46] <asmodai> birkenfeld: dude!
[14:24:13] <birkenfeld> :D
[14:24:31] * asmodai fixes High House War and Shadow a bit
[14:26:18] <asmodai> I love Fiddler's Deck of Dragons games
[14:26:48] * tux21b has quit IRC
[14:27:50] <birkenfeld> asmodai: I don't understand a thing about them :)
[14:28:07] <birkenfeld> btw, nice cliffhanger about Kalam
[14:28:14] * tux21b has joined #pocoo
[14:28:21] <asmodai> birkenfeld: Well, I am trying to piece it together
[14:28:29] <asmodai> Funny how High House Shadow now has a Knight
[14:28:40] <birkenfeld> it hadn't?
[14:29:04] <asmodai> No
[14:29:16] <asmodai> King, Queen, Assassin, Magi and Hound
[14:29:37] <asmodai> page 1028
[14:30:07] <birkenfeld> btw, who is Queen?
[14:30:14] <asmodai> 'Knight of Shadow. I have never heard of such a card. T'amber, who, what did you--'
[14:30:17] <asmodai> No idea actually.
[14:31:06] <birkenfeld> but I'm really shocked about the empress right now. I thought after all she had some sense left
[14:31:39] <asmodai> in 150 pages I will know what you mean ;)
[14:31:50] <asmodai> I'm at the point where Pearl becomes (temporary) clawmaster
[14:32:08] <asmodai> and Korbolo Dom and Mallick Rel are free in Laseen's surrounding
[14:32:18] <birkenfeld> well, there's not much more to it
[14:32:23] <asmodai> oh ok
[14:32:27] <asmodai> yeah, it's odd
[14:32:33] <asmodai> I love the part about Heboric
[14:32:39] <asmodai> he thought he was a Destriant
[14:32:44] <asmodai> but he's an Shield Anvil
[14:32:52] <birkenfeld> hope he's finally dead though... lots of people keep popping up
[14:33:01] <asmodai> And seemingly Hood released him after the bargain with Ganoes
[14:33:07] <asmodai> if I understand things correctly
[14:33:11] <birkenfeld> yes
[14:33:20] <birkenfeld> you're right
[14:33:46] <asmodai> Erikson will release some encyclopedia at one point, I sincerely hope it details a lot about the Holds and the Warrens
[14:33:54] <asmodai> next to the Deck of Dragons
[14:34:02] <birkenfeld> +INF to that
[14:34:17] <asmodai> Because the concept is very intriguing
[14:34:17] <aa_> hmm, except the zine.utils.forms.Form don't put submit buttons and things
[14:34:28] <aa_> mitsuhiko: in general do you render each form element?
[14:34:39] <asmodai> Got to love how Fiddler has a lot of raw power/talent seeing how Oponn complain.
[14:34:52] <asmodai> And have horror written on their faces after casting some knuckles on his fate :D
[14:35:37] <birkenfeld> asmodai: when you're finished, perhaps you can tell me who kellanved's child is
[14:36:40] <birkenfeld> and why Stormy is a shield anvil all at once
[14:36:58] <asmodai> Seems Reaper's Gale introduces some more
[14:38:05] <birkenfeld> some more of what?
[14:38:07] <asmodai> owww, RG will expand Light and Shadow a bit
[14:38:34] <birkenfeld> that's nice. we haven't seen much of Light so far
[14:39:30] <asmodai> *rechecks something*
[14:39:38] <asmodai> I thought Lifeslayer and Deathslayer were part of War
[14:42:04] <asmodai> I'd best make every card entry its own page to add snippets from the books in order to make sense out of it
[14:45:31] <asmodai> birkenfeld: hahah, guess that intrigues me the most
[14:46:13] <birkenfeld> what?
[14:46:28] <asmodai> the Deck of Dragons and the Holds/Warrens
[14:52:18] * rafael_ has joined #pocoo
[14:52:33] <rafael_> mitsuhiko: ping
[14:52:51] <aa_> mitsuhiko: ping
[14:53:10] <rafael_> ^^
[14:54:21] <asmodai> mitsuhiko: ping
[14:54:26] <asmodai> birkenfeld: ok, added some more
[14:55:32] <asmodai> birkenfeld: need to find those books by Ian Cameron Esslemont as well
[14:56:57] <birkenfeld> find? are they not available online?
[14:57:09] <asmodai> not that I know
[15:04:28] <asmodai> birkenfeld: actually, the child might be referring to the empire he created
[15:05:43] * jpcw2002 has joined #pocoo
[15:05:52] <birkenfeld> ah
[15:05:55] <birkenfeld> that's possible
[15:09:10] <asmodai> :)
[15:13:14] * highwaychile has quit IRC
[15:22:04] * CIA-49 has quit IRC
[15:22:16] * rafael_ has quit IRC
[15:22:43] * rafael_ has joined #pocoo
[15:23:02] * rafael_ is now known as rafeal
[15:23:22] * rafeal is now known as rafael
[15:39:59] * stifal has joined #pocoo
[15:55:37] * rafael has quit IRC
[16:04:17] * izibi has joined #pocoo
[16:10:05] * CIA-49 has joined #pocoo
[16:16:20] * stifal has quit IRC
[16:33:32] <asmodai> ouch
[16:33:34] <asmodai> Wikia is sadly having problems. Our backend servers are not responding. We are working to fix it as soon as possible.
[16:39:42] * Kaelten has joined #pocoo
[16:46:16] <Kaelten> g'morning
[16:50:58] * |[diecast]| is now known as [diecast]
[16:52:11] <asmodai> Kaeltje!
[16:55:45] <mitsuhiko> asmodai: what's "je" btw?
[16:56:14] <aa_> mitsuhiko: hi, have you got 180 seconds to talk about zine.utils.forms?
[16:56:27] <mitsuhiko> 165 seconds left
[16:56:36] <aa_> mitsuhiko: I want to add buttons like submit buttons
[16:56:51] <aa_> mitsuhiko: I want them as fields, but also want to hook into the automatic rendering
[16:57:05] <aa_> mitsuhiko: in the similar way "hidden_fields" are rendered afterwards
[16:57:16] <kleinweby> uhhh
[16:57:19] <aa_> suggestions, or I just hack it up
[16:57:31] <mitsuhiko> aa_: hack it up, it's against my philosophy :)
[16:57:40] <aa_> mitsuhiko: ok :)
[16:58:03] <aa_> my only concern really was if you wanted the changes back into zine, but clearly not
[16:58:11] * mitsuhiko puts 145 bonus seconds on aa_'s support counter
[16:58:18] * alowry has joined #pocoo
[16:58:50] <kleinweby> in zine/application.py there is a use of Lock() in line 1237... anyone know which import there missed?
[16:58:56] <mitsuhiko> i'm not pulling for zine currently anyways. i have tons of "omg-i-break-everything" changes locally
[16:59:12] <mitsuhiko> kleinweby: change it to allocate_lock()
[16:59:25] <mitsuhiko> it's changed locally already, but i don't put because it breaks tons of stuff
[16:59:42] <kleinweby> ah...
[17:00:26] <kleinweby> but even the hg-version does not run out of the box ;)
[17:02:35] <aa_> mitsuhiko: not disagreeing with your philosophy, but ins't a submit input a valid form element that needs to be validated or read?
[17:04:57] * aconbere has joined #pocoo
[17:07:36] <mitsuhiko> aa_: nope
[17:07:53] <mitsuhiko> aa_: i don't care how the form is submitted, that's something the template can decide
[17:08:23] <aa_> mitsuhiko: right, just saying that it is a form item submitted in the form
[17:08:24] <ronny> mitsuhiko: that makes stuff like handling preview vs save more messy
[17:09:08] <kleinweby> oh... mysql-python needs a compiled c file :/
[17:10:33] <mitsuhiko> ronny: why?
[17:10:52] <mitsuhiko> for that you can still switch with if 'preview' in request.form: ...
[17:11:02] <mitsuhiko> and the template can decide how to display that switch
[17:11:11] <mitsuhiko> (separate button, radio button etc.)
[17:20:38] <kleinweby> damn :/
[17:32:48] <leifkb> I have an application I want to write using Werkzeug/Jinja/SQLAlchemy. What should I use for form generation/validation? I see Zine has something, but I don't want to depend on a blog engine...
[17:33:23] * alowry has quit IRC
[17:33:29] * rcscomp1 has joined #pocoo
[17:33:36] <prencher> glashammer!!11
[17:34:26] * rcscomp2 has joined #pocoo
[17:36:10] <prencher> leifkb - might want to look at wtforms then, if you don't want to spend time decoupling zine forms; http://wtforms.simplecodes.com/
[17:36:51] <prencher> there's also formencode and i believe diva forms, but i think diva forms is tightly coupled to diva itself
[17:37:20] <aa_> leifkb: glashammer is basically the reusable bits of zine taken out
[17:37:45] <aa_> leifkb: it also contains both wtforms support, and zine.utils.forms support
[17:38:16] <leifkb> I actually have my own form sort-of-library from another application that I semi-abandoned. I could also use that. :-/ It's kludgey, though, so I'm trying to decide if the alternatives are better.
[17:38:44] <aa_> there are never enough form libs in this world
[17:38:45] <prencher> well if you want something that's selfcontained, wtforms is probably your best bet right now
[17:38:56] <aa_> yes, wtforms
[17:39:37] <prencher> formencode is good too, but it doesn't deal with generation, and personally i find it a bit messy to work with
[17:40:09] <aa_> mitsuhiko: I added a default= paramter to Fields, that may or may not interest you for zine
[17:40:38] <aa_> prencher: formencode is nice in a "swimming through puke" kind of way
[17:41:31] <mitsuhiko> aa_: what's the point of that?
[17:41:43] <mitsuhiko> why not provide the default to the form?
[17:42:05] <mitsuhiko> (which is the reason why the constructor is so simple, to overload it ^^)
[17:42:14] <aa_> mitsuhiko: because SubmitField(default='Save') basically
[17:42:23] <mitsuhiko> aha
[17:42:42] <mitsuhiko> aa_: why does a submit field has a value?
[17:42:57] <mitsuhiko> you could implement wtforms like labels if you want something like that
[17:43:08] <aa_> yeah, that was the other option
[17:45:46] <prencher> or, just use wtforms
[17:48:54] * alowry has joined #pocoo
[17:50:35] * Crast_ is now known as Crast
[17:51:04] * rcscomp has quit IRC
[17:51:08] <Crast> prencher: getting pushy with the wtforms advertising, eh? :P
[17:52:59] * rcscomp1 has quit IRC
[17:54:06] * highwaychile has joined #pocoo
[17:55:00] <Crast> I predict form frameworks to be the next text editor holy war
[17:55:07] <steg> does wtforms support composing forms the same way that formencode does?
[17:55:20] <steg> because that is one of the cool things about formencode
[17:55:30] <Crast> what do you mean composing?
[17:55:57] <steg> class Address(Schema): ... class NewOrder(Schema): delivery_address = Address()
[17:56:30] <steg> schemas are composable
[17:56:43] <Crast> ahh
[17:56:43] <steg> or something like
[17:56:56] <Crast> so basically subforms or the like?
[17:57:01] <steg> class UserProfile(Schema): addresses = ForEach(Address())
[17:57:13] <steg> Crast: yeah, basically Schemas have the same interface as all the other validators
[17:57:33] <steg> so you can compose them... so yes, basically sub-forms :)
[17:57:56] <steg> it's something i use a lot for more complex forms
[17:58:08] <steg> and it's the one reason i like formencode
[17:59:04] <Crast> currently wtforms doesn't allow you to do that, as the application we had originally designed wtforms for, we just instantiated the form multiple times with different prefix= arguments to show e.g. multiple page-entry forms on a single page. But, it is a ticket for the next version, to support sublists of forms and such
[18:00:03] <Crast> it'd probably be something strikingly obvious like class PageForm(Form): class(ArticleForm): pages = ListField(PageForm, max=10)
[18:00:20] <steg> Crast: yes, that would be very nice
[18:00:28] <steg> strikingly obvious is good
[18:01:01] <steg> certainly beats the formencode way of strikingly non-obvious :P
[18:01:51] <steg> Crast: there are potentially a couple of problems with composition though, if you're supporting things like generation
[18:01:52] <Crast> as a stopgap, you could currently just do for n in pages: form = PageForm(prefix="page_%d" % n) # do stuff
[18:02:17] <steg> Crast: true, but i think i'd wait until it's properly supported
[18:02:39] <Crast> proper may not necessarily be ideal, but it depends on how you use your data
[18:03:15] <Crast> me personally, I will probably continue having Article and Page as separate forms non-composed, because then I could just copy the fields right to the ORM. but then, some ORM's do support assigning lists..
[18:03:16] <steg> Crast: i tend to ask models to apply it to themselves
[18:03:47] <steg> yeah... or nested models
[18:03:56] <steg> (dictionaries)
[18:04:07] <steg> Crast: it's kind of an elegant feature to have in any case, imo
[18:04:10] <Crast> yeah
[18:04:47] <Crast> we're a bit fuzzy on the details right now, prencher thought up some of it when he wrote the ticket, any input either on the ticket or mailing list would be cool
[18:05:00] <steg> ok, i will have a look at it
[18:05:10] <steg> see if i can add anything useful
[18:05:26] <steg> bbiab
[18:11:34] * mtrichardson has joined #pocoo
[18:11:51] <prencher> actually the stuff on the ticketi s horribly outdated
[18:12:49] <prencher> have a much cleaner solution planned, but we'll see once 0.3 comes around.. first is 0.2/LOLDOCS.. which is almost done
[18:15:27] <prencher> steg - start a thread on the mailing list if you would, we can go into details there then, instead of just releasing it when 0.3 rolls around.. feedback is always welcome
[18:15:57] <prencher> mitsuhiko - ping?
[18:16:29] <mitsuhiko> pong
[18:16:43] <prencher> mitsuhiko - how exactly do you make modindex work for sphinx?
[18:16:58] <mitsuhiko> modindex?
[18:17:02] <mitsuhiko> the module index?
[18:17:06] <mitsuhiko> it should work automatically :)
[18:17:15] <prencher> seems not to though
[18:17:21] <prencher> http://wtforms.simplecodes.com/docs/modindex.html
[18:17:26] <prencher> what exactly triggers it?
[18:17:51] <mitsuhiko> .. module::
[18:17:56] <mitsuhiko> and .. automodule::
[18:18:05] <mitsuhiko> .. module:: wtforms
[18:18:10] <mitsuhiko> on top of your rst
[18:18:11] <mitsuhiko> or
[18:18:14] <mitsuhiko> .. module:: wtforms.validators
[18:18:32] <prencher> will that not make it spit that into the rst?
[18:19:09] <mitsuhiko> automodule:: :members: will output something
[18:19:11] <mitsuhiko> .. module:: not
[18:19:13] <prencher> ah
[18:19:16] <prencher> gotcha
[18:20:37] <prencher> so can you put .. module:: before any header to make it link there or something?
[18:22:17] <prencher> below the header seems to work
[18:22:26] * rodfersou[away] has joined #pocoo
[18:23:17] * sashav has quit IRC
[18:24:05] <prencher> yep, there we go, cheers mitsuhiko
[18:27:02] <prencher> http://wtforms.simplecodes.com/docs/modindex.html much better
[18:38:38] <prencher> mitsuhiko - zine has a blogger importer right? we were thinking of setting up a dev blog, eventually moving it to zine, once zine gets a bit more stable
[18:38:53] * stifal has joined #pocoo
[18:43:52] <prencher> Crast - bork your aim again?
[19:20:34] <mitsuhiko> What the?
[19:20:35] <mitsuhiko> http://www.reddit.com/r/programming/comments/7323x/web2py_book_on_amazon/
[19:21:12] <mitsuhiko> prencher: yep. there is a blogger importer
[19:21:14] <aa_> oh my lord
[19:21:18] <mitsuhiko> but i'm paralyzed right now
[19:21:43] <prencher> WEB2PY
[19:21:44] <prencher> Enterprise Web Framework
[19:21:46] <prencher> hahahaha
[19:22:46] <mitsuhiko> oh boy. apparently the publishing company doesn't have editors :)
[19:23:03] <mitsuhiko> "Unless you are using mod wsgi, you should setup the web2py server so that
[19:23:04] <mitsuhiko> it can be started/stopped/restarted as any other Linux daemon and so it can
[19:23:04] <mitsuhiko> start automatically at the computer boot-stage."
[19:23:15] <prencher> remember when we looked over his shit mitsuhiko?
[19:24:24] <prencher> it seems any publisher will just jump on any python thing they can get these days
[19:45:21] <plaes> hrm.. someone should finish contrib.smtp so I could start writing the book about werkzeug Ö=
[19:46:31] <plaes> the Anti-Enterprise Web Anti-Framework
[19:51:32] * jpcw2002 has quit IRC
[19:51:38] * jpcw2002 has joined #pocoo
[19:52:14] * jpcw2002 has joined #pocoo
[19:53:04] * luks has quit IRC
[19:53:06] * jpcw2002 has quit IRC
[19:53:07] * luks has joined #pocoo
[19:53:11] * toutancamion has joined #pocoo
[20:02:55] <birkenfeld> prencher: you only need to market yourself
[20:04:01] * maix has joined #pocoo
[20:04:15] <prencher> birkenfeld - what?
[20:04:37] <prencher> oh web2py? i guess so
[20:04:39] <birkenfeld> prencher: you wondered why the web2py guy got them to publish his book
[20:05:03] <birkenfeld> of course, overall it's a good thing having many python books out there
[20:05:10] <birkenfeld> if only to make people aware
[20:05:29] <mitsuhiko> birkenfeld: oh. you mean like basic? :D
[20:05:35] <mitsuhiko> or php
[20:05:51] <steg> php is everywhere though
[20:06:00] <birkenfeld> mitsuhiko: php already surpassed that level
[20:06:17] <birkenfeld> also, visibility is only loosely connected with quality
[20:06:34] <steg> if you're doing a new web language, maybe it's best to compile it to PHP ;)
[20:06:46] <steg> suddenly *everybody* can run it on their cheap crappy hosting
[20:07:00] <birkenfeld> hey, why not write phphp -- a PHP implementation in PHP?
[20:07:10] <steg> for obvious reasons :P
[20:07:25] <prencher> works for pypy, so why not
[20:07:33] <birkenfeld> seriously, I think more than one attempts have been made at converting Python to PHP
[20:07:39] <asmodai> phphp sounds like a bad fart or so
[20:07:48] <steg> restricted php :P
[20:07:49] <plaes> haha
[20:07:51] <mitsuhiko> birkenfeld: currently there are quite a few projects that try it the other way round
[20:07:57] <birkenfeld> mitsuhiko: yes. drupy
[20:08:05] <mitsuhiko> yep
[20:08:18] <birkenfeld> for obvious reasons, both are destined for Hood's gate
[20:08:22] <mitsuhiko> and ian bicking has wphp
[20:08:28] <prencher> we should just all get on mono and .net RIGHT mitsuhiko????
[20:08:36] <prencher> or..parrot
[20:08:47] <mitsuhiko> prencher: yep. someone has to port django to mono
[20:08:48] <steg> .net or the jvm
[20:08:50] <steg> woot
[20:09:06] <steg> seriously i want my compiler to be dumb and my virtual machine to be smart :P
[20:09:12] <mitsuhiko> what's really crazy is that xsp is compiling and reloading faster than django starts up
[20:09:19] <birkenfeld> xsp?
[20:09:22] <mitsuhiko> c# on xsp2 feels more dynamic than python :-/
[20:09:26] <mitsuhiko> birkenfeld: a standalone asp.net server
[20:09:28] <birkenfeld> ah
[20:09:34] <mitsuhiko> compiles modules on http request
[20:09:47] <mitsuhiko> which is... can't say how awesome that feels :)
[20:09:58] <asmodai> birkenfeld: hahaha, Hood's gate
[20:09:59] <mitsuhiko> and unlike all the broken python reloaders that one actually works
[20:10:01] <asmodai> \o/
[20:10:10] <prencher> mitsuhiko - asp.net has always done that though
[20:10:14] <birkenfeld> mitsuhiko: do you perchance have a hole of, say, 1 week, in the memories of your vacations?
[20:10:29] <mitsuhiko> birkenfeld: why?
[20:10:39] <steg> most python reloaders don't bother checking for syntax errors before reloading
[20:10:42] <prencher> birkenfeld - he denies accusations of visiting ms bootcamp
[20:10:45] <mitsuhiko> prencher: well yes, but python always fails in doing that
[20:10:47] <birkenfeld> mitsuhiko: I'm beginning to suspect you were abducted to a secret Microsoft brainwashing camp
[20:10:49] <steg> which kind of annoyed me
[20:11:09] <prencher> mitsuhiko - werkzeugs reloader has yet to fail me
[20:11:12] <prencher> same for mod_wsgi's
[20:11:26] <steg> prencher: does it check for syntax errors? :P
[20:11:31] <birkenfeld> asmodai: in the style of some xkcd comic (don't ask me which)
[20:11:32] <mitsuhiko> birkenfeld: miguel de icaza put me into a mexicanian gullag :)
[20:11:32] * luks has quit IRC
[20:11:36] * luks has joined #pocoo
[20:11:42] <mitsuhiko> prencher: werkzeug totally reloads the whole process
[20:11:50] <mitsuhiko> xsp partially reloads what's necessary
[20:11:58] <steg> mitsuhiko: is it possible to do anything else in python ?
[20:11:59] <prencher> mitsuhiko - so? it works, and it's fast
[20:12:11] <mitsuhiko> prencher: slower than recompiling and replacing one part of the assembly apparently
[20:12:19] <mitsuhiko> steg: well yes. there are ways
[20:12:27] <mitsuhiko> guido wrote xreload
[20:12:41] <mitsuhiko> which tries to monkey patch modules and do crazy stuff :)
[20:12:58] <steg> sounds insane
[20:12:59] <prencher> mitsuhiko - eh.. i've never had speed problems with the reloader
[20:13:17] <prencher> just because your lovely xsp reloader is faster in theory doesn't mean it matters in practice
[20:13:32] <prencher> but then i guess xsp is enterprisy
[20:13:36] <mitsuhiko> prencher: well. it does happen to me that i hit f5 and get connection refused
[20:13:36] <prencher> so it's better right?
[20:13:47] <mitsuhiko> prencher: xsp fails the enterprisey test unfortunately
[20:14:06] <steg> mitsuhiko: and when you have a syntax error, the entire thing dies because you wanted to save something that you weren't quite finished with
[20:14:09] <steg> on pylons anywhere
[20:14:12] <steg> bleh, anyway
[20:14:14] <mitsuhiko> yep. fun
[20:14:21] <tux21b> btw, would it be possible to reload single modules, maybe even in different revisions in python using some c magic?
[20:14:49] <steg> tux21b: you'd have to find all the objects and automagically upgrade them somehow i guess
[20:15:17] <mitsuhiko> tux21b: no
[20:15:32] <tux21b> mitsuhiko, why are you so sure?
[20:15:48] <prencher> steg - pylons ey? aren't you supposed to be thoroughly anti-wtforms then? i remember aa_ saying he brought it up in there and got flamed to hell
[20:15:56] <mitsuhiko> tux21b: because i tried every single implementation technique i could come up
[20:16:03] <mitsuhiko> even monkey patching PyObjects to other pointers
[20:16:12] <tux21b> i would really like to have the erlang way of handling that in python too, but it seems nearly impossible, thats true ;)
[20:16:24] <tux21b> hmm :(
[20:16:39] <steg> prencher: i'm always open to new forms stuff ;)
[20:17:18] <tux21b> so python is only dynamic at the python level, but not at the c interpreter...
[20:17:33] <steg> i don't think it has to do with being dynamic
[20:18:21] <tux21b> lets say runtime resolving then
[20:20:46] <tux21b> but without it, it's still very problematic to develop really big python applications, because you have to reload and restart everything after a change, which could take some time...
[20:22:19] <steg> bleh, something is wrong with my macbook charger, i keep getting shocks when i touch radiators and my macbook at the same time
[20:22:31] <steg> and i like working with my back against a radiator
[20:22:56] <birkenfeld> tux21b: when your application gets so large that startup is ridiculously slow, you should begin using strategies like demandimport for testing
[20:24:52] <tux21b> yeah, that might be a workaround, but up to now, i haven't seen anything such big in python luckily, so it's not that urgent ;)
[20:24:56] <mitsuhiko> tux21b: i have no problem with the reloading. the broken import system is a major annoyance for me
[20:25:13] <mitsuhiko> cirtual imports ftw
[20:25:15] <mitsuhiko> *circular
[20:25:21] <birkenfeld> mitsuhiko: which of the breakages specifically? ;)
[20:25:30] <mitsuhiko> birkenfeld: circular imports
[20:25:50] <birkenfeld> don't use them -- that's all
[20:25:51] <mitsuhiko> birkenfeld: in every bigger python code base i worked so far there was at least one ugly workaround
[20:25:57] <mitsuhiko> you can't avoid that as it seems
[20:26:12] <birkenfeld> well -- is importing things in functions an ugly workaround?
[20:26:19] <mitsuhiko> not nice
[20:26:33] <mitsuhiko> but what's ugly is that "import foo.bar as bar" works in some cases where "from foo import bar" does not
[20:26:45] <mitsuhiko> because bar is not yet fully set up and no attribute of the foo package
[20:26:51] <birkenfeld> precise semantics of package import aren't specified unfortunately
[20:27:11] <birkenfeld> and it's hard anyway to get any circular import right when module loading consists of "execute it."
[20:27:17] <tux21b> birkenfeld, adding or removing an import in inyoka and you will nearly surely get one... (but we aren't using any services internally, and import everything everywhere *g*)
[20:27:58] <mitsuhiko> birkenfeld: i was at least happy to see that django and zope have the same problem
[20:28:02] <mitsuhiko> so it's not just us :)
[20:28:09] <birkenfeld> no, it is bound to occur
[20:28:32] <birkenfeld> if you don't want double the module count
[20:29:02] <tux21b> and btw, java has also problems with circ. imports. on the project i helped during the summer, you had to change the maximum-recursion-limit for compiling up to 10^6 to get it compile :)
[20:29:27] <birkenfeld> anyway, from-imports can never work in a circular fashion
[20:30:19] <mitsuhiko> tux21b: but in compiled languages > c you usually don't have any problems with circular references
[20:30:32] <mitsuhiko> in c# you can even create instances of subclasses in static constructors
[20:30:45] * luks has quit IRC
[20:30:48] * luks has joined #pocoo
[20:31:04] <mitsuhiko> eg. class Foo { public static Foo f; static Foo() { f = new FooSubclass(); }}
[20:31:06] <tux21b> during compile time you have them too, but there, the compiler can try to resolve it...
[20:31:17] <xorAxAx> tux21b: wow, how did you change it?
[20:31:21] <xorAxAx> that setting
[20:31:34] <birkenfeld> the difference between this and many other complaints is of course that there is no way to do this in Python
[20:31:46] <birkenfeld> not that it simply isn't implemented
[20:31:49] <tux21b> xorAxAx, it was some option anywhere in the prefereces menu of eclipse ;)
[20:32:03] <xorAxAx> ah
[