commandlineparser / commandlineparser/commandline
.NET 7 (RC1) trimming results in error
- Ngôn ngữ chính
- C#
- Star
- 4.8k
- Fork
- 478
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
I've just upgraded my project to .NET 7 and seen that it results in an error (when running):
```
Error setting value to option 'u, url': Check if Option or Value attribute values are set properly for the given type.
Error setting value to option 't, threads': Check if Option or Value attribute values are set properly for the given type.
etc..
```
https://github.com/KoalaBear84/OpenDirectoryDownloader/
If I build it with the following it fails (when running):
```
dotnet publish OpenDirectoryDownloader --configuration Release --framework net7.0 --runtime win-x64 -p:PublishTrimmed=true
```
If I remove the `-p:PublishTrimmed=true` it works. This tells me it could be because of the trimming that will trim something that is important for this library.
Also tried with `-p:TrimMode=Link` and `-p:TrimMode=CopyUsed`, but it doesn't make a difference, but found out that `-p:TrimMode=partial` (Only worked with a lowercase p here) does, as it restores the behaviour of .NET 6.
https://learn.microsoft.com/en-us/dotnet/core/deploying/trimming/trimming-options?pivots=dotnet-7-0#trimming-granularity
Maybe this can be resolved at the library side, but I don't have experience with that.
https://learn.microsoft.com/en-us/dotnet/core/deploying/trimming/prepare-libraries-for-trimming
It would be nice if it can be solved, as more users will try/upgrade to .NET 7. Until then this issue will be helpful for everyone looking for a quick workaround.
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Tái hiện lỗi bằng lệnh dotnet publish được cung cấp sử dụng .NET 7, sau đó so sánh với trimming bị tắt và TrimMode=partial. Đọc hướng dẫn trimming được liên kết và kiểm tra cách thư viện xử lý các tùy chọn gây ra lỗi. Hoàn tất khi việc xuất bản có trimming chạy mà không gặp các lỗi đã báo khi thiết lập tùy chọn, đồng thời vẫn giữ nguyên hành vi dòng lệnh thông thường.
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
- Lĩnh vực
- cli
- Loại issue
- Lỗi
- Độ 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
- 38/100