Re: zope.i18messageid

Tres Seaver <[email protected]>
Newsgroups gmane.comp.web.zope.devel
Message-ID <[email protected]>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Tres Seaver wrote:
> Chris McDonough wrote:
>> Fabio,
> 
>> Within the last few months you committed the following change to
>> zope.i18nmessageid:
> 
>> http://svn.zope.org/zope.i18nmessageid/trunk/setup.py?rev=102497&r1=101297&r2=102497
> 
>> The commit message is "Fixed the compilation of the C extension with
>> python 2.6: refactored it as a setuptools Feature."  Can I ask what
>> problem was being fixed with this commit?
> 
>> It undid work I did in this revision:
> 
>> http://svn.zope.org/zope.i18nmessageid/trunk/setup.py?rev=99669&r1=97948&r2=99669
> 
>> I should have left a comment in there: the work was effectively there to
>> support building zope.i18nmessageid on Jython and other platforms like
>> GAE that do not support C extensions at all, even optionally.  The
>> package no longer builds on Jython ("error: Setup script exited with
>> error: Compiling extensions is not supported on Jython"), although to be
>> honest I don't really understand why not.  I'm hoping we can find a way
>> to retain whatever fix you were trying to make but still allow the
>> package to build on Jython, but I think I need to understand what
>> problem you were fixing first.
> 
> I think there is a good case for making the C extension an "optional"
> setuptools feature:  nobody acutally *needs* that extension built to
> have their application work.
> 
> Jim has asserted (but not really explained) that the C extension closes
> some kind of security hole.  I don't see any credible attack vector
> myself, but then I no longer believe it worthwhile to devote my own
> energy to defending against malicious TTW programmers.
> 
> The change here is to remove 'standard=True' from the feature
> constructor.  Developers who want the feature enabled can then build the
> egg via:
> 
>   $ python setup.py --with-codeoptimization bdist_egg
> 
> We could then update the zc.recipe.egg:custom recipe to allow specifying
> features to be installed for a given egg.

I asked on the distutils SIG about the status of setuptools' Feature:
PJE basically said that they are deprecated / obsolete, which is why
they aren't documented.

I went ahead and packaged up the 'optional_build_ext' class which Chris
had previously inlined (into the setup.py of zope.i18nmessageid):

  http://svn.zope.org/zope.optionalextension/

  http://pypi.python.org/pypi/zope.optionalextension/1.1

The 1.1 release was to allow for using the package via 'setup_requires',
without having to install it manually first.  Unfortunately, setuptools
stomps on the 'command_packages' lookup, which means it only (currently)
works under plain distutils, and then only if you have already installed it.

I plan to investigate further to fix that problem.


Tres.
- --
===================================================================
Tres Seaver          +1 540-429-0999          [email protected]
Palladion Software   "Excellence by Design"    http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkwvi5wACgkQ+gerLs4ltQ4bVQCdH2zuP2slSgnQ16GiWOnPT2xb
5IEAoLzW/Jq9BL2gL5VgSxt+HyRj6i9j
=8ayy
-----END PGP SIGNATURE-----

_______________________________________________
Zope-Dev maillist  -  [email protected]
https://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope )
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.