*** povbot has joined #zope3-dev | 16:23 | |
*** J1m has joined #zope3-dev | 16:34 | |
*** baijum has joined #zope3-dev | 16:36 | |
*** whit_ has quit IRC | 16:37 | |
*** whit_ has joined #zope3-dev | 16:39 | |
*** baijum has quit IRC | 16:56 | |
*** zagy has quit IRC | 17:03 | |
*** baijum has joined #zope3-dev | 17:04 | |
* baijum just started http://kpug.zwiki.org/Zope3Distilled | 17:04 | |
*** alecm has joined #zope3-dev | 17:04 | |
eins | baijum wouldn't it be better to update http://www.zope.org/Wikis/DevSite/Projects/ComponentArchitecture/Zope3Book? | 17:06 |
---|---|---|
baijum | eins: planning to borrow content from there too.. | 17:07 |
baijum | will ask srichter first | 17:07 |
baijum | srichter, ayt? | 17:08 |
baijum | srichter: can I use Zope3Book as a base for this work | 17:09 |
mgedmin | there's also benji's quickstart with a similar scope | 17:09 |
philiKON | baijum, sure you can | 17:09 |
philiKON | baijum, it's CC | 17:09 |
philiKON | (creative commons) | 17:09 |
baijum | but no derivative works | 17:09 |
baijum | allowed | 17:09 |
benji | baijum: you might want to check the trademark status of "Foo Distilled" as a book title | 17:10 |
baijum | benji: better I will change name :) | 17:10 |
* baijum leaving | 17:12 | |
*** eins has quit IRC | 17:13 | |
baijum | benji: I have used few text from your quick start guide | 17:14 |
benji | that's fine, the license allows that (with attribution) | 17:14 |
philiKON | right | 17:15 |
baijum | but Zope3Book and benji's QuickStart guide are different licences? | 17:15 |
baijum | both are CC | 17:16 |
philiKON | there are different CC licenses | 17:16 |
*** zagy has joined #zope3-dev | 17:16 | |
baijum | so I have to get special permission from srichter to use that work | 17:17 |
*** jinty has quit IRC | 17:22 | |
*** baijum has quit IRC | 17:36 | |
*** hdima has quit IRC | 17:40 | |
*** romanofski has quit IRC | 17:42 | |
*** romanofski has joined #zope3-dev | 17:43 | |
*** jinty has joined #zope3-dev | 17:43 | |
*** elro has joined #zope3-dev | 17:47 | |
SmokeyD | hi all. What is the best schema field which can contain one value, chosen from several values, but where I can define the actual values to choose from, somwhere in the code and not in the interface/schema? | 17:48 |
mgedmin | Choice | 17:48 |
mgedmin | if you use a vocabulary factory, you can generate the list of choices in Python code | 17:49 |
mgedmin | Choice(vocabulary='Foo') | 17:49 |
philiKON | SmokeyD, got my book:? | 17:49 |
mgedmin | and then register an IVocabularyFactory utility named 'Foo' | 17:49 |
SmokeyD | yup:) | 17:49 |
philiKON | SmokeyD, read the "Vocabularies" chapter | 17:49 |
mgedmin | there's also this concept called 'sources' which, I think, is supposed to replace vocabularies | 17:49 |
SmokeyD | ok, thanks | 17:49 |
philiKON | chapter 16 i think | 17:49 |
mgedmin | but I know little about them | 17:49 |
SmokeyD | overlooked it | 17:49 |
guruz | WebMaven: well anyway, contact me if you run one again | 17:50 |
philiKON | SmokeyD, read it thoroughly | 17:50 |
philiKON | it explains everything except sources | 17:50 |
SmokeyD | ok, thanks. I didn't realise vocabularies were what I was looking for :) Thanks | 17:50 |
philiKON | you should've read the chapter, then you would have known ;) | 17:51 |
SmokeyD | :) | 17:51 |
SmokeyD | you're right | 17:51 |
SmokeyD | :) | 17:51 |
*** alecm has quit IRC | 17:54 | |
*** dobee has quit IRC | 18:00 | |
*** roym has joined #zope3-dev | 18:02 | |
jinty | I've been trying to comment on a issue in the collector, but seem to have "insufficient prviliges". can anyone help? | 18:11 |
d2m | jinty: you need to login | 18:12 |
jinty | d2m: I was under the impression I was logged in... | 18:12 |
jinty | anyway, I'll try again | 18:13 |
jinty | d2m: nope, definitely logged in and still getting insufficient priviliges | 18:16 |
philiKON | you can always ask J1m to make you a manager or supporter or hwatever it's called :) | 18:18 |
J1m | I dunno, maybe you have to be a supporter to comment on an issue you didn't submit. | 18:19 |
d2m | jinty: policy is "You need to be logged into your zope.org account to add issues and comment on existing issues | 18:21 |
d2m | " | 18:21 |
d2m | jinty: which issue nuber ? | 18:21 |
jinty | 655 | 18:21 |
jinty | the account i'm logged into is "jinty" for obvious reasons;) | 18:23 |
d2m | i see you loged in, but no error in error log | 18:23 |
d2m | jinty: ok, now its there, you cannot add a file in a comment | 18:24 |
jinty | ahh | 18:24 |
d2m | Your user account does not have the required permission. Access to 'addFile' of (__FactoryDispatcher__ instance at 1d907cc8) denied. Your user account, jinty, exists at /acl_users. Access requires one of the following roles: ['Manager', 'Owner']. Your roles in this context are ['Anonymous', 'Authenticated', 'Member']. | 18:24 |
jinty | ok, then i'll guess I'll just inline the patch | 18:25 |
philiKON | jinty, btw, just read your pypy thing | 18:25 |
philiKON | way cool] | 18:25 |
jinty | philiKON: thanks, I wasn't sure I should send it to the list... | 18:26 |
philiKON | sure why not | 18:26 |
philiKON | was that after EP? | 18:26 |
jinty | yeah, there was no Zope sprint, so PyPy sounded much more interesting | 18:27 |
jinty | not sure where the line is between distributing interesting infromation and self promotion is... | 18:27 |
philiKON | this is definitely interesting info :) | 18:28 |
* benji is very excited about pypy | 18:28 | |
philiKON | jinty, did you pair with anyone from the pypy guys? | 18:29 |
jinty | yeah, but it was more asking a huge mountain of questions;) | 18:30 |
philiKON | who did you pair with? | 18:31 |
jinty | Restricted Python is a strange world | 18:31 |
philiKON | yeah | 18:31 |
philiKON | it's basically the sewers underneath real python :) | 18:31 |
jinty | Anders Chrigström | 18:31 |
philiKON | hmm, dunno him | 18:31 |
jinty | It's like looking through a mirror | 18:32 |
jinty | keeping straight what's a real python object and what's restricted python is a real task | 18:32 |
philiKON | hence the hungarian notation | 18:33 |
jinty | but I'm looking forward to when I can actually do something usable in RPython | 18:34 |
jinty | but I think It'll take a long time | 18:34 |
philiKON | till then we can use pyrex ;) | 18:35 |
faassen | jinty: why do you think it'll take a long time? i.e. what improvements need to be made? | 18:36 |
jinty | faassen: Because how do you begin to distribute a pypy extension module? | 18:37 |
faassen | jinty: but I thought the idea was that you could build cpython extension modules, I thought you were talking about that. | 18:37 |
*** alecm has joined #zope3-dev | 18:37 | |
jinty | yes, it is compiled to a cpython module | 18:37 |
faassen | jinty: you mean distribute the source? | 18:37 |
jinty | but if you want to distribute it as a part of zope, thats difficult | 18:38 |
faassen | jinty: (I'm not debating you, I'm just asking so I know what to tell the PyPy people what I want :) | 18:38 |
faassen | right. | 18:38 |
philiKON | jinty, so, you can't just take the C source that pypy is spitting out and drop that into zope? | 18:38 |
faassen | philiKON: well, that wouldn't be maintainable. | 18:38 |
faassen | philiKON: the whole point over rpython + ctypes over pyrex would be that ideally you could run the same as Python code. | 18:38 |
jinty | philiKON: yep | 18:38 |
philiKON | ah | 18:39 |
faassen | philiKON: which then hopefully would lead to increased maintainability. | 18:39 |
philiKON | riiight | 18:39 |
philiKON | you could pdb it | 18:39 |
jinty | also the incantations you have to do to connect the python and RPython world are far too magical and confusing | 18:39 |
faassen | yeah, instead of maintaining a C implementation and a python implementation which are guaranteed to go out of sync. | 18:39 |
faassen | you'd just have a single implementation. | 18:40 |
philiKON | yup | 18:40 |
philiKON | but you'd need pypy as a required interpreter | 18:40 |
faassen | jinty: right.. I hope you give 'm plenty of feedback on how to improve things for you. | 18:40 |
philiKON | jinty, perhaps helper (meta)classes will help there | 18:40 |
jinty | philiKON: no, just in the build process | 18:40 |
philiKON | right. that's what i meant initially | 18:40 |
faassen | philiKON: no, the nice thing about the extension system of PyPy is that you can build CPython extensions, so just CPython would be sufficient. unless you're a developer and you want to maintain the modules, perhaps you mean that. :) | 18:41 |
philiKON | but if you wanted to use the python version, you'd need pypy | 18:41 |
philiKON | what faassen says (the last part) | 18:41 |
philiKON | so, we meant the same thing all along | 18:41 |
faassen | philiKON: no, the Python version should be Python + CTypes, which is core Python 2.5 | 18:41 |
faassen | philiKON: ideally. | 18:41 |
philiKON | huh? | 18:41 |
faassen | philiKON: so you can choose to run it as pure Python + CTypes, or rebuild it using RPython & RCTypes into a C module. | 18:42 |
jinty | philiKON: perhaps by organizing the code correctly the python version can be used in CPython unchanged | 18:42 |
faassen | jinty: right, that would be the nice idea. | 18:42 |
philiKON | how's ctypes helping me to run pypy-dependent code? | 18:42 |
*** srichter has quit IRC | 18:42 | |
faassen | it's not pypy dependent code. | 18:42 |
faassen | I mean, the idea would be... | 18:42 |
faassen | I mean, whether this is reality is another question, but this is what they were promoting. | 18:42 |
faassen | that you'd write PYthon code using Ctypes. | 18:42 |
faassen | that happens to be RPython. | 18:43 |
faassen | so follows some restrictions. | 18:43 |
*** _projekt01 has left #zope3-dev | 18:43 | |
faassen | and then you can just run it in plain python. | 18:43 |
faassen | however if you want the performance, you'd transform it into a C module using the RPython + RCTypes stack with PyPy. | 18:43 |
philiKON | clearly i need to read on ctypes again | 18:44 |
faassen | so that means that instead of lxml in Pyrex, you'd have lxml in a restricted Python using CTypes that just runs. | 18:44 |
faassen | in plain python. | 18:44 |
faassen | but I could also transform the whole thing into a C module. | 18:44 |
faassen | using the PyPy stack. | 18:44 |
philiKON | i thought ctypes was all about calling foreign code in C from python | 18:44 |
jinty | though CTypes or RCTypes are not a required part of the mix unless you want to access C extensions | 18:44 |
faassen | oh, yeah, sorry, I was also pulling that in. | 18:44 |
faassen | right. | 18:44 |
faassen | sorry, jinty's right. | 18:44 |
philiKON | ah ook | 18:44 |
faassen | so if you don't do that, you don't need to worry about it. | 18:44 |
philiKON | so, you would just code zope.interface in Python | 18:44 |
faassen | if you just want it for the performance. | 18:44 |
faassen | right. | 18:44 |
philiKON | that happens to qualify for rpython | 18:45 |
faassen | right. | 18:45 |
*** dobee has joined #zope3-dev | 18:45 | |
philiKON | right. i still see pypy dependencies there | 18:45 |
philiKON | (in jinty's code) | 18:45 |
philiKON | i presume those would have to go away | 18:45 |
philiKON | then it'd be runnable in cpython | 18:45 |
faassen | yeah, I don't think they're there yet. | 18:45 |
philiKON | and, for performance, compilable to C | 18:45 |
faassen | jinty, you should give loud feedback about your experiences to the PyPy crew, from the perspective of an extension writer. | 18:45 |
jinty | yeah, really I tried to keep it separate, but it was just too much for 2 days... | 18:45 |
philiKON | i saw the separation | 18:46 |
philiKON | makes sense | 18:46 |
philiKON | i also see faassen's idea about lxml | 18:46 |
philiKON | sounds like a plan for lxml 2.0 ;) | 18:46 |
faassen | yeah. | 18:46 |
faassen | I'm waiting for the pypy toolset to mature a lot more first. :) | 18:46 |
faassen | that's why I'm pushing Jinty to give them feedback. :) | 18:46 |
* jinty was complaining loudly during the sprint | 18:46 | |
faassen | anyway, lxml 2.0 would then be able to run in CPython, as a CPython extension. | 18:47 |
faassen | jinty: excellent! :) | 18:47 |
faassen | and as a PyPy extension. | 18:47 |
faassen | so theoretically even on the JVM, .NET, Squeak platform, Lisp, etc. :) | 18:47 |
faassen | as long as the PyPy crew makes it possible to transform RCTypes to code on those platforms. | 18:47 |
faassen | though Javascript might be a tad tricky. | 18:48 |
faassen | a native C call from javascript.. | 18:48 |
faassen | anyway if they can make this work well, then you'd have a nice migration path. | 18:48 |
faassen | as basically it'd give people reasons to make their extensions work with PyPy even if they're not using PyPy yet. | 18:48 |
* jinty just wants the oppertunity to optimize things without learning C | 18:48 | |
* philiKON is with jinty | 18:48 | |
faassen | I already know C. :) | 18:49 |
philiKON | i do too, but oh, the pitfalls | 18:49 |
faassen | I just don't want the pain. | 18:49 |
philiKON | right | 18:49 |
faassen | anyway pyrex is pretty useful for the time being. | 18:49 |
philiKON | which reminds me. perhaps next weekend i can get back to my Acquisition branch... | 18:49 |
faassen | that'd be cool. :) | 18:49 |
faassen | Zope 2.11 here we come. | 18:49 |
philiKON | i managed to compile python in debug mode laready ;) | 18:49 |
* benji wants to be able to translate Python to JavaScript [insert evil laugh here] | 18:49 | |
jinty | philiKON: please tell me this makes Acquisition not required.... | 18:50 |
faassen | benji: well, we saw a demo of that at EuroPython | 18:50 |
philiKON | would be fun to translate test browser tests directly to javascript :) | 18:50 |
philiKON | jinty, yes, in many ways | 18:50 |
faassen | benji: I saw a bub & bros client written in Python running in javascript. | 18:50 |
* jinty applauds | 18:50 | |
faassen | benji: it was pretty amazing. | 18:50 |
faassen | benji: http://bub-n-bros.sourceforge.net/ | 18:50 |
philiKON | faassen, wow. too bad i missed that lightning talk | 18:50 |
philiKON | faassen, so he had ported pygame to JS? | 18:51 |
faassen | I think it was in a PyPy talk. | 18:51 |
philiKON | jinty, it will make explicit acquisition and __parent__ pointers equivalent | 18:51 |
philiKON | jinty, i have it working in my sandbox | 18:51 |
faassen | no, I think they haxored around all that. :) | 18:51 |
philiKON | jinty, but i'm probably not counting refs right | 18:51 |
philiKON | jinty, Acquisition tests pass, Zope tests segfault :( | 18:51 |
benji | good thing you posted that link, I had no idea what you were talking about... :) | 18:51 |
*** gumpa has joined #zope3-dev | 18:51 | |
faassen | benji: that's another thing flowing from Armin Rigo's mind. :) | 18:51 |
philiKON | his bub'n'bros presentationw as pretty cool, too | 18:51 |
philiKON | i think he's using generators and something like py.execnet for this multiplayer online game | 18:52 |
philiKON | intriguingly simple architecture | 18:52 |
faassen | generators, not py.execnet | 18:52 |
faassen | I think.. | 18:52 |
faassen | he's using a compression algorithm stolen from video compression just to send the state of the game to the clients. :) | 18:52 |
philiKON | but something that pushed the new values over the net | 18:52 |
faassen | and make it take a bit less bandwidth. | 18:53 |
philiKON | riiiight, i remember | 18:53 |
philiKON | but didn't he have something where he "connected" two lists on two python interpreters and they would be like one object? | 18:53 |
faassen | anyway, Armin Rigo's a programming genius. | 18:53 |
faassen | yeah, but that's a pypy thing. | 18:53 |
philiKON | that's undoubted | 18:53 |
philiKON | faassen, ah. of course ;) | 18:53 |
faassen | the connected the two or three pythons. | 18:53 |
philiKON | yup. makes parallel computing easier ;) | 18:54 |
*** dobee has quit IRC | 18:54 | |
*** jukart has quit IRC | 18:55 | |
mgedmin | benji: http://davidf.sjsoft.com/files/py2js | 19:01 |
mgedmin | and there's also CrackAJAX http://subway.python-hosting.com/browser/crackajax/ | 19:01 |
mgedmin | http://www.aminus.org/blogs/index.php/phunt/2005/10/06/subway_s_new_ajax_framework | 19:01 |
*** volvox_ has joined #zope3-dev | 19:01 | |
benji | mgedmin: yep, I've written something very similar | 19:01 |
*** volvox has quit IRC | 19:02 | |
SmokeyD | what field types get visualised with a single selection widget? If I get it right, a LIst field can contain multiple values and thus gets displayed as a multiple selection widget. Does can a Collection field only contain one value, and thus gets displayed as a single selection widget? | 19:05 |
philiKON | SmokeyD, Choice | 19:05 |
SmokeyD | Ok, I though choice was only used inside other fields | 19:06 |
SmokeyD | in the value_type parameter of other fields | 19:06 |
philiKON | nope | 19:06 |
philiKON | i don't think any field is every designed to be just as part of another field | 19:07 |
SmokeyD | ok, thanks. I get the vocabularies. Very usefull. | 19:07 |
SmokeyD | thanks | 19:07 |
*** gumpa has quit IRC | 19:09 | |
*** gumpa has joined #zope3-dev | 19:10 | |
*** philiKON has quit IRC | 19:10 | |
d2m | mgedmin: have you got any more info on http://davidf.sjsoft.com/files/py2js than the source ? | 19:14 |
mgedmin | no, I just found it on google | 19:14 |
mgedmin | http://www.jtauber.com/blog/2006/05/17/python_equivalent_to_google_web_toolkit | 19:14 |
mgedmin | ian bicking provided the link | 19:14 |
d2m | ok, might be related to the pyjamas project | 19:14 |
benji | d2m: if you're really interested, I have a slightly more advanced py2js converter with doctests | 19:18 |
*** alecm has quit IRC | 19:20 | |
*** romanofski has quit IRC | 19:20 | |
*** alecm has joined #zope3-dev | 19:20 | |
*** gumpa has quit IRC | 19:29 | |
*** gumpa has joined #zope3-dev | 19:29 | |
*** kamalgill has joined #zope3-dev | 19:32 | |
*** elro has quit IRC | 19:45 | |
*** niemeyer has quit IRC | 19:48 | |
*** niemeyer has joined #zope3-dev | 19:48 | |
*** philiKON has joined #zope3-dev | 19:57 | |
*** kobold has quit IRC | 19:58 | |
*** elro has joined #zope3-dev | 20:05 | |
*** alga has quit IRC | 20:18 | |
*** d2m has quit IRC | 20:22 | |
*** volvox_ has quit IRC | 20:24 | |
*** RaFromBRC has joined #zope3-dev | 20:27 | |
*** dobee has joined #zope3-dev | 20:27 | |
*** RaFromBRC is now known as RaAtBRC | 20:29 | |
*** flox has quit IRC | 20:34 | |
*** romanofski has joined #zope3-dev | 20:35 | |
*** faassen has quit IRC | 20:35 | |
*** mkerrin has quit IRC | 20:37 | |
*** d2m has joined #zope3-dev | 20:39 | |
*** replicant has joined #zope3-dev | 20:43 | |
*** regebro has joined #zope3-dev | 20:48 | |
*** dobee has quit IRC | 20:48 | |
*** Aiste has quit IRC | 20:50 | |
*** dobee has joined #zope3-dev | 20:56 | |
*** zbir has quit IRC | 21:00 | |
*** srichter has joined #zope3-dev | 21:05 | |
*** ChanServ sets mode: +o srichter | 21:10 | |
*** rocky is now known as rocky|away | 21:20 | |
*** jinty has quit IRC | 21:23 | |
*** Aiste has joined #zope3-dev | 21:25 | |
*** dobee has quit IRC | 21:38 | |
*** kamalgill is now known as kamal-away | 21:39 | |
*** RaAtBRC is now known as RaAtBRC|away | 21:42 | |
*** regebro has quit IRC | 21:51 | |
*** dobee has joined #zope3-dev | 21:52 | |
*** jkakar has quit IRC | 21:57 | |
*** dunny has joined #zope3-dev | 22:01 | |
*** dobee has quit IRC | 22:07 | |
*** alga has joined #zope3-dev | 22:07 | |
srichter | J1m: if zope.component is used, is the __conform__ method in an object still valued? | 22:12 |
srichter | To me it looks like that the adapter_hook function in zope.component._api suggests that it only looks at the registry to get an answer | 22:13 |
J1m | I'm not really sure what you are asking. | 22:14 |
J1m | Interface __call__ methods honor it. | 22:14 |
srichter | right | 22:14 |
srichter | though I cannot get my __conform__ method to be called | 22:14 |
srichter | how can I turn off the C optimization? | 22:15 |
J1m | remove the .so files | 22:15 |
srichter | ok, thanks | 22:16 |
*** Aiste has quit IRC | 22:27 | |
*** volvox has joined #zope3-dev | 22:30 | |
mgedmin | srichter: zope.component.getAdapter never calls __conform__ | 22:31 |
mgedmin | only the ISomeInterface(foo) spelling checks for __conform__ | 22:31 |
*** flox has joined #zope3-dev | 22:32 | |
srichter | mgedmin: ok; that's what I am using | 22:33 |
srichter | mgedmin: I think I figured out one bit; the error message was very cryptic since the conform call is wrapped by a TypeError exception handling, which masks errors | 22:33 |
*** flox is now known as flox|away | 22:33 | |
srichter | (at least in my case) | 22:33 |
*** stub has quit IRC | 22:34 | |
*** mgedmin has quit IRC | 22:40 | |
*** kamal-away has quit IRC | 22:43 | |
*** philiKON has quit IRC | 22:54 | |
*** philiKON has joined #zope3-dev | 22:56 | |
*** Londo_ has joined #zope3-dev | 23:23 | |
srichter | mgedmin: J1m: Now that I have thought about it a bit, shouldn't zope.component.getAdapter also honor __conform__ or is this an expected difference to the IMyIface(self) call? | 23:23 |
J1m | no yes | 23:24 |
srichter | ok | 23:24 |
*** replicant has quit IRC | 23:27 | |
*** replicant has joined #zope3-dev | 23:28 | |
*** zagy has quit IRC | 23:32 | |
*** RaAtBRC|away is now known as RaAtBRC | 23:50 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!