Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix setup.py and MANIFEST.in to include templates (PR #345) #355

Merged
merged 3 commits into from
Jul 25, 2018

Conversation

cehbrecht
Copy link
Collaborator

Overview

I was updating the pywps conda package with the latest master including the PR #345 introducing templates. The templates/ folder was missing in the installed python package.

This PR updates setup.py and MANIFEST.in to include package data (templates/, schema/).

Related Issue / Discussion

PR #345

Additional Information

Contribution Agreement

(as per https://github.com/geopython/pywps/blob/master/CONTRIBUTING.rst#contributions-and-licensing)

  • I'd like to contribute [feature X|bugfix Y|docs|something else] to PyWPS. I confirm that my contributions to PyWPS will be compatible with the PyWPS license guidelines at the time of contribution.
  • I have already previously agreed to the PyWPS Contributions and Licensing Guidelines

@cehbrecht cehbrecht added the bug label Jul 10, 2018
@cehbrecht cehbrecht added this to the 4.2.0 milestone Jul 10, 2018
@coveralls
Copy link

coveralls commented Jul 10, 2018

Coverage Status

Coverage increased (+0.01%) to 73.14% when pulling 03686e4 on bird-house:fix-pr-345-templates into 71d16b9 on geopython:master.

@gschwind
Copy link
Collaborator

Hello, is it expected that tests files are installed, see below ? otherwise it look good.

I get for both python2.7 and python3.5:

pywps-4.0.0-py3.5.egg/
pywps-4.0.0-py3.5.egg/EGG-INFO
pywps-4.0.0-py3.5.egg/EGG-INFO/PKG-INFO
pywps-4.0.0-py3.5.egg/EGG-INFO/SOURCES.txt
pywps-4.0.0-py3.5.egg/EGG-INFO/dependency_links.txt
pywps-4.0.0-py3.5.egg/EGG-INFO/entry_points.txt
pywps-4.0.0-py3.5.egg/EGG-INFO/not-zip-safe
pywps-4.0.0-py3.5.egg/EGG-INFO/requires.txt
pywps-4.0.0-py3.5.egg/EGG-INFO/top_level.txt
pywps-4.0.0-py3.5.egg/pywps
pywps-4.0.0-py3.5.egg/pywps/__init__.py
pywps-4.0.0-py3.5.egg/pywps/_compat.py
pywps-4.0.0-py3.5.egg/pywps/configuration.py
pywps-4.0.0-py3.5.egg/pywps/dblog.py
pywps-4.0.0-py3.5.egg/pywps/dependencies.py
pywps-4.0.0-py3.5.egg/pywps/exceptions.py
pywps-4.0.0-py3.5.egg/pywps/ext_autodoc.py
pywps-4.0.0-py3.5.egg/pywps/tests.py
pywps-4.0.0-py3.5.egg/pywps/wpsserver.py
pywps-4.0.0-py3.5.egg/pywps/__pycache__
pywps-4.0.0-py3.5.egg/pywps/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/__pycache__/_compat.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/__pycache__/configuration.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/__pycache__/dblog.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/__pycache__/dependencies.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/__pycache__/exceptions.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/__pycache__/ext_autodoc.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/__pycache__/tests.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/__pycache__/wpsserver.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/app
pywps-4.0.0-py3.5.egg/pywps/app/Common.py
pywps-4.0.0-py3.5.egg/pywps/app/Process.py
pywps-4.0.0-py3.5.egg/pywps/app/Service.py
pywps-4.0.0-py3.5.egg/pywps/app/WPSRequest.py
pywps-4.0.0-py3.5.egg/pywps/app/__init__.py
pywps-4.0.0-py3.5.egg/pywps/app/basic.py
pywps-4.0.0-py3.5.egg/pywps/app/__pycache__
pywps-4.0.0-py3.5.egg/pywps/app/__pycache__/Common.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/app/__pycache__/Process.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/app/__pycache__/Service.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/app/__pycache__/WPSRequest.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/app/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/app/__pycache__/basic.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/inout
pywps-4.0.0-py3.5.egg/pywps/inout/__init__.py
pywps-4.0.0-py3.5.egg/pywps/inout/basic.py
pywps-4.0.0-py3.5.egg/pywps/inout/inputs.py
pywps-4.0.0-py3.5.egg/pywps/inout/literaltypes.py
pywps-4.0.0-py3.5.egg/pywps/inout/outputs.py
pywps-4.0.0-py3.5.egg/pywps/inout/storage.py
pywps-4.0.0-py3.5.egg/pywps/inout/__pycache__
pywps-4.0.0-py3.5.egg/pywps/inout/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/inout/__pycache__/basic.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/inout/__pycache__/inputs.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/inout/__pycache__/literaltypes.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/inout/__pycache__/outputs.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/inout/__pycache__/storage.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/inout/formats
pywps-4.0.0-py3.5.egg/pywps/inout/formats/__init__.py
pywps-4.0.0-py3.5.egg/pywps/inout/formats/__pycache__
pywps-4.0.0-py3.5.egg/pywps/inout/formats/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/processing
pywps-4.0.0-py3.5.egg/pywps/processing/__init__.py
pywps-4.0.0-py3.5.egg/pywps/processing/basic.py
pywps-4.0.0-py3.5.egg/pywps/processing/job.py
pywps-4.0.0-py3.5.egg/pywps/processing/scheduler.py
pywps-4.0.0-py3.5.egg/pywps/processing/__pycache__
pywps-4.0.0-py3.5.egg/pywps/processing/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/processing/__pycache__/basic.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/processing/__pycache__/job.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/processing/__pycache__/scheduler.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/resources
pywps-4.0.0-py3.5.egg/pywps/resources/__init__.py
pywps-4.0.0-py3.5.egg/pywps/resources/__pycache__
pywps-4.0.0-py3.5.egg/pywps/resources/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/resources/schemas
pywps-4.0.0-py3.5.egg/pywps/resources/schemas/__init__.py
pywps-4.0.0-py3.5.egg/pywps/resources/schemas/wps_all.xsd
pywps-4.0.0-py3.5.egg/pywps/resources/schemas/__pycache__
pywps-4.0.0-py3.5.egg/pywps/resources/schemas/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/response
pywps-4.0.0-py3.5.egg/pywps/response/__init__.py
pywps-4.0.0-py3.5.egg/pywps/response/capabilities.py
pywps-4.0.0-py3.5.egg/pywps/response/describe.py
pywps-4.0.0-py3.5.egg/pywps/response/execute.py
pywps-4.0.0-py3.5.egg/pywps/response/status.py
pywps-4.0.0-py3.5.egg/pywps/response/__pycache__
pywps-4.0.0-py3.5.egg/pywps/response/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/response/__pycache__/capabilities.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/response/__pycache__/describe.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/response/__pycache__/execute.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/response/__pycache__/status.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/schemas
pywps-4.0.0-py3.5.egg/pywps/schemas/geojson
pywps-4.0.0-py3.5.egg/pywps/schemas/geojson/README
pywps-4.0.0-py3.5.egg/pywps/schemas/geojson/bbox.json
pywps-4.0.0-py3.5.egg/pywps/schemas/geojson/crs.json
pywps-4.0.0-py3.5.egg/pywps/schemas/geojson/geojson.json
pywps-4.0.0-py3.5.egg/pywps/schemas/geojson/geometry.json
pywps-4.0.0-py3.5.egg/pywps/templates
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0/capabilities
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0/capabilities/main.xml
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0/describe
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0/describe/bbox.xml
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0/describe/complex.xml
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0/describe/literal.xml
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0/describe/main.xml
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0/execute
pywps-4.0.0-py3.5.egg/pywps/templates/1.0.0/execute/main.xml
pywps-4.0.0-py3.5.egg/pywps/templates/2.0.0
pywps-4.0.0-py3.5.egg/pywps/templates/2.0.0/capabilities
pywps-4.0.0-py3.5.egg/pywps/templates/2.0.0/capabilities/main.xml
pywps-4.0.0-py3.5.egg/pywps/validator
pywps-4.0.0-py3.5.egg/pywps/validator/__init__.py
pywps-4.0.0-py3.5.egg/pywps/validator/allowed_value.py
pywps-4.0.0-py3.5.egg/pywps/validator/base.py
pywps-4.0.0-py3.5.egg/pywps/validator/complexvalidator.py
pywps-4.0.0-py3.5.egg/pywps/validator/literalvalidator.py
pywps-4.0.0-py3.5.egg/pywps/validator/mode.py
pywps-4.0.0-py3.5.egg/pywps/validator/__pycache__
pywps-4.0.0-py3.5.egg/pywps/validator/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/validator/__pycache__/allowed_value.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/validator/__pycache__/base.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/validator/__pycache__/complexvalidator.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/validator/__pycache__/literalvalidator.cpython-35.pyc
pywps-4.0.0-py3.5.egg/pywps/validator/__pycache__/mode.cpython-35.pyc
pywps-4.0.0-py3.5.egg/tests
pywps-4.0.0-py3.5.egg/tests/processes
pywps-4.0.0-py3.5.egg/tests/processes/__init__.py
pywps-4.0.0-py3.5.egg/tests/processes/__pycache__
pywps-4.0.0-py3.5.egg/tests/processes/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/tests/requests
pywps-4.0.0-py3.5.egg/tests/requests/__init__.py
pywps-4.0.0-py3.5.egg/tests/requests/wps_describeprocess_request.xml
pywps-4.0.0-py3.5.egg/tests/requests/wps_execute_request-boundingbox.xml
pywps-4.0.0-py3.5.egg/tests/requests/wps_execute_request-complexvalue.xml
pywps-4.0.0-py3.5.egg/tests/requests/wps_execute_request-responsedocument-1.xml
pywps-4.0.0-py3.5.egg/tests/requests/wps_execute_request-responsedocument-2.xml
pywps-4.0.0-py3.5.egg/tests/requests/wps_execute_request_extended-responsedocument.xml
pywps-4.0.0-py3.5.egg/tests/requests/wps_execute_request_rawdataoutput.xml
pywps-4.0.0-py3.5.egg/tests/requests/wps_getcapabilities_request.xml
pywps-4.0.0-py3.5.egg/tests/requests/__pycache__
pywps-4.0.0-py3.5.egg/tests/requests/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/tests/validator
pywps-4.0.0-py3.5.egg/tests/validator/__init__.py
pywps-4.0.0-py3.5.egg/tests/validator/test_complexvalidators.py
pywps-4.0.0-py3.5.egg/tests/validator/test_literalvalidators.py
pywps-4.0.0-py3.5.egg/tests/validator/__pycache__
pywps-4.0.0-py3.5.egg/tests/validator/__pycache__/__init__.cpython-35.pyc
pywps-4.0.0-py3.5.egg/tests/validator/__pycache__/test_complexvalidators.cpython-35.pyc
pywps-4.0.0-py3.5.egg/tests/validator/__pycache__/test_literalvalidators.cpython-35.pyc

Best regards

@cehbrecht
Copy link
Collaborator Author

@gschwind thanks for review :) Tests should be included. I have added now prune tests/ to MANIFEST.in which does the trick. *.pyc files should also not be part of the package.

@gschwind
Copy link
Collaborator

Hello,

I am puzzled if I do:

(python3.5) benoit.gschwind@hive ~/projects/pywps $ rm -r build/
(python3.5) benoit.gschwind@hive ~/projects/pywps $ rm -r ~/virtualenv/python3.5/lib/python3.5/site-packages/pywps-4.0.0-py3.5.egg/
(python3.5) benoit.gschwind@hive ~/virtualenv/python3.5/lib/python3.5/site-packages $ python setup.py install

I still have the tests directory.

@cehbrecht
Copy link
Collaborator Author

I have tested it with python setup.py sdist which is using the MANIFEST.in. I have not understood yet while the setup.py config alone is not working (tests are excluded).

@jachym
Copy link
Member

jachym commented Jul 20, 2018

According to https://stackoverflow.com/a/32726439/2404886 this worked for me

...    
'packages': find_packages(exclude=["*.tests", "*.tests.*", "tests.*", "tests"]),
...

@jachym
Copy link
Member

jachym commented Jul 20, 2018

Well. I did also

in MANIFEST.in - not sure, if this helped

@cehbrecht
Copy link
Collaborator Author

@jachym thanks for the info :)

I have updated this PR with:

packages': find_packages(exclude=["docs", "tests.*", "tests"]),

Both python setup.py sdist and python setup.py install work. Make sure you clean the build/ and maybe also the dist/ folder when testing it.

@jachym jachym merged commit 1547cf1 into geopython:master Jul 25, 2018
@jachym
Copy link
Member

jachym commented Jul 25, 2018

OK, done for me

@cehbrecht cehbrecht deleted the fix-pr-345-templates branch July 30, 2018 15:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants