Closed MarcoEidinger closed 1 year ago
I'd be interested to create a PR for the necessary HTML/JS changes.
The prerequisite for development is that https://download.swift.org/swift-evolution/proposals.json needs to be enhanced to include feature identifier information. I don't know where this JSON gets assembled. If you point me in the right direction then I might create a pull request for the same as well.
cc @amartini51
Thank you for submitting this issue @MarcoEidinger! The generation of the proposals.json
file is not open source at present. The Swift Website Workgroup is investigating making this change to add the field.
When I was looking at what it would take to add the field and search to the page itself, the changes were straightforward so I put them in a PR.
I think with the changes in the PR and adding the field to the JSON file, upcoming feature flags (UFF?) would be displayed for proposals that have one and a user could search for a particular flag.
Your feature request also includes finding all proposals with an upcoming feature flag. What UI did you have in mind for that?
Thank you @dempseyatgithub for creating the PR!
Your feature request also includes finding all proposals with an upcoming feature flag. What UI did you have in mind for that?
I was thinking along the lines:
This issue has four different parts:
The existing PR works to address parts 1-3 which are essentially extensions to the existing page behavior with no change in interactive elements on the page.
Being able to filter / view a list of all proposals with a UFF is potentially more complex, so I mocked up some options.
The three options I explored:
Each section that follows has some discussions, pros and cons, and screen mockups.
This option would add the ability to search for terms such as:
This would be adding a hidden searchable property for each proposal and integrate with every other searchable field. Searching for 'uff' would match all proposals with upcoming feature flags, but also match all proposals with the word 'buffer' in the title.
Searching for the search terms would match any field in a proposal that contains those terms.
This option adds a dedicated filter button for proposals with an upcoming feature flag. It is additive with the status/version filter, but provides an independent interface.
Displaying the dedicated filter off and on:
This option adds a filter button for upcoming feature flags to the existing status and version filters.
I tried a few variations:
These were the options that I was able to think of, so always welcome to additional suggestions.
Personally, Option 2, the dedicated filter button, is my preferred option. It adds a small amount of user interface, is very discoverable, and does not add to the complexity of the already complex/heavy status and version filtering UI. I think keeping the two conceptually different filters separate is better for the user experience as well as helps keep the underlying script logic less entangled and more maintainable.
I like best option no 2 => Dedicated filter button (a button next to the filter button turns on and off a filter for proposals with UFFs)
@MarcoEidinger Thanks for the feedback on the options.
Also, as of about an hour ago, proposals display a UFF if they have one and you can search for UFFs by name.
Is your feature request related to a problem? Please describe
Proposals may have a new, optional field that defines the feature identifier that allows for Piecemeal adoption of upcoming language improvements
Unfortunately, it is not possible to search for proposals that have a feature identifier. It is also not possible to search for a proposal with a given feature identifier.
Describe the solution you'd like
Additional context
Excerpt from Proposals define their own feature identifier