Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace OrderedDictionary from Microsoft.Experimental.Collections with the BCL type in .NET 9+ #43

Open
1 task
alexrp opened this issue Jun 12, 2022 · 4 comments
Assignees
Labels
area: build Issues related to the build system. area: formats Issues related to the file format APIs. state: blocked Issues that are blocked on some other issue or work.
Milestone

Comments

@alexrp
Copy link
Member

alexrp commented Jun 12, 2022

<!-- TODO: Find a replacement for Microsoft.Collections.Extensions. -->
<NoWarn>NU5104</NoWarn>

<ItemGroup>
<PackageReference Include="Microsoft.Experimental.Collections" />
</ItemGroup>

Blocked on:

@alexrp alexrp added state: approved Enhancements and tasks that have been approved. type: housekeeping area: build Issues related to the build system. area: formats Issues related to the file format APIs. labels Jun 12, 2022
@alexrp alexrp added this to the v3.0 milestone Jun 12, 2022
@alexrp alexrp self-assigned this Jun 12, 2022
@alexrp alexrp changed the title Find a replacement for OrderedDictionary from Microsoft.Collections.Extensions Find a replacement for OrderedDictionary from Microsoft.Experimental.Collections Aug 3, 2023
@alexrp alexrp modified the milestones: v3.0, v4.0 Aug 17, 2023
@alexrp alexrp added state: deliberation Issues that require design work and/or discussion. and removed state: approved Enhancements and tasks that have been approved. labels Dec 12, 2023
@alexrp
Copy link
Member Author

alexrp commented Dec 12, 2023

It may be worth considering simply not using an ordered dictionary here. When writing the data center file, attributes get sorted anyway. So, creating a data center in memory, writing it, and reading it back, the attributes will not have the same order as they did in memory during creation. It's not clear that using an ordered dictionary here actually adds much value.

Moving this for consideration in v2.0.

@alexrp alexrp modified the milestones: v4.0, v2.0 Dec 12, 2023
@alexrp
Copy link
Member Author

alexrp commented Dec 13, 2023

Postponing after all. A major issue is that unpacking a data center would result in 'random' attribute order, whereas right now, attributes are ordered as they appear in the data center, which results in a mostly (though not always) intuitive order.

We could order attributes explicitly by key status and name, but that won't cover all cases well.

@alexrp alexrp removed their assignment Jan 27, 2024
@alexrp
Copy link
Member Author

alexrp commented Apr 26, 2024

Good news: dotnet/runtime#24826 is now on track to being implemented.

We will do this when we bump our minimum TFM to net10.0.

@alexrp alexrp added state: blocked Issues that are blocked on some other issue or work. and removed state: deliberation Issues that require design work and/or discussion. labels Apr 26, 2024
@alexrp alexrp self-assigned this Apr 26, 2024
@alexrp alexrp modified the milestones: Future, v4.0 Apr 26, 2024
@alexrp alexrp changed the title Find a replacement for OrderedDictionary from Microsoft.Experimental.Collections Replace OrderedDictionary from Microsoft.Experimental.Collections with BCL OrderedDictionary in .NET 9+ Apr 26, 2024
@alexrp alexrp changed the title Replace OrderedDictionary from Microsoft.Experimental.Collections with BCL OrderedDictionary in .NET 9+ Replace OrderedDictionary from Microsoft.Experimental.Collections with the BCL type in .NET 9+ Apr 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: build Issues related to the build system. area: formats Issues related to the file format APIs. state: blocked Issues that are blocked on some other issue or work.
Development

No branches or pull requests

1 participant