Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: uqfoundation/dill
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 35621d3761775ffa9f75fe09ac760eb253a80a47
Choose a base ref
..
head repository: uqfoundation/dill
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: de1943fac5bfab22884c2f4a3f49f3f644b96be9
Choose a head ref
Showing with 942 additions and 634 deletions.
  1. +6 −0 .codecov.yml
  2. +10 −1 .coveragerc
  3. +1 −1 .readthedocs.yml
  4. +4 −14 .travis.yml
  5. +2 −0 MANIFEST.in
  6. +28 −0 README.md
  7. +281 −18 dill/__init__.py
  8. +188 −37 dill/_dill.py
  9. +234 −0 dill/_utils.py
  10. +40 −120 dill/session.py
  11. +4 −5 dill/settings.py
  12. +0 −58 dill/utils.py
  13. +1 −0 docs/Makefile
  14. +15 −3 docs/requirements.txt
  15. +6 −0 pyproject.toml
  16. +7 −2 setup.cfg
  17. +112 −364 setup.py
  18. +2 −1 tests/test_detect.py
  19. +1 −10 tox.ini
6 changes: 6 additions & 0 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -20,3 +20,9 @@ coverage:
target: auto
threshold: 1%

fixes:
# reduces pip-installed path to git root and
# remove dist-name from setup-installed path
- "*/site-packages/::"
- "*/site-packages/dill-*::"

11 changes: 10 additions & 1 deletion .coveragerc
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
[run]
# source = dill
include = */dill/*
include =
*/dill/*
omit =
*/tests/*
*/info.py
@@ -11,7 +12,15 @@ branch = true
# data_file = $TRAVIS_BUILD_DIR/.coverage
# debug = trace

[paths]
source =
dill
*/site-packages/dill
*/site-packages/dill-*/dill

[report]
include =
*/dill/*
exclude_lines =
pragma: no cover
raise NotImplementedError
2 changes: 1 addition & 1 deletion .readthedocs.yml
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@ sphinx:

# build
python:
version: "3.7"
version: "3.8"
install:
- method: pip
path: .
18 changes: 4 additions & 14 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -3,39 +3,28 @@ language: python

matrix:
include:
- python: '2.7'
dist: bionic
env:
- COVERAGE="true"

- python: '3.7'
env:
- COVERAGE="true"
- NUMPY="true"

- python: '3.8'
env:

- python: '3.9'
env:
- COVERAGE="true"
- NUMPY="true"

- python: '3.10'
env:

- python: '3.11-dev'
env:

- python: 'pypy2.7-7.3.1' # most recent
dist: xenial
env:

- python: 'pypy3.7-7.3.5' # most recent
dist: bionic
env:

allow_failures:
- python: '2.7'
- python: 'pypy2.7-7.3.1'
- python: '3.11-dev'
fast_finish: true

@@ -48,11 +37,12 @@ before_install:
- if [[ $NUMPY == "true" ]]; then pip install numpy; fi

install:
- python setup.py build && python setup.py install
- python -m pip install .

script:
- for test in tests/__init__.py; do echo $test ; if [[ $COVERAGE == "true" ]]; then coverage run -a $test > /dev/null; else python $test > /dev/null; fi ; done
- for test in tests/test_*.py; do echo $test ; if [[ $COVERAGE == "true" ]]; then coverage run -a $test > /dev/null; else python $test > /dev/null; fi ; done

after_success:
- if [[ $COVERAGE == "true" ]]; then bash <(curl -s https://codecov.io/bash); else echo ''; fi
- if [[ $COVERAGE == "true" ]]; then coverage report; fi
2 changes: 2 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
include LICENSE
include README*
include MANIFEST.in
include pyproject.toml
include tox.ini
include scripts/*
include tests/*py
28 changes: 28 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -83,6 +83,34 @@ You can get the latest development version with all the shiny new features at:
If you have a new contribution, please submit a pull request.


Installation
------------
``dill`` can be installed with ``pip``::

$ pip install dill

To optionally include the ``objgraph`` diagnostic tool in the install::

$ pip install dill[graph]

For windows users, to optionally install session history tools::

$ pip install dill[readline]


Requirements
------------
``dill`` requires:

* ``python`` (or ``pypy``), **>=3.7**
* ``setuptools``, **>=42**

Optional requirements:

* ``objgraph``, **>=1.7.2**
* ``pyreadline``, **>=1.7.1** (on windows)


Basic Usage
-----------
``dill`` is a drop-in replacement for ``pickle``. Existing code can be
Loading