24 Commits

Author SHA1 Message Date
Francesco Bartoli e69a9744a2 Revert pydantic models to v1 version (#1584)
* Revert pydantic models to v1 version

Revert pydantic models to v1 version

Revert pydantic models to v1 version

Revert pydantic models to v1 version

* Add initial tests for models

Add initial tests for models

* Revert pydantic models to v1 version

Revert pydantic models to v1 version

Revert pydantic models to v1 version

Revert pydantic models to v1 version

* Add initial tests for models

Add initial tests for models

* Fix and replace methods from pydantic v2

* Add more tests for cql models
2024-03-10 08:58:21 -04:00
Ricardo Garcia Silva 8e7f8fc26d Added pre-commit config file (#1508)
* Added .pre-commit-config.yaml file

* Initial pass of pre-commit with its default rules and flake8

* Revert "Initial pass of pre-commit with its default rules and flake8"

This reverts commit 86d39e964e8122580d675f4639ae2d15b85c02e2.

* Made pre-commit only act on code files

* Added sql to the pre-commit file pattern

* Initial pass of pre-commit
2024-01-30 12:37:16 -05:00
Ricardo Garcia Silva f7b0a584e1 Removed datamodel-code-generator from dev requirements (#1370)
* Removed datamodel-code-generator from dev requirements

* Adapted docs to mention datamodel-code-generator not being a direct dependency
2023-11-10 19:08:30 +01:00
Juan Pablo Duque c02d8f5ba2 Fixed Django serve error related to urlpatterns, updated documentation by adding hot-reloading section. (#1231)
* Fix for Django build, changes to documentation, and dev dependencies updated

* remove example configuration files

* Added readthedocs configuration file

* added section on building the documentation

* renamed docs/requirements-docs.txt to docs/requirements.txt

* renamed requirements file in readthedocs configuration

* Added documentation requirements installation to GitHub build workflow
2023-04-27 05:03:39 -04:00
Sander Schaminee 41f3bd801a API design rule support (#1152)
* API design rule support (#1134):

- Change config model
- Change Flask, Starlette, and Django apps for API rule adherence
- Add Flask and Starlette mock clients to test API rule adherence
- Add get_base_url() util function to replace all config['server']['url'] refs
- Ensure that any internal links have URL prefixes if needed
- Add tests and update docs

* Prevent fcntl import error (breaks tests when running locally on Windows)

* Prefer trailing slash in landing page URL when strict_slashes=True (#1134)
2023-04-03 21:30:58 -04:00
Francesco Bartoli bb4cd0bf69 Add cql-json support for ES (#723)
Fix starlette event loop


Fix starlette event loop


Fix starlette event loop


Fix starlette event loop


Fix provider regression


Make method public


Make method public


Move function to the helpers utility


Add the CQL lifecycle for development


Add CQL docs


Fix flake8


Isolate import for starlette codepath
2021-07-21 21:00:14 -04:00
Francesco Bartoli 0a2097713e Improve strategy to close #406 (#415)
* Improve strategy to close #406

* Fix travis failure

* Fix sphinx error

* Fix typo
2020-04-20 14:49:43 -04:00
Richard Law 17ed14107d Add JSON-LD representations (#246)
* Changes to sample pygeopai-config.yml
- improved terms_of_service and contact.url for SEO
- fixes typo for contact.instructions

* whitespace

* dynamically embed JSON-LD representation in head

* json-led representation for root, collections, and collection

* updates sample configuration with metadata that won't cause JSON-LD validation issues

* adds support for feature-level JSON-LD representations of collections and items

* improves consistency between microdata and JSON-LD root metadata

* valid Dataset spatial; and better use of @id

* role →  instructions

* adds jsonld f param to open api definition

* working with new temporal extent interface

* removes comment

* identify and retain NIR/HTTP IDs rather than construct them with reference to pygeoapi

* don't pop a feature.properties id, to retain JSON-LD reference integrity

* add/update tests for inclusion of json-ld responses

* bug fixes

* fix bug where id was assumed to be string

* better url checking

* renames format variable to avoid reserved word

* removes top-level CRS in obs sample config

* add json-ld textMimeType for serverless

* adds flask-cors dependency to allow cors

* moves json-ld-requesting script to bottom of body

* corrects schema.org url

* fixes urls

* adds pyld dependency

* adds tests for json-ld representations (incomplete)

* more tests

* make pyld a dev requirement only

* linting

* changes from revision

* removes merge artifact
2019-12-19 08:33:42 -05:00
Tom Kralidis 20050a14d2 remove pandoc support (PyPI now supports Markdown) (#230) 2019-09-08 09:04:24 -04:00
Jorge Samuel Mendes de Jesus da267e9ed3 Issue 43 (#207)
* squach contents new branch

* source code explanations

* flake8

* change in requirements

* 	modified:   docs/source/code.rst
	modified:   docs/source/plugins.rst

* 	modified:   docs/source/code.rst
	modified:   pygeoapi/formatter/csv_.py
	modified:   pygeoapi/provider/geojson.py

* changes requred in review code

* 	modified:   .travis.yml
missing "

* change file to use requirements-dev.txt
	modified:   readthedocs.yml

* flask_cors removal from requirements.txt

* text changes
2019-08-14 15:14:13 -04:00
Tom Kralidis e5639b31c2 split out provider requirements (#153) 2019-05-30 16:17:31 +02:00
Just van den Broecke bad9344d96 #146 pin GDAL (OGR) requirement to 2.2 and higher but less than GDAL v3.0 2019-05-29 12:21:54 +02:00
Tom Kralidis 94ef5cac39 fix dev requirements 2019-05-27 14:18:24 -04:00
Tom Kralidis ec60f1938c unpin dev requirements, fix flake8 (#143) 2019-05-27 13:10:54 -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 e5a63212c2 Loosen GDAL version dep to 2.1 or higher 2019-05-17 00:29:37 +02: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 2a19094f9d unpeg pytest for testing (#78) 2019-01-13 20:34:17 -05: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
Tom Kralidis cd1ea9d5b3 move elasticsearch to dev requirements and only keep core requirements 2018-05-09 17:37:45 +00:00
Tom Kralidis 67025c249d refactor flask_cors as optional 2018-05-03 19:57:37 +00:00
Tom Kralidis 832402471b add travis setup (#20) 2018-04-02 18:18:37 -04:00
Jorge Samuel Mendes de Jesus 1de0439e2d Spatiallite3 provider implementation (#17)
* 	new file:   docker/Dockerfile
Dockerfile for pygeoapi

* 	modified:   pygeoapi/provider/__init__.py
	new file:   tests/data/ne_110m_lakes.sqlite
	new file:   tests/json_marshmallow.py
	new file:   tests/test_sqlite_provider.py

Sqlit implementation and testing marshmallows

* 	new file:   provider/sqlite.py
	new file:   provider/tmp_parser.py
Sqlite provider

* Testing sqlalchemy

* query for sqlite3

* Countries dataset, message in assert

* yml config

* table in data link and query implemented without limit

* PR of refactor

* functional sqlite3 driver

* flake8

* pipreq for complete list of requirements

* updated readme with working examples, extra requirements

* typos, SQLite removed Dockerfile and ne_100m_lakes.sqlite

* update requirements

* pypandoc in requirements-dev.txt
2018-04-02 12:05:26 -04:00
Tom Kralidis fa65aa1c1f add bootstrap files 2018-02-14 21:54:31 -05:00