Commits on Aug 28, 2018
  1. fix: syntax error in generated code using enumerations.

    pope1ni committed Aug 28, 2018
    Fixes #117.
  2. tests: work around issue with python 3.4 on xenial.

    pope1ni committed Aug 28, 2018
  3. tree-wide: drop support for flask 0.10

    pope1ni committed Aug 28, 2018
Commits on Apr 26, 2018
  1. tree-wide: update links to point to

    pope1ni committed Apr 26, 2018
Commits on Sep 6, 2017
  1. tree-wide: fixes after upgrade to iso8601==0.1.12

    pope1ni committed Sep 6, 2017
Commits on Jul 10, 2017
  1. wsdl: correctly generate message headers (fix #113)

    pope1ni committed Jul 10, 2017
    This is a quick fix and probably doesn't solve for all cases.
  2. primitive support for xsd:element[substitutionGroup]

    pope1ni committed Jul 10, 2017
Commits on Jul 7, 2017
  1. cleanup: improve handling of headers.

    pope1ni committed Jul 7, 2017
    Generally made more consistent by returning in preferred capitalisation.
    Look up in request environment using uppercased form, but make the
    wrapper for django more flexible to accept any header name format.
Commits on Jul 4, 2017
  1. xsd: add support for missing time type (fixes #112)

    pope1ni committed Jul 4, 2017
Commits on Jul 3, 2017
  1. django: fix header name conversion.

    pope1ni committed Jul 3, 2017
Commits on Jun 30, 2017
  1. dispatcher: add request and response hooks.

    pope1ni committed Jun 30, 2017
    Without this we cannot access the original request prior to the parsing
    of the request to produce the SOAPRequest.
Commits on Jun 28, 2017
  1. dispatcher: forgot to update tests after 00e92a9.

    pope1ni committed Jun 28, 2017
  2. dispatcher: pass request preparation through middleware stack.

    pope1ni committed Jun 28, 2017
    We may want to be able to log errors that occur during preparation of
    the SOAP request object, e.g. syntax errors, but this requires passage
    through the middleware stack to be able to use ExceptionLogger with
    Exceptions are not converted to SOAP faults when using the parsed body
    unless we use the ExceptionToSoapFault middleware, but exceptions when
    parsing the envelope are converted. We should consider whether to
    standardise this behaviour to convert all or no errors to SOAP faults,
    whether to make the exceptions to convert customisable, and whether to
    enable the ExceptionToSoapFault middleware by default. If all of this is
    done, we should then probably allow the original errors encountered
    during parsing, e.g. DocumentInvalid, XMLSyntaxError, to be raised and
    converted by the middleware without special handling.
Commits on May 15, 2017
  1. soap: fix template changes missed in ae9483a.

    pope1ni committed May 15, 2017
Commits on May 10, 2017
  1. middlewares: exceptions must be a tuple in logger middleware.

    pope1ni committed May 10, 2017
  2. xsd: fix support for python 3 broken by a689d9c.

    pope1ni committed May 10, 2017
  3. xsd: various fixes to integer types.

    pope1ni committed May 10, 2017
    This is a little magic, but should be more correct according to the
  4. middlewares: improvements to exception handling.

    pope1ni committed May 10, 2017
  5. build: ensure tests don't end up in wheels.

    pope1ni committed May 10, 2017
  6. dispatch: provide access to original django/flask request.

    pope1ni committed May 10, 2017
    Not having access to request.user in a django request is awkward and
    used to be available until the refactoring of the dispatching code.
  7. dispatch: repetition in xs:pattern broken by str.format(). (fix #108)

    pope1ni committed May 10, 2017
    SOAPDispatcher.handle_wsdl_request() fails when using the following code:
        class Code(xsd.String):
            pattern = r'[A-Z]{3}'
    It is correctly converting the code to the following:
          <xsd:simpleType name="code">
            <xsd:restriction base="xsd:string">
              <xsd:pattern value="[A-Z]{3}"/>
    The problem then arises with the string formatting to substitute
    {scheme} and {host} which fails because there is no value to substitute
    for {3}.
    The fix unfortunately requires a breaking change to templating from
    using str.format() to string.Template.safe_substitute() which will not
    blow up if a value is not available to be substituted.
Commits on May 8, 2017
  1. dispatch: avoid crash on wsdl without imported xsd.

    pope1ni committed May 8, 2017
  2. build: fix .travis.yml, broken by 7e41de1.

    pope1ni committed May 8, 2017
  3. tree-wide: ongoing clean up for flake8.

    pope1ni committed May 8, 2017