Bản phát hành KotlinX RPC 0.9.1 mang đến những cải tiến đáng kể nhằm hướng tới sự ổn định lâu dài, dễ dàng bảo trì và phát triển của thư viện. Chúng tôi tập trung vào việc tách rời các phụ thuộc và đơn giản hóa API để tạo ra trải nghiệm mạnh mẽ và thân thiện hơn với người dùng.
Bạn đã sẵn sàng bắt đầu chưa? Hãy xây dựng dự án tiếp theo với công cụ tạo dự án tương tác tại start.ktor.io.
Điểm nổi bật trong KotlinX RPC 0.9.1
Tách rời khỏi KotlinX Serialization
Mô-đun kotlinx-rpc-core hiện không còn phụ thuộc vào kotlinx.serialization. Thay đổi lớn này cho phép bạn sử dụng kotlinx.rpc mà không cần kotlinx.serialization trong cấu hình gRPC. Việc tuần tự hóa (serialize) dữ liệu giờ đây thuộc trách nhiệm của người triển khai các giao diện RpcClient và RpcServer. Xem hướng dẫn về các thay đổi API không tương thích để biết thêm thông tin.
Quản lý vòng đời được đơn giản hóa
Chúng tôi đã đơn giản hóa việc quản lý tài nguyên và giảm thiểu khả năng mắc các lỗi thường gặp. Các phần triển khai được tạo ra bởi @Rpc, cùng với RpcClient và RpcServer, giờ đây không còn kế thừa CoroutineScope. Do đó, tham số CoroutineScope đã được loại bỏ khỏi phương thức factory RpcServer.registerService, giúp API trở nên gọn gàng và nhất quán hơn.
Chế độ nghiêm ngặt hiện là mặc định
Chế độ nghiêm ngặt, được giới thiệu từ phiên bản 0.5.0 nhằm đơn giản hóa API và đảm bảo tính chính xác, giờ đây đã được bật mặc định và không thể tắt ở các phiên bản sau 0.8.0. Để xem hướng dẫn chi tiết về cách điều chỉnh dự án của bạn, vui lòng tham khảo tài liệu về Strict mode.
Nhật ký thay đổi
Tính năng mới
- Tách rời Serialization bởi Mr3zee trong kotlinx-rpc/354
- Cập nhật Kotlin lên phiên bản 2.2.0 bởi Mr3zee trong kotlinx-rpc/359
Thay đổi phá vỡ (Breaking changes)
- [Meta] Chế độ nghiêm ngặt, ngưng sử dụng (deprecations), quản lý vòng đời bởi Mr3zee trong kotlinx-rpc/353
Cải tiến và sửa lỗi
- Hỗ trợ nullable contextual serializers
- Làm cho việc cài đặt WebSocket cho máy chủ Ktor linh hoạt hơn
- Để KtorRpcClient kế thừa KrpcClient
- Tạo nhãn trạng thái nền tảng (Platform status labels) trong tài liệu API
- Tạo tài liệu API bằng Dokka
- Thêm changelog vào trang web
- Thêm hướng dẫn onboarding
- Sửa lỗi biên dịch cho mô-đun k2 độc lập
- Cập nhật README.md để sử dụng non-suspend flows
- Lan truyền (propagate) transport coroutine context
- Đảm bảo KrpcClient chỉ được tạo một lần
- Cập nhật ví dụ gRPC
Với phiên bản KotlinX RPC 0.9.1, nhóm phát triển đã đưa ra những thay đổi mạnh mẽ nhằm tăng tính ổn định, giảm phụ thuộc và tối ưu trải nghiệm cho lập trình viên. Đây là bản cập nhật quan trọng, đặc biệt cho những ai muốn xây dựng ứng dụng RPC hiệu quả trên Kotlin. Để có môi trường lập trình tối ưu nhất hãy lựa chọn Kotlin bản quyền chính hãng tại ViHoth Solutions.