Hi,
I´m new about Zope, I would like to know if does anybody can help me
in develop a product zope, my idea are: make an engine search (like google),
or make a translator for example translate a word to english-spanish or
spanish-english, or make a personal agenda in zope, all should be
products, so I
would like to know if this is possible to develop in Zope this kind of
ideas? or
Can somebody help me in develop x product. Thanks. Regards. Diana

Quoting [EMAIL PROTECTED]:

Send Zope mailing list submissions to
        zope@zope.org

To subscribe or unsubscribe via the World Wide Web, visit
        http://mail.zope.org/mailman/listinfo/zope
or, via email, send a message with subject or body 'help' to
        [EMAIL PROTECTED]

You can reach the person managing the list at
        [EMAIL PROTECTED]

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Zope digest..."


Today's Topics:

  1. Re: Testing products: Testing all in one batch (Lennart Regebro)
  2. Re: ZOPE and DEBIAN INSTALLTION (Andreas Pakulat)
  3. Zope Scalability (Tom Wilde)
  4. Re: Zope Scalability (Andreas Jung)
  5. Re: Re: ZWiki RecentChanges as RSS feed (Peter Bengtsson)
  6. MailingLogger 2.4.1 and 2.5.0 Released! (Chris Withers)
  7. Re: Re: ZWiki RecentChanges as RSS feed (Simon Michael)
  8. Re: Problem with hasattr() and Zope 2.8.1 (Doyon, Jean-Francois)
  9. Re: Zope Scalability (Jens Vagelpohl)
 10. Re: Re: Problem with hasattr() and Zope 2.8.1 (Paul Winkler)
 11. Re: Re: Problem with hasattr() and Zope 2.8.1 (Paul Winkler)
 12. RE: Zope Scalability (Matthew X. Economou)
 13. Re: Zope Scalability (Jens Vagelpohl)
 14. Re: Zope Scalability (Tim Peters)
 15. Re: Zope Scalability (Andreas Jung)
 16. Re: Zope Scalability (Jens Vagelpohl)
 17. RE: Re: Problem with hasattr() and Zope 2.8.1
     (Doyon, Jean-Francois)
 18. Re: Zope Scalability (Tim Peters)
 19. Re: need help python-zope (Jonathan Cyr)
 20. Re: Re: DTML-tree Custom sort (J Cameron Cooper)
 21. New mailinglist for Zope 3 translators (Philipp von Weitershausen)
 22. Re: Mysql 5? Just curious. (Chris Withers)
 23. Re: INSTALLING gcc (and ZOPE) on DEBIAN  ([EMAIL PROTECTED])
 24. Re: Re: INSTALLING gcc (and ZOPE) on DEBIAN  (Jens Vagelpohl)
 25. Re: ZOPE and DEBIAN INSTALLTION (Jonathan)
 26. Re: Zope Scalability (Lennart Regebro)
 27. Re: Mysql 5? Just curious. (Tino Wildenhain)
 28. Re: Testing products:  Testing all in one batch (Chris Withers)
 29. Re: Re: Presentations Available (Chris Withers)
 30. How to prevent web access to specific folder ? (Vladimir Petrovic)


----------------------------------------------------------------------

Message: 1
Date: Wed, 5 Oct 2005 17:56:28 +0200
From: Lennart Regebro <[EMAIL PROTECTED]>
Subject: Re: [Zope] Testing products: Testing all in one batch
To: Jens Vagelpohl <[EMAIL PROTECTED]>
Cc: Zope ML <zope@zope.org>
Message-ID:
        <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1

On 10/5/05, Jens Vagelpohl <[EMAIL PROTECTED]> wrote:
This is correct, but you're just papering over a deeper problem,
namely bad cleanup in some unit tests.

Sure, but that's how reality looks. It's unfortunate, but there ya go.
--
Lennart Regebro, Nuxeo     http://www.nuxeo.com/
CPS Content Management     http://www.cps-project.org/


------------------------------

Message: 2
Date: Wed, 5 Oct 2005 18:04:43 +0200
From: Andreas Pakulat <[EMAIL PROTECTED]>
Subject: Re: [Zope] ZOPE and DEBIAN INSTALLTION
To: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=us-ascii

On 05.10.05 17:09:45, [EMAIL PROTECTED] wrote:
Hello,

I tried to install ZOPE from sources via "configure - make - make
instance" but unfortunately I always get the following error message
when typing in the "make" command.

> > command 'gcc' failed with exit status 1
> > -basherror:: command not found

Could you please post the whole output that "make" produces? I just
tested this on my box with zope-2.7.7 and it works. Do you have
python-dev installed?

Andreas

--
So you're back... about time...


------------------------------

Message: 3
Date: Wed, 05 Oct 2005 17:37:08 +0100
From: Tom Wilde <[EMAIL PROTECTED]>
Subject: [Zope] Zope Scalability
To: zope@zope.org
Cc: [EMAIL PROTECTED]
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset="us-ascii"

Hi folks,

I've been using Zope for a while now and found it to be an excellent
solution however I've got a few enterprise questions about the
scalability of Zope that just need to be answered.

