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

FEATURE: API Version support #360

Merged
merged 27 commits into from
Dec 9, 2023
Merged

FEATURE: API Version support #360

merged 27 commits into from
Dec 9, 2023

Conversation

kishorereddy
Copy link
Contributor

@kishorereddy kishorereddy commented Nov 26, 2023

Overview

Support for versions on APIs. This includes a hybrid approach to supporting versions.

  1. global version : See details in blog post link below
  2. action version : See details in issue 359 below

Ticket(s)

This mainly fixes issue 359 below for supporting versions in Kiit APIs. However, it also has support for 325 as well.

  1. [API] - [Versioning]: Support for versioning in APIs #359
  2. [API] - [Setup]: API setup via JSON config or annotations #325

Links(s)

See this blog post about global version as that is supported in the PR/solution.

  1. https://apisyouwonthate.com/blog/api-versioning-has-no-right-way/

Dependencies

The only dependency added is the org.json.simple JSON parser.

Design

See details in ticket above, examples include

  1. format : {version}/{area}/{api}/{action}
  2. example: v1/accounts/signup/login

Notes

  1. Also removed use of roles from kiit.common.auth
  2. There are a lot of changes due to files moved around, and package changes and tests.

Pending

There is a separate issue regarding custom parameter types loaded from the request as part of deserialization. This is going to be handled in a separate ticket.

Tests

  1. Tests updated for loading/looking up routes

@kishorereddy kishorereddy merged commit 5f3b461 into main Dec 9, 2023
@kishorereddy kishorereddy changed the title API : Version support FEATURE: API Version support Dec 18, 2023
@kishorereddy kishorereddy self-assigned this Dec 18, 2023
@kishorereddy kishorereddy added priority_high high priority effort_high high effort feature new feature request labels Dec 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
effort_high high effort feature new feature request priority_high high priority
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant