python-dev Summary for 2006-05-01 through 2006-05-15

2006-06-14 Thread Steven Bethard
python-dev Summary for 2006-05-01 through 2006-05-15


.. contents::

[The HTML version of this Summary is available at
http://www.python.org/dev/summary/2006-05-01_2006-05-15]



=
Announcements
=

---
Python 2.5 progress
---

Python 2.5 is moving steadily towards its first beta release.  See
`PEP 356`_ for more details and the full schedule.

.. _PEP 356: http://www.python.org/dev/peps/pep-0356/

Contributing threads:

- `2.5 open issues
http://mail.python.org/pipermail/python-dev/2006-May/064965.html`__
- `nag, nag -- 2.5 open issues
http://mail.python.org/pipermail/python-dev/2006-May/064966.html`__

--
Experimental wiki for editing the Python library reference
--

Fredrik Lundh introduced his `pyref wiki`_ which allows wiki-style
editing of the Python Library Reference.  In addition to providing
useful links, like unique URLs for all keywords, types and special
methods, the project aims to make cleaning up and rewriting parts of
the Python documentation as easy as editing a wiki.  If you'd like to
help out, let `Fredrik`_ know your infogami user name and he can add
you to the group.

.. _pyref wiki: http://pyref.infogami.com/
.. _Fredrik: [EMAIL PROTECTED]

Contributing threads:

- `introducing the experimental pyref wiki
http://mail.python.org/pipermail/python-dev/2006-April/064591.html`__
- `introducing the experimental pyref wiki
http://mail.python.org/pipermail/python-dev/2006-May/064720.html`__
- `more pyref: continue in finally statements
http://mail.python.org/pipermail/python-dev/2006-May/064726.html`__
- `more pyref: a better term for string conversion
http://mail.python.org/pipermail/python-dev/2006-May/064746.html`__
- `more pyref: comparison precedence
http://mail.python.org/pipermail/python-dev/2006-May/064754.html`__
- `context guards, context entry values, context managers, context
contexts http://mail.python.org/pipermail/python-dev/2006-May/064853.html`__

---
Assigning a SourceForge group to a tracker item
---

When opening a new patch on the SourceForge tracker, you should set
Group to the earliest still-maintained Python version to which it
applies.  Currently, that means if it's a candidate for backporting,
you should set the Group to 2.4.

Contributing thread:

- `Assigning Group on SF tracker?
http://mail.python.org/pipermail/python-dev/2006-May/064760.html`__


=
Summaries
=


PEP 3102: Keyword-only arguments


This fortnight continued discussion from the last on Talin's PEP for
keyword-only arguments.  Mainly the discussion focused on the second
half of his proposal which would allow positional arguments and
keyword-only arguments at the same time with syntax like::

  def compare(a, b, *, key=None):

The arguments for it included:

* It allows function APIs to be more strict initially to allow API
evolution without breaking existing code.
* It provides better documentation for functions that currently would
have to take a \*\*kwargs.

Still, a lot of people felt uncomfortable with the idea that the
writer of a function could force the callee to use keyword arguments
even if the callee found positional arguments to be simpler.

Contributing thread:

- `PEP 3102: Keyword-only arguments
http://mail.python.org/pipermail/python-dev/2006-May/064656.html`__

--
Alternative to PEP 355 path object
--

Noam Raphael suggested an alternative to the path object suggested by
`PEP 355`_ which makes paths more like tuples than strings.  The
ensuing discussion considered a variety of options, which would have
allowed code something like::

pth = Path(~/foo/bar/baz.tar.gz):
assert pth.basepath == HOMEDIR
assert pth.dirparts == ('foo', 'bar')
assert pth.nameparts == ('baz', 'tar', 'gz')
assert pth.prefix == str(pth.basepath)
assert pth.dir == os.sep.join(pth.dirparts + ('',))
assert pth.name == os.extsep.join(pth.nameparts)

Most of the ideas were also posted to the wiki under
`AlternativePathClass`_ or `AlternativePathDiscussion`_, and a number
of people asked for a PEP, but none was available at the time of this
summary.

.. _PEP 355: http://www.python.org/dev/peps/pep-0355/
.. _AlternativePathClass: http://wiki.python.org/moin/AlternativePathClass
.. _AlternativePathDiscussion:
http://wiki.python.org/moin/AlternativePathDiscussion

Contributing thread:

- `Alternative path suggestion
http://mail.python.org/pipermail/python-dev/2006-May/064802.html`__


Mechanics for Python sprints


Tim Peters started a discussion about the best way to handle SVN
commits during 

ANN: webstring 0.3 released

2006-06-14 Thread L. C. Rees
webstring is a template system designed for programmers whose preferred
template languages are Python and HTML (and XML for people that swing
that way).

Highlights of 0.3 include:

- an HTMLTemplate class for taking questionable HTML and outputting it
as correct XHTML 1.0, XHTML 1.1, or HTML 4.0
- better support for integrating string.Template and Python string
formatting so they can be used to format XML/HTML element and attribute
content.
- better batch templating
- support for pickling webstring's Template objects
- more tests including doctests
- removal of unit tests from the main module
- support for elementtree as an XML processing backend
- speed enhancements
- code changes to increase ease of use
- more documentation and examples

Changelog is available here:

http://psilib.sourceforge.net/CHANGELOG-0.3

The webstring module is available for download at:

http://prdownloads.sourceforge.net/psilib/webstring.py?download

More information on webstring including documentation and a tutorial
can be found at:

http://psilib.sourceforge.net/webstring.html

-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations.html


[ANN] Soya 3D 0.11.2

2006-06-14 Thread Jiba
WHAT IS SOYA 3D ?

Soya 3D is an object oriented high level 3D engine for Python. Somehow, Soya 
is to 3D what Python is to programming. Soya allows to develop very rapidly 
games of other 3D apps, entirely in the Python language (contrary to most of 
the other engine, in which Python is limited to scripting tasks). Moreover, 
Soya is easy to learn and offers pretty good performances.

Soya offers the features one can expect from a 3D engine, like basic scene 
management, cell-shading, shadows, particles systems,... as well as some unique 
features aiming at making 3D development easier and more rapid :
* Soya takes care of coordinate system conversion automatically
* Soya imports Blender models automatically
* Soya automatically regulate the rendering speed by modifying the 
animation quality
* Soya is able to determine automatically which objects are static, and to 
optimize their rendering (work in progress)
* Soya's object, including the ones you may create using inheritance, can 
be saved without writing additional code, using serialization (Pickle or 
Cerealizer)

Soya 3D has been successfully used in the games Slune, Balazar and Balazar 
Brothers, as well as in scientific simulations, teaching,...


WHAT'S NEW ?

The 0.11.x release adds support for Cerealizer (a secure Pickle-like module, 
useful e.g. for network games), a listbox component for the widget system, and 
adds handy aliases to rotation methods.
Finally, there are several bugfixes on shadows, cellshading and raypicking on 
animated models.


Get Soya here:

http://soyaproject.org

(BTW, http://soya3d.org has NEVER be the Soya 3D official page; it is owned 
by a guy that forked Soya, and now uses it to discredits the project. Please 
don't use this URL)

Jiba
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations.html


[ANN] Balazar Brothers 0.3.1, a 3D game in Python!

2006-06-14 Thread Jiba
WHAT IS BALAZAR BROTHERS ?

Balazar Brothers is a 3D Puzzle game, written entirely in Python using the Soya 
3D engine. The game proposes impressive 3D graphics as well as interesting 
challenge. A 3D platform universe, two characters and two keys, one for each 
character. Just press a key and the corresponding character will jump on the 
next platform in front of him. But many traps and moving platforms will get you 
crazy!

See screenshots = 
http://home.gna.org/oomadness/en/balazar_brother/screenshot.html


WHAT'S NEW ?

This release adds:
* a new world, the Pompon forest, with a new music and 9 funny levels :-)
* different animations for each of the two Balazar brothers, and a special 
animation for the brother surf
* an improved cellshading rendering
* the new Cerealizer file format


Get Balazar Brothers here:

http://home.gna.org/oomadness/en/balazar_brother/index.html

Jiba
-- 
http://mail.python.org/mailman/listinfo/python-announce-list

Support the Python Software Foundation:
http://www.python.org/psf/donations.html