[ nb: I'm using V2.72 at the moment, not having moved over to V3 ]

ZODB size
What is the maximum size of this file and/or maximum object ID?
=> just how many objects can the zodb hold? millions? tens of
millions..?? billions...??? I have a feeling we'll run out of ram long
before actually hitting the limit but it'd be nice to know the
theoretical top limit.

ExtFile
Managed to serve 500,000 files through extfile - anybody come across an
upper limit here? Planning to serve larger sites off a SAN hopefully -
has anyone tried this?

Zeo and Cataloging
If I have my site on one server and ZCatalog (using TextIndexNG) on
another server (connected by ZEO) where does the actual index operation
occur? Do just the results get propogated to the catalog?

LDAP Authentication
I understand that can use the LDAPUserFolder Product to provide
authentication against an ldap server. Could I throw,say, 50000+ users
at zope using this system?

Load Balancing and Cookie Based Sessions
Currently we use cookie based sessions via cookie crumbler presumably in
a load balanced server setup we'd have to host acl_users ona  ZEO'd
izope instance somewhere on the backend?

thanks in advance, any advice welcome - in a brave new world here.

Tom





-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://mail.zope.org/pipermail/zope/attachments/20051005/da9cb3d8/attachment-0001.htm

------------------------------

Message: 4
Date: Wed, 05 Oct 2005 18:58:21 +0200
From: Andreas Jung <[EMAIL PROTECTED]>
Subject: Re: [Zope] Zope Scalability
To: Tom Wilde <[EMAIL PROTECTED]>, zope@zope.org
Cc: [EMAIL PROTECTED]
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset="us-ascii"



--On 5. Oktober 2005 17:37:08 +0100 Tom Wilde <[EMAIL PROTECTED]>
wrote:

Hi folks,

I've been using Zope for a while now and found it to be an excellent
solution however I've got a few enterprise questions about the
scalability of Zope that just need to be answered.

[ nb: I'm using V2.72 at the moment, not having moved over to V3 ]

ZODB size
What is the maximum size of this file and/or maximum object ID?
=> just how many objects can the zodb hold? millions? tens of
millions..?? billions...??? I have a feeling we'll run out of ram long
before actually hitting the limit but it'd be nice to know the
theoretical top limit.

Several million  objects are common  for large installations. The ZODB
keeps an internal index of the objects (the size is proportional to the
number of objects). In addition you have caches. Their size depends on the
configuration. Running a ZEO client with 1-2  GB of RAM for large
installation is common.



ExtFile
Managed to serve 500,000 files through extfile - anybody come across an
upper limit here? Planning to serve larger sites off a SAN hopefully -
has anyone tried this?

no idea


Zeo and Cataloging
If I have my site on one server and ZCatalog (using TextIndexNG) on
another server (connected by ZEO) where does the actual index operation
occur? Do just the results get propogated to the catalog?

The indexing work is always happens on the ZEO clients, not on the server.
Just the results are transferred to the ZEO Server.


LDAP Authentication
I understand that can use the LDAPUserFolder Product to provide
authentication against an ldap server. Could I throw,say, 50000+ users
at zope using this system?

This should work in general. Possibly it requires some tweaking here and
there depending on your usecases.


Load Balancing and Cookie Based Sessions
Currently we use cookie based sessions via cookie crumbler presumably in
a load balanced server setup we'd have to host acl_users ona  ZEO'd
izope instance somewhere on the backend?


I don't see what sessions have to do with acl_users. In your ZEO setup you
have identical data except sessions on every ZEO client. You just have to
ensure somehow that users get to the same ZEO client for the lifetime of
the session. How this is done depends basically on the load balancer.

-aj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 186 bytes
Desc: not available
Url :
http://mail.zope.org/pipermail/zope/attachments/20051005/af5ca364/attachment-0001.bin

------------------------------

Message: 5
Date: Wed, 5 Oct 2005 18:10:24 +0100
From: Peter Bengtsson <[EMAIL PROTECTED]>
Subject: Re: [Zope] Re: ZWiki RecentChanges as RSS feed
To: Simon Michael <[EMAIL PROTECTED]>
Cc: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1

> http://localhost:8080/wiki/RecentChanges?action=rss_rc I get a nice
> feed of all the recent changes.
>
I'm not familiar with ?action=rss_rc at all, it sounds like a local
customization.

I'm sorry. That was for MoinMoin which we had before but upgraded to
Zwiki. My script was assuming MoinMoin, hence the action=rss_rc stuff.


Current Zwiki has changes_rss and pages_rss methods built in, eg
wiki.AnyPage.pages_rss().


If I do :
"return self.wiki.FrontPage.changes_rss()" I seem to get what I want,
I think. The big problem with this is that it seems to be in reverse
order with the first wiki page first. I'd like it the other way
around.

What I want is basically
http://localhost:8080/wiki/FrontPage/recentchanges but in RSS or RDF
format so that I can use them somewhere else.


--
Peter Bengtsson,
work www.fry-it.com
home www.peterbe.com
hobby www.issuetrackerproduct.com


------------------------------

Message: 6
Date: Wed, 05 Oct 2005 18:24:11 +0100
From: Chris Withers <[EMAIL PROTECTED]>
Subject: [Zope] MailingLogger 2.4.1 and 2.5.0 Released!
To: zope-announce@zope.org, zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

MailingLogger allows configured entries from the event log to be mailed
to a list of configured recipients.

These releases fix a major bug involving email flood protection and add
support for Zope 2.8

These releases fix the following bugs:

- A bug in the email flood protection often meant that no more mail was
  ever sent after midnight on the day when the flood protection was
  triggered.

- Two issues with headers set in the mails sent by MailingLogger were
  corrected.

In addition, support for Zope 2.8 was added.

- MailingLogger 2.4.1 works with Zope 2.7.x

- MailingLogger 2.5.0 works with Zope 2.8.0 and above

For more information, please see:
http://www.simplistix.co.uk/software/zope/mailinglogger

cheers,

Chris

--
Simplistix - Content Management, Zope & Python Consulting
           - http://www.simplistix.co.uk



------------------------------

Message: 7
Date: Wed, 05 Oct 2005 10:20:29 -0700
From: Simon Michael <[EMAIL PROTECTED]>
Subject: Re: [Zope] Re: ZWiki RecentChanges as RSS feed
To: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Peter Bengtsson wrote:
The big problem with this is that it seems to be in reverse
order with the first wiki page first. I'd like it the other way
around.

Have a look at the changes_rss method in RSS.py (in 0.46). It calls
pages(), which is essentially a catalog query restricted to this folder.
You could move this method back to a pythonscript and tweak that query,
or do it in dtml.



------------------------------

Message: 8
Date: Wed, 5 Oct 2005 14:59:53 -0400
From: "Doyon, Jean-Francois" <[EMAIL PROTECTED]>
Subject: [Zope] Re: Problem with hasattr() and Zope 2.8.1
To: zope@zope.org, "'[EMAIL PROTECTED]'" <[EMAIL PROTECTED]>
Message-ID:
        <[EMAIL PROTECTED]>
Content-Type: text/plain

Alec,

Heh, thanks for the reply, I somehow have been using python for a few years
now without ever running into that!

I'm afraid I'm still baffled by it, mostly because I've used attributes
named in such a manner up until now without problem ...

From what you're saying I guess hasattr() being a built-in function, it's
not recognized as part of the instance, so the mangling doesn't work right?

But then, why does this code work ok?

class CrosslingualSupport:
   """ Mix-in class to provide content objects with support for
       cross-lingual properties when needed.
   """

   def clearCrosslingualAttributes(self, lang):
       """ For a given language, remove all internal attributes related to
it. """
       for propertyname in [ propname for propname in
self.__multilingualproperties__.keys() if
self.__multilingualproperties__[propname][1] == True ]:
           attname = '__' + propertyname + '_' + lang
           if hasattr(self, attname): delattr(self, attname)

As you see on the last line, I'm doing a hasattr() on an attribute who's
name starts with 2 underscores, and it works fine in this case (has been for
weeks, if not months).

BUT, in my other situation, it isn't!!  Heck, I think I even tried
getattr(self, '__attribute') and it didn't work right.  ONLY
self.__attribute seems to work.  But then, I'm back to wondering why the
above works fine, and worry that something's going to come bite me later ...

I'm starting to wonder if subclassing and/or my usage of metaclasses might
be a cause for the different behavior?? Either that, or there's something
buggy with zope's versions of get/set/has/delattr ...

Even though I've gotten around it, I'll keep looking, it's driving me nuts
:)

J.F.

On Friday 30 September 2005 12:49 pm, Doyon, Jean-Francois wrote:
Hello,

I'm using new-style classes and properties to implement multilingual
support in my objects. I might therefore have something like:

mything = property(__get_mything)

def __get_mything:
    return self.__mything_en

(Extremely simplified!)

This works fine.

Now however I'm discovering that doing a hasattr() on anything that starts
with 2 underscores always returns false!

So hasattr(self, '__thumbnail') doesn't work as expected, but
hasattr(self,
'_thumbnail') DOES! (All other things being equal of course).

This is actually a feature of python.  Names starting with '__' are mangled
by
the interpreter so that they are not directly accessible outside the class
itself; it is an attempt to simulate private class members.  If you are
finding yourself in need of using a variable that someone else has decided
needed to be named with '__' then you may want to rethink what you are
doing.
It is somewhat rare that a python programmer would use this trick, so you
should probably heed the warning and avoid using it if at all possible.  If
these are methods that you created then just rename them to use a single or
preferably no underscores if you need to use them from outside the class
itself (a single underscore is still bad form, as '_' is an indicator that a

variable is intended to be private and a suggestion that it only be used in
the class itself).

Alec Mitchell
_______________________________________________
Zope maillist  -  Zope <at> 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 )


