Jurko Gospodnetić
23bc0434a2
add todo comment on cleaning up XSD Schema build step timing
2015-07-01 11:14:52 +02:00
Jurko Gospodnetić
27970c43fc
update comment wording (stylistic)
2015-07-01 10:50:21 +02:00
Jurko Gospodnetić
a84fe3a57d
add missing empty line in function comment (stylistic, PEP-8)
2015-07-01 10:48:29 +02:00
Jurko Gospodnetić
556ee3b67d
add implementation & todo comment on how Schema objects get built
2015-07-01 10:43:35 +02:00
Jurko Gospodnetić
085165042d
refactor DepList.sort() to a standalone dependency_sort() function
...
Renamed the suds.xsd.deplist module to suds.xsd.depsort.
Removed the DepList class and replaced its main/only functionality with a single
dependency_sort() function taking a dependency dictionary and returning the same
list that used to be returned by the DepList.sort() method.
The returned list's contents matches the items returned by the dependency
dictionary's items() method, but sorted so that dependencies come first.
Updated project release notes.
Additional included changes:
* cleaned up the test_dependency_sort.py test module - cleanly separated
basic tests, test utilities and test utility tests
* added a test to make sure dependency_sort() does not modify its input data
* documented that any entries found listed as dependencies, but that do not
have their own dependencies listed as well, are logged & ignored
2014-06-27 16:17:25 +02:00
Jurko Gospodnetić
d17d389477
clean up the suds.xsd.schema module
...
Reordered module imports alphabetically.
Always passing a tuple as a %-string formatting parameter.
Used double instead of single quotes in string literals.
Docstring & comment cleanup.
2014-02-28 01:51:41 +01:00
Jurko Gospodnetić
e5cf6ba74b
correct try:/except: blocks eating up internal Python exceptions
...
All such block replaced with blocks catching Exception subclasses only so they
no longer eat up internal Python exceptions like SystemExit or
KeyboardInterrupt.
2014-02-28 00:51:15 +01:00
Jurko Gospodnetić
73e1c25717
clean up coding style in several suds Python modules
...
Consistently using double instead of single quotes.
Using consistent empty line spacing between method definitions.
All doctrings PEP8-ified.
Improved several docstrings.
Using 'xsd:' XML namespace alias when referring to the XSD namespace instead of
sometimes using 'xs:' and sometimes 'xsd:'.
Ordered some descriptive tuple and dictionary member definitions alphabetically.
Order imports alphabetically.
Comment line wrapping cleaned up.
Miscellaneous minor stylistic code & comment changes.
2014-01-26 14:49:18 +01:00
Jurko Gospodnetić
ee8a547924
remove unnecessary logger objects
...
Code cleaned up a bit while looking for unused logger objects:
* Trailing spaces removed.
* Reordered import directives.
* Removed some unnecessary import directives.
2013-12-26 03:32:33 +01:00
Jurko Gospodnetić
eea88607fb
correct comment typos
2013-11-29 15:19:30 +01:00
Jurko Gospodnetić
792a0f4b43
Removed the str_to_utf8_in_py2() Python 2/3 compatibility quick fix.
...
No longer seems to be needed. Printing out schema & schema objects as strings
now seems to work fine and use their unicode representations. Updated todo list.
2013-03-29 05:31:17 +01:00
Jurko Gospodnetić
da3862e6be
Typo corrections & other minor stylistic comment changes. Updated todo list.
2011-12-21 19:55:25 +01:00
Jurko Gospodnetić
6c61aefc89
Encoding related changes needed for Python 3 support.
2011-12-20 15:49:35 +01:00
Jurko Gospodnetić
4b63f7c9a7
Replace all __str__ methods by UnicodeMixin class.
2011-12-20 15:49:35 +01:00
Jurko Gospodnetić
7d96121e70
Cleanup - trimmed trailing spaces, removed unnecessary imports, etc.
...
Trimmed trailing spaces. Removed unnecessary imports. Standardized quote usage
in some modules.
2011-12-20 15:12:32 +01:00
jortel
780f8f85ff
Fix duplicate DocumentPlugin.parsed() called when wsdl imports schema.
2010-09-01 17:38:56 +00:00
jortel
9c23c8d766
plugin API - version 2.
2010-08-24 14:42:24 +00:00
jortel
4a6c53fea5
Modified plugin API to: initialized(), loaded(), sending() & received().
2010-05-13 17:51:00 +00:00
jortel
a5fde7a6b0
Add Plugins facility. Supports hooks for onInit(), onLoad(), onSend() onReply() events.
2010-05-11 20:44:48 +00:00
jortel
9053f325c5
Update epydocs suds/xsd/schema.py
2010-05-06 21:53:31 +00:00
jortel
63eb8bb550
Enable WSDL caching as pickled object; refactor caching; remove /options/ attributes on object within (xsd) package and instead - pass to methods as needed (which was only a few); remove /schema/ & /options/ attributes from objects in (binding) package and get from wsdl instead; replace Object subclasses with Facade in wsdl for better pickling - true subclasses have no value here anyway.
2010-01-26 22:19:21 +00:00
jortel
9c80ebd8f9
Remove metric gathering/printing for autoblend().
2009-12-11 01:04:06 +00:00
jortel
e9ca56a54a
Add autoblend feature (disabled by default). The feature (option) ensures that all schemas defined in the wsdl import each other. This feature remains experimental because I'm not sure of the side effects. We can enable by default if does not create any problems.
2009-12-11 01:02:02 +00:00
jortel
b3baaad313
Centralize the conversion of schema objects attribute values from references (qualified references) qrefs. This provides several benifits: 1) deduplicated code; 2) ns prefix resolution happens before merging so that it happends in proper context.
2009-09-28 20:38:14 +00:00
jortel
b1860288d0
Complete the list of XSD builtin (simple) types. Update schema.builtin() to match tag in addition to namespace.
2009-09-01 16:13:34 +00:00
jortel
839eadf022
Add 'xstq' option to control when xsi:type values should be qualified by namespace. Rename 'schemadoctor' option to 'doctor'.
2009-06-15 20:20:00 +00:00
jortel
2e6238c0e4
Add schema doctor
2009-05-13 22:55:15 +00:00
jortel
6f69c6a962
Add ordering to the suds object metadata; Update builder to add ordering information to ensure attribute ordering based on schema and is independent of the order in which the attributes are assigned. Move checks such as optional(), choice() and derived() to resolver, marshaller and other user of the sxobject tree. This is necessary since the schema object tree is built in a way that no longer copies objects when resolving references such as @ref and @base for extension/restriction. Objects are now linked and can/do apprear as children of MULTIPLE objects. So, when resolving whether an element is optional(), the ancestry must be examined. The schema objects attributes(), children(), get_child() and get_attribute() return a tuple of (child, ancestry). The TreeResolver has been retrofitted to use (child, ancestry) information form traversing schema objects; TreeResolver also retrofitted to use a proper Frame on its stack instead of a tuple. This is cleaner/clearer. suds Object not returns a proper iterator for __iter__() that pays attention to the 'ordering' metadata. The __iter__() now iterates items instead of keys
2009-01-24 19:17:13 +00:00
jortel
1f713dbe95
Fix performance problem
2009-01-20 21:11:30 +00:00
jortel
4a322b0c1c
update the SchemCollection so that schema(s) found within the wsdl are consolidated *if* then are in the same target namespace
2009-01-16 22:35:35 +00:00
jortel
950d5578e3
Refactored xsd package: The schema object simplified to hold all children in (rawchildren); removed all flattening, since the tree is no longer re-arraned, all node copying has been removed :-). this will greatly improve performance in schemas with lots of references. flattening replaced by on-demaind approach using an iterator to provide a flattened view; redesigned dereferencing of @ref/@base using dependency sorted list. This ensures that all elements in the schema are dereferenced and in the correct order.
2009-01-16 20:23:56 +00:00
jortel
706cd756cb
Fix multidocument document/literal to uses element names instead of part names; Fix xs:import with relative url for imports of schema from imported wsdls.
2009-01-13 21:21:27 +00:00
jortel
2e56f6b512
Fix #68 , Add ivar 'options' Schema and propagate 'options' to imported Schemas. This means that the 'transport' no longer needs to be passed around.
2009-01-12 20:00:08 +00:00
jortel
dd73327021
Draft API-3 as defined @ ( https://fedorahosted.org/suds/wiki/Api3Proposal ), README NEEDS TO BE UPDATED
2008-11-21 19:57:43 +00:00
jortel
8fb9d22539
add support for <xs:include/> add an attribute to imported schema (url=) to note the url from which a schema is imported.
2008-10-30 19:02:49 +00:00
jortel
e01d33efb1
Add support for <simpleContent/>, change SchemaObject.dereference() to NOT be recursion; change Schema.dereference() to use SchemaObject.contents() so it's not using recursion to walk a changing tree. Fixes infinite recurstion problem reported by Ticket #46
2008-10-30 16:53:30 +00:00
jortel
5f225a327f
Add support for <wsdl:import/> of schema files into the wsdl root <definitions/>. This clearly violates the WSDL 1.1 and 2.0 specifications (including the wsdl schema: http://www.w3.org/2007/06/wsdl/wsdl20.xsd ) but since ( http://www.w3.org/TR/wsdl#_style ) show doing this as an example, then it must be supported. Bump trunk to beta (R358-20081029)
2008-10-29 19:43:50 +00:00
jortel
8c8412c04a
Refactor xsd queries and shift query execution away from the schema and to the specialized query. This better enables deep element lookups; Enhance soap header processing in that soap headers are processed using the same approach as method parameters. The type is positionally resolved making it possible to pass simple header types like strings and integers as python types (no longer need to get from factory).
2008-10-17 21:52:52 +00:00
jortel
ab957dcdfa
Add setlocation() on client; add <group/> and <attributeGroup/> to schema
2008-10-16 20:08:54 +00:00
jortel
c94bc33aa3
add proper support for <xs:attribute ref=""/> attribute references. Also, added default xml prefix 'xml' as defined by XML 1.0. Probably need to add support for <xs:union/> and <xs:attributeGroup/> soon.
2008-09-03 14:08:38 +00:00
jortel
736df56759
refactor sax.py into a package, updated all references. Made the XML special character encoded pluggable. Users can re-assign the sax.encoder. Updated epydocs and bumpled version to 0.2.9 on trunk.
2008-08-29 15:53:52 +00:00
jortel
81795a060e
Update wsdl to override namespace in operation if specified. Fix schema loading issue - build all schemas before processing imports. Update packaging in preparation of submission to fedor
2008-08-19 16:50:58 +00:00
jortel
46aa77c373
Fix ENUMs broken during xsd package overhaul.
...
Fix type as defined in ticket #24 .
Fix duplicate param names in method signatures as reported in ticket #30 .
Suds licensed as LGPL.
Remove logging setup in suds.__init__() as suggested by patch in ticket #31 . Users will
now need to configure the logger.
2008-08-05 14:18:07 +00:00
jortel
c963c2d1a0
License as LGPL
2008-08-04 19:23:38 +00:00
jortel
abe8b445b2
A complete overhaul of the (xsd) pacakge. Uses merging approach much like the wsdl.py module. This should be a simpler, faster, more effective pattern for managing schema complexities. Also, I exect advances here will address some current issues with regard to inherrated attributes. Last, this approach is easier to test and should provide for faster schema related issue remediation.
2008-07-31 21:59:38 +00:00
jortel
7f4196c6b0
Fix <xs:import schemaLocation=/>; Implement <wsdl:import/> and retrofit the rest of suds that reference the WSDL classes as the entire wsdl.py module was refactored; Remove cProfile imports; Update sudsobject.Printer to prevent circular references caused when object has an attribute that either directly/indirectly references itself (prints as (MyObject)... when detected
2008-07-24 15:09:25 +00:00
jortel
5b629c14dd
performance updates: add metrics module and instrument key modules; change logging to be sure that args are not being converted into strings when calling log methods; Repr class added as a wrapper so objects being passed as args that need to be converted to strings using repr() instead of str() can be done; simplified sudsobject.Printer; modified sudsobject.Printer to show simple string values enclosed in quotes instead of (); moved creation of ServiceDefinition from Client.__init__() to service_definition() to be created and cached on-demand; added simple checks to reduce overhead of sax.encode() and sax.decode(); updated SchemaObject derived to derived() and override in Element and Complex - value determined on-demand; added counts to methods and types list printouts in ServiceDefinition; update version to 0.2.3; updated sxbasic.Import to only do a urlopen on <xs:import schemaLocation=''/> and only resolve <xs:import namespace=''/> when @namespace references a schema contained in the wsdl; change schema.schemabyns() to locate()
2008-07-16 21:55:32 +00:00
jortel
3b8a3b57d6
Fix <xs:attribute/> that were broken when switched to Factory for building schema; Also, fix @ref with regard to attrs; and fix Import.find()
2008-07-07 20:44:39 +00:00
jortel
7e9bbf0dd9
Refactored schema into new (xsd) package. Files just getting too big. Added execute() to Query and retrofitted suds to execute() query instead of using Schema.find() directly. Also, move hokey start() methods from schema, as well as, query incrementation.
2008-06-27 01:58:08 +00:00