The `import/order` rule isn't enough to sort import within a single import group alphabetically.
This adds `sort-imports` rule that handles the sorting within groups.
Previous commit 852d24e5 added modelVersion to the API response and mentioned
adding it to analytics tracking, but only added the distribution field to
the analytics events. This commit completes the implementation by adding
modelVersion to both package recommendation analytics events:
- "Package Recommendations Shown" event now includes modelVersion
- "Recommended Package Added" event now includes modelVersion
This enables proper tracking of which recommendation models are being used
and their effectiveness.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
This fixes a bug inside of the package search step where packages from
additional (not the 2 default ones) RH repos were not coming up when
searching. This only happens when using a content template as that's
currently the only way to add more RH repos.
- Add required distribution field to RecommendPackageRequest
- Add modelVersion field to RecommendationsResponse
- Update frontend to send RHEL major version to API
- Add analytics tracking for distribution and modelVersion
Enables version-specific package recommendations and model usage tracking.
Disable a package if it's a conflicting module stream or if it's a non-modular package whose base name is already covered by an enabled module stream.
Disable a module if anouther package with the same name was selected.
Fixes#3274
This adds more information to the recommended packages expandable to highlight that:
- all needed dependencies will be included by default
- recommendations are optional and based on choices of other users
Previously when the Included/Other repos popover button was clicked the tab changed as well. This makes the popover button independent on the selected tab.
This updates the sort logic to reflect currently selected application stream. For example if `nodejs` with application stream 22 gets selected, results for other modules with the same application stream should be prioritized before the rest of results.
This adds application stream column to the packages table and populates it with `pkg.package_sources.stream` value or 'N/A' if the result is a single package or a group.
The placeholders we tend to use are usually quite specific. "Type to search" felt quite vague for some reason. Also repositories had no placeholder, I believe "filter" is clearer than "search" here as we're not fetching any results, just filtering through the already existing list of repositories.
As a small simplification and also to make the UX more consistent, let's
use a SearchInput widget over the custom InputGroup structure.
The only aspect lost in the process is the `validation` property that
doesn't exist in the SearchInput widget. It however only affects the CSS
styling of the searchbox and renders the 'error' state when there's only
a single character in the box. This may not even be desirable, given
that it's not really an error and that we show a note right below the
input box about this anyway.
This means the search boxes will also be consistent between the
repository and package search pages.
Fixes#3133
Currently, when a search term is entered and then reduced to a single
character in the Wizard's packages step, the previous results are still
shown.
What is expected is that the empty state hinting at the search term
being too short would be shown.
The condition in bodyContent was wrong, because it assumed that the list
of results would be 0 when in fact it wasn't being cleared.
Fixes#3139
This removes sorting on the frontend side where it's already handled by the content sources API.
Since we manipulate selected packages by joining the, with `currentlyRemovedPackages` list, the sorting is added there to keep the packages from jumping around when unselected.
Modify the logic of removing a package so that it remains in the selected table for possible
re-addition until another package is removed or the wizard is switched to another screen
Searching for groups isn't possible sadly, as the search works slightly
differently than content sources. Replace the alert with an alert on how
to use globbing.
Add initial package search. Include the version, release & arch information
in the summary, since some packages might have a release with the specific
architecture and a `noarch` version.
We were making a call to a dead endpoint to get the architectures.
Instead, create a custom query function to return the list of architectures
and image types.