Mini-amf

Latest version: v0.9.1

Safety actively analyzes 701847 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

0.6.1

------------------
- Switched to Distribute as the future of Python packaging (ticket 682)

0.6

----------------
- Ability to exclude 'stock' attributes with AppEngine Datastore/SQLAlchemy
(ticket 790)
- Fixed issue with Django models db_column not matching the attr name
(ticket 807)
- Added generator support (ticket 793, ticket 800)
- Fixed issue with ``amf3.use_proxy_default=True`` and Flex messaging
(ticket 794)
- Support for AppEngine's ``BlobReferenceProperty`` (ticket 787)
- Improved unit test discovery with unittest2 (ticket 780)
- Ability to define attribute synonyms (ticket 779)
- Provide support for AMF3 remoting packets (BlazeDS acting as a client)
(ticket 737, ticket 766)
- AMF0 Remoting error tracebacks will be a list rather than a string
(ticket 767, ticket 663)
- Moved documentation from the Trac wiki to a local Sphinx documentation
build (ticket 752, ticket 672, ticket 670, ticket 662,
ticket 661, ticket 657)
- Switch the PyAMF client to use :py:mod:`urllib2`. Provides support for
proxying and gzipped responses. Thanks to PaulWinkeler for the heavy
lifting (ticket 751, ticket 622, ticket 590, ticket 566,
ticket 778)
- Added support for SQLAlchemy 0.6 (ticket 747, ticket 748)
- Added support for the lxml library (ticket 735)
- Introduced a new adapter for Elixir, a thin wrapper around SQLAlchemy
(ticket 724)
- Simplified ``type_map`` in ``Encoder`` classes (ticket 746)
- Fixed a small bug when handling empty M2M relationships with unpersisted
Django objects (ticket 741)
- Updates to support Plasma (ticket 736)
- Fixed a small bug in ``BaseGateway.removeService``, thanks agronholm for the
patch (ticket 729)
- Pure Python AMF3 Decoding performance improvements (up to x3) (ticket 723)
- Non-ascii characters in the exception message would cause a ``UnicodeError``
(ticket 727)
- All ORM adapters will no longer set properties as static attributes
(ticket 677)
- Default to using ``__new__`` for instance creation if available. (ticket 700)
- Ability to ``unregister_type_alias`` (ticket 707)
- ``__amf__.proxy`` actually works (ticket 712)
- Django adapter now uses ``get_all_field_names`` to find model properties
(ticket 625)
- Added ``ClassAlias.bases`` and deep class tree support for typed classes
(ticket 715)
- ``use_references`` keyword arg has been removed from ``amf3.Encoder.write*``
(ticket 713)
- ``ClassAlias.getEncodableAttributes`` now will return a single dict of
properties (ticket 714)
- PyAMF Client will raise an exception if the remote gateway returns a service
error (ticket 260)
- Fixed a reference bug with unsaved Django model instances. Thanks to wolver
for the patch and tests (ticket 691).
- Fixed a small bug in decoding Django relations when declared as static.
Thanks to wolver for the patch. (ticket 693)
- Removed ``exceptions`` from all ``Context`` and ``pyamf.util.Indexed*``
classes (ticket 660)
- Empty Django relations are now encoded as ``None``, not ``pyamf.Undefined``
(ticket 659)
- ``pyamf.ClientType`` removed, as it is not spec compliant (ticket 651)

0.5.1

------------------
- ``pyamf.register_package`` can now accept a list of classes (ticket 650)
- Fixed a regression in ``TwistedGateway`` where services would be called
twice (ticket 648)
- Fixed a bug with encoding anonymous trait references (ticket 644)
- Moved ``IndexedCollection`` into ``cpyamf`` (ticket 424)
- ``amf3.encode_int`` now encodes signed 29bit ints, not unsigned. Thanks
to gerard for the report, investigation and patch! (ticket 646)

0.5