------------------------------

Message: 9
Date: Wed, 5 Oct 2005 20:13:08 +0100
From: Jens Vagelpohl <[EMAIL PROTECTED]>
Subject: Re: [Zope] Zope Scalability
To: Zope ML <zope@zope.org>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed

ZODB size
What is the maximum size of this file and/or maximum object ID?
=> just how many objects can the zodb hold? millions? tens of
millions..?? billions...??? I have a feeling we'll run out of ram
long before actually hitting the limit but it'd be nice to know the
theoretical top limit.

There is no answer to this question because it cannot be answered. No
one has come against a "limit" yet as far as I know. Hitting RAM
limits depends on the settings you apply to the Zope/ZEO instance(s)
that serve(s) the content and how much RAM you put in, you can
control ZODB memory cache size via zope.conf. No one sets up Zope so
that the whole ZODB is loaded into memory, if that's what you mean.


Zeo and Cataloging
If I have my site on one server and ZCatalog (using TextIndexNG) on
another server (connected by ZEO) where does the actual index
operation occur? Do just the results get propogated to the catalog?

The actual indexing operation happens on the Zope/ZEO instance, and
the resulting database changes are applied to the respective storage
where the catalog resides when the transaction commits.


LDAP Authentication
I understand that can use the LDAPUserFolder Product to provide
authentication against an ldap server. Could I throw,say, 50000+
users at zope using this system?

I see no problems with that. It doesn't matter one bit to the
LDAPUserFolder (or the Zope security machinery) how many user records
you have in the DIT. If there are any slowdowns as the number of user
records increases it is most likely due to misconfigurations on the
LDAP server itself, such as bad indexing or overcomplicateed/
unnecessary access control checks.


Load Balancing and Cookie Based Sessions
Currently we use cookie based sessions via cookie crumbler
presumably in a load balanced server setup we'd have to host
acl_users ona  ZEO'd izope instance somewhere on the backend?

Cookie crumbler has nothing to do with sessions. All it does is set/
read a cookie with credentials and then "fake" regular HTTP
authentication with this data. There is no state information being
stored on the server side, so in a ZEO setup it does not matter which
ZEO client you hit.

jens



------------------------------

Message: 10
Date: Wed, 5 Oct 2005 15:16:31 -0400 (EDT)
From: "Paul Winkler" <[EMAIL PROTECTED]>
Subject: Re: [Zope] Re: Problem with hasattr() and Zope 2.8.1
To: <[EMAIL PROTECTED]>
Cc: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=iso-8859-1

Doyon, Jean-Francois said:
But then, why does this code work ok?

