Re: [Zope-dev] Defining Zope 3.
Martijn Faassen schrieb: Hey, Martijn Faassen wrote: [snip] I put a mark in my calendar for October to reconsider the future of the name Zope 3 then. Given the responses to this thread I'm starting to lean towards pushing the message to the outside that Zope 3 has become Zope Toolkit, has a different focus, basically just as Gary stated, and really push this message internally (on zope-dev) as well. I'll think it over over the weekend (and discuss it with Christian Theune, as we're near to each other in rl then). Pushing this message inside the zope community is perfect. But I don't see a need to communicate to outsiders that Zope 3 has become the Zope Toolkit. This will be confusing to outsiders. They don't have to think about what Zope 3 is/was. As the discussions showed even participants of the zope developers mailing list have slightly different views on Zope3. We can safely market the Zope Toolkit with it's features and qualities. At the same time we should push everything related to Zope 2|3 (maybe a bit clearer as the Zope 2|3 Application Server) into the background. Insiders will find it. For outsiders we can add a warning that our focus is the Zope Toolkit, there are web frameworks out there that new developers can use, but the Zope 2/3 Application Servers are no longer recommended. If we want to do this right we need to come up with a good way to get the message out. We've traditionally not been very good at this form of communication, so hopefully this is also something we can do better in the New Order. We might want to delay this external communication to when we are in the alpha stage for the Zope Toolkit 1.0 release, however. Communicate to outsiders what we have, not what it should have been, is a start. Zope Toolkit 1.0 sounds great. Whatever naming we choose, it will always have one precondition to succeed: a new zope.org that clearly communicates things with the right priority. ..Carsten Btw: Somebody should change Zope Framework to Zope Toolkit on zope.org and remove the version number v3.5 from the Zope Toolkit documentation. ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] Defining Zope 3.
Rob Miller schrieb: Gary Poster wrote: This message seems like a reasonable start to me: Zope 3 has become focused on supporting frameworks and applications, rather than trying to be one itself. It is now called the Zope Toolkit. Parts of it are used by Zope 2, Plone, Grok, Repoze.bfg, and by many other different applications and frameworks. indeed, this seems to me a very nice message. short, pretty much accurate w/o delving too much into the mind-numbing details. I'm also in love with this simple message. I would make it even more simple when communicating outside the zope developers community: Don't use Zope 3 in any general description. Most references from outsiders to Zope concepts I read the last month referred to Zope, not Zope 3. When we start to promote the Zope Toolkit to the rest of the world, we don't need to make people think about what Zope 3 is/was, even if it's less accurate. Zope has become focused on supporting frameworks and applications, rather than trying to be one itself. These libraries are named the Zope Toolkit. Parts of it are used by the Zope 2 Application Server, Plone, Grok, Repoze.bfg, and by many other different applications and frameworks. [...] ..Carsten ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] Defining Zope 3.
Lennart Regebro schrieb: On Fri, Apr 17, 2009 at 14:47, Carsten Senger sen...@rehfisch.de wrote: Pushing this message inside the zope community is perfect. But I don't see a need to communicate to outsiders that Zope 3 has become the Zope Toolkit. This will be confusing to outsiders. They don't have to think about what Zope 3 is/was. As the discussions showed even participants of the zope developers mailing list have slightly different views on Zope3. Now *I* am confused. I thought the idea was ti push it to outsiders. Pushing it inside the Zope community would contradict what actually is happening, and the community have the ability to understand what is happening, so coming with a contra-factual story within the community would be very confusing, I think. It's my opinion that we should not communicate to outsiders that Zope 3 has become the Zope Toolkit. I'm for simplifying it even more and tell that the focus of the Zope Community it the Zope Toolkit. It would be complicated cause we still have Zope 3 the application server. We have to describe there why it still exists (to outsiders) and how to get it now for the people that need it in their existing applications. Or we have to tell the insiders that we now have ZopeAppServerKGSwhatever, something that they have known as Zope 3. But it's not Zope 3 anymore cause that's now the Zope Toolkit. Communicating that we have to offer the Zope Toolkit with it's features is easier and less confusing to outsiders than mentioning Zope 3. But I didn't want to start a new naming discussion :-(. [...] ..Carsten ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Re: [Zope] cache for python calls
iarly selbir | ski0s schrieb: I'm doing a hard task, trying to improve maximum of possible performance to Zope/Plone server, I already installed CacheFu that improved so much performance, I saw on a blog about cache for Python calls but wasn't explained about your configuration or installation. there are any related product for zope to do it or something like that? There are some packages that cache the results of python functions calls. In Plone, plone.memoize is used often. There are others like bda.cache and gocept.cache. For these caches to work you have to decorate the functions you want to call. The main question is improve a better performance to this server. Any tip/solution is welcome. Like Andreas said find out where your bottlenecks are before you change things. You can take a look at the Zope configuration. To small zodb connection caches decrease performance due to unnecessary unpickeling of objects, to big settings or to many threads can make the operating system swap. ..Carsten ___ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
Re: [Zope-dev] [ZF] Zope Source Code Repository
Martijn Pieters schrieb: On Thu, Apr 2, 2009 at 20:31, Chris Withers ch...@simplistix.co.uk wrote: For me, the ideal would be simply https for everything and using http basic auth for access with more people having access to update the passwd file and maybe Trac or WebSVN for a nice web interface. I volunteer to help with any/all of the above. My offer to set up Trac as a buildout still stands too. Jens, have your concerns about dependencies been answered? I also offer my help to install and maintain a trac and, if needed, the svn installation. ..Carsten ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] Dependencies for ZCML
Hi Tres, Tres Seaver schrieb: For instance, if we provided for each mega-framework a single everything {Grok,Zope2,Zope3ZMI} needs from the Zope framework package, which named all the appropriate dependencies *and* provided the shared ZCML, and then switched each mega-framework and its applications to use that package, we could remove the ZCML from all the other packages (except for BBB). In fact that single package would *be* the mega-framework at that point. zcml contains many useful informations and I often use it as documentation how things fit together. It would be a loss to detach all zcml from the implementations into one/few big zcml packages. Moving them into one dedicated zcml for every package leaves them logically related to the implementation. It's also easier to maintain: - The zcml for an implementation has the same release cycle as the implementation. - Every relevant change in an implementation would need changes by a number of zcml package maintainers (Grok, Zope2, Zope3ZMI) that don't know the package nearly as good as the package maintainer. I would prefer to find them inside the implementation packages where possible. Where it's intended to reduce dependencies a dedicated zcml package like zope.i18n_zcml is at least more clear. ..Carsten ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] [Zope3-Users] Next Step to Bug Resolution???
Tim Cook schrieb: class DataStructure(Persistence): abstract class A typo? Do you use persistent.Persistent? class ItemStructure(DataStructure): abstract class From your description you should define interfaces for Item-/DataStructure, IItem/IDataStructure(Interface), that describe the interfaces the classes implement. The interaces these base classes implement are automatically implemented by their subclasses. class ItemList(ItemStructure): u Logical list data structure, where each item has a value and can be referred to by a name and a positional index in the list. The list may be empty. items = List( value_type=Object(schema=IElement), title=_(uitems), description=_(uPhysical representation of the list.), required=False ) # Did not look at the Object-Part as I don't use that, but afaik you # need to store objects that provide IElement (instances of classes that # implement IElement). class IItemList(Interface): '''describe that IItemLists have an attribute items that is a list. items = List( value_type=Object(schema=IElement), title=_(uitems), description=_(uPhysical representation of the list.), required=False ) from persistent.list import PersistentList class ItemList(ItemStructure): '''fullfill the interface. Have an attribute items that is a list''' implements(IItemsList) items = PersistentList() Forms validate based on the schema (interface). But maybe you want to use FieldProperty also validate if the attribute is written from other python cold. All other classes have to do the same: Interface + implementation class ..Carsten ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] Next Step to Bug Resolution???
Hi Tim, Tim Cook schrieb: Thanks for all the assistance. On Fri, 2009-01-16 at 18:05 +0100, Martijn Faassen wrote: Yes, you do create new schema fields by subclassing from Field. It's just that we saw you putting a field not in a schema but in what looked like a concrete object. This has given me a BIG pause while I'm working on a simpler example. It may actually solve the problem. Are you saying that in order to create a Field that can be used as an attribute of another class; I should define it in an interface and ONLY in an interface? Such like pseudo: import Field class IAbc(Interface) myNewField = Field( and then when I need to use it in a class, simply state that that class implements(IAbc)? that's what Dan Korostelev said early in the thread: Use the Field only in a schema definition. You define your schema in an interface class. The interface class describes the interface (fields, attributes, methods) that a class implements. from zope.interface import Interface, implements from zope.schema import TextLine class IMyTitleSchema(Interface): title = TextLine(...) class MyTitleClass(object or some other baseclass): implements(IMyTitleSchema) title = u The interface tells other components, e.g. forms: An object instanciated from MyTitleClass has an attribute 'title', and title is a TextLine. So a form can render the correct widget. Other components do other things with this information, like validation when the title attribute is written. You never use a schema field in something other than an interface class. Don't do: class MyTitleClass(...): ... title = TextLine(...) obj = MyTitleClass() Sure you can have specialized fields that subclass from Field, TextLine, or another base class. E.g. RegistrationNumber(TextLine) that takes care to validate the input for a special format. But you use them in an interface class, not the class that implements the interface. ..Carsten ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] ZopePublication Competing writes/reads
Hermann Himmelbauer schrieb: Yes, I can reproduce this any time. But I looked into it further, and it's quite weird: - If I access the site without having logged in (= a new cookie/session is created), it does not happen. - If I login, pressing F5 rapidly triggers these warnings. - BUT: If I logout and press F5, the warnings are still there. - If I close the browser/reopen it (- New session), the warning is gone. So it seems, once the session stores/has stored login information, this object leads to a conflict. Interesting - but I still don't know what this object is. You should inspect what happens in zope.session to find out what happens there. From your description and the purpose of sessions probably this happens: Everytime you access you site the session is checked for authentication informations. Sessions have a set timeout. zope.session has to write a new timestamp into the session so it can drop the session after the timeout. This can cause conflicts. When you log out the authentication informations are removed from the session, but the cookie an the server side session are still there. The timestamp is updated with every request. If you close your browser the cookie is removed by the browser. Until you authenticate zope does not create a new session/set a new cookie. I'm quite sure that you can't get conflicts with zope.session if you use two different sessions at the same time and conflicts with one session are rare enough and with zope's conflict resolution no problem (unless you press F5 really fast) ..Carsten ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )
Re: [Zope-dev] z3c.form - extraction from sequence widget
Martin Aspeli schrieb: Marius Gedminas wrote: On Wed, Aug 27, 2008 at 05:15:48PM -0700, Stephan Richter wrote: On Wednesday 27 August 2008, Martin Aspeli wrote: [...] Wait a second, maybe I'm misunderstanding this, but I certainly oppose any change that would make an unchecked checkbox an error during form validation. A required Bool field can have two values: True or False. One is represented by a checked checkbox, the other by an unchecked checkbox. An unchecked checkbox is not missing input and should not trigger required missing errors. What about the case when you have a list of options of which you need to chose one or more? In that case, ticking none is a validation error. Use min_length = 1 and the Field will raise TooShort. ..Carsten ___ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )