IRC log of #zope3-dev for Wednesday, 2007-01-31

*** __gotcha has quit IRC00:00
ksmith99zenwryly: schema.Choice(title=u'Bands', vocabulary="List Bands")00:20
ksmith99zenwryly: see this link
zenwrylyksmith99: thanks00:27
*** jukart has joined #zope3-dev00:30
WebMavenjukart: Hi00:36
*** opetznick_ is now known as opetznick00:52
*** __gotcha has joined #zope3-dev00:57
*** tomus has quit IRC01:10
*** __gotcha_ has joined #zope3-dev01:24
*** rocky is now known as rocky|Zzz01:28
*** __gotcha has quit IRC01:32
*** __gotcha_ is now known as __gotcha01:33
*** ofer has joined #zope3-dev01:35
zenwrylyis direct access to the __parent__ attribute the proper way to work with a contained object's parent?01:42
*** projekt01 has joined #zope3-dev01:47
zenwrylyphiliKON: thanks01:48
*** alga has quit IRC01:52
*** b_52GM has quit IRC01:55
*** b_52GM has joined #zope3-dev01:55
*** J1m has left #zope3-dev02:08
*** softdevr has quit IRC02:25
*** ofer has quit IRC02:26
*** Jell-O-Fishi has quit IRC02:38
*** jukart has quit IRC02:49
*** opetznick_ has joined #zope3-dev02:51
*** opetznick has quit IRC02:51
*** philiKON has quit IRC02:53
*** stub has joined #zope3-dev02:57
*** __gotcha_ has joined #zope3-dev02:58
*** d2m has quit IRC03:04
*** __gotcha has quit IRC03:04
*** __gotcha_ is now known as __gotcha03:05
*** schwendinger has quit IRC03:05
*** timte has quit IRC03:08
*** jinty has quit IRC03:08
*** schwendinger has joined #zope3-dev03:09
*** b_52GM has quit IRC03:11
*** b_52GM has joined #zope3-dev03:12
*** schwendinger has quit IRC03:26
*** opetznick_ has quit IRC03:34
*** __gotcha has quit IRC03:34
*** reco has quit IRC03:35
*** jodok has quit IRC03:35
*** natea has quit IRC03:36
*** b_52Free has joined #zope3-dev03:37
*** dobee has quit IRC03:39
zenwrylyIs there a way to get a list of interfaces provided by an object that subclass a given interface?03:39
*** opetznick has joined #zope3-dev03:49
*** dobee has joined #zope3-dev03:49
*** schwendinger has joined #zope3-dev03:49
*** jodok has joined #zope3-dev03:49
*** natea has joined #zope3-dev03:49
*** b_52GM has quit IRC03:54
*** __gotcha_ has joined #zope3-dev04:00
*** __gotcha_ is now known as __gotcha04:01
*** niemeyer__ has quit IRC04:09
*** natea_ has joined #zope3-dev04:13
*** natea has quit IRC04:16
*** dobee has quit IRC04:19
*** __gotcha has quit IRC04:34
*** jkakar has quit IRC04:47
*** natea_ has quit IRC04:51
*** deo has quit IRC04:51
*** schwendinger has quit IRC05:12
*** yota has quit IRC05:12
*** opetznick has quit IRC05:22
*** alga has joined #zope3-dev05:28
*** Bhaskar has joined #zope3-dev05:44
*** Bhaskar has quit IRC06:13
*** Bhaskar has joined #zope3-dev07:21
*** baijum has joined #zope3-dev07:26
*** alga has quit IRC07:27
*** projekt01 has quit IRC08:07
*** eins has joined #zope3-dev08:12
*** stu1 has joined #zope3-dev08:15
*** naro has joined #zope3-dev08:18
*** stub has quit IRC08:23
Bhaskarwhat is the mechanism of character rendering by zope?08:48
srichterwhat do you mean?08:48
srichterZope is a server application and does not need to render character08:48
Bhaskarsrichter, i know ,the issue is supporting UTF08:51
srichterwell, Zope 3 internally uses unicode08:51
srichterby default all content is converted to UTF-808:51
Bhaskarsrichter, well08:53
srichter(there is no "well" ;-), it was the first feature publically implemented in Zope 3; I was there, trust me)08:54
srichterZope 3 has been translated into Russian, so I am pretty darn sure it works08:55
Bhaskarsrichter, i have involving in localization of schooltool which is based on zope server, so i m interested on the issue of UTF, Nepali support08:56
Bhaskarsrichter, can we translate zope 3 into nepali??08:56
baijumBhaskar, Nepali langauge uses Devanagari script ?08:58
Bhaskarsrichter, how pls tell me?08:58
Bhaskarbaijum, ya08:58
srichterthere is a lot of documentation out there, especially in the books08:59
srichtercurrently I think it is a matter of providing a translation in Launchpad08:59
srichterand then send a message to the mailing list asking for inclusion08:59
srichterto test your translation, just look into: Zope3/src/zope/app/locales how other languages did it09:00
Bhaskarsrichter, how can i get POT to make po09:01
srichterthe POT is right there09:01
srichtercheck out the dir09:01
Bhaskarsrichter, ok09:02
Bhaskarsrichter, then after making po and mo, ??09:02
srichterrestart Zope, set the language in your browser and it just works09:03
Bhaskarsrichter, ok09:04
*** dlk has joined #zope3-dev09:07
*** dlk has left #zope3-dev09:07
Bhaskarsrichter, tell me more about zope09:08
srichteraehm, I don't have time for that; if you are interested in Zope 3, you should pick up one of the books or look at other introductory documentation; I am sure googling for Zope 3 will provide answers quickly09:10
Bhaskarsrichter, ok09:12
*** philiKON_ has joined #zope3-dev09:18
*** strichter has joined #zope3-dev09:30
*** srichter has quit IRC09:30
*** strichter is now known as srichter09:30
*** ChanServ sets mode: +o srichter09:30
*** d2m has joined #zope3-dev09:39
*** alecm has quit IRC09:40
*** naro has quit IRC09:41
*** naro has joined #zope3-dev09:42
romanofskimorjens :)09:44
*** dunny has joined #zope3-dev10:00
*** eins has quit IRC10:01
*** pelle_ has joined #zope3-dev10:35
*** __gotcha_ has joined #zope3-dev11:07
*** __gotcha_ is now known as __gotcha11:07
*** henri_ has joined #zope3-dev11:33
*** henri_ has left #zope3-dev11:36
*** dobee has joined #zope3-dev11:37
*** jinty has joined #zope3-dev11:44
*** softdevr has joined #zope3-dev11:48
*** dobee has quit IRC11:49
*** jfroche has joined #zope3-dev11:51
*** yvl has joined #zope3-dev11:54
*** timte has joined #zope3-dev12:00
*** stu1 is now known as stub12:04
*** lzdych has joined #zope3-dev12:04
*** harobed has joined #zope3-dev12:07
*** natea has joined #zope3-dev12:12
*** reco has joined #zope3-dev12:17
*** coolestuk has joined #zope3-dev12:18
coolestukhi folks12:19
*** softdevr has quit IRC12:21
*** softdevr has joined #zope3-dev12:21
coolestuki'm still trying to get my head round what Zope 3 is (and waiting for The Book) to be delivered12:25
coolestuki'll just talk aloud and say what i think, and hopefully be corrected along the way12:26
coolestuki'm familiar with Notes/Domino and WebObjects12:26
coolestukand it seems to me that Zope 2 fits somewhere in between those two products12:26
coolestukNotes applications combine code & a free-form database (structured on documents and views)12:27
*** dobee has joined #zope3-dev12:28
coolestukWebObjects (at its zenith) uses a model of a datastore & templated components & rules to produce an application12:29
*** BjornT has quit IRC12:29
coolestukZope 2 seems far closer to Notes than WebObjects12:29
coolestukZope 3 looks more like WebObjects12:30
*** BjornT has joined #zope3-dev12:30
coolestukit looks to me like it uses test-driven development & configuration (rules?) & components to provide a generalized application framework that is suitable for more than just HTML applications12:31
coolestukdoes that seem anywhere like a view from 10,000 feet from someone with little experience of either zope 2 or zope 312:32
softdevrI'm just starting at looking to transition from PHP to zope (Zope 3)12:33
softdevrYour statement seems correct to me12:34
softdevrThere is a book that you can dl12:34
coolestukthanks softdevr12:35
softdevrCan't find the link, hang on12:36
*** tonico|away is now known as tonico12:36
coolestukhow are you finding the transition from PHP?12:38
softdevrthere is the'Zope 3 Developer's book' link but other resources on that page too12:39
softdevrWell PHP you can install and pretty much start coding, which you can't with Zope 3.12:40
coolestukyes... so you consciously decided to avoid zope 2?12:40
softdevrBut it seems that I'll be able to develop larger and more complex systems with zope 312:41
*** opetznick has joined #zope3-dev12:41
softdevrYeah I read about the problems of extending apps in Zope 2 and thought that if I started on Zope 2 now by the time I was proficient Zope 3 will have become more wide-spread12:44
coolestukZope 2 is quite amazing too in its own right12:44
coolestuki wanted to do stuff in Notes or WebObjects like e.g. WebDav12:45
coolestukand it is really hard12:45
coolestukand then I remembered Zope and started to look into that again12:45
coolestukI looked at Zope four years ago, but decided it wasn't for me - it just seemed too complex, too many ways to do things and too hard to debug12:46
coolestukand a lot has happened in the Zope world since then - although it looks like a lot of traditional Zopers are having a crisis when it comes to Zope 312:47
coolestukso now I'm just trying to grasp what Zope 3 is, and see if it will fit in with what I need12:47
softdevrI like the idea of component-oriented development in Zope 3.  I've met a little COM before but haven't developed a full system using a component architecture12:48
coolestukWebObjects is component oriented through and through12:49
coolestukand to date it has been the most amazing environment for me for web development12:49
coolestukfor example: since at least the late 1990s one could take a model of a database schema and generate the app from that12:50
coolestukand then use a system of rules to customize that app12:51
coolestukand add customize components, and slot the customized versions in place based on rules12:51
softdevrWhere is it falling short?12:51
coolestukthey even have the mantra: "if your're writing code, you're doing something wrong"12:52
coolestukit's java, and it's basically been abandoned by Apple12:52
coolestukbut they refuse to open-source it12:53
coolestukand they even refuse to state clearly that it is licensed for free use12:53
coolestukso it is really in a limbo area12:53
coolestukbut I'm hopeing that Zope 3 offers even better features than WO12:53
coolestukmaybe not right now, but within the next year12:53
coolestukWO has very good GUI tools, but they are now deprecated by Apple12:54
softdevrI don't see their mantra being very applicable here12:54
coolestukright... so you see that Zope 3 apps require a lot of coding?12:55
*** grahal has joined #zope3-dev12:55
softdevrWell maybe not a lot, but your own model-specific components, and then plug-ins for packages12:58
*** BjornT has quit IRC12:59
*** BjornT has joined #zope3-dev12:59
softdevrThen the app creation in ZCML12:59
*** BjornT has quit IRC13:00
softdevrYou can use the ZMI for app configuration, but apparently that isn't very popular13:01
coolestukright, i noticed that the ZMI seems to be NOT the way that Zope 3 is meant to be used13:02
coolestukin a way, Zope 2 is very like Notes - in a Notes application code/data go together13:02
coolestukand code can go in so many different places inside the application13:02
coolestukand it is hard to do version control, and hard to find where stuff is being executed13:03
coolestukand the 'stuff' being executed can be in many different languages (formulas, vb,java,etc)13:03
coolestukthat all seems quite like Zope 213:03
coolestukand the ZMI seems like the tool to administer and develop zope 2 apps13:04
*** BjornT has joined #zope3-dev13:04
*** opetznick has quit IRC13:04
*** opetznick has joined #zope3-dev13:05
*** niemeyer has joined #zope3-dev13:06
coolestukhow long have you been learning zope 3?13:06
softdevron and off during the last week and a half13:06
coolestukwhat are the biggest problems in learning it, in your opinion?13:07
*** Bhaskar has quit IRC13:08
softdevrIts not been too bad so far.  I picked a few select chapters from that book and asked the odd question here13:09
softdevrOnce you have the Zope server up and running check out the help section there13:10
softdevrIt has the API documentated there13:10
*** dunny has quit IRC13:10
softdevrAlso check out
coolestukI've been spending the last week or so re-learning Zope 2, and I might just have to forget all that and go to Zope 3 instead13:11
softdevrThe hello world screen-cast is a useful starting point13:11
coolestukthanks, i will... I ordered his book from amazon13:11
coolestukcool, i have to go in a minute... but thanks for your input13:12
softdevrsure, and for yours too13:12
coolestuksee you around :-)13:12
softdevryeah, probably :)13:13
coolestuki'm not even sure how to leave IRC, so when I close the window in a minute, it might look like I'm still here... so don't think I'm rude if I don't reply !13:13
*** coolestuk has quit IRC13:13
*** stub has quit IRC13:51
*** rocky|Zzz is now known as rocky13:52
*** BjornT has quit IRC13:54
*** BjornT has joined #zope3-dev13:57
*** harobed_ has joined #zope3-dev14:02
*** mgedmin has joined #zope3-dev14:19
*** BjornT has quit IRC14:25
* baijum thinks z.a.t.functional.defineLayer makes it difficult to understanding the code, it sets a value in test module's namespace14:32
* baijum of course it saves two lines of code14:32
* baijum see this :
* baijum consider the case of importing 'ALayer' from another test setup module14:32
* baijum it will be more confusing for a person reading the code14:32
*** BjornT has joined #zope3-dev14:33
* mgedmin thinks that is slow14:36
* mgedmin likes pastey.net14:36
* baijum pasted to:
mgedminwhat are those two lines of code that defineLayer replaces?14:37
mgedminLayerName = ZCMLLayer(...) ?14:37
mgedminand something else?14:37
baijumyes, LayerName = ZCMLLayer(...)14:38
mgedminah, only that14:38
mgedminplus some magic to find the .zcml in a directory where the test module lives14:39
* baijum thinks LayerName = ZCMLLayer(...) is more straight forward14:40
*** nathany has joined #zope3-dev15:03
mgedminhow's the zope 3 bug tracker migration to launchpad going?15:15
*** mkerrin has joined #zope3-dev15:17
*** baijum changes topic to "logs available at || paste code examples into or or || Zope 3.3.0 is out || bugs live at || Wiki at || FAQ at"15:24
*** philiKON_ has quit IRC15:25
* baijum added to IRC topic15:25
baijumthanks mgedmin for pointing this new pastebin15:26
*** philiKON_ has joined #zope3-dev15:27
* mgedmin checks whether zope 3.3.1 hasn't been released yet... nope15:27
*** baijum has quit IRC15:40
*** d2m has quit IRC15:43
*** alga has joined #zope3-dev16:04
*** J1m has joined #zope3-dev16:05
philiKON_mgedmin: nope, there's a problem on windows16:14
philiKON_a test failure16:14
philiKON_i was hoping mkerrin could look at it16:14
philiKON_it's twisted related16:14
*** ignas has joined #zope3-dev16:18
*** mkerrin has quit IRC16:18
*** ofer has joined #zope3-dev16:37
*** pelle_ has quit IRC16:39
*** benji has joined #zope3-dev16:39
ignashas anyone ever made an object either implement or not implement an interface based on a value of it's attribute (or any other constraint that can be easily checked when computing the list of implemented interfaces of an object) ?16:39
benjiignas: I recall people wanting to do that; I could imagine a using a property instead of an attribute and providing/unproviding when the value is set16:41
ignasbenji: hmm, that will not work for me :/16:45
* ignas is looking at ContainedProxy16:48
*** J1m has quit IRC16:55
*** J1m has joined #zope3-dev16:57
*** J1m has quit IRC17:05
srichterignas: yeah, I do that all the time17:08
srichtertwo approaches:17:09
srichter(1) Use a property as Benji suggests17:09
srichter(2) Write an event listener for object modified event17:09
ignasbut if the modification is not for the object ?17:10
ignasvarious indirect modifications i mean17:10
srichterwell, then you have to create the events, so that subscribers can do their work17:11
srichterI create a lot of events these days for any real customer apps17:11
srichterI often even create special events within the content component property code just to have them17:11
srichteryou have to provide hooks somewhere; properties and events are good implementations to provide those hooks17:12
ignasi would like the "compute stuff when __provides__ is being accessed" way a bit more17:12
srichterin fact, I would claim that one should as carefully design the events as everything else; getting events right makes your life much, much easier17:13
srichterwell, that can be done too of course; but I would worry about speed17:13
srichter__provides__ must be very efficient, since we adapt all the time17:13
ignasthat is also true17:14
srichterignas: is this for ST?17:14
srichterI would implement appropriate events then17:14
srichterST is meant to be pluggable, so you have to provide the hooks17:15
ignasthe whole point of such scheme would be pluggability17:15
ignasbut in a different manner ...17:15
srichteras I said, I do this all the time too17:15
ignaswhat i really want is - different interfaces for different person roles17:16
srichteryep, this is one case where I used them :-)17:16
ignaslike - if a person is added to a teacher group it suddently starts implementing ITeacher17:16
srichteryep :-)17:16
ignasbut i don't want to constraint the role switching to some specific attributes at the same time17:16
srichterso listen to the group added or so event and add an interface when appropriate17:17
srichterthe nice thing about a group is that it is site global17:17
srichterso you cannot override this locally17:17
ignasgroups are easy, but it's a constraint, i am guessing the way schooltool will be extended by other developers17:17
srichterif you want to do the same with roles, it becomes tricky17:17
*** jodok has quit IRC17:18
srichterignas: don't over-engineer now in anticipation of future needs; solve your use case17:18
ignasmaking the role computed every time dynamically is a lot more flexible, but might be way too slow or complex17:18
srichteryeah, I think ST will be fine with a well-defined set of groups + local role assignment to signify ownership17:19
ignassrichter: i have spent like 30 minutes "overengineering" it, so i still have some time :)17:19
srichterthis is what I do in an application and it has worked really well17:19
ignasbut yes, i guess constraining roles to groups would be enough for most real usecases17:20
ignassrichter: btw - any ideas on how to override/remove subscriubers ?17:20
ignasi have a real pain with disabling of functionality for a client17:20
ignasi mean - adding with zope3 is easy17:20
ignasadd a view, add an adapter etc.17:20
srichterunfortunately not; Jim and I really have to work this out :-(17:21
ignasbut what to do with a client who doesn't want to see some links to views in the action_menu17:21
srichterwe talked about this last week when I was at ZC17:21
ignasi see17:21
ignasat least it's not only me having problems :)17:21
srichterfirst of all, the menus suck unless you use viewlets17:22
srichterI remember having converted a few menus but not all17:22
ignaswell - viewlets can't be disablet as well ...17:22
srichteryeah, they can :-)17:22
ignashow ?17:22
srichterwith overridesInclude you can register "disabling viewlets"17:22
ignasany examples ? docs?17:22
srichterbasically, viewlets that declare their availability to be false17:22
*** dobee has quit IRC17:22
ignasincludeOverrides :)17:22
srichteranother, probably better, option would be to make menus configurable17:23
*** philiKON_ has quit IRC17:24
srichteri.e. store site annotations about the menu availability; viewlets can then use this annotation to declare their availability17:24
srichterST has really not thought enough about customization17:24
ignaswell componentization of schooltool has been pushed a lot by having 2 clients with different requirements and a core that has to stay clean of client specific stuff :)17:24
srichterfor my recent client we developed a lot of patterns; I think z3c.baseregistry would be another package to look at17:24
ignas"site annotations" ?17:24
srichtersite annotations: store the menu item availability as data on the SchoolTool instance17:25
ignasi don't really think that storing stuff in ZODB is a very nice way in my case ... the database get's zapped clean at least once a week ...17:25
srichterthat's okay17:25
srichteryou have a really nice tool in ST called the configurator, which you should use for that (btw, I reimplemented it in z3c.configurator, and several people have since contributed to it making it much more flexible)17:26
*** schwendinger has joined #zope3-dev17:27
ignasif only i had the time to try it out ...17:28
ignasis it available as an egg ?17:28
srichterI am not sure, if someone eggified it17:28
srichteryou should really take the time to check it out; it saves you time in the long run17:28
srichterwhy would you not want to profit from the community work?17:29
ignasbecause i have a lot of time and at the same time i am very short on it ...17:29
*** schwendinger has quit IRC17:30
ignasnew configuration engine might save some time, but i am not sure i will be spending much time on the configuration bits at alll17:30
ignasi mean if it was one long "assignment" to make a huge system then - yes, but now it's more like fix a lot of small things and make them work, with all of them adding up to a huge amount of time ...17:33
srichterwe do not publish those packages, because we have too much time, but help people with the same needs out17:33
srichterwell, then just use the ST configurator17:33
srichterit will work17:33
srichteryou basically just need a new configurator plugin that sets up your menu choices17:34
ignashmm, i will do that if i'll have to disable a lot of views, but now it's more like 3-4 viewlet based menu items17:35
ignasand Lyceum module has it's own overrides17:35
ignasso i think overlaying the viewlets will be good enough17:35
ignasjust that i was unaware one can disable viewlets17:36
srichteryep, probably; as long as it does not become too complex17:36
*** tonico is now known as tonico|away17:36
srichterwell, the viewlet framework leaves this up to you to implement17:36
srichterbasically write a viewlet manager that only shows a viewlet if the viewlet's "available" attribute is True17:37
*** alecm has joined #zope3-dev17:38
srichterignas: let me check; I think we even have a z3c package for this sort of thing :-)17:39
ignasegg it :)17:39
srichterthat will be your contribution :-)17:40
*** opetznick has quit IRC17:40
srichterI solve your problems, and you egg it for me :-)17:40
ignaseggs require the "this package does this thing" description17:40
srichteractually it is already egged17:40
ignasand i have trouble comming up with it for someone other people create17:40
ignashow is it called ?17:40
ignasnice :)17:41
ignasthank you :)17:41
srichterbut I think it doe not have the available flag thing, but it is useful for you guys nevertheless17:41
*** _d2m has joined #zope3-dev17:41
*** timte has quit IRC17:42
srichterbtw, Roger and I will develop a lot of generic UI components in the next month that will demonstrate a lot of those type of features17:43
*** nathany has quit IRC17:46
*** __gotcha is now known as __gotchaway17:49
*** J1m has joined #zope3-dev17:51
*** reco has quit IRC17:51
*** J1m has quit IRC17:51
ignassrichter: going to pycon?17:54
srichterno, going skiing instead :-)17:54
*** natea has quit IRC17:55
ignasi haven't attended pycon in my life yet, though when i think about it - i haven't been skiing as well ...17:58
*** __gotchaway has quit IRC17:59
CSWookieWhat do we always say?  "Next year in the holy land!  Next year at PyCon!"18:00
ignasCSWookie: you mean "unholy"?18:03
CSWookieignas: Nah, What's the point of Aliah to a profane place?18:03
CSWookieignas: Although my freind Terry makes a pilgrammage to Vegas at least twice a year...18:04
CSWookie should probably go to vegas.18:05
CSWookieIt'd be the cheapest trip ever, because I can't drink, and don't gamble.18:06
*** natea has joined #zope3-dev18:08
*** nathany has joined #zope3-dev18:09
*** ofer has quit IRC18:09
*** rocky has quit IRC18:10
*** rocky has joined #zope3-dev18:13
*** deo has joined #zope3-dev18:16
*** ccomb has joined #zope3-dev18:17
*** niemeyer_ has joined #zope3-dev18:17
*** niemeyer has quit IRC18:22
*** jfroche has quit IRC18:24
*** dobee has joined #zope3-dev18:25
*** natea has quit IRC18:29
*** niemeyer has joined #zope3-dev18:33
*** niemeyer_ has quit IRC18:37
*** schwendinger has joined #zope3-dev18:41
*** philiKON_ has joined #zope3-dev18:48
*** whit has quit IRC18:51
*** whit has joined #zope3-dev18:57
*** _d2m has quit IRC19:01
*** zagy has quit IRC19:03
*** harobed has quit IRC19:05
ignassrichter: how does one depend on a egg? as they are not kept in they must have some url to put into the dependency links section, though i could not find what the url is ...19:19
srichterno idea19:19
srichterI know absolutely nothing about eggs19:19
srichterI just saw the file there19:19
srichterisn't there a Zope package repository?19:20
ignasyes there is one, but is not in it, it's in download.lovelysystems.com19:20
*** ksmith99 has quit IRC19:21
philiKON_srichter: i can recommend reading about eggs. they're great to work with.19:21
mgedminbut very mysterious19:22
srichteryep, I will eventually; but I just never wear the deployment hat; Jim will eventually force me to look at it with 3.4 :-)19:22
ignasphiliKON_: maybe you have any ideas ? seems to look just like but putting that url into dependency_links does not help ...19:22
philiKON_ignas: i think at least easy_install has an option to make it look at a different pypi19:23
philiKON_i don't get why zthe z3c packages can't be registered with the "official" pypi19:23
*** dobee has quit IRC19:23
ignaseasy_install - yes, but i want my egg to depend on packages in a different location19:23
philiKON_srichter: i'm not a deployment guy either. eggs have other advantages, too19:24
*** mkerrin has joined #zope3-dev19:24
philiKON_ignas: good question...19:25
philiKON_ignas: perhap stalk with the z3c.* maintainers and get these things registered on the official cheeseshop?19:26
srichteractually you can just do it19:26
srichterit is the community namespace :-)19:26
ignasphiliKON_: when it comes to fixing others vs fixing my code - i am fixing my code, because well - that always works ;)19:26
*** ksmith99 has joined #zope3-dev19:27
philiKON_srichter: right. that's what i was trying to point ignas to ;)19:27
philiKON_ignas: just do python register with the packages you need :)19:27
ignasand i am considering unofficial packaging something to be avoided ...19:27
ignasunofficial meaning - not done by the author of the thing19:28
philiKON_then talk to the author...19:28
ignaslooks like lovelysystems is doing the unofficial packaging thing19:32
*** ksmith99 has quit IRC19:34
ignaswith full write permissions for anyone19:34
*** J1m has joined #zope3-dev19:39
ignassrichter: btw, i have a patch (wiating for some cleanup) that makes zope i18n extraction code verify the translation domain in python files when generating the pot file19:42
srichterare you inspecting the AST further?19:43
ignasAST ?19:44
srichterPython byte code tree19:44
srichterhow do you determine the domain?19:44
ignasprobably not - i am just using the python path and importing the module19:44
ignasand then inspecting the '_' in the module19:44
srichterah, importing is what we try to avoid, since it is not always possible19:45
ignasworks for schooltool (with some warnings in broken files)19:45
srichterwe can add it optionally19:45
ignasit is an option19:45
ignasa keyword argument for py_strings19:45
srichterok, I am looking forward to the checkin19:45
*** J1m has quit IRC19:46
ignasi'll just clean it up and mail it to zope3-dev (i have no  commit rights)19:46
srichteryou should get them :-)19:46
srichterit is really hard for one of us to add source of another person19:46
*** zagy has joined #zope3-dev19:46
srichterin other words, we have to wait for the ZC bottleneck :-)19:46
ignasouch, well still - it gives others a reason to review my code ;)19:47
ignasand i get less responsibility for weird stuff :)19:47
CSWookieI'm scared of your code.  I FEAR.19:47
*** harobed_ has quit IRC19:49
*** yvl has quit IRC20:07
*** lzdych has quit IRC20:07
*** naro has quit IRC20:08
*** philiKON_ has quit IRC20:09
*** zagy_ has joined #zope3-dev20:13
*** zagy has quit IRC20:14
*** softdevr has quit IRC20:25
ignasCSWookie: you can look at it if you want :) (sent the patch to Zope3-dev)20:26
CSWookieignas: I'm not on zope3-dev.  My email is full enough.20:30
*** grahal has quit IRC20:34
ignasCSWookie: excuses, excuses ...
*** philiKON_ has joined #zope3-dev20:39
*** jfroche has joined #zope3-dev20:48
*** BjornT has quit IRC20:49
*** BjornT has joined #zope3-dev20:50
ignassrichter: emm, btw - is quite buggy when it comes to i18n ...20:50
*** grahal has joined #zope3-dev20:51
srichterhuh, we use it in a fully I18n'ed package20:51
srichterhuh, we use it in a fully I18n'ed application20:51
*** ccomb has quit IRC20:51
srichterwhat is buggy?20:51
ignasat least not all pt files have their translation domains set i think20:52
ignasand the title for ISimpleMenuItem is TextLine not i18n msgid20:52
srichterthey don't have to, if they do not contain translatable tex20:52
srichterthey don't have to, if they do not contain translatable text20:52 - (Title is translated, but there is no domain)20:53
srichterno, it is not that title is translated20:53
srichterit will always be replaced20:53
ignasoh, hmm, indeed20:54
srichterin fact, the i18n:translate could go away20:54
ignaswhat about the viewlet directive?20:54
srichterI guess this is a left over from the time where I18n message ids were not translated automaticallky20:54
srichterwhat about it?20:54
srichterthe viewlet directive does not contain any translatable strings20:55
srichteryou subclass all of the classes to get your actual menu items and menus20:55
ignasshouldn't the title of a menu item be translatable ?20:55
ignasoh, i see20:55
srichterso all translatable strings are defined as meesage ids20:55
ignasi have confused it with a zcml directive20:55
ignaswhich it is not20:55
*** pelle_ has joined #zope3-dev20:55
ignasi used the custom viewlet directive for menus in schooltool as there were just too many standard menu items20:56
srichterwe use every bit of this package in our application which is 100% translatable, so I would be really surprised about those type of bugs20:56
ignasi see20:56
srichterright, a custom directive might work well in several cases20:57
srichterwe have not done that; our menu items are sufficiently complex that it would not have been useful to us20:57
ignasi guess i should review all the i18n:translate="" in my templates20:58
ignasin schooltool menu directives are a replacement for the menu stuff in <page zcml directive20:58
*** J1m has joined #zope3-dev20:59
srichteryeah, we never fully explored the viewlet menu opportunities in ST20:59
srichterI have definitely done this in the other project and the flexibility allows for very different and exciting menu structures21:00
srichterwell, it was the other way around: the project demanded unexpected, complex menu layouts21:00
ignasi see21:03
ignasany ideas on how to i18n all the numbers displayed in an app ?21:03
ignasnepal has it's own digits21:03
srichter(the usability bebenfits are great though)21:03
* mgedmin wonders if maybe request.locale has a number formatter or something21:03
srichterlike 1 -> \x0xxx ?21:04
srichtermgedmin: it does, but I am pretty sure it does not do arabic number conversion21:04
ignassrichter: yes21:04
srichterit only sets the thousands separator and decimal separator correctly21:04
srichterignas: do you know the region code for nepal?21:05
ignashmm, "ne" ?21:05
srichterne is not in the list21:05
srichtermmh, np is also not in out locales list21:06
ignashmm, rosetta thinks that it's "ne"21:06
srichterok, the language code is21:07
WebMavensrichter: got a moment?21:07
srichterWebMaven: sure21:08
WebMavensrichter: do you know of any exisiting xml validation functions for a Zope3 schema field?21:08
ignassrichter: bye, i have to run now, sorry21:09
*** ignas has quit IRC21:09
*** zagy_ has quit IRC21:09
*** zagy has joined #zope3-dev21:09
srichterWebMaven: no21:09
srichterI would just try to parse it with etree or lxml and if an error occurs have the validation fail21:10
*** jinty has quit IRC21:11
WebMavenwill either of those optionally validate against a DTD?21:11
srichterI think lxml does21:12
WebMavenOK, thanks for the pointer.21:12
WebMavenI have one last question (this might require a long answer you don't have time to giv):21:13
WebMavenhow can I express an *optional* validation of a form?21:14
WebMavenie, I want user feedback that the form content is not (yet) valid, but still save it.21:15
WebMavenmark the saved object as currently invalid.21:15
srichteryou are on your own there21:17
srichterthe entire formlib form implementation is based on the concept that the validation must be fulfilled21:17
WebMavenYeah, I kind of thought that might be the case.21:18
srichterif you want to make things optional, you can either loosen your constraints, provide special validators that ignore certain errors or implement an additional framework for this21:18
srichterI certainly have not done that yet21:18
srichterI think extremely careful about the constraints and validation of data when I do the model code21:19
srichterusually such an optional behavior is a sign that your expectations are wrong21:19
*** jfroche has quit IRC21:19
WebMavenI have an idea that might work. Do you have time to listen to me thinking out loud?21:19
srichterin other words, I would never ever store invalid data; it makes the system inconsistent21:20
WebMavenI can also explain the use-case if you are interested.21:20
srichterthe use case would be best21:20
WebMavenuse-case first, then.21:20
WebMaventhis is user-authored XML.21:20
mgedminI have a good counter-argument for "never storing invalid data"21:20
srichtermgedmin: shoot too :-)21:20
WebMavenWhile the system should never try to parse the invalid xml21:21
mgedminbig chunk of data, I'm halfway through filling it in, but I need to go somewhere, and I'll continue filling it/looking for the bug later (say tomorrow)21:21
WebMavenA user should not lose their work-in-progress just because they can't find the missing />21:21
mgedminI should be able to save the data I've already entered21:21
mgedminand then continue from where I left it21:21
WebMavenmgedmin: exactly.21:22
srichtermgedmin: right, this is a common use case that I have to do too; in fact wizards work this way21:22
srichtermgedmin: in those cases I store the object or the data in a session21:22
mgedminI once read an insightful blog post about validation21:22
mgedminit argued that there's no generic validation21:22
mgedminthere's many kinds of validation for different purposes21:22
srichtermgedmin: I usually develop less strict sub-interfaces for this type of work and verify the entire object before adding it to the system21:22
WebMavensrichter: A session is no good. It might (would) expire.21:22
WebMavenSo, that is the use-case.21:23
srichterthen implement a session that does not expire; some user annotation with todo items or so; plenty of options21:23
WebMavenOK... that's an interesting idea...21:24
srichterstoring invalid data in system is just a recipe for disaster; because it breaks your expectations of the core system21:24
*** zagy_ has joined #zope3-dev21:25
WebMavensrichter: OK. I understand that point.21:25
srichterin one of my applications, for example, we had stati on an object; when the status was "incomplete", the system knew not to trust that object or apply its expectations21:26
WebMavenYes... I was going to suggest something similar.21:26
srichter(I would consider this a cheap shot, but it works, because our entire core policy was based on those stati)21:26
WebMavenIn my case, I was going to store a valid/invalid  flag21:27
srichterbut I do not feel good about it; we should have implemented a to-do like container21:27
WebMavenmake it read-only (or hidden in the form)21:27
WebMavenand set it from the handle_success method.21:28
srichtermmh, that puts a lot of the logic into the form (view code)21:29
srichterI would solve this further down21:29
WebMavenin the object's class?21:29
srichteror at least the valid/invalid flag needs to create events when changed, so that your system can react21:30
srichter(like indexing or so)21:30
srichterthe system must be able to passively get notified about an object becoming valid21:30
srichterfor example, the system ignores an object completely as long as it is invlaid (btw, I would probably use an interface here, since registrations will most likely vary)21:31
srichterbut it must immediately do something, if it gets validated21:31
*** dunny has joined #zope3-dev21:32
*** mgedmin has quit IRC21:32
WebMavenI'm not sure that that works in my case, the 'does something' is an expensive operation that only happens when the user asks for it *and* all the siblings are valid too.21:33
*** turian has joined #zope3-dev21:34
srichterso implement a policy that a parent can never become valid unless all children are valid21:34
srichterevent subscribers are truly wonderful for this sort of thing21:35
*** pelle_ has quit IRC21:35
turianI'm trying to decide between Zope2, Zope3, Plone, Five, &tc., and it's making my head spin21:35
WebMavenI understand the approach. It will take some time for me to work that into the implementation.21:35
turianCan anyway talk me through this a bit?21:35
WebMavensrichter: meanwhile, I am a little unsure how to move the optional validation (to set the flag) into the class.21:36
WebMaventurian: sure21:36
turianWebMaven: Basically, I have an ambitious project in mind21:36
WebMavensrichter: this is a ZAlchemy object, BTW21:36
turianI imagine it will take me a while to build it21:37
turianWhich is fine21:37
turianBasically, a sort of all-in-one wiki to organize my life21:37
turianAnd integrate stuff like todo lists, contact management, blogging, &tc.21:37
srichterWebMaven: yeah, so there you go again; another disadvantage of SQL-based objects; you cannot directly provide interfaces; what a shame; you have no choice but to implement a flag attribute21:38
turianReviews of music, books, movies, restaurants21:38
turianIntegration with maps (e.g. google maps)21:38
WebMavensrichter: I can't?21:38
*** zagy has quit IRC21:38
srichterWebMaven: objects get always destroyed after a while, right?21:39
turianAnd then some smarter stuff, using some NLP and AI to do things automagically21:39
turianWebMaven: With me so far?21:39
srichterWebMaven: It will only work, if you store an object stub in the ZODB21:39
turianI don't mind if it takes me a while to build.21:39
WebMaventurian: you're right, that is an ambitious project.21:39
turianBut nonetheless, I don't want to reinvent the wheel21:39
srichterWebMaven: but it would also mean that the relational database does not represent the complete state of the object21:39
turianI think if I take it in small steps, then it should be fine21:39
WebMavensrichter: Ah.21:39
WebMavenYes, I see.21:40
turianI want to be able to do really simple stuff first21:40
*** jfroche has joined #zope3-dev21:40
turianLike just enter content in an unorganized fashion21:40
turianBut at least have it keep TRACK of everything I don't want to forget21:40
turianThen, later on, I want to be able to make it more sophisticated21:40
turianAnd when I define certain types (like a 'contact' type)21:41
*** grahal has quit IRC21:41
turianI can go back to the stuff I already have entered and make it that type21:41
turianSo what I'm looking for is:21:41
turian1) A platform that will let me get up and running relatively quickly, allowing me to store information (unorganized)21:41
WebMaventurian: have you ever done anything this complex before?21:42
turianwith complete revision history and whatnot.21:42
turianWebMaven: Web developmentwise, no, but for other software, yeah21:42
turianI'm capable of learning whatever it is I want to learn, I just don't want to waste the time learning ten different things21:42
turianand going in ten different directions, rather than making progress.21:43
WebMavenTurian, your best bet is probably to pick a system that does *most* of what you need, and add to it.21:43
turianWhich is what?21:43
WebMavenMost likely Plone.21:43
*** rocky is now known as rocky|away21:44
WebMavenBut, because it is a large, complex system, it will take time to learn.21:44
ktwilightbut it's a wiki no? go for a wiki platform?21:44
turianktwilight: ?21:45
turianIt is or it isn't a wiki?21:45
WebMavenktwilight: Plone is not a wiki platform per-se, but it does have wiki functionality as an add-on.21:45
ktwilighttrue. but i would look also into wiki platforms, then weight it all out. in terms of cost, time, stability and future-proof21:45
ktwilightbut meh, i dunno. just my views. but plone can be considered.21:46
WebMavenOne of plone's wiki add-ons *is* a wiki platform in it's own right: Zwiki.21:46
turianktwilight: I looked into wiki platforms a while back, and remember deciding on something zope-based21:46
ktwilightgotta look into flexibility too. cross-check your requirements against all21:47
turianktwilight: Although I'd appreciate any other suggestions you have.21:47
turianHere are my requirements:21:47
WebMavenSure. I only gave my opinion, which is worth exactly what you paid for it.21:47
srichterI think for what you want to do, you are best off with a Zope solution (be it Plone or whatever)21:48
turian1) I'd like to be able to get it up and running relatively quickly, so I can just start dropping stuff in and not forgetting about it.21:48
srichterbecause you want to morph objects, which pure wiki platforms would be hard to bend to21:48
ktwilightbut which zope...? ;)21:48
turian2) I'd like it to remember a lot of stuff (e.g. complete revision history with timestamps)21:48
srichterI am too biased to give an opinion; my answer will always be: pure Zope 321:49
turian3) I'd like it to be powerful enough to define types (e.g. 'contact', etc.)21:49
* ktwilight likes pure Z321:49
*** d2m has joined #zope3-dev21:49
turian4) I'd like to be able to twiddle the content directly21:50
turianMore on 4). Let's say I sit down and have a lot of unstructured entries.21:50
turianThen, I go back an implement named-entity detection. So I want to go back and convert some entries into a different type, and extract data and fill in structured fields21:51
turianWill plone/zwiki allow me to do that?21:51
WebMaventurian: well, the underlying platform won't fight you to do that, but you will have to create that functionality yourself.21:52
WebMaventhat was what srichter meant.21:52
turianAre there other wiki solutions in the zope framework?21:52
WebMavengoogle it.21:52
WebMaven(that means yes)21:53
srichterZope 3 also has a very simple, minimal wiki implementation (that probably needs to be updated)21:54
srichterbut that could be as a quick start21:54
srichterif you are a seasoned programmer, you will have more fun with Zope 3 than Zope 2/Plone21:54
turiansrichter: Interesting.21:55
turiansrichter: Except I'm leery when you say "quick start" with "minimal"21:55
srichterwell, you will have something21:55
srichteryou are not starting blank (though this is a really attractive option to me all the time)21:56
turianStarting blank is nice, but I'm trying to avoid that temptation :)21:56
srichterwell, you have a strong framwork to support the development21:56
turianMasochism stopped being my goal when I realized I'd really like to get something off the ground, instead of just planning21:56
turianHow mature is zwiki for zope 3?21:58
turianI am looking at the webpage21:58
turianBut it is not very specific21:58
srichternot at all21:58
srichterit supports basic link replacement and page creation21:59
srichterthe Web site uses the Zope 2 version, which is pretty advanced21:59
srichterbut I have a feeling you want less features anyways or be able to control them well21:59
turianThe only feature I really want to start is complete revision history22:00
srichterI wonder whether even Zope 2's version has that; it probably does22:00
srichterZope 3 has a really nice library for revision history22:01
srichter(a la SVN)22:01
turiansrichter: Really?22:01
srichteryep, including branching et al22:01
turianAlso, what about integrating other sorts of RCS?22:01
turianI had this crazy notion22:02
srichteryou would have to do this yourself, but Python has a nice high-level API to SVN22:02
turianThat it might be interesting to have DARCS-like *decentralized* patch support22:02
srichterbut then you would store your objects in SVN and not ZODB and I think this might be less desirable22:02
turianAnd then allow different users of the software to pass patches back and forth22:02
turianBut this is a big can of worms22:03
turianto implement I imagine22:03
srichterI would not go there22:03
WebMaventurian: patches for content?22:03
turianWebMaven: Yes.22:03
WebMaventurian: end-users can't even mange to use MS-Word's track changes functionality. Don't waste your time.22:04
turiansrichter: I guess the important thing is that my design *allows* this sort of thing, and doesn't hinder it, even if I don't implement it.22:04
turianWebMaven: Not for end-users.22:05
turianBut it's like, let's say ten people are using the software.22:05
WebMavenI get it. OK.22:06
turianone sec22:06
*** mgedmin has joined #zope3-dev22:07
turiansrichter: So zc.vault is the zodb revision control system?22:07
turianSee here's the thing22:07
WebMavensrichter: getting back to my problem, given that these are ZAlchemy objects, and I need to store a 'valid' boolean flag, where should I put the function to mark the object as valid/invalid?22:08
srichtertough, I guess somewhere in the success method would be fine22:08
srichterI do not know the workflow of formlib out of the top of my head well enough to make a specific question22:09
srichterof course you can also allow invalid data to be passed in and implement a property in the model22:09
turiansrichter: How do I learn to use zc.vault? Just a high-level pointer is fine.22:09
srichteractually that is much better22:09
WebMaventhat;s OK, I've got a good-enough handle on that, I think.22:09
turiansrichter: Also, does it have complete revision support?22:09
srichterturian: all packages come with *.txt files these days22:10
srichterturian: they are full with code that can be executed22:10
srichterturian: we call this documentation tests (short doctests)22:10
turianSo let's so I want to really drill down to what I need right now22:11
turianAnd skip the whole wiki business22:11
turianCan I publish my content to text-files in the filesystem22:11
turianedit them using 'vi'22:11
turianand then commit them22:11
srichteryeah, there are plenty of solutions for this22:11
srichterthere is an external editor feature22:12
srichteryou can also develop an FTP frontend, etc22:12
turianWell, I'm trying to develop as little as possible while I get the bare-bones laid out22:12
srichterturian: I suggest buying the Zope 3 books and get started with that22:12
turianWhat about the online book?22:12
srichterthe book is very outdated22:13
turianWhich book(s) do you recommend?22:13
srichterI think that Phillip's 2nd edition will be best22:14
srichteryou can also my book for reference and other insights, but it is also outdated22:14
turianoh wow22:15
turianthat edition just came out this month huh22:16
*** reco has joined #zope3-dev22:16
*** mkerrin has quit IRC22:17
turianIn fact, it's not even out yet22:18
srichteryeah, it is out22:18
srichterpeople have bought it already as far as I know22:19
turianWalmart online says it won't ship until 4/28 :(22:20
turianAmazon and others don't seem to have it either22:20
srichterphiliKON_: is that right?22:21
srichterturian: best check out www.worldcookery.com22:21
turianI guess I can buy it from the publisher22:28
turianThey will ship it in 3-4 weeks, they say22:29
turianWhat do you recommend I read in the meantime?22:29
turianMy library has edition 122:29
turianAnd then there's your online book22:29
*** pelle_ has joined #zope3-dev22:29
*** pelle_ has quit IRC22:30
* philiKON_ is here now22:30
philiKON_turian: according to springer NYC, it'll ship feb 3rd in the states22:31
philiKON_it's already shipping in europe22:31 says 3-4 weeks22:31
philiKON_yeah, i know22:31
turianI'm in New York, maybe springer has a store here22:31
philiKON_could be22:32
philiKON_i'd call 'em if i were you22:32
philiKON_lemme know what they say :)22:32
philiKON_others are asking 'bout it too22:32
turianCalling them now22:33
*** mgedmin has quit IRC22:35
*** iva1 has joined #zope3-dev22:38
turianThey say 3-4 weeks is the date if they order from germany22:38
turianwhich is where it's in stock22:38
turianBut that the book is being released in NY on the 2nd.22:38
turianSo if I order it online, hypothetically it should be in my mailbox on the 3rd22:38
philiKON_that's good news22:38
philiKON_that's friday22:38
turiansince the warehouse is in Brooklyn22:38
turian"the logic was written that way"22:39
turianHowever, I don't entirely trust that my order won't be held for the german distributor22:39
turianSo I'm just going to wait a few days until has accurate information22:39
turianAlso, they told me that you usta be able to browse the books in their store22:39
turianBut that, since 9/11, they don't allow that anymore, bcz the spring street office is close to the WTC site22:40
turianWhich isn't really true, IMHO, it's SoHo, not TriBeCa or lower manhattan22:40
philiKON_sounds like a poor excuse22:40
turianyeah whatever :P22:40
turianAnyway, hopefully I'll have the book by next week22:41
turianLooking forward to it.22:41
philiKON_turian: cool22:41
philiKON_turian: perhaps you can let me know when you've got it22:42
philiKON_so i can tell other americans that it's shipping now...22:42
philiKON_cool, thanks22:42
turianI put it in my calendar22:42
turianSo hopefully it won't slip my mind ;)22:42
*** iva1 has quit IRC22:48
*** reco has quit IRC22:49
*** __gotchaway has joined #zope3-dev23:24
*** ivan has joined #zope3-dev23:30
*** ivan has left #zope3-dev23:35
*** d2m has quit IRC23:37
*** ignas has joined #zope3-dev23:42
*** jfroche has quit IRC23:53
*** Aiste has quit IRC23:56

Generated by 2.15.1 by Marius Gedminas - find it at!