Skip to content

Conversation

theJasonHelmick
Copy link
Contributor

No description provided.

@doctordns
Copy link

A great idea. But some details might be useful on the proposed cmdlet. Most importantly - what would be the source for this information. Also, what level of granularity?

@theJasonHelmick
Copy link
Contributor Author

A great idea. But some details might be useful on the proposed cmdlet. Most importantly - what would be the source for this information. Also, what level of granularity?

@doctordns - This is discussed in the spec in the Data Model section - essentially, we are shipping the same markdown files we use for the web in the module. Is this the detail you are looking for?

Data model

To minimize content maintenance and allow for disconnected scenarios, the data presented by the
cmdlet is stored with the module as version specific markdown files.

  • Uses the same markdown files as the webview
  • Version files are updated in the module at the time of a new release
  • This allows for disconnected scenarios
  • Minimizes the maintenance of the content
  • Update support
    • Updates to the data require publishing a new version of the module to the Gallery
    • To get the latest data, the user runs Update-Module
    • Eliminates the need for a Microservice to serve the data or updates

@doctordns
Copy link

doctordns commented Mar 28, 2022

I am somewhat unconvinced of the need for this cmdlet. If I want to know what is new, I just use Google/Bing and search. For this to be of much use, the module will need to contain a lot of delta information (what is new between 7.2.1 and 7.2.2). It would need every delta to be separately defined and would almost certainly be the subject of regular updates as well no doubt (to fix typos, etc).

And as for the proposed alias - I would decline this too. I can not see this cmdlet being used all THAT often in an interactive session. Seems to me, if users want to create aliases they can use $Profile.

I suggest that this is added to a PSGallery module to judge the value of adding this as a core PowerShell cmdlet.

@theJasonHelmick
Copy link
Contributor Author

theJasonHelmick commented Mar 28, 2022

I suggest that this is added to a PSGallery module to judge the value of adding this as a core PowerShell cmdlet.

@doctordns - Yup, I think we are on the same page - here's what I put int he spec. https://github.com/PowerShell/PowerShell-RFC/pull/317/files#:~:text=%23%23%20Solution,Windows%20PowerShell%205.1

Solution

Ship a Microsoft.PowerShell.WhatsNew module on the PowerShell Gallery that contains the cmdlet
and would:

  • Be discoverable using normal PowerShell conventions
  • Be available down-level to Windows PowerShell 5.1

@doctordns
Copy link

There might be some merit in a Power Toys type module. It could contain this cmdlet, as well as a command to update-PowereShell and maybe even a cmdlet to download help information for modules not on a given host. And other useful things around managing PowerShell?

- To receive a **Message Of The Day** (motd) displaying a single new feature

```powershell
Get-WhatsNew -Daily
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

need to understand how daily doesn't repeat and presumably is random. probably needs some state stored somewhere so it doesn't repeat the same motd

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am using the system time as a random seed. This should keep it from repeating as best as we can. We can evaluate this more later. It may not be worth the effort.

## Engine updates

- Add `LoadAssemblyFromNativeMemory` function to load assemblies in memory from a native PowerShell
host by awakecoding · Pull Request #14652
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would the PR be turned into a hyperlink?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No. We are not transforming any of the content in the markdown files. That is out of scope.

host by awakecoding · Pull Request #14652
```

- To list only the features of a specific version:
Copy link
Member

@SteveL-MSFT SteveL-MSFT Jun 8, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is not just the features, but all the changes, right? Do we need a -Scope type parameter with Feature, Engine, Cmdlet, etc... type values to filter?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have no data model that provides us the ability to filter by scope.

@dcaro
Copy link

dcaro commented Jun 8, 2022

Couple of comments:

  • Could we consider exposing what's new not just for PowerShell but also for other modules installed. We'd need to agree how the information is included in the modules or fetched from another source.
  • The amount of information returned can be large. It may worth considering displaying only header and offering the possibility to obtain details intool or online.

@theJasonHelmick
Copy link
Contributor Author

theJasonHelmick commented Jun 9, 2022

@dcaro - comments inline:

Couple of comments:

  • Could we consider exposing what's new not just for PowerShell but also for other modules installed.

Yes, it would be possible to change the data source to a service that provides this information. Based on community feedback, this is something we could look toward in a. future release.

  • The amount of information returned can be large. It may worth considering displaying only header and offering the possibility to obtain details intool or online.

This has been discussed such as a -online switch and clickable hypertext. Open to discussing output formatting options for a future version.

@theJasonHelmick
Copy link
Contributor Author

Closing this PR.

The specification for Get-WhatsNew is not intended to be included with PowerShell. This will be published as a separate module on the Gallery supporting PowerShell 7 and down-level to Windows PowerShell 5.1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants