microsoft / microsoft/Power-Fx
cleanup TableDelegationInfo
Open
@MikeStall is already working on this.
Since Dec 18, 2024.
- Dominant language
- C#
- Stars
- 3.4k
- Forks
- 358
- Avg merge
- 10h 34m
- Merged PRs (30d)
- 3
Description
Some improvements to:
https://github.com/microsoft/Power-Fx/blob/main/src/libraries/Microsoft.PowerFx.Core/Entities/External/TableDelegationInfo.cs
This describes what abilities a RecordType can delegate.
Principles:
- Specify what's allowed; not what's restricted. Delegation needs to know exactly what is happening, and so should fail if there's anything it doesn't recognize. Restricted is unsound because we can't assume "anything is delegable except what we exclude" because we don't know what "anything" might include. That's like saying "infinity minus 5".
- shrink surface - only public properties for things that are intrinsically necessary and we actually use in our C# delegation logic.
- Conceptually - this is like an extension to RecordType. 5. deferred - don't have a single giant poco (that won't scale to a 300 column table).
- Use virtuals for GetColumns, etc.
- Avoid redundancy. Don't have both a property and virtual for same thing.
Current impl does 3&4, but should be updated for 1&2.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.