-
Notifications
You must be signed in to change notification settings - Fork 10k
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
Add FallbackTestPseudoElement property to LinkTagHelper #52529
Comments
Thank you for submitting this for API review. This will be reviewed by @dotnet/aspnet-api-review at the next meeting of the ASP.NET Core API Review group. Please ensure you take a look at the API review process documentation and ensure that:
|
@captainsafia I don't understand the last bullet point from msftbot, about "someone being assigned to champion this change in the meeting". This change is small and self-explanatory, does it need a "champion" for the meeting as well? |
@dasblinkenlight This typically means that someone in our API review meetings is available and understands the ramifications of the change. I don't believe it's a hard requirement but @halter73 who heads API review can confirm. |
Exactly. Personally, I'm not super familiar with the A champion is someone we know and trust who is knowledgeable in the area, who can answer these kinds of questions and help us gain confidence that this is an API we want to commit to adding and maintaining going forward. |
@halter73 Long story short, we don't need A brief overview of the current implementation Here is a brief explanation of what is going on here:
Enhancement Note that This is where this enhancement comes in: it lets the author of the ASP.NET page specify the value of the second parameter for the call to How do we solve this problem today? Currently, ASP.NET authors use workarounds, such as this one for bootstrap icons, when they hard-code the entire fallback test function with a single modification -- passing |
Thanks for the detailed explanation! I was about to suggest supporting For our future reference, the original issue is #38146. |
API Review Notes:
API is approved, but we still need to decide whether the PR should be approved. public class LinkTagHelper : UrlResolutionTagHelper
{
+ [HtmlAttributeName(FallbackTestPseudoElementAttributeName)]
+ public string FallbackTestPseudoElement { get; set; }
} |
@halter73 Thank you very much for the update. At this point, is there anything I need to do with regard to moving the PR forward? Should this issue remain open, or does it need to be closed? As far as the additional complexity goes, the change itself is relatively straightforward, and spans only a few dozen lines. The overwhelming majority of the PR changes are in the additional unit tests. It is fueled by the combinatorial explosion of unit test cases that we need to cover all combinations of |
Thanks for suggesting this feature and also for putting out a PR for it, @dasblinkenlight. |
@mkArtakMSFT I am sorry, "after further discussion within the team" does not work as an explanation. Could you please provide detailed reasoning behind your decision? It makes zero sense to me that you would close the PR with a clean implementation and an approved API change with no explanation, not even a code review, after six month of back and forth with me. The problem I identified and solved is real, and there is literally no other solution to it in ASP.NET. |
I've come this far since I'm encountering exactly the same use case as @dasblinkenlight reports. I have been following the issue since its inception 3 years ago (#38146) and I wonder what has happened; why has his collaboration been rejected? |
Background and Motivation
LinkTagHelper
generates a fallback test using properties passed to it via a sequence ofasp-fallback-test-<...>
attributes, namelyasp-fallback-test-class
,asp-fallback-test-property
, andasp-fallback-test-value
. All these attributes are optional.Performing fallback testing with pseudo-elements requires passing an additional value via an optional
asp-fallback-test-pseudo-element
attribute. Following the naming convention of the other properties, the additional value should go into the property calledFallbackTestPseudoElement
.Proposed API
Usage Examples
Alternative Designs
N/A
Risks
Since the new attribute is optional, this change is virtually risk-free. Removing its use from the
<link>
element restores the present functionality.The text was updated successfully, but these errors were encountered: