Skip to content

Commit ee80ba0

Browse files
authored
refactor!: migrate to uv (#378)
1 parent d31bf37 commit ee80ba0

File tree

83 files changed

+2144
-2911
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

83 files changed

+2144
-2911
lines changed

backend/.python-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
3.13

backend/apps/api/apps.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22

33

44
class ApiConfig(AppConfig):
5-
default_auto_field = 'django.db.models.BigAutoField'
6-
name = 'apps.api'
5+
default_auto_field = "django.db.models.BigAutoField"
6+
name = "apps.api"

backend/apps/api/bases/serializers.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ class ReactionSerializer(serializers.Serializer):
3030
action = serializers.CharField()
3131

3232
def validate_action(self, value):
33-
if value not in ['upvote', 'downvote']:
34-
raise serializers.ValidationError(f'Invalid action: {value}')
33+
if value not in ["upvote", "downvote"]:
34+
raise serializers.ValidationError(f"Invalid action: {value}")
3535
return value
3636

3737

@@ -45,6 +45,6 @@ class BaseRatioModelSerializer(serializers.ModelSerializer):
4545

4646
@extend_schema_field(OpenApiTypes.INT)
4747
def get_ratio(self, obj):
48-
if hasattr(obj, 'ratio'):
48+
if hasattr(obj, "ratio"):
4949
return obj.ratio
5050
return 0 # default value for new instances

backend/apps/api/exceptions.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ class ServerError(APIException):
66
"""Custom API exception error with 500 status code"""
77

88
status_code = status.HTTP_500_INTERNAL_SERVER_ERROR
9-
default_detail = 'An unexpected server error occurred.'
10-
default_code = 'server_error'
9+
default_detail = "An unexpected server error occurred."
10+
default_code = "server_error"

backend/apps/api/serializers/comment/__init__.py

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ class CommentSerializer(BaseRatioModelSerializer):
1212

1313
class Meta:
1414
model = Comment
15-
fields = '__all__'
15+
fields = "__all__"
1616

1717

1818
class CommentOverviewSerializer(CommentSerializer):
@@ -23,23 +23,23 @@ class CommentOverviewSerializer(CommentSerializer):
2323

2424
class Meta(CommentSerializer.Meta):
2525
fields = (
26-
'id',
27-
'commenter',
28-
'reply_to',
29-
'is_op',
30-
'ratio',
31-
'post',
32-
'created_at',
33-
'content',
34-
'upvotes',
35-
'downvotes',
26+
"id",
27+
"commenter",
28+
"reply_to",
29+
"is_op",
30+
"ratio",
31+
"post",
32+
"created_at",
33+
"content",
34+
"upvotes",
35+
"downvotes",
3636
)
3737

3838
def get_commenter(self, obj):
3939
return obj.commenter.username
4040

4141
def get_post(self, obj):
42-
request = self.context.get('request')
42+
request = self.context.get("request")
4343

4444
if post := Post.objects.filter(comments=obj).first():
4545
return {
@@ -74,23 +74,25 @@ class CommentCreateSerializer(serializers.ModelSerializer):
7474

7575
class Meta:
7676
model = Comment
77-
fields = ('path', 'content', 'post')
78-
extra_kwargs = {'post': {'write_only': True}}
77+
fields = ("path", "content", "post")
78+
extra_kwargs = {"post": {"write_only": True}}
7979

8080
def create(self, validated_data):
8181
data = {
82-
'commenter': self.context['request'].user_profile,
83-
'content': validated_data['content'],
84-
'post': validated_data['post'],
82+
"commenter": self.context["request"].user_profile,
83+
"content": validated_data["content"],
84+
"post": validated_data["post"],
8585
}
8686

87-
if path := validated_data.get('path'):
87+
if path := validated_data.get("path"):
8888
parent_instance = get_object_or_404(Comment, path__match=path)
8989
comment_instance: Comment = Comment.objects.create_child( # pyright: ignore
9090
parent=parent_instance, **data
9191
)
9292
else:
93-
comment_instance: Comment = Comment.objects.create_child(**data) # pyright: ignore
93+
comment_instance: Comment = Comment.objects.create_child(
94+
**data
95+
) # pyright: ignore
9496

95-
comment_instance.upvotes.add(data['commenter'])
97+
comment_instance.upvotes.add(data["commenter"])
9698
return comment_instance

backend/apps/api/serializers/community/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@
77
class CommunitySerializer(serializers.ModelSerializer):
88
class Meta:
99
model = Community
10-
fields = '__all__'
10+
fields = "__all__"
1111

1212

1313
class CommunityBasicSerializer(serializers.ModelSerializer):
1414
class Meta:
1515
model = Community
16-
fields = ('id', 'name', 'avatar')
16+
fields = ("id", "name", "avatar")
1717

1818

1919
class CommunityDetailedSerializer(serializers.ModelSerializer):
@@ -22,7 +22,7 @@ class CommunityDetailedSerializer(serializers.ModelSerializer):
2222

2323
class Meta:
2424
model = Community
25-
fields = '__all__'
25+
fields = "__all__"
2626

2727
def get_posts_count(self, obj) -> int:
2828
return obj.posts.count()

backend/apps/api/serializers/community/topics.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ class TopicSerializer(serializers.ModelSerializer):
88

99
class Meta:
1010
model = Topic
11-
fields = ('id', 'display_name', 'icon', 'sensitivity', 'children')
11+
fields = ("id", "display_name", "icon", "sensitivity", "children")
1212

1313
def get_children(self, obj) -> dict:
1414
return TopicSerializer(obj.children.all(), many=True).data

backend/apps/api/serializers/post/__init__.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,22 @@ class PostSerializer(BaseRatioModelSerializer):
1515

1616
class Meta:
1717
model = Post
18-
fields = '__all__'
18+
fields = "__all__"
1919

2020
@extend_schema_field(OpenApiTypes.INT)
2121
def get_comment_count(self, obj):
22-
if hasattr(obj, 'comment_count'):
22+
if hasattr(obj, "comment_count"):
2323
return obj.comment_count
2424
return 0 # default value for new posts
2525

2626

2727
class PostCreateSerializer(serializers.ModelSerializer):
2828
class Meta:
2929
model = Post
30-
fields = ('community', 'poster', 'title', 'content', 'cover')
30+
fields = ("community", "poster", "title", "content", "cover")
3131

3232
def create(self, validated_data):
33-
poster = self.context['request'].user_profile
33+
poster = self.context["request"].user_profile
3434
post = Post.objects.create(**validated_data)
3535

3636
post.upvotes.add(poster)

backend/apps/api/serializers/post/highlighted.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@
66
class PostHighlightedSerializer(serializers.ModelSerializer):
77
class Meta:
88
model = Post
9-
fields = ('cover', 'title', 'id', 'slug', 'created_at')
9+
fields = ("cover", "title", "id", "slug", "created_at")

backend/apps/api/serializers/user/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
class UserSerializer(serializers.ModelSerializer):
77
class Meta:
88
model = User
9-
fields = ('id', 'email', 'password', 'date_joined')
10-
read_only_fields = ('date_joined',)
11-
extra_kwargs = {'password': {'write_only': True}}
9+
fields = ("id", "email", "password", "date_joined")
10+
read_only_fields = ("date_joined",)
11+
extra_kwargs = {"password": {"write_only": True}}
1212

1313
def create(self, validated_data):
1414
user = User.objects.create_user(**validated_data) # pyright: ignore

0 commit comments

Comments
 (0)