Skip to content
This repository has been archived by the owner on Apr 29, 2023. It is now read-only.

Commit

Permalink
doc: update for release
Browse files Browse the repository at this point in the history
  • Loading branch information
pabigot committed Oct 19, 2014
1 parent 9e8a453 commit ddba183
Show file tree
Hide file tree
Showing 4 changed files with 105 additions and 37 deletions.
4 changes: 2 additions & 2 deletions README.txt.in
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
PyXB -- Python W3C XML Schema Bindings
Version @VERSION@

This source release includes pre-built bundles for common XML namespaces,
assorted web service namespaces, and SAML. A bundle for over 75 namespaces
The source releases includes pre-built bundles for common XML namespaces,
assorted web service namespaces, and SAML. A bundle with over 75 namespaces
related to Geographic Information Systems is also available; if you want
those, read pyxb/bundles/opengis/README.txt before installing PyXB.

Expand Down
26 changes: 24 additions & 2 deletions doc/extapi.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ def api_role(role, rawtext, text, lineno, inliner, options={}, content=[]):

def ticket_role(role, rawtext, text, lineno, inliner, options={}, content=[]):
"""
Role `:ticket:` generates references to Trac tickets.
Role `:ticket:` generates references to SourceForge tickets.
"""
trac_root = 'https://sourceforge.net/p/pyxb/tickets'

Expand All @@ -111,7 +111,28 @@ def ticket_role(role, rawtext, text, lineno, inliner, options={}, content=[]):

uri = '%s/%s/' % (trac_root, ticket)
if label is None:
label = '#%s' % (ticket,)
label = 'SF ticket %s' % (ticket,)
node = nodes.reference(rawtext, label, refuri=uri, **options)

return [node], []

def issue_role(role, rawtext, text, lineno, inliner, options={}, content=[]):
"""
Role `:issue:` generates references to github issues.
"""
issue_root = 'https://github.com/pabigot/pyxb/issues'

# assume module is references

mo = __Reference_re.match(text)
label = None
if mo is not None:
( label, text ) = mo.group(1, 2)
ticket = text.strip()

uri = '%s/%s/' % (issue_root, ticket)
if label is None:
label = 'issue %s' % (ticket,)
node = nodes.reference(rawtext, label, refuri=uri, **options)

return [node], []
Expand Down Expand Up @@ -142,5 +163,6 @@ def setup(app):
app.add_config_value('epydoc_basedir', 'api', False)
app.add_config_value('epydoc_prefix', 'doc/html/', False)
app.add_role('ticket', ticket_role)
app.add_role('issue', issue_role)
app.add_role('pyex', pyex_role)

33 changes: 20 additions & 13 deletions doc/index.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,11 @@ examples are in :ref:`userReference`.
Getting Help
************

PyXB is distributed on `SourceForge <http://sourceforge.net/projects/pyxb>`_.
PyXB is distributed on `SourceForge <http://sourceforge.net/projects/pyxb>`_
and `PyPI <https://pypi.python.org/pypi/PyXB/>`_, but active development has
moved to `Github <https://github.com/pabigot/pyxb>`_. Inter-release updates
will be available on github on the `next
<https://github.com/pabigot/pyxb/tree/next>`_ branch of the PyXB repository.

For support, consult the `Help Forum
<https://sourceforge.net/projects/pyxb/forums/forum/956708>`_, or subscribe to
Expand Down Expand Up @@ -68,13 +72,13 @@ An example of a program using PyXB to interact with a `web service
automatically-generated module. First, retrieve the WSDL and generate the
bindings::

llc[837]$ pyxbgen \
llc[566]$ pyxbgen \
--wsdl-location=http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL \
--module=weather \
--write-for-customization
Retrieving WSDL from http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL
WARNING:pyxb.binding.basis:Unable to convert DOM node {http://www.w3.org/2001/XMLSchema}schema at Weather.asmx?WSDL[4:4] to binding
PS urn:uuid:029825d0-a6a3-11e2-a410-c8600024e903
PS urn:uuid:8292a36c-577f-11e4-b592-c8600024e903
WARNING:pyxb.binding.generate:Complex type {http://ws.cdyne.com/WeatherWS/}ArrayOfWeatherDescription renamed to ArrayOfWeatherDescription_
WARNING:pyxb.binding.generate:Complex type {http://ws.cdyne.com/WeatherWS/}ForecastReturn renamed to ForecastReturn_
WARNING:pyxb.binding.generate:Complex type {http://ws.cdyne.com/WeatherWS/}WeatherReturn renamed to WeatherReturn_
Expand All @@ -86,17 +90,20 @@ Then write a program that uses them:

And run it::

llc[838]$ python client_get.py
llc[567]$ python client_get.py
Weather forecast for Saint Paul, MN:
Friday, March 22 2013: Partly Cloudy, from 8 to 31
Saturday, March 23 2013: Partly Cloudy, from 17 to 34
Sunday, March 24 2013: Mostly Cloudy, from 21 to 34
Monday, March 25 2013: Partly Cloudy, from 21 to 33
Tuesday, March 26 2013: Partly Cloudy, from 21 to 34
Wednesday, March 27 2013: Partly Cloudy, from 19 to 36
Thursday, March 28 2013: Partly Cloudy, from 20 to 36

That's it.
Wednesday, August 13 2014: Partly Cloudy, from 63 to 83
Thursday, August 14 2014: Partly Cloudy, from 61 to 82
Friday, August 15 2014: Partly Cloudy, from 65 to 86
Saturday, August 16 2014: Partly Cloudy, from 67 to 84
Sunday, August 17 2014: Partly Cloudy, from 67 to 82
Monday, August 18 2014: Partly Cloudy, from 67 to 83
Tuesday, August 19 2014: Partly Cloudy, from 65 to 84

That's it. (Note: The `CDYNE Weather Service
<http://wsf.cdyne.com/WeatherWS/Weather.asmx?op=GetCityForecastByZIP>`_
sometimes provides out-of-date information. When notified of this they will
fix the problem quickly.)

