Skip to main content

Fast, simple message transforms

Project description

History
-------
1.1.2
+++++
released 24-August-2018

- append to transformed attribute if it is an array rather than over-write


1.1.1
+++++
released 9-August-2018

- added array handling in keys, allowing multiple substitutions
- also test against Python 3.6


1.1.0
+++++
released 13-June-2018

- remove reliance on 'six' package
- much better specials handling
- fixed a bug in integer handling


1.0.8
+++++
released 3-November-2017

- Fix a bug where transform_control args were being lost

1.0.6
+++++
released 2-November-2017

- Fix a dependency problem

1.0.5
+++++
released 2-November-2017

- Key-side transforms
- Fix some type related bugs

1.0.4
+++++
released 1-November-2017

- Properly handling specials

1.0.0
+++++
released 26-July-2017

- Initial Release


Home-page: https://github.com/dana/python-message-transform
Author: Dana M. Diederich
Author-email: dana@realms.org
License: MIT
Description: message-transform
=================

Fast, simple message transformations

Usage
=====

Usage::

from message_transform import mtransform

mtransform({'a':'b'},{'x':'y'}) => {'a':'b','x':'y'}
mtransform({'a':'b'},{'x':'y','c':{'d':'e'}}) => {'a':'b','x':'y','c':{'d':'e'}}
mtransform({'a':'b'},{'x':' specials/$message->{a}'}) => {'a':'b','x':'a'}


message = {'a': 'b', 'c': ['d', 'e']}
mtransform(message, {' specials/x$message->{c}y': 'x'}) => {'a': 'b', 'c': ['d', 'e'], 'xdy': 'x', 'xey': 'y'}

Contributing
============

Open up a pull request via https://github.com/dana/python-message-transform, please consider adding tests for any new functionality. To set up the dev environment (assuming you're using [virtualenvwrapper](http://docs.python-guide.org/en/latest/dev/virtualenvs/#virtualenvwrapper))::

$ mkvirtualenv message-transform
$ pip install -r dev-requirements.txt
$ py.test

Description
===========

This is a very light-weight and fast library that does some basic but reasonably powerful message transformations.

Function
========

Function::
mtransform(message,transform)

Takes two and only two arguments, both dictionaries, and mutates the message according to the transform.

Bugs
====

None known.

Copyright
=========

Copyright (c) 2012, 2013, 2016, 2017 Dana M. Diederich. All Rights Reserved.

Author
======

Dana M. Diederich diederich@gmail.com dana@realms.org


Platform: UNKNOWN
Classifier: Intended Audience :: Developers
Classifier: Development Status :: 5 - Production/Stable
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: License :: OSI Approved :: MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

message-transform-1.1.2.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

message_transform-1.1.2-py2.py3-none-any.whl (5.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file message-transform-1.1.2.tar.gz.

File metadata

  • Download URL: message-transform-1.1.2.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.9.1 pkginfo/1.4.1 requests/2.9.1 setuptools/20.7.0 requests-toolbelt/0.8.0 tqdm/4.15.0 CPython/2.7.12

File hashes

Hashes for message-transform-1.1.2.tar.gz
Algorithm Hash digest
SHA256 46d7bbf5f7a1c93be10c9997c30156529375ca7a02b5fdade4a05e1913f69676
MD5 52cbeb7929af315da6990298fc658d80
BLAKE2b-256 7836b7870857bda6eddffcc2f062a5ed541d13314e65181685d12848cab535d3

See more details on using hashes here.

File details

Details for the file message_transform-1.1.2-py2.py3-none-any.whl.

File metadata

  • Download URL: message_transform-1.1.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.9.1 pkginfo/1.4.1 requests/2.9.1 setuptools/20.7.0 requests-toolbelt/0.8.0 tqdm/4.15.0 CPython/2.7.12

File hashes

Hashes for message_transform-1.1.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d0dd3a8f23abfe9508c2fd79db932cf353c80114e920c10160c82702d4ff47de
MD5 87b55ebb6ecfeb2b1c919513c55071e2
BLAKE2b-256 b8ae290f8215418d79289dd75a6c388bf64fc07b8aa56b64d41b64df1f30b7df

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page