Re: [Zope-dev] Defining Zope 3.

2009-04-17 Thread Carsten Senger
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.

2009-04-17 Thread Carsten Senger
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.

2009-04-17 Thread Carsten Senger
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

2009-04-17 Thread Carsten Senger
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

2009-04-02 Thread Carsten Senger
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

2009-03-16 Thread Carsten Senger
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???

2009-01-18 Thread Carsten Senger
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???

2009-01-16 Thread Carsten Senger
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

2008-10-22 Thread Carsten Senger
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

2008-08-30 Thread Carsten Senger
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 )