class CrosslingualSupport:
    """ Mix-in class to provide content objects with support for
        cross-lingual properties when needed.
    """

    def clearCrosslingualAttributes(self, lang):
        """ For a given language, remove all internal attributes related
to
it. """
        for propertyname in [ propname for propname in
self.__multilingualproperties__.keys() if
self.__multilingualproperties__[propname][1] == True ]:
            attname = '__' + propertyname + '_' + lang
            if hasattr(self, attname): delattr(self, attname)

As you see on the last line, I'm doing a hasattr() on an attribute who's
name starts with 2 underscores, and it works fine in this case (has been
for weeks, if not months).

But do those names *end* with underscores as well?
If so, Python doesn't mangle those names.
See: http://docs.python.org/ref/atom-identifiers.html

Also, what do you intend to communicate by naming
__multilingualproperties__ with the leading and trailing underscores?
Might want to read the style guide at
http://www.python.org/peps/pep-0008.html
if you haven't lately...  see the "Naming Conventions" section.

--
Paul Winkler
http://www.slinkp.com





------------------------------

Message: 11
Date: Wed, 5 Oct 2005 15:27:57 -0400 (EDT)
From: "Paul Winkler" <[EMAIL PROTECTED]>
Subject: Re: [Zope] Re: Problem with hasattr() and Zope 2.8.1
To: <[EMAIL PROTECTED]>, <zope@zope.org>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=iso-8859-1

        for propertyname in [ propname for propname in
self.__multilingualproperties__.keys() if
self.__multilingualproperties__[propname][1] == True ]:
            attname = '__' + propertyname + '_' + lang
            if hasattr(self, attname): delattr(self, attname)

As you see on the last line, I'm doing a hasattr() on an attribute
who's name starts with 2 underscores, and it works fine in this case
(has been for weeks, if not months).

But do those names *end* with underscores as well?

(snip)

Oops, sent too quickly; actually it looks to me like they don't
(unless lang ends in "__").
However, it's not clear what "it works" means.
Your code above won't raise any exceptions, but it
shouldn't delete any attributes either :-)

class Foo:
....     def __init__(self):
....         self.__blech = 1
....         self.__blah__ = 1
....         self._bloop = 1
....     def do(self):
....         print hasattr(self, "__blech")
....         print hasattr(self, "_Foo__blech")
....         print hasattr(self, "__blah__")
....         print hasattr(self, "_bloop")
....
x = Foo()
x.do()
False
True
True
True

--
Paul Winkler
http://www.slinkp.com





------------------------------

Message: 12
Date: Wed, 5 Oct 2005 15:35:54 -0400
From: "Matthew X. Economou" <[EMAIL PROTECTED]>
Subject: RE: [Zope] Zope Scalability
To: <zope@zope.org>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain;       charset="US-ASCII"

Jens wrote:

There is no answer to this question because it cannot be answered.
No one has come against a "limit" yet as far as I know. Hitting RAM
limits depends on the settings you apply to the Zope/ZEO instance(s)
that serve(s) the content and how much RAM you put in, you can
control ZODB memory cache size via zope.conf. No one sets up Zope so
that the whole ZODB is loaded into memory, if that's what you mean.

I got the impression that he was asking about the maximum object size.
I don't know if there is a limit in Zope itself, but I've run into
problems with PloneExFile when uploading files larger than about 25 MB.
Who knows - it might be a bug in PloneExFile, AttachmentField, or
Archetypes.  I lack the expertise required to troubleshoot the error, so
take this with the proverbial grain of salt.

BTW: I'm using LDAPUserFolder in a 10,000-user Active Directory
environment.  It works great.

Best wishes,
Matthew

--
jsoffron: I'm generally pretty high on national defense...
Mr. Bad Example: Careful...it's a gateway policy. Before you know it,
you'll be mainlining the hard stuff like trade agreements.
jsoffron: Too late...I've been freebasing Nafta all day... Sweet,
sweet NAFTA.
   - As seen on Slashdot


------------------------------

Message: 13
Date: Wed, 5 Oct 2005 20:38:44 +0100
From: Jens Vagelpohl <[EMAIL PROTECTED]>
Subject: Re: [Zope] Zope Scalability
To: Zope ML <zope@zope.org>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed


On 5 Oct 2005, at 20:35, Matthew X. Economou wrote:
There is no answer to this question because it cannot be answered.
No one has come against a "limit" yet as far as I know. Hitting RAM
limits depends on the settings you apply to the Zope/ZEO instance(s)
that serve(s) the content and how much RAM you put in, you can
control ZODB memory cache size via zope.conf. No one sets up Zope so
that the whole ZODB is loaded into memory, if that's what you mean.


I got the impression that he was asking about the maximum object size.

Well, the question was actually "What is the maximum size of this
file and/or maximum object ID? => just how many objects can the zodb
hold?". There is only a theoretical limit that has to do with the
largest index key for the ZODB index I believe, and that is some
ludicrously high number that no one has ever reached.

jens



------------------------------

Message: 14
Date: Wed, 5 Oct 2005 15:57:14 -0400
From: Tim Peters <[EMAIL PROTECTED]>
Subject: Re: [Zope] Zope Scalability
To: Zope ML <zope@zope.org>
Message-ID:
        <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1

[Jens Vagelpohl]
Well, the question was actually "What is the maximum size of this
file and/or maximum object ID? => just how many objects can the zodb
hold?". There is only a theoretical limit that has to do with the
largest index key for the ZODB index I believe, and that is some
ludicrously high number that no one has ever reached.

If you're using FileStorage, a technical detail in the implementation
of the FileStorage index limits the maximum file offset that can be
used to 2**48-1, or about 281 terabytes.  Object IDs are effectively
64-bit integers (masquerading as 8-byte strings).


------------------------------

Message: 15
Date: Wed, 05 Oct 2005 22:01:32 +0200
From: Andreas Jung <[EMAIL PROTECTED]>
Subject: Re: [Zope] Zope Scalability
To: Tim Peters <[EMAIL PROTECTED]>, Zope ML <zope@zope.org>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset="us-ascii"



