Skip to content

Releases: IHosseini083/Shortify

v0.1.10

03 May 11:48
4531cd1
Compare
Choose a tag to compare

[0.1.10] (2023-05-03)

Added

  • Dockerized project.
  • Add new schema CommonHTTPError for common HTTP error response models in OpenAPI spec.
  • Use UTC time in structlog.processors.TimeStamper processor.
  • Add UVICORN_HOST and UVICORN_PORT as required environment variables to be explicitly
    set by user.

Removed

  • Removed flake8 and autopep8 pre-commit hooks.
  • Removed charliermarsh.ruff extension from VSCode's recommended extensions.
  • Removed scripts/test script.
  • Removed LOG_FILE_PATH environment variable and support for log files

Chnaged

  • Removed @app.on_event("...") functions and use lifespan feature instead:
from contextlib import asynccontextmanager

from fastapi import FastAPI

@asynccontextmanager
async def lifespan(application: FastAPI):  # noqa
    # On startup
    yield
    # On shutdown


app = FastAPI(
  ...,
  lifespan=lifespan,
)
  • Set pre-commit ci autoupdate schedule to monthly.
  • Clean up README file and add instructions for using Docker.
  • Use enum for validation of LOG_LEVEL environment variable instead of pydantic validator.
  • Use structlog.stdlib.BoundLogger bound logger as wrapper_class for all structlog
    loggers that we get from calling structlog.get_logger().

v0.1.7

14 Nov 11:41
Compare
Choose a tag to compare

Added

  • Add poetry pre-commit hooks.

Changed

  • Bump beanie from 1.13.1 to 1.15.2, #19.
  • Bump fastapi from 0.86.0 to 0.87.0
  • Use Ruff for linting.

Fixed

  • Fix scripts/install script to install dependencies when poetry.lock is found.
  • Use typing.Sequence instead of collections.abc.Sequence.

Full Changelog: v0.1.6...v0.1.7

v0.1.6

10 Nov 11:31
Compare
Choose a tag to compare

Added

  • Add support for MongoDB DNS Seed List connection schema (mongodb+srv).
  • Add new section Project Structure, Modifications and Best Practices to README.

Changed

  • Reformat TODO file.
  • pre-commit autoupdate, #16.
  • Bump beanie from 1.13.0 to 1.13.1, #15.
  • Bump fastapi from 0.85.2 to 0.86.0, #18.
  • Correct path to docs in Documentation and Usage section.
  • Update dependencies.
  • Add Stack section to README.

Full Changelog: v0.1.5...v0.1.6

v0.1.5

24 Oct 16:36
Compare
Choose a tag to compare

Added

  • Add correlation middleware.
  • Add application logs to .gitignore.
  • Add add_correlation_id logging processor.
  • Add new field MONGODB_DB_NAME in app settings for database name.
  • Add sample .env file.

Changed

  • Refactor logging functionality.
  • Set default value for MONGODB_URI field in app settings.
  • Complete all README file sections.

Full Changelog: v0.1.4...v0.1.5

v0.1.4

19 Oct 21:05
Compare
Choose a tag to compare

Added

  • Add base structured logging system via structlog.
  • Add custom RequestValidationError exception handler.

Changed

  • Increase editor.rulers in VSCode settings to 88.
  • Bump fastapi from 0.85.0 to 0.85.1.

Full Changelog: v0.1.3...v0.1.4

v0.1.3

17 Oct 20:56
Compare
Choose a tag to compare

Added

  • Include poetry.lock file in repository.
  • Add EditorConfig configurations.
  • Create pagination utility function.
  • Add VSCode settings for linting, formatting and debugging Python code.

Removed

  • Remove default value of None for api_key field in UserInDBBase schema.

Full Changelog: v0.1.2...v0.1.3

v0.1.2

10 Oct 23:29
Compare
Choose a tag to compare

Added

  • Add community code of conduct.

Changed

  • Bump black from 22.6.0 to 22.10.0.
  • Bump beanie from 1.11.11 to 1.12.0.
  • Use new poetry dependency grouping syntax for dev dependencies in pyproject.toml.

Fixed

  • Now a HTTPException with status code 403 is raised when the given api_key query parameter is invalid.

Full Changelog: v0.1.1...v0.1.2

v0.1.1

02 Oct 19:19
Compare
Choose a tag to compare

Added

  • Add user authentication via API key.

Full Changelog: v0.1.0...v0.1.1

v0.1.0

02 Oct 10:21
Compare
Choose a tag to compare

Added

  • Add utility to create class-based api views.
  • Add last_visit_at field to ShortUrl schema.

Changed

  • Convert all api views except for the /auth/ endpoints to class-based views.
  • Update get_by_username() method of User model to comply with the constraints of the
    username field on user creation (handled by the ConstrainedUsername field type).

Removed

  • Remove redundant get_by_origin() method of ShortUrl model.

v0.0.9

02 Oct 10:20
Compare
Choose a tag to compare

Added

  • Add new field to ShortUrl model for last visit date and time.
  • Add new class method to ShortUrl model for updating view count and last visit.
  • Implement redirection to long URL when short URL is accessed via its identifier.

Changed

  • Bump pyupgrade pre-commit hook to v2.38.0, #10.
  • Bump beanie from 1.11.9 to 1.11.11.