1323 Commits

Author SHA1 Message Date
Tom Kralidis 722f846b64 Merge pull request #1694 from Boren/uuid-id
Support UUID serialization
2024-06-24 20:51:49 -04:00
Tom Kralidis b19960bdf5 reorder imports 2024-06-24 19:22:23 -04:00
Tom Kralidis d36ee2af86 Merge pull request #1692 from geopython/item-schema-format
add support for item schema string format (#1691)
2024-06-24 12:48:53 -04:00
Fredrik Bore 5a7cf63755 Tests 2024-06-24 13:37:29 +02:00
Fredrik Bore e7050b633d Support using UUID as id 2024-06-24 13:25:26 +02:00
Tom Kralidis 3790b45b90 fix ref 2024-06-24 07:20:39 -04:00
Tom Kralidis b14baafd0c fix OpenAPI 2024-06-24 06:47:32 -04:00
Tom Kralidis 0ee956bc0c docs: update as Reference Implementation for OGC API - Tiles 2024-06-24 06:29:17 -04:00
Tom Kralidis dd1658f68f update tests 2024-06-23 12:34:29 -04:00
Tom Kralidis 58fd68cf96 add support for item schema string format (#1691) 2024-06-23 12:24:39 -04:00
Moritz Langer c607be7ed2 Oracle Connection Pooling implementation of issues/1655 (#1688)
* Implemented Connection Pooling

First part of collection pooling, improve by making pool size and other params configurable in YAML file of pygeoapi

* updated session pooling with more robust creation of dsn

* Further changes for releasing connections

* further little tweaks

* Added Thread Lock and building of DSN

* Session Pooling now only happens when ENV VAR ORACLE_POOL_MIN and ORACLE_POOL_MAX are set. Else usual behaviour is restored and single connections are opened and closed. Added a Lock for avoiding race conditions and threat safety.

* Flake8 changes

* More Flake8

* Added integer type to env variables

* Added Tests for Session Pooling

* Flake 8 changes for tests

* More Flake8 fun

* Fixed typo for env vars

* Fixed typo for env var and added noqa for variables

* More Typos

* More Flake8

* Added documentation to the oracle section for session pooling

* Review and Feedback with @totycro

* Update oracle.py

Added Author

* Added feedback from review

---------

Co-authored-by: root <root@els01entw.ama.at>
Co-authored-by: xlanger <moritz.langer@ama.gv.at>
2024-06-21 07:15:34 -04:00
Tom Kralidis fef8df120e add translation markers (#1681) (#1687) 2024-06-18 17:37:19 -04:00
Tom Kralidis 7aca472b4f fix Django routes (#1685) (#1686) 2024-06-18 17:36:49 -04:00
Benjamin Webb 9394790a09 Update main.yml (#1683) 2024-06-14 10:33:39 -04:00
francescoingv 7218d95feb 1676 Manager pass job_id to processor (#1680)
* Allow the processor to know the process_id

Solve issue  #1676

* Update base.py

* Cleared blanc lines

* Added set_job_id() function description

* Update base.py

* Update base.py

---------

Co-authored-by: FrancescoIngv <FrancescoIngv@users.noreply.github.com>
Co-authored-by: Tom Kralidis <tomkralidis@gmail.com>
2024-06-14 07:35:50 -04:00
Tom Kralidis 50ad801acb support lists as output (#1674) (#1675) 2024-06-13 09:37:42 -04:00
Pascal Bourgault eb321aa276 Add job before returning any response (#1672) 2024-06-10 08:32:17 -04:00
8luewater e32ac85eeb Oracle: add pagination (#1669)
* version-pinned oracledb in requirements.txt

* return numberMatched to fix Oracle pagination on Items page level

* version-pinned oracledb in requirements-provider.txt

* Update requirements-provider.txt unpinned oracledb

---------

Co-authored-by: Sayaka Sandin <Sayaka.Sandin@ga.gov.au>
2024-05-30 14:50:34 -04:00
Tom Kralidis 01e1b6bcd8 CI: split docs into separate GitHub Action (#1660) 2024-05-17 09:24:41 +02:00
Tom Kralidis 6c31a8e371 docs: point to combined plugins and themes wiki page (#1659) 2024-05-14 21:49:49 -04:00
Ricardo Garcia Silva 51976acc3d Refactor postgresql provider to allow exposing cached engine and table models to other providers (#1643)
* refactored in order to allow other postgresql-based providers to make use of cached engine and table models

* Replaced lru_cache with cache
2024-05-14 21:23:13 -04:00
Moritz Langer dcabbb956f fixed issue 1652 by removing the staticmethod decorators infront of function defintion (#1653) 2024-05-14 21:13:49 -04:00
francescoingv 0b61464bb1 Fix bug #1656 (#1657)
Co-authored-by: FrancescoIngv <FrancescoIngv@users.noreply.github.com>
2024-05-14 21:06:05 -04:00
Paul van Genuchten c4611b08dc add map-layer to map (#1649) 2024-05-14 21:04:28 -04:00
Tom Kralidis fd92861856 EDR: fix parameter-name parameter (#1642) (#1647) 2024-05-10 21:25:43 -04:00
Jo 737b1bdb1c Retrieve properties from elasticsearch on get tile request (#1646) 2024-05-10 18:07:01 -04:00
francescoingv 6a6ec9cb93 Add support for parameter Outputs of OGC API Processes (#1602)
* Solve issue #1420

Add support for OGC API Processes Outputs

* Resolve Jan, 3 2024 totycro comments

* Solve issue 1420 with full backward compatibility for Processors.

* changed formattings

* Some additional formatting changes

* Update api.py

missing line in api

* Update base.py

To resolve conflict with #1603

* Update base.py

Added subscriber inline doc

* After Ricardo Silva comments on 13 Apr.

Included all the suggested changes on code format andparams name.

* Changed line length

* fixed trailing spaces.

* Update formatting base.py

* Update base.py

---------

Co-authored-by: FrancescoIngv <FrancescoIngv@users.noreply.github.com>
2024-05-10 08:41:47 -04:00
Tom Kralidis 17080d88b0 update Jinja HTML item template (#1634) 2024-04-20 09:56:36 +02:00
Tom Kralidis 3e14893e32 add striptags to properties rendering (#1631) 2024-04-18 11:36:21 -04:00
Sarah Jordan 66bbd85463 add cftime to requirements-provider (#1630) 2024-04-15 20:01:42 -04:00
david-i-berry 32e5773db6 Addition of time filtering to postgresql.py provider. (#1629)
* Addition of time filtering to postgresql.py provider.

* Consistency update: single quotes + filter renamed to datetime_filter.

* Update to datetime filter to use <= upper bound for consistency for CQL implementation.
2024-04-15 13:55:45 -04:00
Anne E. Ulrich 8aba75f938 changing shapely version (#1614)
Co-authored-by: Anne Ulrich <jengishchokusu@Annes-MacBook-Air.local>
2024-04-15 12:01:27 -04:00
Tom Kralidis b4b7ee1c08 PostgreSQL provider: fix paging (#1594) (#1628)
* PostgreSQL provider: fix paging (#1594)

* add test
2024-04-15 10:24:15 -04:00
Tom Kralidis 21b8672bb8 fix missing Django processes endpoints (#1592) (#1627) 2024-04-14 17:14:09 -04:00
Ricardo Garcia Silva bf31885e5c Rebased to match API refactor (#1446) 2024-04-12 18:32:26 -04:00
Ricardo Garcia Silva 52c20d637d Replaced geoalchemy with geoalchemy2 and added numpy as explicit dependency (#1516) 2024-04-12 18:31:11 -04:00
Tom Kralidis ea2fb87ff5 use typing.Union for pre-3.10 compat (#1626) 2024-04-12 16:38:04 -04:00
Tom Kralidis a26662e0e4 add l10n to link titles (#1624) (#1625) 2024-04-12 09:50:46 -04:00
dependabot[bot] 7796794b03 Bump pymongo from 3.10.1 to 4.6.3 (#1616)
* Bump pymongo from 3.10.1 to 4.6.3

Bumps [pymongo](https://github.com/mongodb/mongo-python-driver) from 3.10.1 to 4.6.3.
- [Release notes](https://github.com/mongodb/mongo-python-driver/releases)
- [Changelog](https://github.com/mongodb/mongo-python-driver/blob/master/doc/changelog.rst)
- [Commits](https://github.com/mongodb/mongo-python-driver/compare/3.10.1...4.6.3)

---
updated-dependencies:
- dependency-name: pymongo
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* - replace map reduce by aggregation pipeline

* - fixed flake8 errors

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: doublebyte <doublebyte@hushmail.com>
2024-04-11 18:44:01 -04:00
Tom Kralidis 2bd97836c2 provide more process error output (#1620) (#1621) 2024-04-11 19:27:53 +03:00
Tom Kralidis 9d3d083d8f remove FutureWarning from Xarray providers (#1623) 2024-04-11 19:15:26 +03:00
Tom Kralidis 8a6f85465a minor Shapely functions doc updates 2024-04-11 07:16:29 -04:00
Emmanuel Jolaiya 41c3f6a284 Shapely functions as sample process (#1565)
* fixed bug with breadcrumb routes

* removed example files in commit

* feat:implemented shapely functions process

* Delete example-openapi.yml

* Delete example-config.yml

* fixed linting bug

* fixed flake8 errors

* added initial docs

* adding codeblocks to docs

* Added vscode to gitignore

* syncing with master

* reversed docs. Added success subscriber

* fixed bug in docs

* addressed pr reviews

* addressed pr review issues

* unstaged tilematrixset.html

* unstaged pre-commit and fixed typo in shapely

* unstaged .gitignore

* unstaged pygeoapi-config.yml
2024-04-11 07:09:55 -04:00
Benjamin Webb f51a8910d1 Fix indentation error (#1618) 2024-04-08 15:41:30 -04:00
Ricardo Garcia Silva 109d7c17f8 Removed duplicate running of pygeoapi in serve cli command (#1505) 2024-04-05 20:58:04 -04:00
Bernhard Mallinger 35bdcb6f02 Proposal to split api.py into different files (#1405)
* Move api to subdirectory

* Move processes api to own file

* Adapt processes view methods

* Move openapi definition to processes api

* Use processes api in flask

* Linter

* Fix import issues

* Allow calling refactored views from starlette

* Allow calling refactored views from django

* Linter

* Move edr api to own file

* Adapt edr api to new style

* Fix typo in django views

* Move maps api to own file

* Adapt maps api to new style

* Move edr openapi to edr api file

* Move maps openapi to maps api file

* Move stac views to own file

* Refactor stac views to new file

* Move stac openapi to stac api file

* Move tiles api to own file

* Adapt tiles api to new style

* Also move tilematrixset to tiles api

* Adapt tilesetmatrix views to new style

NOTE: I had to remove one tilematrixsets test because
it tested that an invalid format would produce an error.
This now happens by default for all views, but the actual
code is outside of the endpoint function.

* update features, records, coverages

* update release version

* switch back to dev

* backport of #1313

* backport of #1313 fix

* backport of #1585

* Flask: sanitize OGC schema pathing (#1593)

* update release version

* switch back to dev

* backport of #1596

* Port test_gzip_csv test

Note that apply_gzip is now called by the web framework adapters,
so to test it in general, we have to call it in the test manually

* Add empty conformance class list to stac api

* Fix queryables call in starlette

* fix ref

* Unify request validity checking

The default case is handled by the web framework adapters. If custom
format handling is required, the check in the adapter must be skipped.

* Fix imports in django views

* backport #1598

* Remove test about format handling in endpoint

This is now handled outside of the endpoint function

* add docstring to base process manager (#1603)

* backport of #1601

* Port api ogr tests to new style

* Move processes tests to own file

* Run api tests from new dir in CI

* Move edr tests to own file

* Move maps tests to own file

* Move tiles tests to own file

* Actually hide hidden layers in openapi

* 1600 allow providing default value in config (#1604)

* move coverages tests to own file

* move itemtypes to own file, move core into init test

* fix OpenAPI output

* update tests

* add missing descriptions to OpenAPI admin responses

* update tests

* fix tests autodiscovery

* remove unused logging in tests

* address PR comments

* test with xarray 2024.2.0

* remove unneeded file

* safeguard xarray error

* unpin xarray

* fix OpenAPI generation

* fix schema endpoint in Flask and Starlette

* Safely serialize configuration JSON (#1605)

* Safely serialize configuration JSON

Co-Authored-By: Tom Kralidis <tomkralidis@gmail.com>

* Revert "Safely serialize configuration JSON"

This reverts commit 36feb067ee6f87e61955852dc48994f075806370.

* Add test for datetime with Admin API

* Safely serialize configuration JSON

---------

Co-authored-by: Tom Kralidis <tomkralidis@gmail.com>

* backport #1611

* Also fix schema endpoint for django

Fix is analogous to e72d4ba3a5ba3b8621ca839e7814429beeeb8f01

* address additional PR comments

---------

Co-authored-by: Tom Kralidis <tomkralidis@gmail.com>
Co-authored-by: Angelos Tzotsos <gcpp.kalxas@gmail.com>
Co-authored-by: Ricardo Garcia Silva <ricardo.garcia.silva@gmail.com>
Co-authored-by: Benjamin Webb <40066515+webb-ben@users.noreply.github.com>
2024-04-05 06:06:25 -04:00
Tom Kralidis 36e75f8b72 safeguard STAC collection links (#1610) (#1611) 2024-04-03 12:24:02 -04:00
Benjamin Webb f94ad370e3 Safely serialize configuration JSON (#1605)
* Safely serialize configuration JSON

Co-Authored-By: Tom Kralidis <tomkralidis@gmail.com>

* Revert "Safely serialize configuration JSON"

This reverts commit 36feb067ee6f87e61955852dc48994f075806370.

* Add test for datetime with Admin API

* Safely serialize configuration JSON

---------

Co-authored-by: Tom Kralidis <tomkralidis@gmail.com>
2024-04-03 06:39:00 -04:00
Ricardo Garcia Silva 2abb943d32 1600 allow providing default value in config (#1604) 2024-03-22 17:47:39 -04:00
Tom Kralidis 421559a2a6 add docstring to base process manager (#1603) 2024-03-20 12:29:57 +01:00