I've done the first pass through your proposed changes to PyXB.  Thank
you for making them so clean.

I took almost all of the unicode-related stuff.  I didn't incorporate
the code that downloaded the tables automatically: having made
mistakes with that in the past (including when trac/134's change
updated the unicode tables based on the wrong version) I'd rather keep
it manual.  I also didn't take the code that merged adjacent codepoint
blocks; seems like the win would be small, and I'd like to maintain a
clear mapping between the tables and the original files, though that
might not be technically justifiable.

I also took all the XML regular expression updates, which I think are
a great improvement.  In addition to putting your name in the NOTICE
file as a Contributor, I added you as a copyright holder for
pyxb.binding.xmlre.py since a lot of it is now your code.

I made a few changes within the patch if it was tiny (mostly style
issues) or as a second refinement patch.  All are now in the next
branch of the git repository on SourceForge.  If you have concerns
about the changes, let me know.

Still pending are:

* use of the logging module.  I do want something like this, but have
to see how it works controlling logging on a per-module basis (it's
been a couple years since I used that module)

* use of os.pathsep which I'll probably take though with edits; I
haven't looked closely yet

* updates to make tests pass on Windows, which I may put in a branch
until you or somebody else can confirm that the things actually work

Not sure when I'll get to those, but I plan to do a fair amount of
work on PyXB in the next couple weeks so it should be within that time
period.

Peter

On Wed, Jul 4, 2012 at 12:20 PM, Jon Foster <j...@jon-foster.co.uk> wrote:
> Hi Peter,
>
> I've been using PyXB for a while now, and I have some fixes to
> contribute.
>
> I've uploaded my changes to GitHub, here:
>      https://github.com/jonfoster/pyxb1.git
>      git://github.com/jonfoster/pyxb1.git
>
> The changes I've made are:
>
>    - Fix many bugs in the XSD regular expression parsing.
>      These bugs made it impossible to use PyXB for certain
>      schemas.  I've also added a lot of new unit tests for this
>      area.  As part of this work, there were some fixes to the
>      Unicode definitions used by the regular expression code.
>
>    - Change to use Python's standard logging rather than "print".
>      This is partly to prevent PyXB from messing up terminal-based
>      UIs by printing unwanted messages; and partly to ensure the
>      logs go somewhere useful when run in a web app or daemon.
>
>    - Change the archive search path to use the platform's normal
>      path separator, rather than hardcoding ":".  On Linux there is
>      no change; but on Windows the separator changes to ";" so you
>      can use Windows paths with drive letters (e.g. "C:\foo;D:\bar").
>      This was done to help get some of the unit tests running on
>      Windows.  Note that this is a backwards-incompatible change,
>      but given this feature was so limited on Windows I don't think
>      anyone will mind.
>
>    - Fixes and tweaks to get the unit tests working on Windows.
>
> There's one more thing I'm still trying to fix, but might not be
> ready for 1.1.5:
>
>    - I'm trying to get PyXB to be consistent about it's output.
>      Currently it's impossible to reliably reproduce PyXB bindings,
>      since PyXB seems to regularly re-order it's output and renumber
>      anonymous types.  So to get a reproducible build the generated
>      PyXB bindings have to be checked in to version control, and
>      checking in generated files isn't nice.  It's also impossible
>      to look at diffs between different versions of the bindings,
>      because there can be huge differences even if they were
>      generated from the same XSD and have the same effect.
>
> Kind regards,
>
> Jon

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
pyxb-users mailing list
pyxb-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pyxb-users

Reply via email to