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

[Settings > PT Run > Plugins] Show version number #33846

Closed
htcfreek opened this issue Jul 15, 2024 · 7 comments
Closed

[Settings > PT Run > Plugins] Show version number #33846

htcfreek opened this issue Jul 15, 2024 · 7 comments
Assignees
Labels
Idea-Enhancement New feature or request on an existing product Product-Settings The standalone PowerToys Settings application Resolution-Already Fixed/Doesn't Apply A change in the product has made the issue obsolete. Run-Plugin Manager Issues with the PowerToys Run plugin manager

Comments

@htcfreek
Copy link
Collaborator

Description of the new feature / enhancement

Showing the version of the installed plugins.

Scenario when this would be used?

To see if your third-party plugin is up to date.

Supporting information

No response

@htcfreek htcfreek added Idea-Enhancement New feature or request on an existing product Product-Settings The standalone PowerToys Settings application Run-Plugin Manager Issues with the PowerToys Run plugin manager labels Jul 15, 2024
@htcfreek htcfreek self-assigned this Jul 15, 2024
@htcfreek
Copy link
Collaborator Author

htcfreek commented Jul 15, 2024

@niels9001
I like to combine this with #9921. Therefore I suggest to replace the currently shown Author name with a text line like this:

Version 0.82.0 • Authored by xyz • Website

(The text "Website" should be an clickable link with the address in a tool tip. The layout of bold name can be applied to version number too.)

What layout (character and color) do you suggest for the dot separator? Any other ideas?

@htcfreek
Copy link
Collaborator Author

htcfreek commented Jul 15, 2024

@crutkas
Can we add a script to our release pipeline that updates the version nunber in all plugin.json files based on the build properties with the new version number?

GitHub search query: path:src/modules/launcher/Plugins/*/plugin.json version

@davidegiacometti
Copy link
Collaborator

If we decide to go for this I think it's better to read the version from the assembly instead of the plugin.json.

The PluginMetadata version is currently never set:

public string Version { get; set; }

Assembly version is more reliable and already used to pick up the latest release of the plugin.

var fileVersion = FileVersionInfo.GetVersionInfo(x.ExecuteFilePath);

@htcfreek
Copy link
Collaborator Author

@davidegiacometti

The PluginMetadata version is currently never set:

I am not sure what you mean with "never set" because it comes from the plugin.json.

Assembly version is more reliable and already used to pick up the latest release of the plugin.

I agree that this is the better solution for our built-in plugins. But can we be sure that third-party plugin developer set the DLL file version correctly? (The json is definitely easier to maintain.)

@davidegiacometti
Copy link
Collaborator

I am not sure what you mean with "never set" because it comes from the plugin.json.

My bad! This is set from the JSON but it's never used.

I agree that this is the better solution for our built-in plugins. But can we be sure that third-party plugin developer set the DLL file version correctly? (The json is definitely easier to maintain.)

Properly version a software that is being shipped is a best practice.

@htcfreek
Copy link
Collaborator Author

@davidegiacometti
Do you think we should always show all 4 parts of the dll version or does it make sense to show the 4 part only if it is not 0?

[Regex]::Replace([version]::new(1,5,6,5), ".0$", "")
[Regex]::Replace([version]::new(1,5,6,0), ".0$", "")

# Output
# 1.5.6.5
# 1.5.6

@davidegiacometti
Copy link
Collaborator

That's a great question. I'll go for 4 parts since you can't know if the last .0 is unused or if it's just a .0 release.

@htcfreek htcfreek added the Status-In progress This issue or work-item is under development label Dec 26, 2024
@jaimecbernardo jaimecbernardo added Resolution-Fix Committed Fix is checked in, but it might be 3-4 weeks until a release. and removed Status-In progress This issue or work-item is under development labels Jan 8, 2025
@jaimecbernardo jaimecbernardo added this to the PowerToys 0.88 milestone Jan 8, 2025
@cinnamon-msft cinnamon-msft added Resolution-Already Fixed/Doesn't Apply A change in the product has made the issue obsolete. and removed Resolution-Fix Committed Fix is checked in, but it might be 3-4 weeks until a release. labels Feb 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Idea-Enhancement New feature or request on an existing product Product-Settings The standalone PowerToys Settings application Resolution-Already Fixed/Doesn't Apply A change in the product has made the issue obsolete. Run-Plugin Manager Issues with the PowerToys Run plugin manager
Projects
None yet
Development

No branches or pull requests

4 participants