PyWPS is an implementation of the Web Processing Service standard from the Open Geospatial Consortium. PyWPS is written in Python.
This project started out as a community project in OSGeo Labs and graduated incubation on 2018-05-11
Basic Project Data
- Project Name: PyWPS
- Project Status Condition: Mature
- Project Web Site: http://pywps.org
- Project Contact: User:jachym http://lists.osgeo.org/cgi-bin/mailman/listinfo/pywps-dev
- Short Project Description: Implementation of OGC Web Processing Service (OGC WPS) standard on the server side in Python programming language.
- Project Source Code: https://github.com/geopython/PyWPS
- Project Mailing List: http://lists.osgeo.org/cgi-bin/mailman/listinfo/pywps-dev
- Project Version Control Repository: https://github.com/geopython/PyWPS
- Project Bug Tracker: https://github.com/geopython/PyWPS
- Project Feature Request Tracker: https://github.com/geopython/PyWPS
- Source Code License: MIT (PyWPS 4.x - current stable), GNU GPL (PyWPS <= 3.x)
- Documentation License: Creative commons
- Copyright Assignment Policy: Collected by GITHub
- Decision Making Procedure: Consensus/PSC
- Coding Standards: follow http://www.python.org/dev/peps/pep-0008/ as much as possible, https://github.com/geopython/pywps/blob/master/CONTRIBUTING.rst#coding-guidelines
- Release Procedure: When consensus reached, new version released.
- Latest Project Release: 4.0.0 2016-12-07
Originally started at https://trac.osgeo.org/osgeo/ticket/337 (2009-02-27) moved here for more collaborative work
NOTE: meanwhile: PyWPS moved to GitHub, started work on PyWPS-4.
Later in this text: PyWPS-3 is old (2014-04) obsolete version. PyWPS-4 is stable development version with completely new code base.
- http://pywps.org Project Owner.:
- Jachym Cepicky, jachym.cepicky at gmail.com
Please provide the names and emails of co-project owners (if any).:
Please provide the names, emails and entity affiliation of all official committers:
- Jachym Cepicky, jachym.cepicky gmail com, Initial autor, core developer, coordinator of development
- Lorenzo Becchi, lorenzo at ominiverdi com, Initial autor of GUI, ka-Map Developer
- Luca Casagrande, luca.casagrande at gmail com, Initial autor of GUI, ka-Map Developer
- Sebastian Holler, sh at sholler de, core developer
- Panagiotis Skintzos, p at pskintzos net, core developer
- Jorge de Jesus, jorge.de-jesus jrc it, Power user, testing
- Alex Morega, alex grep ro, https://github.com/mgax, architecture of PyWPS-4
- Jachym Cepicky, jachym.cepicky gmail com, https://github.com/jachym, architecture of PyWPS-4
- Calin Ciociu, calin.ciociu gmail com, https://github.com/Noctalin, architecture of PyWPS-4
- Luís de Sousa, luis.a.de.sousa gmail com, https://github.com/ldesousa, development of PyWPS-4
Please describe your Project.:
- PyWPS (Python Web Processing Service) implements the OGC(r)'s Web Processing Service as a Python API on Apache Server using CGI requests.
Why is hosting at OSGeo good for your project?:
- We want to share the infrastructure, connect with other projects, provide the support for easy server-side scripting, as well as know-how and code for WPS clients. We want to be closer part of OSGeo Community.
- In fact, we just need some of the parts of OSGeo infrastructure, currently mainly the mailing list
Type of application does this project represent(client, server, standalone, library, etc.):
- Server and Python API
Please describe any relationships to other open source projects.:
- PyWPS is written with direct support for GRASS GIS, allowing from GRASS modules to run as server-programs. However, connection to GDAL/OGR, PROJ.4, Python Interfaces and Rpy or any other command line tools is possible.
Please describe any relationships with commercial companies or products.:
- PyWPS-3 is independent project released under GNU/GPL licence. It's development is (currently) supported mainly by Help Service - Remote Sensing company (Czech) through Prezem http://www.prezem.cz/ project.
- PyWPS-4 uses MIT license, not used yet anywhere
Which open source license(s) will the source code be released under?:
- PyWPS-3 GNU/GPL
- PyWPS-4 MIT
Is there already a beta or official release?:
- There is 3.2.x release and currently, 3.2.x branch is on the schedule.
- PyWPS-4 is still in early development phase
What is the origin of your project (commercial, experimental, thesis or other higher education, government, or some other source)?:
- Commercial, experimental, government, education
Does the project support open standards? Which ones and to what extent? (OGC, w3c, ect.) Has the software been certified to any standard (CITE for example)? If not, is it the intention of the project owners to seek certification at some point?:
- PyWPS is a OGC WPS 1.0.0 implemenation. It has not been certified yet. After testing the PyWPS API using the test suite described in Annex A of the OpenGIS Web Processing Service version 1.0.0 (OGC 05-007r6) and Annex A of the OGC Web Services Common Specifications (OGC 06-121r3), it will be requested a OGC certification, now when OGC CITE tests are at hand.
- PyWPS-4 will be supporting new WPS-2.0.0 standard too
Is the code free of patents, trademarks, and do you control the copyright?:
How many people actively contribute (code, documentation, other?) to the project at this time?:
- PyWPS-3 - 9
- PyWPS-4 - 4
How many people have commit access to the source code repository?:
- PyWPS-3: 9 https://github.com/geopython/PyWPS/graphs/contributors
- PYWPS-4: 4 https://github.com/jachym/pywps-4/graphs/contributors
Approximately how many users are currently using this project?:
- There are 45 Non-digested Members of the mailing list.
What type of users does your project attract (government, commercial, hobby, academic research, etc. )?:
- Precise Farming calculation in Prezem project http://www.prezem.cz/
- PyWPS has attracted the attention of the INTAMAP research project (www.intamap.org) , as one of the WPS API's responsible for client/server interaction for automatic interpolation mapping and cross validation of results.
- PyWPS is also beeing using with OpenLayers and Ka-maps client (Embrio).
- Plymouth Marine Laboratory are currently developing WPS processes using PyWPS for use in an EU funded project http://interrisk.nersc.no/. PML have recommended PyWPS to other project members with at least one other so far developing a new service.
- University of Perugia ( Italy) is developing a DSS for water management which uses pyWPS in a tool for withdrawals handling.
- International Office for Water is developping two WPS based on PyWPS :
- One is for the French Information System on Water and is calculating various information for a given watercourse (e.g : the land occupation based on Corine Land Cover for the watercourse's catchment).
- One is to help Regional Directorate for Industry, Research and the Environment in their discharge points identification. It will identify all Water Framework Directive waterbodies potentially impacted by a given discharge point.
If you do not intend to host any portion of this project using the OSGeo infrastructure, why should you be considered a member project of the OSGeo Foundation?:
- PyWPS is long time considered as one of affiliate projects. We are members of OSGeo family.
Does the project include an automated build and test?:
- As for PyWPS-3 Partly. Since the project uses python setup script, it is possible to build it on any system. Standard example processes are included for testing purposes. Further development will fallow to full fill OGC's test suits (see point) 12
- For PyWPS-4: test driven development is introduced. We use Tox and setup the environment for Python-2 and Python-3. For every push, Travis hook is running the automated test suite.
What language(s) are used in this project? (C/Java/perl/etc):
- PyWPS-4 is pure Python (2 and 3)
What is the dominant written language (i.e. English, French, Spanish, German, etc) of the core developers?:
- English (with some documentation also written in French)
What is the (estimated) size of a full release of this project? How many users do you expect to download the project when it is released?:
- PyWPS-3 cca 300 Kb. no idea :-) See q. no. 16
- PyWPS-4, still early development, currently it's about 400 Kb