----------------
- Added the ability to modify the timezones of dates being de/encoded for
legacy systems. (ticket 612)
- Fixed a Django reference bug where ``parent.child.parent`` is parent
would encode 3 objects and not 2. (ticket 642)
- Setting ``None`` on a Django ``DateField`` would blow up the encoder
(ticket 632)
- ``rootCause`` in ``ErrorFault`` objects are now populated with the
traceback object. (ticket 637)
- Support for encoding/decoding BlazeDS specific messages (ticket 581)
- Removed tracebacks from exception messages if ``debug=False`` (ticket 552)
- Support for ``google.appengine.ext.db.polymodel.PolyModel`` (ticket 633)
- Support for Django ``File``/``ImageField`` (ticket 631)
- Support for Django model inheritance (ticket 626)
- Rewrote attribute handling code. Added the ability to exclude, set
read-only and static attributes. See
http://pyamf.org/architecture/attributecontrol.html for more details
(ticket 601)
- Exposed the amf request object if ``expose_request=True``.
Twisted/Django/Google have an ``amf_request`` property on the http request
object. WSGI has an entry in the environ dict now - ``pyamf.request``
(ticket 234)
- Added support for the :py:mod:`array` module (ticket 468)
- Fixed an issue with Django model ``AutoFields`` being set to 0 by the Flex
client (ticket 556)
- Added support for the :py:mod:`collections` module. (ticket 474)
- Added type checks for class objects. (ticket 473)
- GAE ``FloatProperty`` can now accept int without issue (ticket 609)
- Revamped the lazy imports module to use :py:data:`sys.meta_path` instead.
Fixes all erroneous import errors (ticket 485).
- Django models will now accept dynamic properties (ticket 575)
- Django PK properties will be set first to allow related properties to apply
correctly (ticket 599)
- p.r.encode/p.r.decode both have a new ``logger`` kwarg. Supply a
:py:class:`logging.Logger` instance if you want to see debug output
(ticket 588)
- ``pyamf.TypedObjectClassAlias`` now forces the class type (ticket 537)
- If a call to ``Decoder.readElement`` results in an ``IOError`` exception,
the original position of the stream will be restored (ticket 573)
- Replaced hardcoded Python implementation title in p.r.gateway.SERVER_NAME
(ticket 541)
- Provide a user friendly way to handle :py:class:`datetime.time` objects
(ticket 498)
- Removed the useless ``pyamf.logging`` module (ticket 577)
- Added a new ``register_package`` helper function to make bulk class
registration easier. Check the docstring for more info. (ticket 576)
- ``cpyamf.amf3._decode_int`` now propagates exceptions correctly (ticket 506)
- Fixed an incorrect ``OverflowError`` when encoding large integers in AMF3
(ticket 519)
- Added ``append`` to ``pyamf.util.BufferedByteStream`` (ticket 574)
- Added Epydoc signatures to all ``util.StringIOProxy``, ``util.DataTypeMixIn``
and ``util.BufferedByteStream`` classes (ticket 440)
- Removed dependancy on ``fpconst``. Platforms with broken platforms are
detected and handled correctly internally (ticket 564)
- ``amf0.Encoder`` now supports attribute ordering (ticket 558)
- Removed duplicate method ``Context.reset``, in favour of ``Context.clear``
(ticket 527)
- Rewrote ``cpyamf.util.BufferedByteStream`` to not depend on :py:mod:`cStringIO`.
Added a C based api for stream functions (ticket 513)
- Unified exceptions for ``BufferedByteStream`` so that only ``IOError``
is raised. (ticket 520)
- Made raising ``pyamf.ReferenceError`` optional for all Indexed* and
``Context`` classes. Refactored AMF3 so that only one ``ClassDefinition``
is created per class (ticket 524)
- Strict type checking now on ``pyamf.util.BufferedByteStream`` (ticket 512)
- Removed the default loggers from p.r.gateway.*. To re-enable supply a
``logger`` instance as a keyword arg to the gateway constructor (ticket 525)
- Removed ``pyamf.util.make_classic_instance`` (as it is not used)
(ticket 521)
- Removed ``pyamf.util.get_mro``, in favour of :py:func:`inspect.getmro`
(ticket 526)
- Removed ``pyamf.util.Indexed[Collection|Map].remove`` (ticket 518)

0.4.2

------------------
- Support for decoding the ``source`` property on ``ArrayCollection``
(ticket 488)
- Fixed an issue in the GAE adapter where dynamic properties would be missing
on referenced objects. (ticket 511)
- Fixed a critical issue with AMF0 reference counting when encoding remoting
responses. (ticket 510)
- Strengthened HTTP header handling in the client (ticket 492)
- Support for Django i18n ``ugettext_lazy`` (ticket 496)
- Added support for microseconds for :py:mod:`datetime` objects. Thanks to
Derek Payton for the patch. (ticket 490)
- Added support for property types on SQLAlchemy mapped classes (ticket 491)
- Added support for property types for Google AppEngine ``db.Model`` and
``db.Expando``. (ticket 487)

0.4.1

------------------
- ``amf0.Encoder.use_amf3`` has been extended to cover all object types
(ticket 453, ticket 467)
- Property types on Django models will now encode as expected. (ticket 480)
- Django ``models.ForeignKey`` properties will be followed only if previously
accessed outside of PyAMF. ``_[attr]_cache`` is no longer encoded.
(ticket 456)
- Encoding ``{0:0, '0':1}`` will now raise an ``AttributeError``. (ticket 458)
- Google AppEngine adapter improvements - see ticket for details (ticket 479)
- ``amf0.Encoder`` will encode all elements as AMF3 if ``use_amf3`` option is
set to ``True`` (ticket 453)
- Unicode handling in ``__repr__`` functions has been improved (ticket 455)
- object attributes and dict keys are now utf8 encoded bytestrings. Python
\**kwargs doesn't accept unicode key objects. (ticket 463)
- Django ``models.TimeField``, ``models.DateField`` will now be converted to
the correct type (``datetime.time`` and ``datetime.date`` respectively).
``fields.NOT_PROVIDED`` is also checked for by converting to
``pyamf.Undefined`` and back again. (ticket 457)

Page 2 of 4

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.