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

Recommended Packages #3928

Open
Trenly opened this issue Nov 26, 2023 · 4 comments
Open

Recommended Packages #3928

Trenly opened this issue Nov 26, 2023 · 4 comments
Labels
Issue-Feature This is a feature request for the Windows Package Manager client.

Comments

@Trenly
Copy link
Contributor

Trenly commented Nov 26, 2023

Description of the new feature / enhancement

Some packages have related software to make them work better or provide additional functionality. It would be nice if a user were informed of these related packages after install.

For example, Audacity can have additional codecs enabled by installing a specific FFMPEG package. After install, a user may be interested in also installing that package.

Additionally, when Verified Publishers are complete, they may want to promote their other related software.

Proposed technical implementation details

Manifest -

ReccomendedPackages:
- PackageIdentifier: Example.PackagePlus
  RecommendationReason: This package adds the ability to abc123 in Package.Example
- PackageIdentifier: Example.PackageMinus

Output -

Installation Complete!

You may be interested in these related packages:
  Example.PackagePlus - This package adds the ability to abc123 in Package.Example
  Example.PackageMinus

Also could be a user setting to suppress recommended packages

@Trenly Trenly added the Issue-Feature This is a feature request for the Windows Package Manager client. label Nov 26, 2023
@microsoft-github-policy-service microsoft-github-policy-service bot added the Needs-Triage Issue need to be triaged label Nov 26, 2023
@stephengillie
Copy link

I'm not sure that this is a good idea.

  1. I would find it annoying to have a software tool emit extraneous messages. If I couldn't disable these, I would wrapper the tool to capture and nullify them. And the tool would quickly lose any goodwill it had gained.

  2. I have personal moral objections to for-profit advertising, and I believe that this would be primarily used as for-profit advertising.

  • While it might be used for self-promotion of a developer's other packages, it would be just a matter of time before the marketing teams of larger packages reached out to smaller-but-popular projects, to make an ad deal and buy their RecommendedPackages space.
    • Just installed 7zip.7zip? You might be interested in BlenderFoundation.Blender. This package adds the ability to make and animate 3d objects!
  • In the same way that Influencers are paid today to recommend, or even just mention or use, popular brands - so too could popular brands work their way into this system as well.
    • Just installed 7zip.7zip? You might be interested in Delicious.CocaCola. This package adds the ability become refreshed!
  1. To prevent abuse, an advertising review might be needed. But this might not scale with our volume of PRs.
  • Ads might be regulated in some areas that this might violate.
  1. From an image side, it could almost seem like this open-source project is seeking an alternate source of revenue if these were misused. Taking my concern from 2. above, some might misunderstand the source of the advertising sale and misconstrue this as being directly actioned by the project's features, instead of merely facilitated by it.

@stephengillie stephengillie removed the Needs-Triage Issue need to be triaged label Nov 27, 2023
@Trenly
Copy link
Contributor Author

Trenly commented Nov 27, 2023

Interesting points, and I can see how advertising could be an issue

@mdanish-kh
Copy link
Contributor

A more compelling case of this feature request may be:

Instead of only outputting recommended packages, maybe support a --install-recommended-packages parameter as well. Assuming the concerns raised around advertising are addressed, this would be a streamlined way for users to install the package with publisher recommended packages for an overall best UX

@stephengillie
Copy link

I have a better understanding of this now than I did 8 months ago. This is essentially a naming nit regarding the PackageDependencies section name - and really boils down to the definition of "dependency". Where some applications will run at a reduced capacity without their dependencies, and others won't run at all. To me, this is all developer errata and essentially noise.

If the main package produces the desired result, then the other package isn't a dependency and is simply extraneous. If the main package requires the other package to produce the desired result, then it's a dependency, regardless of how gracefully the main package handles this. Some packages might have finely-crafted messages about the capabilities of their software product without having the other software package installed, and some depend on .NET to generate an error. - but this doesn't matter insofar as the other package being necessary to produce the desired output.

It's similar to how some websties can give a full HTML 404 error page, with copyrighted properties and special CSS effects that follow the mouse - while other websites just give the plaintext response. The amount of sophistication going into the error message doesn't make the backing file any more or less available.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Issue-Feature This is a feature request for the Windows Package Manager client.
Projects
None yet
Development

No branches or pull requests

3 participants