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

feat: Buildout CQL2 filter tooling for reading Items #17

Merged
merged 46 commits into from
Mar 11, 2025

Conversation

alukach
Copy link
Member

@alukach alukach commented Dec 12, 2024

What I'm changing

Application of Item filter

  • full-featured filtering
    • Description: Append body with generated CQL2 query.
    • Action: Read
    • Endpoint: /search
    • Method: POST
  • simply filtering
    • Description: Append query params with generated CQL2 query.
    • Action: Read
    • Endpoint: /search
    • Method: GET
  • reading item
    • Description: Append query params with generated CQL2 query.
    • Action: Read
    • Endpoint: /collections/{collection_id}/items
    • Method: GET

I've created #21, #22, #23 to track future filter work

closes #9
closes #18

@alukach alukach force-pushed the feature/cql2-filters branch from b440d73 to a1db2ba Compare December 13, 2024 04:50
@alukach alukach force-pushed the feature/cql2-filters branch from a1db2ba to e621750 Compare December 13, 2024 04:51
@alukach alukach force-pushed the feature/cql2-filters branch from 8c20855 to 08e4f40 Compare January 3, 2025 02:37
alukach added 19 commits January 2, 2025 23:34
* Refactor API spec augmentation to middleware

* Breakout middleware into separate files

* Rename middleware

* Reorg

* chore: reorg imports

* Mv auth to middleware, rework url patterns to regex

* fix: pass empty chunks while waiting for entirety of body

* Rm scope scheck in auth enforcement

* typing cleanup

* fix: extract user from request state

* Rm auth class in favor of middleware

* Rework template tooling as dataclass

* cleanup: rm unused code

* Cleanup

* CQL2 Middleware: in progress

* In progress

* Update tests

* Take care to separate GET and POST middleware behavior

* Conditionally enable CQL2 filters

+ cleanup

* Add formatting helpers

* Test tweaks

* Fix querystring parse test util

* bugfix: place auth middleware after cql2 middleware to ensure correct order

* Allow customizing state key

* Minor update to auth token

* pre-commit cleanup

* Rm unused code
@alukach alukach marked this pull request as ready for review March 11, 2025 19:08
@alukach alukach changed the title feat: Buildout CQL2 filter tooling feat: Buildout CQL2 filter tooling for reading Items Mar 11, 2025
@alukach alukach merged commit 327b9cf into main Mar 11, 2025
2 checks passed
@alukach alukach deleted the feature/cql2-filters branch March 11, 2025 19:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Refactor to Middleware Filter Mutations
1 participant