[Python-modules-commits] [dill] 01/07: import dill-0.2.4.orig.tar.gz
Josué Ortega
noahfx-guest at moszumanska.debian.org
Sun Nov 1 19:43:25 UTC 2015
This is an automated email from the git hooks/post-receive script.
noahfx-guest pushed a commit to branch master
in repository dill.
commit c53066906cd37a44b46647dac1c47c4bbd65861d
Author: Josue Ortega <josueortega at debian.org.gt>
Date: Sun Nov 1 12:41:21 2015 -0600
import dill-0.2.4.orig.tar.gz
---
LICENSE | 35 ++
MANIFEST | 40 ++
PKG-INFO | 185 ++++++
README | 172 ++++++
README.md | 123 ++++
dill.egg-info/PKG-INFO | 185 ++++++
dill.egg-info/SOURCES.txt | 40 ++
dill.egg-info/dependency_links.txt | 1 +
dill.egg-info/not-zip-safe | 1 +
dill.egg-info/top_level.txt | 1 +
dill/__diff.py | 229 +++++++
dill/__init__.py | 102 ++++
dill/_objects.py | 544 +++++++++++++++++
dill/detect.py | 297 ++++++++++
dill/dill.py | 1152 ++++++++++++++++++++++++++++++++++++
dill/info.py | 212 +++++++
dill/objtypes.py | 27 +
dill/pointers.py | 122 ++++
dill/settings.py | 26 +
dill/source.py | 1011 +++++++++++++++++++++++++++++++
dill/temp.py | 263 ++++++++
scripts/get_objgraph.py | 39 ++
scripts/unpickle.py | 13 +
setup.cfg | 5 +
setup.py | 309 ++++++++++
tests/dill_bugs.py | 67 +++
tests/test_classdef.py | 134 +++++
tests/test_detect.py | 112 ++++
tests/test_diff.py | 101 ++++
tests/test_extendpickle.py | 30 +
tests/test_file.py | 476 +++++++++++++++
tests/test_functors.py | 29 +
tests/test_mixins.py | 112 ++++
tests/test_module.py | 75 +++
tests/test_moduledict.py | 44 ++
tests/test_nested.py | 119 ++++
tests/test_objects.py | 59 ++
tests/test_properties.py | 48 ++
tests/test_source.py | 136 +++++
tests/test_temp.py | 88 +++
tests/test_weakref.py | 67 +++
41 files changed, 6831 insertions(+)
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..9dd85c2
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,35 @@
+This software is part of the open-source mystic project at the California
+Institute of Technology, and is available subject to the conditions and
+terms laid out below. By downloading and using this software you are
+agreeing to the following conditions.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met::
+
+ - Redistribution of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ - Redistribution in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentations and/or other materials provided with the distribution.
+
+ - Neither the name of the California Institute of Technology nor
+ the names of its contributors may be used to endorse or promote
+ products derived from this software without specific prior written
+ permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Copyright (c) 2015 California Institute of Technology. All rights reserved.
+
diff --git a/MANIFEST b/MANIFEST
new file mode 100644
index 0000000..0b6eb71
--- /dev/null
+++ b/MANIFEST
@@ -0,0 +1,40 @@
+LICENSE
+MANIFEST
+README
+README.md
+setup.cfg
+setup.py
+dill/__diff.py
+dill/__init__.py
+dill/_objects.py
+dill/detect.py
+dill/dill.py
+dill/info.py
+dill/objtypes.py
+dill/pointers.py
+dill/settings.py
+dill/source.py
+dill/temp.py
+dill.egg-info/PKG-INFO
+dill.egg-info/SOURCES.txt
+dill.egg-info/dependency_links.txt
+dill.egg-info/not-zip-safe
+dill.egg-info/top_level.txt
+scripts/get_objgraph.py
+scripts/unpickle.py
+tests/dill_bugs.py
+tests/test_classdef.py
+tests/test_detect.py
+tests/test_diff.py
+tests/test_extendpickle.py
+tests/test_file.py
+tests/test_functors.py
+tests/test_mixins.py
+tests/test_module.py
+tests/test_moduledict.py
+tests/test_nested.py
+tests/test_objects.py
+tests/test_properties.py
+tests/test_source.py
+tests/test_temp.py
+tests/test_weakref.py
diff --git a/PKG-INFO b/PKG-INFO
new file mode 100644
index 0000000..fa9cbb4
--- /dev/null
+++ b/PKG-INFO
@@ -0,0 +1,185 @@
+Metadata-Version: 1.0
+Name: dill
+Version: 0.2.4
+Summary: a utility for serialization of python objects
+Home-page: http://www.cacr.caltech.edu/~mmckerns
+Author: Mike McKerns
+Author-email: mmckerns at caltech.edu
+License: BSD
+Description: -----------------------------
+ dill: serialize all of python
+ -----------------------------
+
+ About Dill
+ ==========
+
+ Dill extends python's 'pickle' module for serializing and de-serializing
+ python objects to the majority of the built-in python types. Serialization
+ is the process of converting an object to a byte stream, and the inverse
+ of which is converting a byte stream back to on python object hierarchy.
+
+ Dill provides the user the same interface as the 'pickle' module, and
+ also includes some additional features. In addition to pickling python
+ objects, dill provides the ability to save the state of an interpreter
+ session in a single command. Hence, it would be feasable to save a
+ interpreter session, close the interpreter, ship the pickled file to
+ another computer, open a new interpreter, unpickle the session and
+ thus continue from the 'saved' state of the original interpreter
+ session.
+
+ Dill can be used to store python objects to a file, but the primary
+ usage is to send python objects across the network as a byte stream.
+ Dill is quite flexible, and allows arbitrary user defined classes
+ and funcitons to be serialized. Thus dill is not intended to be
+ secure against erroneously or maliciously constructed data. It is
+ left to the user to decide whether the data they unpickle is from
+ a trustworthy source.
+
+ Dill is part of pathos, a python framework for heterogeneous computing.
+ Dill is in active development, so any user feedback, bug reports, comments,
+ or suggestions are highly appreciated. A list of known issues is maintained
+ at http://trac.mystic.cacr.caltech.edu/project/pathos/query, with a public
+ ticket list at https://github.com/uqfoundation/dill/issues.
+
+
+ Major Features
+ ==============
+
+ Dill can pickle the following standard types::
+
+ - none, type, bool, int, long, float, complex, str, unicode,
+ - tuple, list, dict, file, buffer, builtin,
+ - both old and new style classes,
+ - instances of old and new style classes,
+ - set, frozenset, array, functions, exceptions
+
+ Dill can also pickle more 'exotic' standard types::
+
+ - functions with yields, nested functions, lambdas,
+ - cell, method, unboundmethod, module, code, methodwrapper,
+ - dictproxy, methoddescriptor, getsetdescriptor, memberdescriptor,
+ - wrapperdescriptor, xrange, slice,
+ - notimplemented, ellipsis, quit
+
+ Dill cannot yet pickle these standard types::
+
+ - frame, generator, traceback
+
+ Dill also provides the capability to::
+
+ - save and load python interpreter sessions
+ - save and extract the source code from functions and classes
+ - interactively diagnose pickling errors
+
+
+ Current Release
+ ===============
+
+ This version is dill-0.2.4.
+
+ The latest stable version of dill is available from::
+
+ http://trac.mystic.cacr.caltech.edu/project/pathos
+
+ or::
+
+ https://github.com/uqfoundation/dill/releases
+
+ or also::
+
+ https://pypi.python.org/pypi/dill
+
+ Dill is distributed under a 3-clause BSD license.
+
+ >>> import dill
+ >>> print (dill.license())
+
+
+ Development Version
+ ===================
+
+ You can get the latest development version with all the shiny new features at::
+
+ https://github.com/uqfoundation
+
+ Feel free to fork the github mirror of our svn trunk. If you have a new
+ contribution, please submit a pull request.
+
+
+ Installation
+ ============
+
+ Dill is packaged to install from source, so you must
+ download the tarball, unzip, and run the installer::
+
+ [download]
+ $ tar -xvzf dill-0.2.4.tgz
+ $ cd dill-0.2.4
+ $ python setup py build
+ $ python setup py install
+
+ You will be warned of any missing dependencies and/or settings
+ after you run the "build" step above.
+
+ Alternately, dill can be installed with pip or easy_install::
+
+ $ pip install dill
+
+
+ Requirements
+ ============
+
+ Dill requires::
+
+ - python2, version >= 2.5 *or* python3, version >= 3.1
+ - pyreadline, version >= 1.7.1 (on windows)
+
+ Optional requirements::
+
+ - setuptools, version >= 0.6
+ - objgraph, version >= 1.7.2
+
+
+ More Information
+ ================
+
+ Probably the best way to get started is to look at the tests that are
+ provided within dill. See `dill.tests` for a set of scripts that demonstrate
+ dill's ability to serialize different python objects. Since dill conforms
+ to the 'pickle' interface, the examples and documentation at
+ http://docs.python.org/library/pickle.html also apply to dill if one will
+ `import dill as pickle`. The source code is also generally well
+ documented, so further questions may be resolved by inspecting the code
+ itself. Please also feel free to submit a ticket on github, or ask a
+ question on stackoverflow (@Mike McKerns).
+
+ Dill is an active research tool. There are a growing number of publications
+ and presentations that discuss real-world examples and new features of dill
+ in greater detail than presented in the user's guide. If you would like to
+ share how you use dill in your work, please post a link or send an email
+ (to mmckerns at caltech dot edu).
+
+
+ Citation
+ ========
+
+ If you use dill to do research that leads to publication, we ask that you
+ acknowledge use of dill by citing the following in your publication::
+
+ M.M. McKerns, L. Strand, T. Sullivan, A. Fang, M.A.G. Aivazis,
+ "Building a framework for predictive science", Proceedings of
+ the 10th Python in Science Conference, 2011;
+ http://arxiv.org/pdf/1202.1056
+
+ Michael McKerns and Michael Aivazis,
+ "pathos: a framework for heterogeneous computing", 2010- ;
+ http://trac.mystic.cacr.caltech.edu/project/pathos
+
+ Please see http://trac.mystic.cacr.caltech.edu/project/pathos or
+ http://arxiv.org/pdf/1202.1056 for further information.
+
+
+Platform: any
+Classifier: Intended Audience :: Developers
+Classifier: Programming Language :: Python
+Classifier: Topic :: Physics Programming
diff --git a/README b/README
new file mode 100644
index 0000000..d4ae629
--- /dev/null
+++ b/README
@@ -0,0 +1,172 @@
+-----------------------------
+dill: serialize all of python
+-----------------------------
+
+About Dill
+==========
+
+Dill extends python's 'pickle' module for serializing and de-serializing
+python objects to the majority of the built-in python types. Serialization
+is the process of converting an object to a byte stream, and the inverse
+of which is converting a byte stream back to on python object hierarchy.
+
+Dill provides the user the same interface as the 'pickle' module, and
+also includes some additional features. In addition to pickling python
+objects, dill provides the ability to save the state of an interpreter
+session in a single command. Hence, it would be feasable to save a
+interpreter session, close the interpreter, ship the pickled file to
+another computer, open a new interpreter, unpickle the session and
+thus continue from the 'saved' state of the original interpreter
+session.
+
+Dill can be used to store python objects to a file, but the primary
+usage is to send python objects across the network as a byte stream.
+Dill is quite flexible, and allows arbitrary user defined classes
+and funcitons to be serialized. Thus dill is not intended to be
+secure against erroneously or maliciously constructed data. It is
+left to the user to decide whether the data they unpickle is from
+a trustworthy source.
+
+Dill is part of pathos, a python framework for heterogeneous computing.
+Dill is in active development, so any user feedback, bug reports, comments,
+or suggestions are highly appreciated. A list of known issues is maintained
+at http://trac.mystic.cacr.caltech.edu/project/pathos/query, with a public
+ticket list at https://github.com/uqfoundation/dill/issues.
+
+
+Major Features
+==============
+
+Dill can pickle the following standard types::
+
+ - none, type, bool, int, long, float, complex, str, unicode,
+ - tuple, list, dict, file, buffer, builtin,
+ - both old and new style classes,
+ - instances of old and new style classes,
+ - set, frozenset, array, functions, exceptions
+
+Dill can also pickle more 'exotic' standard types::
+
+ - functions with yields, nested functions, lambdas,
+ - cell, method, unboundmethod, module, code, methodwrapper,
+ - dictproxy, methoddescriptor, getsetdescriptor, memberdescriptor,
+ - wrapperdescriptor, xrange, slice,
+ - notimplemented, ellipsis, quit
+
+Dill cannot yet pickle these standard types::
+
+ - frame, generator, traceback
+
+Dill also provides the capability to::
+
+ - save and load python interpreter sessions
+ - save and extract the source code from functions and classes
+ - interactively diagnose pickling errors
+
+
+Current Release
+===============
+
+This version is dill-0.2.4.
+
+The latest stable version of dill is available from::
+
+ http://trac.mystic.cacr.caltech.edu/project/pathos
+
+or::
+
+ https://github.com/uqfoundation/dill/releases
+
+or also::
+
+ https://pypi.python.org/pypi/dill
+
+Dill is distributed under a 3-clause BSD license.
+
+ >>> import dill
+ >>> print (dill.license())
+
+
+Development Version
+===================
+
+You can get the latest development version with all the shiny new features at::
+
+ https://github.com/uqfoundation
+
+Feel free to fork the github mirror of our svn trunk. If you have a new
+contribution, please submit a pull request.
+
+
+Installation
+============
+
+Dill is packaged to install from source, so you must
+download the tarball, unzip, and run the installer::
+
+ [download]
+ $ tar -xvzf dill-0.2.4.tgz
+ $ cd dill-0.2.4
+ $ python setup py build
+ $ python setup py install
+
+You will be warned of any missing dependencies and/or settings
+after you run the "build" step above.
+
+Alternately, dill can be installed with pip or easy_install::
+
+ $ pip install dill
+
+
+Requirements
+============
+
+Dill requires::
+
+ - python2, version >= 2.5 *or* python3, version >= 3.1
+ - pyreadline, version >= 1.7.1 (on windows)
+
+Optional requirements::
+
+ - setuptools, version >= 0.6
+ - objgraph, version >= 1.7.2
+
+
+More Information
+================
+
+Probably the best way to get started is to look at the tests that are
+provided within dill. See `dill.tests` for a set of scripts that demonstrate
+dill's ability to serialize different python objects. Since dill conforms
+to the 'pickle' interface, the examples and documentation at
+http://docs.python.org/library/pickle.html also apply to dill if one will
+`import dill as pickle`. The source code is also generally well
+documented, so further questions may be resolved by inspecting the code
+itself. Please also feel free to submit a ticket on github, or ask a
+question on stackoverflow (@Mike McKerns).
+
+Dill is an active research tool. There are a growing number of publications
+and presentations that discuss real-world examples and new features of dill
+in greater detail than presented in the user's guide. If you would like to
+share how you use dill in your work, please post a link or send an email
+(to mmckerns at caltech dot edu).
+
+
+Citation
+========
+
+If you use dill to do research that leads to publication, we ask that you
+acknowledge use of dill by citing the following in your publication::
+
+ M.M. McKerns, L. Strand, T. Sullivan, A. Fang, M.A.G. Aivazis,
+ "Building a framework for predictive science", Proceedings of
+ the 10th Python in Science Conference, 2011;
+ http://arxiv.org/pdf/1202.1056
+
+ Michael McKerns and Michael Aivazis,
+ "pathos: a framework for heterogeneous computing", 2010- ;
+ http://trac.mystic.cacr.caltech.edu/project/pathos
+
+Please see http://trac.mystic.cacr.caltech.edu/project/pathos or
+http://arxiv.org/pdf/1202.1056 for further information.
+
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..985035a
--- /dev/null
+++ b/README.md
@@ -0,0 +1,123 @@
+dill
+====
+serialize all of python
+
+About Dill
+----------
+Dill extends python's 'pickle' module for serializing and de-serializing
+python objects to the majority of the built-in python types. Serialization
+is the process of converting an object to a byte stream, and the inverse
+of which is converting a byte stream back to on python object hierarchy.
+
+Dill provides the user the same interface as the 'pickle' module, and
+also includes some additional features. In addition to pickling python
+objects, dill provides the ability to save the state of an interpreter
+session in a single command. Hence, it would be feasable to save a
+interpreter session, close the interpreter, ship the pickled file to
+another computer, open a new interpreter, unpickle the session and
+thus continue from the 'saved' state of the original interpreter
+session.
+
+Dill can be used to store python objects to a file, but the primary
+usage is to send python objects across the network as a byte stream.
+Dill is quite flexible, and allows arbitrary user defined classes
+and funcitons to be serialized. Thus dill is not intended to be
+secure against erroneously or maliciously constructed data. It is
+left to the user to decide whether the data they unpickle is from
+a trustworthy source.
+
+Dill is part of pathos, a python framework for heterogeneous computing.
+Dill is in active development, so any user feedback, bug reports, comments,
+or suggestions are highly appreciated. A list of known issues is maintained
+at http://trac.mystic.cacr.caltech.edu/project/pathos/query, with a public
+ticket list at https://github.com/uqfoundation/dill/issues.
+
+
+Major Features
+--------------
+Dill can pickle the following standard types::
+
+* none, type, bool, int, long, float, complex, str, unicode,
+* tuple, list, dict, file, buffer, builtin,
+* both old and new style classes,
+* instances of old and new style classes,
+* set, frozenset, array, functions, exceptions
+
+Dill can also pickle more 'exotic' standard types::
+
+* functions with yields, nested functions, lambdas
+* cell, method, unboundmethod, module, code, methodwrapper,
+* dictproxy, methoddescriptor, getsetdescriptor, memberdescriptor,
+* wrapperdescriptor, xrange, slice,
+* notimplemented, ellipsis, quit
+
+Dill cannot yet pickle these standard types::
+
+* frame, generator, traceback
+
+Dill also provides the capability to::
+
+* save and load python interpreter sessions
+* save and extract the source code from functions and classes
+* interactively diagnose pickling errors
+
+
+Current Release
+---------------
+The latest stable release of dill is available from::
+ http://trac.mystic.cacr.caltech.edu/project/pathos
+
+or::
+ https://github.com/uqfoundation/dill/releases
+
+or also::
+ https://pypi.python.org/pypi/dill
+
+Dill is distributed under a 3-clause BSD license.
+
+
+Development Version
+-------------------
+You can get the latest development version with all the shiny new features at::
+ https://github.com/uqfoundation
+
+Feel free to fork the github mirror of our svn trunk. If you have a new
+contribution, please submit a pull request.
+
+
+More Information
+----------------
+Probably the best way to get started is to look at the tests that are
+provide within dill. See `dill.tests` for a set of scripts that demonstrate
+dill's ability to serialize different python objects. Since dill conforms
+to the 'pickle' interface, the examples and documentation at
+http://docs.python.org/library/pickle.html also apply to dill if one will
+`import dill as pickle`. The source code is also generally well documented,
+so further questions may be resolved by inspecting the code itself. Please
+also feel free to submit a ticket on github, or ask a question on
+stackoverflow (@Mike McKerns).
+
+Dill is an active research tool. There are a growing number of publications
+and presentations that discuss real-world examples and new features of dill
+in greater detail than presented in the user's guide. If you would like to
+share how you use dill in your work, please post a link or send an email
+(to mmckerns at caltech dot edu).
+
+
+Citation
+--------
+If you use dill to do research that leads to publication, we ask that you
+acknowledge use of dill by citing the following in your publication::
+
+ M.M. McKerns, L. Strand, T. Sullivan, A. Fang, M.A.G. Aivazis,
+ "Building a framework for predictive science", Proceedings of
+ the 10th Python in Science Conference, 2011;
+ http://arxiv.org/pdf/1202.1056
+
+ Michael McKerns and Michael Aivazis,
+ "pathos: a framework for heterogeneous computing", 2010- ;
+ http://dev.danse.us/trac/pathos
+
+Please see http://trac.mystic.cacr.caltech.edu/project/pathos or
+http://arxiv.org/pdf/1202.1056 for further information.
+
diff --git a/dill.egg-info/PKG-INFO b/dill.egg-info/PKG-INFO
new file mode 100644
index 0000000..fa9cbb4
--- /dev/null
+++ b/dill.egg-info/PKG-INFO
@@ -0,0 +1,185 @@
+Metadata-Version: 1.0
+Name: dill
+Version: 0.2.4
+Summary: a utility for serialization of python objects
+Home-page: http://www.cacr.caltech.edu/~mmckerns
+Author: Mike McKerns
+Author-email: mmckerns at caltech.edu
+License: BSD
+Description: -----------------------------
+ dill: serialize all of python
+ -----------------------------
+
+ About Dill
+ ==========
+
+ Dill extends python's 'pickle' module for serializing and de-serializing
+ python objects to the majority of the built-in python types. Serialization
+ is the process of converting an object to a byte stream, and the inverse
+ of which is converting a byte stream back to on python object hierarchy.
+
+ Dill provides the user the same interface as the 'pickle' module, and
+ also includes some additional features. In addition to pickling python
+ objects, dill provides the ability to save the state of an interpreter
+ session in a single command. Hence, it would be feasable to save a
+ interpreter session, close the interpreter, ship the pickled file to
+ another computer, open a new interpreter, unpickle the session and
+ thus continue from the 'saved' state of the original interpreter
+ session.
+
+ Dill can be used to store python objects to a file, but the primary
+ usage is to send python objects across the network as a byte stream.
+ Dill is quite flexible, and allows arbitrary user defined classes
+ and funcitons to be serialized. Thus dill is not intended to be
+ secure against erroneously or maliciously constructed data. It is
+ left to the user to decide whether the data they unpickle is from
+ a trustworthy source.
+
+ Dill is part of pathos, a python framework for heterogeneous computing.
+ Dill is in active development, so any user feedback, bug reports, comments,
+ or suggestions are highly appreciated. A list of known issues is maintained
+ at http://trac.mystic.cacr.caltech.edu/project/pathos/query, with a public
+ ticket list at https://github.com/uqfoundation/dill/issues.
+
+
+ Major Features
+ ==============
+
+ Dill can pickle the following standard types::
+
+ - none, type, bool, int, long, float, complex, str, unicode,
+ - tuple, list, dict, file, buffer, builtin,
+ - both old and new style classes,
+ - instances of old and new style classes,
+ - set, frozenset, array, functions, exceptions
+
+ Dill can also pickle more 'exotic' standard types::
+
+ - functions with yields, nested functions, lambdas,
+ - cell, method, unboundmethod, module, code, methodwrapper,
+ - dictproxy, methoddescriptor, getsetdescriptor, memberdescriptor,
+ - wrapperdescriptor, xrange, slice,
+ - notimplemented, ellipsis, quit
+
+ Dill cannot yet pickle these standard types::
+
+ - frame, generator, traceback
+
+ Dill also provides the capability to::
+
+ - save and load python interpreter sessions
+ - save and extract the source code from functions and classes
+ - interactively diagnose pickling errors
+
+
+ Current Release
+ ===============
+
+ This version is dill-0.2.4.
+
+ The latest stable version of dill is available from::
+
+ http://trac.mystic.cacr.caltech.edu/project/pathos
+
+ or::
+
+ https://github.com/uqfoundation/dill/releases
+
+ or also::
+
+ https://pypi.python.org/pypi/dill
+
+ Dill is distributed under a 3-clause BSD license.
+
+ >>> import dill
+ >>> print (dill.license())
+
+
+ Development Version
+ ===================
+
+ You can get the latest development version with all the shiny new features at::
+
+ https://github.com/uqfoundation
+
+ Feel free to fork the github mirror of our svn trunk. If you have a new
+ contribution, please submit a pull request.
+
+
+ Installation
+ ============
+
+ Dill is packaged to install from source, so you must
+ download the tarball, unzip, and run the installer::
+
+ [download]
+ $ tar -xvzf dill-0.2.4.tgz
+ $ cd dill-0.2.4
+ $ python setup py build
+ $ python setup py install
+
+ You will be warned of any missing dependencies and/or settings
+ after you run the "build" step above.
+
+ Alternately, dill can be installed with pip or easy_install::
+
+ $ pip install dill
+
+
+ Requirements
+ ============
+
+ Dill requires::
+
+ - python2, version >= 2.5 *or* python3, version >= 3.1
+ - pyreadline, version >= 1.7.1 (on windows)
+
+ Optional requirements::
+
+ - setuptools, version >= 0.6
+ - objgraph, version >= 1.7.2
+
+
+ More Information
+ ================
+
+ Probably the best way to get started is to look at the tests that are
+ provided within dill. See `dill.tests` for a set of scripts that demonstrate
+ dill's ability to serialize different python objects. Since dill conforms
+ to the 'pickle' interface, the examples and documentation at
+ http://docs.python.org/library/pickle.html also apply to dill if one will
+ `import dill as pickle`. The source code is also generally well
+ documented, so further questions may be resolved by inspecting the code
+ itself. Please also feel free to submit a ticket on github, or ask a
+ question on stackoverflow (@Mike McKerns).
+
+ Dill is an active research tool. There are a growing number of publications
+ and presentations that discuss real-world examples and new features of dill
+ in greater detail than presented in the user's guide. If you would like to
+ share how you use dill in your work, please post a link or send an email
+ (to mmckerns at caltech dot edu).
+
+
+ Citation
+ ========
+
+ If you use dill to do research that leads to publication, we ask that you
+ acknowledge use of dill by citing the following in your publication::
+
+ M.M. McKerns, L. Strand, T. Sullivan, A. Fang, M.A.G. Aivazis,
+ "Building a framework for predictive science", Proceedings of
+ the 10th Python in Science Conference, 2011;
+ http://arxiv.org/pdf/1202.1056
+
+ Michael McKerns and Michael Aivazis,
+ "pathos: a framework for heterogeneous computing", 2010- ;
+ http://trac.mystic.cacr.caltech.edu/project/pathos
+
+ Please see http://trac.mystic.cacr.caltech.edu/project/pathos or
+ http://arxiv.org/pdf/1202.1056 for further information.
+
+
+Platform: any
+Classifier: Intended Audience :: Developers
+Classifier: Programming Language :: Python
+Classifier: Topic :: Physics Programming
diff --git a/dill.egg-info/SOURCES.txt b/dill.egg-info/SOURCES.txt
new file mode 100644
index 0000000..61ce4de
--- /dev/null
+++ b/dill.egg-info/SOURCES.txt
@@ -0,0 +1,40 @@
+LICENSE
+MANIFEST
+README
+README.md
+setup.cfg
+setup.py
+dill/__diff.py
+dill/__init__.py
+dill/_objects.py
+dill/detect.py
+dill/dill.py
+dill/info.py
+dill/objtypes.py
+dill/pointers.py
+dill/settings.py
+dill/source.py
+dill/temp.py
+dill.egg-info/PKG-INFO
+dill.egg-info/SOURCES.txt
+dill.egg-info/dependency_links.txt
+dill.egg-info/not-zip-safe
+dill.egg-info/top_level.txt
+scripts/get_objgraph.py
+scripts/unpickle.py
+tests/dill_bugs.py
+tests/test_classdef.py
+tests/test_detect.py
+tests/test_diff.py
+tests/test_extendpickle.py
+tests/test_file.py
+tests/test_functors.py
+tests/test_mixins.py
+tests/test_module.py
+tests/test_moduledict.py
+tests/test_nested.py
+tests/test_objects.py
+tests/test_properties.py
+tests/test_source.py
+tests/test_temp.py
+tests/test_weakref.py
\ No newline at end of file
diff --git a/dill.egg-info/dependency_links.txt b/dill.egg-info/dependency_links.txt
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/dill.egg-info/dependency_links.txt
@@ -0,0 +1 @@
+
diff --git a/dill.egg-info/not-zip-safe b/dill.egg-info/not-zip-safe
new file mode 100644
index 0000000..8b13789
--- /dev/null
+++ b/dill.egg-info/not-zip-safe
@@ -0,0 +1 @@
+
diff --git a/dill.egg-info/top_level.txt b/dill.egg-info/top_level.txt
new file mode 100644
index 0000000..85eea70
--- /dev/null
+++ b/dill.egg-info/top_level.txt
@@ -0,0 +1 @@
+dill
diff --git a/dill/__diff.py b/dill/__diff.py
new file mode 100644
index 0000000..3d3f699
--- /dev/null
+++ b/dill/__diff.py
@@ -0,0 +1,229 @@
+#!/usr/bin/env python
+#
+# Author: Mike McKerns (mmckerns @caltech and @uqfoundation)
+# Copyright (c) 2008-2015 California Institute of Technology.
+# License: 3-clause BSD. The full license text is available at:
+# - http://trac.mystic.cacr.caltech.edu/project/pathos/browser/dill/LICENSE
+
+"""
+Module to show if an object has changed since it was memorised
+"""
+
+import os
+import sys
+import types
+try:
+ import numpy
+ HAS_NUMPY = True
+except:
+ HAS_NUMPY = False
+try:
+ import builtins
+except ImportError:
+ import __builtin__ as builtins
+
+# memo of objects indexed by id to a tuple (attributes, sequence items)
+# attributes is a dict indexed by attribute name to attribute id
+# sequence items is either a list of ids, of a dictionary of keys to ids
+memo = {}
+id_to_obj = {}
+# types that cannot have changing attributes
+builtins_types = set((str, list, dict, set, frozenset, int))
+dont_memo = set(id(i) for i in (memo, sys.modules, sys.path_importer_cache,
+ os.environ, id_to_obj))
+
+
+def get_attrs(obj):
+ """
+ Gets all the attributes of an object though its __dict__ or return None
+ """
+ if type(obj) in builtins_types \
+ or type(obj) is type and obj in builtins_types:
+ return
+ try:
+ return obj.__dict__
+ except:
+ return
+
+
+def get_seq(obj, cache={str: False, frozenset: False, list: True, set: True,
+ dict: True, tuple: True, type: False,
+ types.ModuleType: False, types.FunctionType: False,
+ types.BuiltinFunctionType: False}):
+ """
+ Gets all the items in a sequence or return None
+ """
+ o_type = type(obj)
+ hsattr = hasattr
+ if o_type in cache:
+ if cache[o_type]:
+ if hsattr(obj, "copy"):
+ return obj.copy()
+ return obj
+ elif HAS_NUMPY and o_type in (numpy.ndarray, numpy.ma.core.MaskedConstant):
+ if obj.shape and obj.size:
+ return obj
+ else:
+ return []
+ elif hsattr(obj, "__contains__") and hsattr(obj, "__iter__") \
+ and hsattr(obj, "__len__") and hsattr(o_type, "__contains__") \
+ and hsattr(o_type, "__iter__") and hsattr(o_type, "__len__"):
+ cache[o_type] = True
+ if hsattr(obj, "copy"):
+ return obj.copy()
+ return obj
+ else:
+ cache[o_type] = False
+ return None
+
+
+def memorise(obj, force=False):
+ """
+ Adds an object to the memo, and recursively adds all the objects
+ attributes, and if it is a container, its items. Use force=True to update
+ an object already in the memo. Updating is not recursively done.
+ """
+ obj_id = id(obj)
+ if obj_id in memo and not force or obj_id in dont_memo:
+ return
+ id_ = id
+ g = get_attrs(obj)
+ if g is None:
+ attrs_id = None
+ else:
+ attrs_id = dict((key,id_(value)) for key, value in g.items())
+
+ s = get_seq(obj)
+ if s is None:
+ seq_id = None
+ elif hasattr(s, "items"):
+ seq_id = dict((id_(key),id_(value)) for key, value in s.items())
+ else:
... 6127 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/dill.git
More information about the Python-modules-commits
mailing list