Skip to content

Commit

Permalink
style(lint): bump ruff to v.0.5.0
Browse files Browse the repository at this point in the history
  • Loading branch information
wangxin688 committed Jul 4, 2024
1 parent 3a1c021 commit 71eaa61
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 27 deletions.
2 changes: 1 addition & 1 deletion backend/.pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.4.9
rev: v0.5.0
hooks:
- id: ruff
args: [--fix]
Expand Down
11 changes: 5 additions & 6 deletions backend/alembic/versions/2024_07_04_2338-c09c3268e2b9_init_db.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
"""

from collections.abc import Sequence
from typing import Union

import sqlalchemy as sa
import sqlalchemy_utils
Expand All @@ -18,9 +17,9 @@

# revision identifiers, used by Alembic.
revision: str = "c09c3268e2b9"
down_revision: Union[str, None] = None
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None
down_revision: str | None = None
branch_labels: str | Sequence[str] | None = None
depends_on: str | Sequence[str] | None = None


def upgrade() -> None:
Expand Down Expand Up @@ -444,7 +443,7 @@ def upgrade() -> None:
sa.Column("description", sa.String(), nullable=True),
sa.Column("status", sqlalchemy_utils.types.choice.ChoiceType(length=255), nullable=False),
sa.Column("ip_address", sa.String(), nullable=False),
sa.Column("associted_interfaces", postgresql.ARRAY(sa.String(), dimensions=1), nullable=True),
sa.Column("associated_interfaces", postgresql.ARRAY(sa.String(), dimensions=1), nullable=True),
sa.Column("site_id", sa.Integer(), nullable=False),
sa.Column("role_id", sa.Integer(), nullable=True),
sa.ForeignKeyConstraint(["role_id"], ["ip_role.id"], ondelete="SET NULL"),
Expand Down Expand Up @@ -788,7 +787,7 @@ def upgrade() -> None:
sa.Column("serial_number", sa.String(), nullable=True),
sa.Column("part_number", sa.String(), nullable=True),
sa.Column("hardware_version", sa.String(), nullable=True),
sa.Column("phsical_index", sa.Integer(), nullable=True),
sa.Column("physical_index", sa.Integer(), nullable=True),
sa.Column("replaceable", sa.Boolean(), nullable=True),
sa.Column("device_id", sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(["device_id"], ["device.id"], ondelete="CASCADE"),
Expand Down
16 changes: 8 additions & 8 deletions backend/src/core/errors/exception_handlers.py
Original file line number Diff line number Diff line change
Expand Up @@ -101,42 +101,42 @@ def log_exception(exc: type[BaseException] | Exception, logger_trace_info: bool)
logger.exception(f"Stack trace: {trace_back}")


async def token_invalid_handler(request: Request, exc: TokenInvalidError) -> JSONResponse:
async def token_invalid_handler(request: Request, exc: TokenInvalidError) -> JSONResponse: # noqa: ARG001
log_exception(exc, False)
response_content = err_codes.ERR_10002.dict()
return JSONResponse(status_code=status.HTTP_401_UNAUTHORIZED, content=response_content)


async def invalid_token_for_refresh_handler(request: Request, exc: TokenInvalidForRefreshError) -> JSONResponse:
async def invalid_token_for_refresh_handler(request: Request, exc: TokenInvalidForRefreshError) -> JSONResponse: # noqa: ARG001
log_exception(exc, False)
return JSONResponse(status_code=status.HTTP_401_UNAUTHORIZED, content=err_codes.ERR_10004.dict())


async def token_expired_handler(request: Request, exc: TokenExpireError) -> JSONResponse:
async def token_expired_handler(request: Request, exc: TokenExpireError) -> JSONResponse: # noqa: ARG001
log_exception(exc, False)
return JSONResponse(status_code=status.HTTP_401_UNAUTHORIZED, content=err_codes.ERR_10003.dict())


async def permission_deny_handler(request: Request, exc: PermissionDenyError) -> JSONResponse:
async def permission_deny_handler(request: Request, exc: PermissionDenyError) -> JSONResponse: # noqa: ARG001
log_exception(exc, False)
return JSONResponse(status_code=status.HTTP_403_FORBIDDEN, content=err_codes.ERR_10004.dict())


async def resource_not_found_handler(request: Request, exc: NotFoundError) -> JSONResponse:
async def resource_not_found_handler(request: Request, exc: NotFoundError) -> JSONResponse: # noqa: ARG001
log_exception(exc, True)
error_message = _(err_codes.ERR_404.message, name=exc.name, filed=exc.field, value=exc.value)
content = {"error": err_codes.ERR_404.error, "message": error_message}
return JSONResponse(status_code=status.HTTP_404_NOT_FOUND, content=content)


async def resource_exist_handler(request: Request, exc: ExistError) -> JSONResponse:
async def resource_exist_handler(request: Request, exc: ExistError) -> JSONResponse: # noqa: ARG001
log_exception(exc, True)
error_message = _(err_codes.ERR_409.message, name=exc.name, filed=exc.field, value=exc.value)
content = {"error": err_codes.ERR_409.error, "message": error_message}
return JSONResponse(status_code=status.HTTP_404_NOT_FOUND, content=content)


def gener_error_handler(request: Request, exc: GenerError) -> JSONResponse:
def gener_error_handler(request: Request, exc: GenerError) -> JSONResponse: # noqa: ARG001
log_exception(exc, True)
return JSONResponse(
status_code=exc.status_code,
Expand All @@ -147,7 +147,7 @@ def gener_error_handler(request: Request, exc: GenerError) -> JSONResponse:
)


def default_exception_handler(request: Request, exc: Exception) -> JSONResponse:
def default_exception_handler(request: Request, exc: Exception) -> JSONResponse: # noqa: ARG001
log_exception(exc, logger_trace_info=True)
return JSONResponse(
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR,
Expand Down
2 changes: 1 addition & 1 deletion backend/src/features/dcim/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
from src.features.admin.models import User
from src.features.dcim import schemas
from src.features.dcim.models import Device
from src.features.intend.models import DeviceType
from src.features.deps import auth, get_session
from src.features.intend.models import DeviceType

router = APIRouter()

Expand Down
2 changes: 1 addition & 1 deletion backend/src/features/dcim/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ class DeviceModule(Base):
serial_number: Mapped[str | None] = mapped_column(unique=True)
part_number: Mapped[str | None]
hardware_version: Mapped[str | None]
phsical_index: Mapped[int | None] # cisco physical_index, huawei slot_id
physical_index: Mapped[int | None] # cisco physical_index, huawei slot_id
replaceable: Mapped[bool | None]
device_id: Mapped[int] = mapped_column(ForeignKey("device.id", ondelete="CASCADE"))

Expand Down
13 changes: 3 additions & 10 deletions backend/src/features/deps.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,7 @@

from src.core.config import settings
from src.core.database.session import async_session
from src.core.errors.exception_handlers import (
NotFoundError,
TokenExpireError,
TokenInvalidError,
PermissionDenyError
)
from src.core.errors.exception_handlers import NotFoundError, PermissionDenyError, TokenExpireError, TokenInvalidError
from src.core.utils.context import locale_ctx
from src.features.admin.models import RolePermission, User
from src.features.admin.security import API_WHITE_LISTS, JWT_ALGORITHM, JwtTokenPayload
Expand Down Expand Up @@ -54,7 +49,7 @@ async def auth(
check_user_active(user.is_active)
operation_id = request.scope["route"].operation_id
if not operation_id:
raise
return user
privileged = check_privileged_role(user.role.slug, operation_id)
if privileged:
return user
Expand All @@ -70,9 +65,7 @@ def check_user_active(is_active: bool) -> None:
def check_privileged_role(slug: str, operation_id: str) -> bool:
if slug == ReservedRoleSlug.ADMIN:
return True
if operation_id in API_WHITE_LISTS:
return True
return False
return operation_id in API_WHITE_LISTS


async def check_role_permissions(role_id: int, session: AsyncSession, operation_id: str) -> None:
Expand Down

0 comments on commit 71eaa61

Please sign in to comment.