aboutsummaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorCosimo Lupo <cosimo@anthrotype.com>2017-08-23 19:45:13 +0100
committerEugene Kliuchnikov <eustas@google.com>2017-08-23 20:45:13 +0200
commit4f455cac329d0c612887123c9dc6de9a66fa8490 (patch)
tree7d4c2d9f96660869bd30fc9d0578bbfafad6f5be /python
parent019091f994c581bbadc3995a97a51488616d2f59 (diff)
downloadbrotli-4f455cac329d0c612887123c9dc6de9a66fa8490.zip
brotli-4f455cac329d0c612887123c9dc6de9a66fa8490.tar.gz
brotli-4f455cac329d0c612887123c9dc6de9a66fa8490.tar.bz2
disable buidling/deployment of python wheels (#583)
* [appveyor] remove 'deploy' stage; only test python 2.7 and 3.6 all the other python versions are being built and tested on https://github.com/google/brotli-wheels/blob/d571d63/appveyor.yml * remove terrify submodule as not needed any more * [travis] just test py2.7 and 3.6 on linux; remove extra osx python builds All the other python versions for OSX are being built/tested on: https://github.com/google/brotli-wheels/blob/d571d63/.travis.yml Also, there's no need to build and deploy wheels here, as that's done in the separate repository. * [setup.py] only rebuild if dependency are newer; fix typo in list of 'depends' https://github.com/python/cpython/blob/v3.6.2/Lib/distutils/command/build_ext.py#L485-L500 * [ci] only run 'python setup.py test' if we run 'python setup.py built test', the setuptools 'test' command will forcibly re-run the build_ext subcommand because it wants to pass the --inplace option (it ignores whether it's up to date, just re-runs it all the time). with this we go from running built_ext twice, to running it only once per build * [Makefile] run 'build_ext --inplace' instead of 'develop' as default target The 'develop' command is like 'install' in the sense that it modifies the user's python environment. The default make target should be less intrusive, i.e. just building the extension module in-place without modify anything in the user's environment. We don't need to tell make about the dependency between 'test' and 'build' target as that is baked in the `python setup.py test` command. * [Makefile] add 'develop' target; remove unnecessary 'tests' target `make test` is good enough * [Makefile] `setup.py test` requires setuptools; run `python -m unittest` This will work even if setuptools is not installed, which is unlikely nowadays but still our `setup.py` works with plain distutils, so we may well have our tests work without setuptools. * [python/README.md] add ref to 'develop' target; remove 'tests', just 'make test' * [setup.py] import modules as per nicksay's comment https://github.com/google/brotli/pull/583#discussion_r131981049 * [Makefile] add 'develop' to .PHONY targets remove 'tests' from .PHONY * [appveyor] remove unused setup scripts We don't need to install custom python versions, we are using the pre-installed ones on Appveyor. * [appveyor] remove unneeded setup code
Diffstat (limited to 'python')
-rw-r--r--python/Makefile13
-rw-r--r--python/README.md17
2 files changed, 17 insertions, 13 deletions
diff --git a/python/Makefile b/python/Makefile
index 646f330..d5d88f8 100644
--- a/python/Makefile
+++ b/python/Makefile
@@ -8,10 +8,12 @@
.PHONY: all
# Build
.PHONY: build
+# Develop
+.PHONY: develop
# Install
.PHONY: install
# Test
-.PHONY: test tests
+.PHONY: test
# Clean
.PHONY: clean
# Format
@@ -31,16 +33,17 @@ all: build
build: $(EXTENSIONS)
$(EXTENSIONS): $(EXT_SOURCES)
+ @cd .. && $(PYTHON) setup.py build_ext --inplace
+
+develop:
@cd .. && $(PYTHON) setup.py develop
install:
@cd .. && $(PYTHON) setup.py install
-test: tests
-
-tests: build
+test: build
@echo 'running tests'
- @$(PYTHON) -m unittest discover -p '*_test.py'
+ @$(PYTHON) -m unittest discover -v -p '*_test.py'
clean:
@cd .. && $(PYTHON) setup.py clean
diff --git a/python/README.md b/python/README.md
index 33cba56..3b0d8b2 100644
--- a/python/README.md
+++ b/python/README.md
@@ -17,19 +17,20 @@ following command from this directory:
### Development
-For development, reinstalling the module with every change is time
-consuming. Instead, we recommend using the `setuptools`
-"[development mode][]" to make the module available while still being
-able to edit the source files.
+You may run the following commands from this directory:
-For convenience, you may run the following commands from this directory:
-
- $ make # Deploy the module in "development mode"
+ $ make # Build the module in-place
- $ make tests # Test the module
+ $ make test # Test the module
$ make clean # Remove all temporary files and build output
+If you wish to make the module available while still being
+able to edit the source files, you can use the `setuptools`
+"[development mode][]":
+
+ $ make develop # Install the module in "development mode"
+
### Code Style
Brotli's code follows the [Google Python Style Guide][]. To