All notable changes to the Film2Subtitle API will be documented in this file.
The format used in this document is based on Keep a Changelog.
- Added a new router for APIs and included API v1 in it.
- Added new TODOs.
- Separated health check endpoint from API v1. Now it's available at
/api/health/
. - Changed the mechanism of health check endpoint and now instead of simply returning
OK
as the status, we first try to query the database and if everything works, we returnavailable
for service status, otherwise we returnunavailable
. - Changed the name of
/login/
endpoint to/auth/
for API v1.
- Removed the
poetry.lock
file from repository.
- Added a new enum value to
MediaType
to representunknown
media type (that the download box is empty).
- Changed HTTP method for updating users to
PUT
(PATCH
is not supported by the API anymore). - Now creating users from
/api/v1/users
endpoint is only possible for superusers. - Changed the name for
LegacySearchParser
'siter_results
method toiter_articles
. - Changed return type hint for
LegacySearchParser.iter_articles
toIterator[SubtitleArticle]
. - Use
list
class onLegacySearchParser.iter_articles
iterator instead of unpacking it. - Changed the doc-string for
Film2Subtitle.legacy_search
a little to make it more clear. - Changed the
type_
attribute of download box tomedia_type
and alsoSubtitleType
enum class toMediaType
. - Changed the enum value
series
totv
inMediaType
enum class.
- Removed FUNDING information.
- Removed unnecessary parameters (
search_query
,page
) fromLegacySearchParser
initialization process. - Removed
typing.Optional
from thepage
parameter ofFilm2Subtitle.legacy_search
method and gave it a default value of1
.
- Add FUNDING info to github workflows.
- Add database models, configs, utils, etc.
- Schemas for user and OAuth2 tokens.
- Add more details about response codes in
/api/v1/subs/
endpoint. - Add new banner for repository.
- Add configs for gitpod.
Below packages are newly added to the project:
- SQLAlchemy (v1.4.36) for database management.
- psycopg2 (v2.9.3) for PostgreSQL support.
- email-validator (v1.2.1) to validate user email address.
- python-jose (v3.3.0) for JWT token generation and verification.
- passlib (v1.7.4) for password hashing.
- python-multipart (v0.0.5) to support
OAuth2PasswordRequestForm
in/api/v1/login/
endpoint for access token generation.
- Bump FastAPI to v0.77.0.
- Bump pyupgrade to v2.32.1 for pre-commit.
- Bump mirros-mypy to v0.960 for pre-commit.
- Remove redundant classmethod decorator for validators in project's settings.
- Added changelog file.
- Refactored utility function
valid_film2subtitle_url
. - Changed the documentation of some dataclasses and parser classes.
- Renamed specific variables to a meaningful name.
- Changed the minimum value of
total_pages
parameter in legacy search results to0
- Removed
query
andpage
parameters from legacy search result. - Removed poetry buildpack from Heroku deployment workflow.