--On 5. Oktober 2005 15:57:14 -0400 Tim Peters <[EMAIL PROTECTED]> wrote:

[Jens Vagelpohl]
Well, the question was actually "What is the maximum size of this
file and/or maximum object ID? => just how many objects can the zodb
hold?". There is only a theoretical limit that has to do with the
largest index key for the ZODB index I believe, and that is some
ludicrously high number that no one has ever reached.

If you're using FileStorage, a technical detail in the implementation
of the FileStorage index limits the maximum file offset that can be
used to 2**48-1, or about 281 terabytes.  Object IDs are effectively
64-bit integers (masquerading as 8-byte strings).


This would require how much RAM for the index? :-)

-aj

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 186 bytes
Desc: not available
Url :
http://mail.zope.org/pipermail/zope/attachments/20051005/d9a62c79/attachment-0001.bin

------------------------------

Message: 16
Date: Wed, 5 Oct 2005 21:01:53 +0100
From: Jens Vagelpohl <[EMAIL PROTECTED]>
Subject: Re: [Zope] Zope Scalability
To: Zope ML <zope@zope.org>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed


On 5 Oct 2005, at 20:57, Tim Peters wrote:

[Jens Vagelpohl]

Well, the question was actually "What is the maximum size of this
file and/or maximum object ID? => just how many objects can the zodb
hold?". There is only a theoretical limit that has to do with the
largest index key for the ZODB index I believe, and that is some
ludicrously high number that no one has ever reached.


If you're using FileStorage, a technical detail in the implementation
of the FileStorage index limits the maximum file offset that can be
used to 2**48-1, or about 281 terabytes.  Object IDs are effectively
64-bit integers (masquerading as 8-byte strings).

If that's not falling in the "ludicrous" category, I don't know what
is ;)  I suppose we'll all be safe for a while.

jens



------------------------------

Message: 17
Date: Wed, 5 Oct 2005 16:01:43 -0400
From: "Doyon, Jean-Francois" <[EMAIL PROTECTED]>
Subject: RE: [Zope] Re: Problem with hasattr() and Zope 2.8.1
To: "'Paul Winkler'" <[EMAIL PROTECTED]>, zope@zope.org
Message-ID:
        <[EMAIL PROTECTED]>
Content-Type: text/plain

Your example shows my problem, or what I see as a problem anyways:

....     def __init__(self):
....         self.__blech = 1

....     def do(self):
....         print hasattr(self, "__blech")

x = Foo()
x.do()
False

False? Really? hasattr() is used within the context of the class itself, so
the fact it's "private" shouldn't be a problem, should it? If I was using
hasattr() outside the scope/context of the class/instance, then ok ... But
within it? I'm not breaking any "privacy" rules by doing this ... I'd expect
the (un)mangling to be applied here.

Of course, hasattr() is a standalone function ... So maybe that's a factor.

Unintuitive behavior, I say ... Maybe I'll take this to c.l.p :)

So how does an instance test whether it has a private attribute set?  Is it
really proper for to unmangle "manually"? (This would strike me as bad form
when already working within the class/instance)

So then that leaves me wondering why my other pieces of code DON'T do this,
and work the way I initially expect ... No, my "lang" never ends in an "_"
... It's always __attname_en for example, or __attname_fr ... Etc ...

These are internal attributes wrapped by properties, though there is some
metaclass trickery going on here as well ... Might be a factor? The fact
some of the related logic (too long to show here, unless you're really
interested) is dynamically bound through metaclasses maybe changes the scope
of the attribute, and hence its mangling behavior?

Basically I use something like the "autoprop" examples from the Python docs
to do multilingual objects, where the language differences are handled at
the property level (i.e. the getters/setters handle language differences).

It's a pretty slick system if I may say so myself, works very well so far :)
Just don't want my hasattr() to blow up in my face at some unfortunate time!

Ah well, whatever it is, it's working ... I suppose I just don't understand
why ... But this isn't a Zope problem I guess :)

Thanks!
J.F.

-----Original Message-----
From: Paul Winkler [mailto:[EMAIL PROTECTED]
Sent: October 5, 2005 3:28 PM
To: [EMAIL PROTECTED]; zope@zope.org
Subject: Re: [Zope] Re: Problem with hasattr() and Zope 2.8.1

        for propertyname in [ propname for propname in
self.__multilingualproperties__.keys() if
self.__multilingualproperties__[propname][1] == True ]:
            attname = '__' + propertyname + '_' + lang
            if hasattr(self, attname): delattr(self, attname)

As you see on the last line, I'm doing a hasattr() on an attribute
who's name starts with 2 underscores, and it works fine in this case
(has been for weeks, if not months).

But do those names *end* with underscores as well?

(snip)

Oops, sent too quickly; actually it looks to me like they don't (unless lang
ends in "__").
However, it's not clear what "it works" means.
Your code above won't raise any exceptions, but it shouldn't delete any
attributes either :-)

class Foo:
....     def __init__(self):
....         self.__blech = 1
....         self.__blah__ = 1
....         self._bloop = 1
....     def do(self):
....         print hasattr(self, "__blech")
....         print hasattr(self, "_Foo__blech")
....         print hasattr(self, "__blah__")
....         print hasattr(self, "_bloop")
....
x = Foo()
x.do()
False
True
True
True

--
Paul Winkler
http://www.slinkp.com




------------------------------

Message: 18
Date: Wed, 5 Oct 2005 16:10:27 -0400
From: Tim Peters <[EMAIL PROTECTED]>
Subject: Re: [Zope] Zope Scalability
To: Zope ML <zope@zope.org>
Message-ID:
        <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1

[Tim Peters]
If you're using FileStorage, a technical detail in the implementation
of the FileStorage index limits the maximum file offset that can be
used to 2**48-1, or about 281 terabytes.  Object IDs are effectively
64-bit integers (masquerading as 8-byte strings).

