PowerShell / PowerShell/PowerShellEditorServices

Consider disabling module auto-loading during IntelliSense

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

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

Area-IntelliSense Issue-Performance
Ngôn ngữ chính
C#
Star
767
Fork
266
Merge trung bình
3 ngày 16 giờ
Pull request đã merge (30 ngày)
1

Mô tả

Module auto-loading during IntelliSense is causing some issues for people, including session hangs and IntelliSense slowness. We use Get-Command to gather information about the currently active IntelliSense result. This causes the module containing the command to get loaded, and if the module misbehaves somehow, it can damage the rest of the session.

We should consider setting the $PSModuleAutoLoadingPreference to "none" before running Get-Command so that IntelliSense details are only gathered for modules that the user has loaded. To make sure we have cmdlet signature details, we could potentially just parse the tooltips of the completions if they're available without loading the module.

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.

Hướng nghiên cứu

Bắt đầu bằng cách truy vết luồng IntelliSense sử dụng Get-Command để thu thập thông tin chi tiết về kết quả hoàn tất đang hoạt động. Xác định cách ngăn việc tra cứu đó tải các module mà vẫn giữ lại thông tin chi tiết về chữ ký của cmdlet hiện có; công việc được xem là hoàn tất khi IntelliSense không còn gây treo hoặc làm chậm session do tự động tải module.

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

Đánh giá

Công nghệ
csharp, powershell
Lĩnh vực
developer-experience, tooling
Loại issue
Tính năng
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

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.