PowerShell / PowerShell/PSScriptAnalyzer
Enhance PSUseConsistentWhiteSpace to exclude more special cases when using unary operators
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- C#
- Star
- 2.2k
- Fork
- 414
- Merge trung bình
- 13 giờ 1 phút
- Pull request đã merge (30 ngày)
- 2
Mô tả
Found when discussing PR #949 , which already tweaked PSUseConsistentWhiteSpace when using unary operators inside parenthesis.
This adds another special case where the rule should be excluded. The community is welcome to provide more cases that need to be treated specially.
Steps to reproduce
Invoke-Formatter -ScriptDefinition '$r = $a -lt -$var'
Expected behavior
$r = $a -lt -$var
Actual behavior
$r = $a -lt - $var
Environment data
This applies also to the latest version of the development branch.
> $PSVersionTable
Name Value
---- -----
PSVersion 5.1.16299.251
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.16299.251
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
> (Get-Module -ListAvailable PSScriptAnalyzer).Version | ForEach-Object { $_.ToString() }
1.16.1
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Tái hiện vấn đề với Invoke-Formatter và quy tắc PSUseConsistentWhiteSpace bằng định nghĩa script được cung cấp. Theo dõi hành vi của formatter đối với biểu thức toán tử một ngôi và xác minh rằng thay đổi đã hoàn tất vẫn giữ nguyên $r = $a -lt -$var mà không chèn khoảng trắng giữa dấu trừ một ngôi và $var.
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
- tooling
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 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