[Andreas Jung]
This would require how much RAM for the index? :-)

Unfortunately, that's a complicated question -- the index is an
OOBTree mapping 6-byte strings to a specialized kind of BTree mapping
2-byte strings to 6-byte strings.  The complications add up.  The good
news is that if there are only two objects, say each consuming 128
terabytes, the index has only two entries and is actually very small
<wink>.


------------------------------

Message: 19
Date: Wed, 05 Oct 2005 16:56:13 -0400
From: Jonathan Cyr <[EMAIL PROTECTED]>
Subject: [Zope] Re: need help python-zope
To: ajit mote <[EMAIL PROTECTED]>, "ZOPE.org" <zope@zope.org>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset="iso-8859-1"

Hello,

You may want to send questions to the Zope list at [EMAIL PROTECTED]  You
can join the list at

http://www.zope.org/Resources/MailingLists

The authentication box in Zope by default is part of the standard HTTP
Authentication mechanism, and is available to most web servers.  Very
little can be changed using this standard User Folder.

There are many replacement User Folder objects available for extended
functionality.  Check out the User Folders in Zope.org's Product section.

Here's the latest version of the Zope Book at
http://www.plope.com/Books/2_7Edition

Hope this helps,

-Jon


ajit mote wrote:

Hello,
      i am new to zope.....
      i want to access authentication dialog box which come initialy
(when ZMI link is clicked).....

      i want to know from where this authentication dialog box is
created and opened....

      Hoping u u'stand my problem .....

     Thanks

------------------------------------------------------------------------

No virus found in this incoming message.
Checked by AVG Anti-Virus.
Version: 7.0.344 / Virus Database: 267.11.10/119 - Release Date: 10/4/2005



--
Jonathan Cyr
[EMAIL PROTECTED]

-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://mail.zope.org/pipermail/zope/attachments/20051005/abb6ee68/attachment-0001.htm

------------------------------

Message: 20
Date: Wed, 05 Oct 2005 16:01:09 -0500
From: J Cameron Cooper <[EMAIL PROTECTED]>
Subject: Re: [Zope] Re: DTML-tree Custom sort
Cc: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Chris Beaven wrote:
It's really more a cool way to do lists than if statements  :)

It's technically "list comprehension". Sort of a one-line list transform
tool.

