Skip to content

Latest commit

 

History

History
97 lines (93 loc) · 6.09 KB

20200416_Notes.md

File metadata and controls

97 lines (93 loc) · 6.09 KB

PowerShell Community Call - April 16, 2020

Agenda

  • Update on PowerShell 7.0
  • Microsoft 1st Party Conference
  • 7.1 Plans
  • Minimal PowerShell
  • PSScriptAnalyzer 2.0
  • Community pages on Docs
  • Q&A

Notes

  • 7.0 GA is going great so far!
    • ~10-15% of PS Core sessions are already 7.0
    • https://aka.ms/PSGitHubBI will be updated soon with 7.0 numbers and additional telemetry
  • Microsoft (internal) 1st Party Conference
    • Goal was to evangelize and understand blockers around PS 7.0 with internal Microsoft teams
    • ~250 attendees
    • Potentially able to share a limited set of the presentations with the public
  • 7.1 Roadmap Blog
    • Trying to snap closer to .NET releases (for both support reasons and to stay on the latest-and-greatest)
      • master branch already moved to .NET Preview 2
      • Working to simultaneously ship with PowerShell 7.1
    • More info on features and experiences to come in issues and RFCs
    • Minimal PowerShell
      • Very long-term investment
        • very likely that we won't have interesting work to show until after the 7.1 release
      • Originally wanted to maximize back-compat with Windows PowerShell
        • We believe this has been accomplished
      • Goal: remove features of PowerShell that aren't necessary in embedded, minimal, and non-interactive environments
        • How can we turn aspects of PS into plugins that can be excised?
        • E.g. help system, PSReadline, IntelliSense, interactive-only "utility" cmdlets
    • Shell improvements
      • Delighters that make you more productive at the interactive command-line
        • Predictive IntelliSense providing more contextual completions
          • Starting based on history, but eventually working to incorporate more "intelligent" completers (e.g. ML)
      • Filling gaps where native binaries and basic Bash invocations don't work
        • E.g. incorporating non-zero exit codes into $ErrorActionPreference (in a non-breaking way!)
      • Keeping our breaking changes to an absolute minimum on this effort
    • Secrets Management
      • Goal of early previews is to gather feedback and make major adjustments before it's too late
      • Dev preview already driving a large set of breaking changes
  • PSScriptAnalyzer 2.0
    • Goals
      • Improve performance and stability (especially with formatting rules)
        • This is going to improve perf and stability of VS Code PowerShell extension
      • Simplify usage of the compatibility rules
        • These are the ones that allow you target specific versions of PowerShell and specific OSes
      • Simplify rule authoring experience
    • If you have feature requests or feedback, hop into the PSSA issues
      • Can also reach out to Sydney, Rob, or Jim
  • platyPS 2.0 / doc authoring pipeline
    • platyPS is the module that converts to Markdown-based help into XML-based help that can be used with Get-Help
    • "I want up-to-date help in Update/Get-Help"
    • Working with internal teams to make sure they're "doing help correctly"
  • Community updates in docs
  • Q&A
    • Joel Sallow asking for update on Dispose RFC
      • Tension between long-running disposals and user desire to cancel commands
    • New FileSystem provider? (or improvements?)
      • Fundamental issues there today, we don't think we can fix them without major breaking changes
      • Would have to be a v2 model where they're side-by-side for some period of time
      • We're not investing here now, but it'd be okay if a community member wanted to start brainstorming in issues
    • Local Accounts module updates?
      • Something we can look into but not a top-priority right now. Open to community contributions here
    • Always happy to make improvements to the engineering systems
      • but we're working with a high volume of contributions, and we're trying to figure out better ways to scale
    • Exchange Server module
      • Exchange Online team is making efforts to bring their newer v2 module to compat with PS 7
        • Today, you can already use just the implicit remoting method (New-PSSession against an ExO endpoint)
      • On-prem Exchange Server is not making major investements right now, and will likely not get ported to PS 7
        • Will have to rely on Windows PS compatibility layer (Import-Module -UseWindowsPowerShell ExchangeServer)
    • ETA for MSIX?
      • No ETA today because we're currently blocked on some other Microsoft teams who are helping us with signing
      • Not trying to productize the pure MSIX package; only doing this work to enable install from the Microsoft Store
      • May be a scenario with Windows Virtual Desktop (WVD)?
    • When you install 7.1 Preview 1, it will install over the existing 7.0 preview.
      • Same is true for LTS channels and stable channels
      • If you want absolute side-by-side, use the ZIP
    • When they're posted, videos and notes are available at https://aka.ms/PSCommunityCall
      • We'll do a better job of posting these
    • IntelliSense speed in VS Code
      • Big performance improvements on the latest major release
      • Even more IntelliSense improvements since then have been released in our preview
    • Which VS Code extension should I use?
      • Significantly increased frequency of updating preview release
      • You can install them side-by-side, just make sure to only enable one at a time
    • Dot-sourcing batch files in order to pull in environment variables?
      • We hadn't thought of this scenario, but there's possible solutions
      • Please file an issue, Travis believes we might have something in our CI that might be able to do this
      • Visual Studio vars batch file is the real-world scenario
      • Lee Holmes already has an Invoke-BatchFile cmdlet, we can look at that
    • platyPS depends on YAML.NET and the version is conflicting with other modules folks want to use