******************
Indices and tables
Expand Down
79 changes: 59 additions & 20 deletions doc/releases.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,39 +26,78 @@ relaxed policy is:
fixes and most enhancements causing an increment in the third integer

As examples, :ticket:`correcting the content model for weak determinism <112>`
resulted in PyXB 1.2.0, and :ticket:`support of Python 3 <150>` will be part of
PyXB 1.3.0. :ticket:`support for XML Schema 1.1 <217>` will not be addressed
until PyXB 1.4.0 if at all.
resulted in PyXB 1.2.0, and :ticket:`support of Python 3 <150>` was completed
in PyXB 1.2.4. :ticket:`support for XML Schema 1.1 <217>` will not be addressed
until PyXB 1.3.0 if at all.


.. _pyxb-1.3.0:

1.3.x
=====

1.3.0 (TBD)
-------------------

This release incorporates several bug fixes, but in particular adds
:ticket:`support for Python 3 <150>`, with testing on Python versions from 2.6
through 3.4. This is done using the `six <http://pypi.python.org/pypi/six>`_
package. The ``maintainer/2to3`` script used in PyXB 1.2.3 is no longer
supported.

1.2.x
=====

The 1.2.x release series introduces a new content model which provides much
more help in resolving validation errors. Concurrent with this support was
dropped for Python 2.4 and 2.5. The 1.2.x release will work with Python 2.6
and 2.7; some unit tests are skipped under Python 2.6 due to insufficient
support for validating exception attributes.
dropped for Python 2.4 and 2.5. The 1.2.x release works with Python 2.6 and
2.7 and as of PyXB 1.2.4 also with Python 3.1 and later. Some unit tests are
skipped under Python 2.6 due to insufficient support for validating exception
attributes.

.. _pyxb-1.2.4:

1.2.4 (19 Oct 2014)
-------------------

The major feature of this release is a new approach to Python 3 support based
on the `six <https://pypi.python.org/pypi/six/>`_ module. This resolves
:ticket:`support for Python 3 <150>` and allows one release of PyXB to support
Python versions from 2.6 through 3.4, excluding 3.0. The ``maintainer/2to3``
script used in PyXB 1.2.3 is no longer supported. Both the core
implementation and the bindings are compatible with Python 2 and 3.

A second important feature was correct handling of QName by changing the
binding representation from a string to an expanded name that saves the
namespace URI rather than the prefix from the original document.

Finally, with this release primary development and support moves from
SourceForge to `Github <https://github.com/pabigot/pyxb>`_. Inter-release
updates will be made first on github (on the `next
<https://github.com/pabigot/pyxb/tree/next>`_ branch), and pushed to the
SourceForge git repository aperiodically.

Other miscellanous changes:

- Correct rich comparisons for _PluralBinding instances. :ticket:`218`
- Prevent adding non-element content as wildcard elements. :ticket:`219`
- Provide public API to _CF_enumeration helper methods. :ticket:`221`
- Specify requirements for an acceptable DOM implementation. :ticket:`224`
- Rebase xs:decimal on Python decimal.Decimal to provide high precision
support. :ticket:`91`
- Support Python 3. :ticket:`150`
- Fix mis-ordered attribute groups use/resolution issue. :ticket:`230`
- Generate facet values that are valid Python expressions. :ticket:`231`
- Improve validation failure location for simple values. :ticket:`232`
- Disallow name attribute in internal complex types. :issue:`6`
- Avoid unbounded non-deterministic expansion. :issue:`5`
- Reduce namespace intrusion with enumeration types. :issue:`9`
- Add API to replace simple content complex type values. :issue:`7`
- Fix representation and use of QNames. :issue:`13`
- Fix generation of wildcard attributes. :issue:`14`
- Fix validation of wildcard types in DOM instances. :issue:`15`
- Reference github for bug reports. :issue:`16`:
- Eliminate a gratuitous log warning on a validation failure. :issue:`17`
- Eliminate improper assertion on extension binding use of imported bindings.
:issue:`18`
- Support serialization of anonymous namespaces to allow Python copy.deepcopy
module to work on binding instances. :issue:`19`
- Generate bindings that are compatible with both Python 2 and Python 3.
:issue:`22`

.. _pyxb-1.2.3:

1.2.3 (18 Sep 2013)
-------------------

Documentation: http://pyxb.sourceforge.net/PyXB-1.2.3

This is primarily a bug-fix and clean-up release. One new feature is that
starting with this release a Python 3 compatible version of PyXB will be
available in the git repository. For this version, it may be obtained by::
Expand Down

0 comments on commit ddba183

Please sign in to comment.