I recommend reading through some of Dive Into Python
(http://diveintopython.org/) for lots more cool hands-on tips on Python
programming. Chapter 3 for a good overview of the uses of Python's
different data types.

Good advice.

                --jcc
--
"Building Websites with Plone"
http://plonebook.packtpub.com/

Enfold Systems, LLC
http://www.enfoldsystems.com


------------------------------

Message: 21
Date: Thu, 06 Oct 2005 16:37:01 +0800
From: Philipp von Weitershausen <[EMAIL PROTECTED]>
Subject: [Zope] New mailinglist for Zope 3 translators
To: zope@zope.org
Cc: zope3-users@zope.org, zope@zope.org, zope-dev@zope.org,
        zope3-dev@zope.org,     [EMAIL PROTECTED]
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1

Hello all,

[Sorry for the cross-post, please CC replies to [EMAIL PROTECTED] only.]

two months ago, I started an initiative [1] to translate Zope 3.1 using
Ubuntu's Launchpad system [2]. Since then, I've received a lot of emails
from numerous volunteers around the world and many of them made some
excellent progress [3]. Thanks to everyone who contributed so far.

A new mailinglist at [EMAIL PROTECTED] will now help translators and
developers like me to coordinate their work. For example, all those
translations will have to be integrated back into the Zope 3.1
repository at some point which has to be coordinated somehow. Also,
translators themselves will want to coordinate the work among them. The
mailinglist will serve as a forum for discussing and coordinating things
like that.

So, if you're involved into Zope 3 translations OR if you would like to
contribute something to Zope 3 by helping to translate it into your
language, please subscribe to the new list [4]. If you have any
questions, feel free to email me or even better the new list.

Best regards

Philipp


[1] http://mail.zope.org/pipermail/zope3-dev/2005-August/015113.html
[2] https://launchpad.net
[3] https://launchpad.net/products/zope/+series/zope3.1/+pots/zope
[4] http://mail.zope.org/mailman/listinfo/zope3-i18n



------------------------------

Message: 22
Date: Thu, 06 Oct 2005 09:49:08 +0100
From: Chris Withers <[EMAIL PROTECTED]>
Subject: Re: [Zope] Mysql 5? Just curious.
To: Richard Smith <[EMAIL PROTECTED]>, zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Richard Smith wrote:
A very quick test shows the basics work just fine (adding a record to a
table and displaying the whole table).  Just watch authentication -
they've changed the password algorithms again as in the 3/4 upgrade.
The work around is in the manual.

rats, probably only an issue if someone's using MySQL encrypted
passwords and SUF, and will require a patch to Zope. *sigh*

Chris

--
Simplistix - Content Management, Zope & Python Consulting
           - http://www.simplistix.co.uk



------------------------------

Message: 23
Date: Thu, 06 Oct 2005 12:39:23 +0200
From: [EMAIL PROTECTED]
Subject: [Zope] Re: INSTALLING gcc (and ZOPE) on DEBIAN
To: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=iso-8859-1


$ which gcc
/usr/bin/gcc

After entering which gcc, I always get the following output: /usr/bin/gcc

The whole error message is (after entering the "make" - command) :

-------------------------------------------
"/usr/bin/python" "/Zope-2.7.5-final/setup.py"\
build --build-base="/Zope-2.7.5-final/build-base/python-2.3"
--build-lib="/Zope-2.7.5-finale/build-base/python-2.3/build-lib"
--build-scripts="/Zope-2.7.5-finale/build-base/python-2.3/build-scripts"
--build-temp="/Zope-2.7.5-final/build-base/python-2.3/build-temp"
running build
running build_py
running build_ext
building 'ExtensionClass' extensions
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -O3 -Wall
-Wstrict-prototypes -fPIC
-I/Zope-2.7.5-final/lib/Components/ExtensionClass/src
-I/usr/include/python2.3 -c
../Components/ExtensionClass/src/ExtensionClass.c -o
/Zope-2.7.5-final/build-base/python-2.3/build-temp/../Components/ExtensionClass/src/ExtensionClass.o

virtual memory exhausted: Nicht genügend Hauptspeicher verfügbar
error: command 'gcc' failed with exit status 1
make *** [build] Fehler 1
-------------------------------------------
__________________________________________________________________________
Erweitern Sie FreeMail zu einem noch leistungsstarkeren E-Mail-Postfach!
Mehr Infos unter http://freemail.web.de/home/landingpad/?mc=021131



------------------------------

Message: 24
Date: Thu, 6 Oct 2005 11:46:29 +0100
From: Jens Vagelpohl <[EMAIL PROTECTED]>
Subject: Re: [Zope] Re: INSTALLING gcc (and ZOPE) on DEBIAN
To: Zope ML <zope@zope.org>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; delsp=yes; format=flowed


On 6 Oct 2005, at 11:39, [EMAIL PROTECTED] wrote:
The whole error message is (after entering the "make" - command) :

-------------------------------------------
"/usr/bin/python" "/Zope-2.7.5-final/setup.py"\
build --build-base="/Zope-2.7.5-final/build-base/python-2.3" --
build-lib="/Zope-2.7.5-finale/build-base/python-2.3/build-lib" --
build-scripts="/Zope-2.7.5-finale/build-base/python-2.3/build-
scripts" --build-temp="/Zope-2.7.5-final/build-base/python-2.3/
build-temp"
running build
running build_py
running build_ext
building 'ExtensionClass' extensions
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-
prototypes -fPIC -I/Zope-2.7.5-final/lib/Components/ExtensionClass/
src -I/usr/include/python2.3 -c ../Components/ExtensionClass/src/
ExtensionClass.c -o /Zope-2.7.5-final/build-base/python-2.3/build-
temp/../Components/ExtensionClass/src/ExtensionClass.o

virtual memory exhausted: Nicht genügend Hauptspeicher verfügbar
error: command 'gcc' failed with exit status 1
make *** [build] Fehler 1

Have you actually *read* the output? It tells you, quite clearly,
even in German, that you don't have enough memory on that machine.

jens



------------------------------

Message: 25
Date: Thu, 6 Oct 2005 07:21:35 -0400
From: "Jonathan" <[EMAIL PROTECTED]>
Subject: Re: [Zope] ZOPE and DEBIAN INSTALLTION
To: <[EMAIL PROTECTED]>, <zope@zope.org>
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; format=flowed; charset="iso-8859-1";
        reply-type=original


----- Original Message -----
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, October 06, 2005 5:58 AM
Subject: Re: [Zope] ZOPE and DEBIAN INSTALLTION




$ which gcc
/usr/bin/gcc

After entering which gcc, I always get the following output: /usr/bin/gcc

The whole error message is (after entering the "make" - command) :

-------------------------------------------
"/usr/bin/python" "/Zope-2.7.5-final/setup.py"\
build --build-base="/Zope-2.7.5-final/build-base/python-2.3"
--build-lib="/Zope-2.7.5-finale/build-base/python-2.3/build-lib"
 --build-scripts="/Zope-2.7.5-finale/build-base/python-2.3/build-scripts"
--build-temp="/Zope-2.7.5-final/build-base/python-2.3/build-temp"
running build
running build_py
running build_ext
building 'ExtensionClass' extensions
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-prototypes
 -fPIC -I/Zope-2.7.5-final/lib/Components/ExtensionClass/src
-I/usr/include/python2.3
 -c ../Components/ExtensionClass/src/ExtensionClass.c -o
/Zope-2.7.5-final/build-base/python-2.3/build-temp/../Components/ExtensionClass/src/ExtensionClass.o

virtual memory exhausted: Nicht genügend Hauptspeicher verfügbar
error: command 'gcc' failed with exit status 1
make *** [build] Fehler 1
-------------------------------------------

I am just guessing, but it looks like your swap file is too small (you need
to allocate more disk space to your swap file - this is an operating system
modification, nothing to do with zope).

hth

Jonathan




------------------------------

Message: 26
Date: Thu, 6 Oct 2005 14:01:39 +0200
From: Lennart Regebro <[EMAIL PROTECTED]>
Subject: Re: [Zope] Zope Scalability
To: Andreas Jung <[EMAIL PROTECTED]>
Cc: Zope ML <zope@zope.org>
Message-ID:
        <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1

On 10/5/05, Andreas Jung <[EMAIL PROTECTED]> wrote:
This would require how much RAM for the index? :-)

It can hold 16 billion billion pointers, with each pointer being 48
bits, thats 96 exabytes (100 million terabytes). Just for the index.
:) As an absolute minimum. Indexes normally being btrees or something
like that, you would surely need several times that in practice. :)

Sorry for any calculation errors, but I can be rather a lot off
without it making a difference, so I can't be bothered to check. ;)
--
Lennart Regebro, Nuxeo     http://www.nuxeo.com/
CPS Content Management     http://www.cps-project.org/


------------------------------

Message: 27
Date: Thu, 06 Oct 2005 14:39:14 +0200
From: Tino Wildenhain <[EMAIL PROTECTED]>
Subject: Re: [Zope] Mysql 5? Just curious.
To: Greg Fischer <[EMAIL PROTECTED]>
Cc: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Greg Fischer schrieb:
This is totally unimportant, but I was just curious to know if anyone is
running Mysql 5 on Zope right now.

why should one? :)


------------------------------

