immich-app / immich

High performance self-hosted photo and video management solution.
https://immich.app
GNU Affero General Public License v3.0
33.04k stars 1.59k forks source link

chore: lifecycle metadata #9103

Closed jrasm91 closed 2 weeks ago

jrasm91 commented 2 weeks ago

Attempt to track endpoint and dto metadata - when it was added and deprecated

Usage:

// add a new endpoint
@EndpointLifecycle({ addedAt: 'v1.100.0' })

// deprecate an endpoint
@EndpointLifecycle({ addedAt: '1.100.0', deprecatedAt: '1.103.0' }

// add a new property
@PropertyLifecycle({ addedAt: 'v1.100.0' })

// deprecate a property
@PropertyLifecycle({ addedAt: '1.100.0', deprecatedAt: '1.103.0' }

open-api-spec.json

"x-immich-lifecycle": {
  "addedAt": "1.100.0"
  "deprecatedAt": "1.103.0"
}

server npm command for a report

npm run lifecycle

Changes in NEXT_RELEASE
---------------------
- Deprecated GET /user/info/{id} (getUserById)
- Deprecated PartnerResponseDto.quotaSizeInBytes
- Deprecated UserResponseDto.quotaSizeInBytes

Changes in v1.102.0
---------------------
- Deprecated AddUsersDto.sharedUserIds
- Deprecated AlbumResponseDto.sharedUsers

Changes in 1.100.0
---------------------
- Deprecated GET /assets (searchAssets)

Changes in v1.100.0
---------------------
- Added      GET /user/info/{id} (getUserById)
- Deprecated MemoryLaneResponseDto.title
- Deprecated MetadataSearchDto.resizePath
- Deprecated MetadataSearchDto.webpPath

Changes in v1.90.0
---------------------
- Deprecated GET /search (search)

Changes in v1.80.0
---------------------
- Added      GET /search (search)

TODO:

cloudflare-pages[bot] commented 2 weeks ago

Deploying immich with  Cloudflare Pages  Cloudflare Pages

Latest commit: 195446b
Status:⚡️  Build in progress...

View logs

jrasm91 commented 2 weeks ago

Not sure how all the automation will work, but there are several endpoints that need to be deprecated. I think we should maybe just merge this as is so we at least have some information to use moving forward. We can always figure out and add automation in the future.