Metadata-Version: 2.0
Name: collective.jsonify
Version: 1.4
Summary: JSON representation for content in Plone from 2.0 and above
Home-page: https://github.com/collective/collective.jsonify
Author: Rok Garbas
Author-email: rok@garbas.si
License: GPL
Keywords: Plone content export json transmogrify
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Plone
Classifier: Framework :: Plone :: 4.3
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.4
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Requires-Dist: setuptools

``collective.jsonify`` exports your Plone content to JSON_.

Many packages that export data from Plone have complicated dependencies, and so
only work with Plone 3.0 or higher (or not even with 3.0).
``collective.jsonify``'s only dependency is simplejson_. It can be installed in
any Plone version as far back as:

- Plone 2.1 (or probably even Plone 2.0, but not tested)
- Zope 2.6.4 (with CMF rather than Plone)
- Python 2.2

The exported JSON_ is a collective.transmogrifier_ friendly format. Install
``collective.jsonify`` on a site you want to export from, and setup an import
transmogrifier pipeline on the site you're importing to, using the blueprints in
the collective.jsonmigrator_ package.

Alternatively use the provided export script by adding it to an external method as described in `using the exporter`_.

For more information see the documentation_.


:Warning: This product may contain traces of nuts.
:Author: `Rok Garbas`_, *migrating for you since 2008*
:Source: http://github.com/collective/collective.jsonify


.. _`simplejson`: http://pypi.python.org/simplejson
.. _`JSON`: http://en.wikipedia.org/wiki/JSON
.. _`collective.transmogrifier`: http://pypi.python.org/pypi/collective.transmogrifier
.. _`collective.jsonmigrator`: http://pypi.python.org/pypi/collective.jsonmigrator
.. _`using the exporter`: https://collectivejsonify.readthedocs.org/en/latest/#using-the-exporter
.. _`documentation`: https://collectivejsonify.readthedocs.org
.. _`Rok Garbas`: http://www.garbas.si/labs/plone-migration

Changelog
=========

1.4 (2018-09-20)
----------------

- Try Subject and Contributors when subject and contributors give nothing.
  [maurits]

- Check if value exists on file like fields
  [agitator]

- Export creation_date and modification_date for all objects, not only _is_cmf_only_obj.
  For dexterity these values are not present in a schemata, so they are not included as part
  of the normal schemata based dexterity export.
  [sunew]

- Use self.decode method to get stringified field value when wrapping content
  for export.
  [instification]


1.3 (2017-12-21)
----------------

- Export plone.app.redirector redirects, if available.
  Comply with default expectations of redirector section in plone.app.transmogrifier.
  [hvelarde]

- Do not export FormGen and Redirection tools.
  [hvelarde]

- Show translations from LinguaPlone if canonical is available.
  [agitator]

- Fixed value for unknown fields.  The value was never calculated
  fresh for these fields, so you got the value of the previous field.
  Or you probably got a NameError if this was the first field.
  [maurits]

- Fix manifest
- Added `CHANGES.rst merge=union` to `.gitattributes`
  [ale-rt]

- Added the history to JSON export.
  [rristow]


1.2 (2016-05-24)
----------------

- Do not require simplejson if we already have the native json module
  [ale-rt]

- When doing an export with ``export_content`` and having constraints to skip
  items, still allow to walk into subitems of the skipped ones - except for
  skipped paths, where the whole path is skipped.
  [thet]


1.1 (2015-10-22)
----------------

- set json repsonse headers
  [jensens]


1.0 (2015-05-16)
----------------

- Let the wrapper test correctly for ``zope.interface`` and ``Interface``
  interfaces.
  [thet]

- In the wrapper class, call the value in decode, if it's a callable.
  [thet]

- When serializing datetime, date, time or DateTime properties, just use the
  unicode representation which can be parsed.
  [thet]

- When serializing values, if there is no special handler for a field type,
  just try to unicode the value.
  [thet]

- Fix export of defaultPage and layout. Before, always the defaultPage was set
  now layout is always set and defaultPage only, if there is one defined.
  [thet]

- Handle plone.formwidget.geolocation Dexterity field types.
  [thet]

- Check, if wrapper methods for Zope/CMF objects are Zope/CMF only objects by
  testing for Archetypes and Dexterity first.
  [thet]

- Add ``BlobField`` for ``get_archetypes_fields``.
  [thet]

- Don't try to convert ints to unicode in get_properties().
  [djowett]

- Zope 2.6 support for collective.jsonify.
  [djowett]

- Fix setup.py to work with Python 2.2.
  [djowett]

- Add error type to tracebacks.
  [djowett]

- Fix read of NamedBlobImage, NamedFile and NamedBlobFile in dexterity objects.
  [djowett]

- Fix read of field for unicode transcoding in dexterity objects.
  [djowett]

- Make ``archetypes.schemaextender`` support more generic and handle probably
  most use cases.
  [thet]

- Add ``_directly_provided`` export field for the object's directly provided
  interfaces.
  [thet]

- Add json_methods module to own Extension folder, which makes it automatically
  available and unnecessary to add it to the instance's Extension folder.
  [thet]

- Don't skip ``ComputedField`` fields, but just export their computed value.
  Better skip them in your transmogrifier import pipeline.
  [thet]

- Allow a ``skip_callback`` function to be passed to the ``export_content``
  function. It evaluates to ``True``, if the current visited item should be
  excluded from exporting.
  [thet]

- Export a content's references as list of UID values.
  [thet]

- Declare the ``content_type`` of a field's value only for ``TextField`` and
  ``StringField``.
  [thet]

- Add example buildouts for Plone 2.1, 2.5, 3 and 4.
  [thet]

- Declare ``base64`` encoding for _datafield_FIELDNAME structures. This is used
  to correctly decode in transmogrify.dexterity.
  [thet]

- Add export module from ``collective.blueprint.jsonmigrator`` and modify to
  use collective.jsonify wrapper. Use it in Plone 2.1 by adding it as external
  method.
  [thet]

- PEP 8.
  [thet]

- Fixing local roles export.
  [realefab]

- Make ATExtensionFields serializable.
  [jsbueno]

- Fixes exporting of Image types that use ATBlob.
  [jsbueno]


0.2 (2014-08-18)
----------------

- Support p.a.collection QueryField.
  [jone]

- Dexterity support.
  [djowett]

- Add Blob fields support. Use specific methods to retrieve
  filename, content type and size.
  [gborelli]

- Add _get_at_field_value to wrappe.Wrapper in order to use accessor method
  for Archetypes fields.
  [gborelli]

- @@jsonify view added. See README_JSONIFY_VIEW.rst for more
  [pieretti]


0.1 (2011-03-14)
----------------

- documentation added
  [garbas]

- collection of external methods from ``collective.blueprint.jsonmigrator``
  and ``collective.sync_migrator``.
  [garbas]

- initial release
  [garbas]


