Skip to content

Commit

Permalink
Merge pull request #76 from chaimleib/dev
Browse files Browse the repository at this point in the history
Dev -> master (3.0.0)
  • Loading branch information
chaimleib authored Dec 17, 2018
2 parents 6a731f2 + 713fbed commit 5061458
Show file tree
Hide file tree
Showing 41 changed files with 640 additions and 1,203 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
# IDE dirs
.idea/
*.komodoproject
.vscode/

# Auto-generated
*.pyc
dist/
build/
.cache/
.pytest_cache/

# generated by coverage
.coverage
Expand Down
14 changes: 10 additions & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
# Change log

## Version 3.0.0
- Dropped support for Python 2.6, 3.2, and 3.3
- Add support for Python 3.5 and 3.6
- Breaking:
- `search(begin, end, strict)` has been replaced with `at(point)`, `overlap(begin, end)`, and `envelop(begin, end)`
- `extend(items)` has been deleted, use `update(items)` instead
- Methods that take a `strict=True/False` argument now consistently default to `strict=True`
- Dropped support for Python 2.6, 3.2, and 3.3
- Add support for Python 3.5, 3.6, and 3.7
- Faster `Interval` overlap checking (@tuxzz, #56)
- Updated README:
- new restructuring methods from 2.1.0
Expand All @@ -13,10 +17,12 @@
- `Interval.distance_to()` gave an incorrect distance when passed the `Interval`'s upper boundary
- `Node.pop_greatest_child()` sometimes forgot to `rotate()` when creating new child nodes. (@escalonn, #41, #42)
- `IntervalTree.begin()` and `end()` are O(1), not O(n). (@ProgVal, #40)
- `intersection_update()` and `symmetric_difference()` and `symmetric_difference_update()` didn't actually work. Now they do.
- `collections.abc` deprecation warning no longer happens
- Maintainers:
- use github.com/kennethreitz/pyandoc
- PyPi accepts Markdown! Woohoo!
- reorganize tests
- more tests added to improve code coverage (We're at 95%! Woohoo!)
- more tests added to improve code coverage (We're at 96%! Yay!)
- test for issue #4 had a broken import reference

## Version 2.1.0
Expand Down
48 changes: 8 additions & 40 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ TEMPS=$(shell \
-o \( -type d -name '__pycache__' \) \
)

PYTHONS:=2.7.14 3.4.3 3.5.4 3.6.3
PYTHONS:=2.7.15 3.4.9 3.5.6 3.6.7 3.7.1
PYTHON_MAJORS:=$(shell \
echo "$(PYTHONS)" | \
tr ' ' '\n' | cut -d. -f1 | \
Expand All @@ -28,9 +28,9 @@ PYPI=pypitest
# default target
all: test

test: pytest rst
test: pytest

quicktest: rst
quicktest:
PYPI=$(PYPI) python setup.py test

coverage:
Expand All @@ -43,18 +43,14 @@ pytest: deps-dev

clean: clean-build clean-eggs clean-temps

distclean: clean clean-deps
distclean: clean

clean-build:
rm -rf dist build

clean-eggs:
rm -rf *.egg* .eggs/

clean-deps:
rm -rf pyandoc docutils bin
rm -f pandoc

clean-temps:
rm -rf $(TEMPS)

Expand All @@ -70,13 +66,8 @@ install-develop:
uninstall:
pip uninstall intervaltree

# Convert README to rst and check the result
rst: pydocutils pyandoc
PYPI=$(PYPI) python setup.py check --restructuredtext
@echo "README is ready for PyPI"

# Register at PyPI
register: rst
register:
PYPI=$(PYPI) python setup.py register -r $(PYPI)

# Setup for live upload
Expand All @@ -87,35 +78,17 @@ release:
sdist-upload:
PYPI=$(PYPI) python setup.py sdist upload -r $(PYPI)

deps-ci: pyandoc

deps-dev: pyandoc pyenv-install-versions

pyandoc: pandoc-bin
[[ -d pyandoc/pandoc ]] || git clone --depth=50 git://github.com/kennethreitz/pyandoc.git
[[ "`readlink pandoc`" == "pyandoc/pandoc" ]] || ln -s pyandoc/pandoc pandoc
deps-dev: pyenv-install-versions

pandoc-bin: pm-update
pandoc -h &>/dev/null || brew install pandoc &>/dev/null || sudo apt-get install pandoc

pydocutils:
$(eval PYPKG=docutils)
python -c 'import $(PYPKG)' &>/dev/null || \
pip install --upgrade $(PYPKG) || \
pip install --upgrade --install-options="--install-purelib='$(PWD)'" docutils

pm-update:
pandoc -h &>/dev/null || brew update &>/dev/null || sudo apt-get update

# Uploads to test server, unless the release target was run too
upload: test clean sdist-upload

pyenv-is-installed:
pyenv --version || (echo "ERROR: pyenv not installed" && false)
pyenv --version &>/dev/null || (echo "ERROR: pyenv not installed" && false)

pyenv-install-versions: pyenv-is-installed
for pyver in $(PYTHONS); do (echo N | pyenv install $$pyver) || true; done
for pyver in $(PYTHONS); do export PYENV_VERSION=$$pyver; pip install -U pip; pip install -U pytest; done
for pyver in $(PYTHONS); do export PYENV_VERSION=$$pyver; pip install -U pip; pip install -U pytest; done | grep -v 'Requirement already satisfied, skipping upgrade'
pyenv rehash

# for debugging the Makefile
Expand All @@ -136,23 +109,18 @@ env:
distclean \
clean-build \
clean-eggs \
clean-deps \
clean-temps \
install-testpypi \
install-pypi \
install-develop \
pyenv-install-versions \
pyenv-is-installed \
uninstall \
rst \
register \
release \
sdist-upload \
deps-ci \
deps-dev \
pyandoc \
pandoc-bin \
pydocutils \
pm-update \
upload \
env
Expand Down
Loading

0 comments on commit 5061458

Please sign in to comment.