Commit 64d1a1b
Apiv2 (#1128)
* Add compression support
JSON:API responses can be potentially be quite large, especially
since no minification to the JSON output is performed.
Adding deflate compression with reduce transfer sizes.
* WIP: Add extra development tooling
* WIP: Start conversion of hashtopolis to new JSON:API standard
* WIP: Start of GET of JSON:API implementation
Focus on working on Users, GlobalPermissionGroups and AccessGroups
* Fix ensure consistent composer packages get installed.
This file was never commited and missed, due to the wildcard *.lock pattern set in .gitigore
https://getcomposer.org/doc/01-basic-usage.md#commit-your-composer-lock-file-to-version-control
* Fix expansion parameter not working.
Rename to reflect new naming (include)
* Cosmetic: Rename variables to match new meaning
It is confusing to mix expand with include. Thus rename all
variables in python test code from expand to include.
* Add interactive debugging of pytest unit files
The hashtopolis.py cannot be debugged with default Interactive
debugging of VScode debugging of pytests.
Thus make a small workaround based of the idea:
https://stackoverflow.com/questions/62419998/how-can-i-get-pytest-to-not-catch-exceptions/62563106#62563106
* WIP: Start working on delete and creation actions
* Fix 500 returned when page is not found
Should be 404, how-ever this trow was not captured, due to incorrect ordering.
* WIP: Innitial support for PATCH/CREATE operations
* WIP: All unit tests complete. GET mostly implemented
- PATCH/DELETE requires mapping to new format.
- Helpers need some thinking on request/response.
- Relation updates needs to be implemented.
* WIP: Need ER relations for CREATE
When creating an object the ER relations are sent via JSON:API
how-ever without an formal definition, there is no way of knowing
whether something is considered an relation.
* WIP: Example model for CREATE in client
Add PoC conversion using Django tooling for reference purposes.
This could be used as base for creating objects within the python libary
(also to do some client-side checking as well).
* Updated PHP dependencies
* Refactor pagination to adhere to JSON:API standards
- Updated pagination parameters from 'page[after]' and 'page[size]' to 'page[offset] and 'page[limit']
- This change aligns with the JSON:API specification for pagination (https://jsonapi.org/format/#fetching-pagination)
* Refactored links object to adhere to JSON:API standard
-changed 'page[after]' and 'page[size] to 'page[offset]' and
'page[limit]' in the link objects
* feat: Add support for limit queries in ORM
* Made pagination and sorting working by fixing some logic bugs
* Added more input filtering for the Limit filter
* Fixed the location header to comply to the JSON API standard in case of an POST request
* WIP: Made start to link first and last attribute in json response to GET requests for pagination
* Added page size exceeded error handling and started implementing link next and previous for pagination
* FEAT: Implemented first and last in paginated json response
* FEAT: Implemented previous and next within JSON pagination response
* FEAT: Made PATCH request compliant to JSON API 1.1
* FEAT made patch To-One relationship compliant to JSON API standard
* FEAT made get request to relationship working also throught intermediate tables
* FEAT made pagination in to many relationships work
* FEAT implemented patching to many relationships
* FEAT added to many relationship from cracker to task in API
* FEAT added to many relationship from crackerType to task in API
* FEAT implemented delete to many relationship link and fixed bug in patch to many relationship link
* FEAT fixed bug in PATCH to many relation and implemented POST to many relation
* FEAT made patchOne compliant to JSON API 1.1 standard
* FEAT fix a bug withing pagination and ordering and made Post one compliant to JSON API 1.1
* FEAT updated the tests to adhere to JSON API spec
* FEAT added tests for pagination
* clean up pagination test
* Added range validation to validating data
* Added a json response moduel for the responses
* Added function to validate if its allowed to mutate DBA fields
* Fixed inconsitency in color len in task feautures
* Added test that will verify database size constraint
* FEAT: made helper API endpoints compliant to json API standard, by putting no resource record responses in the metadata
---------
Co-authored-by: Rick van der Zwet <[email protected]>
Co-authored-by: Rick van der Zwet <[email protected]>
Co-authored-by: Jesse van Zutphen (DBS) <[email protected]>1 parent 28edceb commit 64d1a1b
File tree
73 files changed
+7955
-2021
lines changed- .devcontainer
- .vscode
- ci/apiv2
- src
- api/v2
- dba
- models
- inc/apiv2
- common
- helper
- model
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
73 files changed
+7955
-2021
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| 16 | + | |
16 | 17 | | |
17 | 18 | | |
18 | 19 | | |
| |||
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
71 | 98 | | |
72 | 99 | | |
73 | 100 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
26 | 32 | | |
27 | 33 | | |
28 | 34 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | 4 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
0 commit comments