Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

False-positive DeprecationWarning

Đang mở
#965 3 bình luận 10 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
45/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
python
Lĩnh vực
api

Hướng nghiên cứu

Bắt đầu với kiota_abstractions.default_query_parameters.py và tái hiện cảnh báo bằng lệnh import Python được cung cấp. Kiểm tra cách các lớp request-builder đã lỗi thời phát cảnh báo trong quá trình định nghĩa lớp, sau đó xác minh rằng việc import ClassesRequestBuilder không phát cảnh báo, trong khi việc khởi tạo một lớp đã lỗi thời vẫn phát cảnh báo.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

area:documentation priority:p2
Describe the bug

Simply just importing one of the class request builders is enough to trigger a deprecation warnings. The reproduction steps below will output 3 different deprecation warnings, even though the deprecated classes are not being used.

This is because the warnings are in the class scope, so will be ran at "compile" time.
Changing the first example to the second will only warn when the dataclass is instantiated.

# kiota_abstractions.default_query_parameters.py
@dataclass
class GetQueryParameters(QueryParameters):
    """
    Default placeholder class for query parameters.
    """
    warn("GetQueryParameters is deprecated. Use QueryParameters instead.", DeprecationWarning)
# kiota_abstractions.default_query_parameters.py
@dataclass
class GetQueryParameters(QueryParameters):
    """
    Default placeholder class for query parameters.
    """
    def __init__(self, *args, **kwargs):
        warn("GetQueryParameters is deprecated. Use QueryParameters instead.", DeprecationWarning)
        super().__init__(*args, **kwargs)
Expected behavior

Deprecation warnings are only raised when you instantiate a deprecated class I.E. are actually using it, not just importing it.

How to reproduce

python -Wd -c "from msgraph.generated.education.classes.classes_request_builder import ClassesRequestBuilder"

SDK Version

1.12.0

Latest version known to work for scenario above?

No response

Known Workarounds

Only workaround is to suppress deprecation warnings from this library.

import warnings

warnings.filterwarnings("ignore", module="msgraph", category=DeprecationWarning)
warnings.filterwarnings(
    "ignore",
    module="kiota_abstractions",
    category=DeprecationWarning,
)
Debug output
Click to expand log ```
</details>


### Configuration

_No response_

### Other information

_No response_
Ngôn ngữ chính
Python
Star
630
Fork
96
Merge trung bình
15 giờ 20 phút
Pull request đã merge (30 ngày)
3

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của microsoftgraph/msgraph-sdk-python

Tất cả issue của microsoftgraph/msgraph-sdk-python

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.