Commit Graph

72 Commits

Author SHA1 Message Date
Tom Kralidis efc563593b add error handler for not defined environment variables 2019-10-21 09:53:16 -04:00
Tom Kralidis 2328e1d66f implement env variables inside PYGEOAPI_CONFIG file (#248) 2019-10-20 23:20:24 -04:00
Tom Kralidis 7b8dc69865 rename some functions to align with specification updates (#278) 2019-10-16 21:29:43 -04:00
Tom Kralidis 05ac393aaa update to canonical OAPIF schema locations (#276) 2019-10-16 12:28:58 -04:00
Tom Kralidis 7e9b2c49bf Update sample title (#275)
* update test collection titles

* update test collection titles
2019-10-13 09:19:41 -04:00
Even Rouault 4ff32fdfc5 api: fix paging links (#272)
* api: fix paging links

- Add minimal validation of startindex and limit parameters
- Include limit parameter coming from initial request in next and prevl links
- Only include prev link if startindex > 0
- Only include next link if we got as many features at the limit

Note: there is a broken test for sortby that was unnoticed. I have marked
it as such.

* api: in links returned by /items, include input query parameters
2019-10-08 07:31:33 -04:00
Even Rouault 482f1587c4 api: fix to report an array of bbox in collection description
The latest version of the OAPI-F spec mandates the bbox to be
advertized as an array of bbox.
This commits accept the service configuration to have just
a single bbox or an array of bbox, and adapt accordingly to
generate the collection description.
2019-10-05 17:42:00 +02:00
Even Rouault 3f88575648 Fix service-doc and service-desc inversion, and update media type of openapi+json (#270)
* Landing page: fix inversion of service-doc and service-desc

service-desc should be for the OpenAPI version of /api, and
service-doc for the HTML version

See Abstract Test 40 of http://docs.opengeospatial.org/DRAFTS/17-069r3.html

* Update media type for OpenAPI JSon 3.0
2019-10-05 16:57:30 +02:00
Tom Kralidis e6e637beae sanitize bbox parameter (#266) 2019-10-02 19:28:54 +00:00
Francesco Bartoli c0f915ec1b [Closes #247] Handle open_options in the OGR provider (#256)
* Fix #247


Add test for gml_id attribute

* Add test to force getting gml_id
2019-09-30 20:06:42 +02:00
Tom Kralidis f021cf98cd ignore datetime parameter if collection is not time enabled (#252) (#254) 2019-09-26 09:59:45 -04:00
Tom Kralidis 611dffcb6b OpenAPI and datetime updates (#244)
* support CRS in collections, refactor OpenAPI responses, update collections model

* add test for invalid format for /api
2019-09-24 10:14:36 -04:00
Tom Kralidis 4fc95e8f79 allow no processes to be defined (#136) (#139)
* allow no processes to be defined (#136)

* fix flake8

* update testing process existence

* fix another round of comments

* add test assertions
2019-09-21 10:01:21 +02:00
Richard Law a39b47edd2 Fixes #237 (#240)
Address a mis-configuration for temporal extents
2019-09-20 00:11:42 +02:00
Richard Law ab81d2a889 Fixes YAML array syntax in sample and test configuration files (#239)
* Update default.config.yml

Some bounding boxes were not validly specified as arrays.

* Update pygeoapi-test-ogr-config.yml

Some bounding boxes were not validly specified as arrays.

* Updated pygeoapi-serverless-config.yml

Some bounding boxes were not validly specified as arrays.
2019-09-20 00:05:53 +02:00
Tom Kralidis fcc3b37693 fix GeoJSON response for PostgreSQL, SQLite and GeoPackage (#95) 2019-09-12 07:29:40 -04:00
Tom Kralidis 1b90b93d21 fix CITE test A.4.4.7 (#200)
* fix CITE test A.4.4.7

* fix CITE test A.4.4.7
2019-06-30 10:29:45 -04:00
Brad Hards c123a578d0 Add support for title and description to root JSON. (#183)
See https://github.com/opengeospatial/WFS_FES/commit/40735d81b6ee73c6ce17680288c8fa5186c58ae7
and https://github.com/opengeospatial/WFS_FES/commit/5b450ef18404d4a4fdb443f6444142c89ed4445f
for the related specification change.
2019-06-14 16:08:32 +02:00
Tom Kralidis 1fd8056b7c address OSGeo incubation committee comments 2019-06-04 03:17:00 +00:00
Just van den Broecke 334cfdae6c fix and extend unit tests for #160 and #161 2019-06-03 13:41:20 +02:00
Tom Kralidis 40818b1e98 add helper function for YAML parsing 2019-05-28 01:27:31 +00:00
Tom Kralidis ec60f1938c unpin dev requirements, fix flake8 (#143) 2019-05-27 13:10:54 -04:00
Just van den Broecke 9ecdd2e710 Merge PR #138 from geopython/map-url-config
map url config and attribution
2019-05-27 13:08:06 +02:00
Tom Kralidis 2c47ee1161 update attribution 2019-05-27 07:00:45 -04:00
Tom Kralidis 145bf632a2 make map URL configurable (thanks @alexandreleroux) 2019-05-27 06:26:40 -04:00
paul van genuchten 8e3d4c9890 adds links to feature properties as requested in #134 (#140)
for test purposes adds links to great lakes dataset
2019-05-26 21:34:31 -04:00
Tom Kralidis 809b2cb94a misc fixes (#131)
* cite fixes

* fix HTML
2019-05-22 09:50:09 -04:00
Just van den Broecke e9fc22e72c Issue #127 ogrpaging for all OGR source types (#128)
* #127 Paging for ALL OGR Drivers, tested: GPKG, Shapefile, SQLite, GeoJSON

* #127 Paging for ALL OGR Drivers, tested: GPKG, Shapefile, SQLite, GeoJSON fix SQLite Test

* #127 Paging for ALL OGR Drivers require GDAL greater or eq 2.2

* geopython/pygeoapi#112 geopython/pygeoapi#127 close OGR  ResultSet when layer from ExecuteSQL created

* geopython/pygeoapi#112 geopython/pygeoapi#127 grr flake8 fix
2019-05-21 11:34:54 -04:00
Just van den Broecke 4e5233f39d Introduce OGRProvider: WFS backend support (#119)
* #89 fix check_format function

* #89 fix check_format function - fix default return

* geopython/pygeoapi#58 first version OGRProvider with working WFS tests/config

* geopython/pygeoapi#58 second version, ogr2ogr-like reprojection support - more to follow

* geopython/pygeoapi#58 3rd version, support Sourcetypes SHP and GPKG with tests+travis stuff

* geopython/pygeoapi#58 fixed geopython/pygeoapi#95 for OGR Provider and its tests

* geopython/pygeoapi#58 use more performant backend-WFS in pygeoapi-config.yml

* #58 4th version: WFS backend ok, including OGR Python paging gotchas fixed ready for PR

* #58 fix Travis build for GDAL Python bindings

* #58 fix Travis build: Unit tests failed: missing Shapefile .zip now added

* #58 #119 rework from PR comments: config, tests, quotes
2019-05-15 12:57:12 -04:00
Tom Kralidis c04c7ba71a fix pathing to work with subpaths behind proxies (#120) 2019-05-14 15:25:40 -04:00
Tom Kralidis 2623e5fc76 fixes for OGC CITE tests (#109) 2019-05-13 22:50:59 -04:00
paul van genuchten 4121b7f697 as suggested in #94, rename feature.ID to feature.id (#96) 2019-05-06 07:07:18 -04:00
Just van den Broecke 0b67080f14 #102 several fixes for (dead) links in navigating HTML (#103) 2019-05-02 09:48:34 -04:00
Tom Kralidis c4597f563b add HTML response for api endpoint (#98) (#101) 2019-04-29 07:32:12 -04:00
Tom Kralidis 946ab0da3d update pygeoapi website (#99) 2019-04-26 10:35:12 -04:00
Tom Kralidis 20c96a8f47 add tests for #89 2019-04-06 08:46:20 -04:00
Tom Kralidis 44d347a09f support text/html encoding request in headers (#87) (#88) 2019-03-24 15:20:05 -04:00
Tom Kralidis 9bea312307 add Python API level testing (#85) 2019-03-05 08:02:01 -05:00
Tom Kralidis 949b7277a3 fix HTTP header, formatting 2019-02-20 00:38:16 +00:00
Tom Kralidis 01bcf8084b plugin refactor (#83) 2019-02-19 18:51:49 -05:00
Tom Kralidis 4753426e42 make objects single (#82) 2019-02-18 20:01:32 -05:00
Alexandre Leroux 6a3d3b12ef typo (#81)
fixed OSM name
2019-01-17 13:23:05 -05:00
Tom Kralidis a67964dbcd implement ordered properties (#76) 2018-11-26 20:47:45 -05:00
Tom Kralidis efd89a56c9 fix CLI logic 2018-11-26 19:34:11 -05:00
Tom Kralidis d2b76936e6 implement query sorting (#63) 2018-11-20 00:58:15 +00:00
Jorge Samuel Mendes de Jesus c621b21391 Postgis provider support (#72)
* 	new file:   docker/Dockerfile
Dockerfile for pygeoapi

* testing postgis on travis

* testing 9.6

* install postgis as package

* create database

* postgis dataset - travis

* missing path

* 	modified:   tests/data/hotosm_bdi_waterways.sql.gz

Change in name of dataset

* postgresql code

* 	modified:   pygeoapi/provider/postgresql.py
update with origin

* Postgresql working provider, typo in geopackage

* update to travis. Change on gpkg

* missing dep (psycopg2)

* pytest

* problem with operator in travis

* ProviderConnectionError implementation

* postgresql with schema support

* Changes requested by @tomkralidis

* missing pygeoapi-config.yml

* delete openapi.yml

deleted openapi.yml
2018-11-16 11:53:31 -05:00
Jorge Samuel Mendes de Jesus 66266102a3 Geopackage support (#64)
* 	new file:   docker/Dockerfile
Dockerfile for pygeoapi

* typo

* typo

* geopackage provider

* test travis

* changed href to http

* incorrect field in yml

* missing flake8 check

* POI test dataset

* unit tests

* working unitttests and update to readme

* .gitignore docker

* requests for PR #64

* Update __init__.py

Flake8 whitespace

* flake8 fix and removal of incorrect dockerfile
2018-09-11 12:32:11 -04:00
Tom Kralidis 9558a8f130 fix HTTP response headers for CSV 2018-08-22 15:54:40 +00:00
Tom Kralidis 081d7ed1c8 add support for CSV output (#52) 2018-07-04 06:29:05 -04:00
Jorge Samuel Mendes de Jesus c1e9943c48 Docker composition (ES docker + pygeoapi docker) (#31)
* 	new file:   docker/Dockerfile
Dockerfile for pygeoapi

* Using 0.0.0.0 in pygeoapi-config otherwise no docker for flask

* ES and pygeoapi docker

* Final file structure

* generic port 5000 and localhost

* sqlit3 suport in alpine and fixes on sqlite provider

* B4 sync with upstream

* Working composition problems with ES features

* Cosmetic changes update to README.md

* using load_es_data.py from github local openapi.yml

* added docker pull only of pygeoapi

* b4 rebase

* Using 0.0.0.0 in pygeoapi-config otherwise no docker for flask

* ES and pygeoapi docker

* Final file structure

* generic port 5000 and localhost

* sqlit3 suport in alpine and fixes on sqlite provider

* B4 sync with upstream

* Cosmetic changes update to README.md

* using load_es_data.py from github local openapi.yml

* added docker pull only of pygeoapi

* b4 rebase

* updates and sync

* missing proper local.config.yml

* wait-for pygeoapi

* sync with master config

* 	deleted:    docker/ES/wait-for-it.sh
	new file:   docker/pygeoapi/docker-entrypoint.sh
	new file:   docker/pygeoapi/run_pygeoapi.sh
	openapi.yml
	pygeoapi/provider/__sqlite.py

Missing sh files

* missing set +e

* wait for ES to be yellow or green

* More detailed Readme

* 	new file:   .gitignore

* simple image docker

* missing docker run

* 	new file:   Dockerfile
	new file:   docker.config.yml
	new file:   run_pygeoapi.sh
Simple image

* typos on README
2018-07-03 14:52:17 -04:00