Message: 28
Date: Thu, 06 Oct 2005 14:58:22 +0100
From: Chris Withers <[EMAIL PROTECTED]>
Subject: Re: [Zope] Testing products:  Testing all in one batch
To: Paul Winkler <[EMAIL PROTECTED]>
Cc: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Paul Winkler wrote:
I have a python script that builds a big command line to test.py of the
form:

bin/zopectl test Products/Product1|Products/Products2|etc

...it's not pretty, but it does work, and lets you exclude geb0rken
products like Archetypes from test runs...

Aha, that's much like what I'm doing except that yours runs in one go
and thus exposes tests that don't clean up after themselves.
Which is a Good Thing if I can just find and fix all the nasty things...

No, no, we have several "batches" above, where each batch contains only
products that don't screw up each others' tests. There were some
products, mainly from Plone, which we just had to remove from the test
run altogether, because "THEY SUCK!" ;-)

Irrelevant to this discussion, but A) it's hardly ancient,

But CMF 1.6 is on the horizon now ;-)

and B) upgrading to 1.5.x has been postponed indefinitely as it breaks a
lot of old things (some mine, some third-party) and I have not had any
time to devote a day or three to resolving the incompatibilities.

Ah, the compatability trap :-S

- Some of my own Product tests run fine in isolation but break when
 run alongside other installed product tests.

Then either your tests or the other tests are leaving turds...

Indeed. I wish it was easier to diagnose and resolve problems like this.

Yup, I know of no other way that goign through case-by-case...

The problem is that tests seem to be run in alphabetical order, I
don't know of a way to force another order,

go and get inside unittest.py and have a play...

cheers,

Chris

--
Simplistix - Content Management, Zope & Python Consulting
           - http://www.simplistix.co.uk


------------------------------

Message: 29
Date: Thu, 06 Oct 2005 15:03:48 +0100
From: Chris Withers <[EMAIL PROTECTED]>
Subject: Re: [Zope] Re: Presentations Available
To: Nick Davis <[EMAIL PROTECTED]>
Cc: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Hi Nick,

Nick Davis wrote:
   I agree that 2+ years should have produced maturity. Zope seems to be
a lot more stable than Plone.

Well, Zope has had about 10 years to stabilise, versus Plone's 2 ;-)

   Maybe the reason people focus on your Plone talk is you touch a chord
with people who too are wrestling with Plone.

*grinz* I can but hope...

   Probably at least once a week the thought crosses our minds of
ditching Plone and going back down to the Zope level, with some of our
own stuff sitting on top of CMF. But then, Plone does provide some good
things.

Yep, that's a point I made while giving that talk :-S

If only these things would work consistently and not keep
changing.

You REALLY want them to stay as bad as they were? ;-)

Also while performance problems have been addressed in 2.1

No they haven't...

there seem to still be migration problems and broken products which
prevent people going to 2.1 yet.

Yup.

My colleague has spent a long time
trying to migrate a Product he wrote, from Archetypes 1.2.5 to 1.3.4,
due to the fact he had to hack around problems with references.

Archetypes is the chief sinner in all of this, I'm afraid. It's trying
to solve a very difficult problem, and one which needs tackling with
structure and upfront and intuitive design rather than the organic
tacking on of new "bitz" whenever anyone felt like it that AT has
suffered through...

  My fear is as more features are added, what you describe as a shaky
stack of complex fragile components will get ever more dependencies and
therefore ever more complex and fragile.

Yup.

  People often talk about the steep learning curve of Zope and Plone.
When one is learning it, one tends to blame oneself for finding it
difficult, and its a bad workman blames his tools. After a while though
  the question arises of why this seems to be harder to learn than say,
some mathematical concept commonly considered hard to get your head
around. The answer seems to be because its Plone's complexity and
inconsistencies we are learning. This is not good and doesn't bode well
for increasing mind share.

Indeed.

  This is not actually any worse than the J2EE / Java / class explosion
world, but isn't one of the points of open source and collaboration that
it should be much much better?

Well, that's a different discussion, and one best had over much beer...

  It is great that so many people are willing to contribute their own
free time, effort and resources, to write code that they freely share.

...but, and this may seem harsh, but that doesn't, in itself, mean
they're any good at writing quality software...

  It seems to me your recommendation to people to not use Plone at all,
coming from someone who's been around in the Zope worldfor quite some
time, is quite controversial but may in a roundabout way help if it
forces people to make Plone more stable and mature.

Moi? Controlversial? i'd never do such a thing ;-)

*grinz*

Chris

--
Simplistix - Content Management, Zope & Python Consulting
           - http://www.simplistix.co.uk


------------------------------

Message: 30
Date: Thu, 6 Oct 2005 17:44:57 +0300
From: Vladimir Petrovic <[EMAIL PROTECTED]>
Subject: [Zope] How to prevent web access to specific folder ?
To: zope@zope.org
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain;  charset="utf-8"

In my application built on top of Zope, there is a folder scripts/ which
contains various python scripts. Some of these scrips invoke SQL methods and
accept parameters.

The DTML method (outside the scripts/ folder) calls first scripts to set
parameters and then scripts which invoke SQL methods passing correct
parameters.

However, if users can call directly scripts with HTTP request to zope, they
can pass any parameters they like. So, for security reasons it is important
to deny "direct" access to scripts/ folder.

Also, manager should be able to normally manage this folder from ZMI.

I know this can be done by restricting View/Access Contents information
privileges for folders/scripts to the specific role and then giving DTML
methods proxy role. But, is there any other easier methods ?

I've tried using access_rule, but the is to allow ZMI to work. At the time
when access_rule is called user is not authenticated, so I cannot
check if the current user is manager on not.

If anybody has any ideas, I'll be gratefull,
Vladimir




------------------------------

_______________________________________________
Zope maillist  -  Zope@zope.org



End of Zope Digest, Vol 17, Issue 5
***********************************




_______________________________________________
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 )

Reply via email to