DarwinJS

My feedback

  1. 37 votes
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      Signed in as (Sign out)

      We’ll send you updates on this idea

      2 comments  ·  PowerShell » PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
      DarwinJS commented  · 

      FYI - psyaml is already powershell core compatible: https://github.com/Phil-Factor/PSYaml

      DarwinJS supported this idea  · 
    • 4 votes
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        Signed in as (Sign out)

        We’ll send you updates on this idea

        5 comments  ·  PowerShell » Package Management  ·  Flag idea as inappropriate…  ·  Admin →

        The issues you have encountered can be frustrating, sorry that is the case for you.

        Moving this to Survey to try to gauge the scope of the problem for users generally.

        We are somewhat limited by security requirements: what ships with Windows will always be tagged so that nothing can replace it easily unless it is signed by Microsoft. While Pester is part of Windows, it is not owned or developed by Microsoft, so updates delivered via the Gallery cannot be Microsoft signed.

        Once the Gallery version is installed on a system, -SkipPublisherCheck is no longer required for future updates. That first experience, however, is bad.

        This leaves us with a dilemma: do we stop shipping Pester in with PowerShell in the future, or do we continue to provide the feature set knowing users who update from the Gallery will encounter these issues?

        Looking for feedback from as many users…

        DarwinJS commented  · 

        Personally I feel the overarching goal should be:

        "PackageManagement behaves sensibly - at all times - no matter how modules are delivered to the system."

        If Microsoft feels strongly enough about integrated testing to include Pester - then other policies or practices should be adjusted to keep PackageManagement sensible - I would even say *especially* for these early encounters of PackageManagement with preinstalled modules.

        Implementation Idea 1:
        Since PackageManagement is provided (and presumably signed) by Microsoft maybe it just uses TrustedInstaller to manipulate these preinstalled modules? Perhaps if I say "uninstall-module pester -requiredversion 3.4.0" - PackageManagement notices that it is owned by TrustedInstaller and does the magic stuff to use that account.

        I have a feeling that getting TrustedInstaller context might be challenging - so maybe this only works for uninstall and it essentially takes ownership assigns permissions and then uninstalls *If I am making the request with elevated admin rights* - so at least I can get that stuff off if I want.

        FYI - I was trying to engineer code to take ownership and delete the files - but I reached my pain threshold and gave up.

        As a side-note I've just seen too many weird things with module loading to trust leaving the old version there even after the new version is installed.

        Implementation Idea 2: Another possible implementation is don't install pester inside the PowerShell MSU (if I understand that is where it is coming from?).

        Rather design a powershell script that will pull it down on the first boot after the install within a regular SYSTEM account context. If you don't want the version to be variable, then use -requiredversion.

        Maybe the source for the these modules is on local disk (I think this requires PSH 5.1 ?) for actual OS builds.

        Implementation Idea 3:
        Make the installation of such PowerShell modules an Optional OS feature - ONLY if it allows escaping the TrustedInstaller ownership.

        I'd be happy with anything that preserves the defacto expectation of package managers being easy, fluid and sensible rather than what the preinstalled modules experience is now.

        Thanks for listening.

        DarwinJS shared this idea  · 
      • 2 votes
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          Signed in as (Sign out)

          We’ll send you updates on this idea

          3 comments  ·  PowerShell » Package Management  ·  Flag idea as inappropriate…  ·  Admin →
          DarwinJS commented  · 

          You might use the /log parameter of wusa.exe to get more details. The output log file is an exported event log, so give it the extension .evtx so you can double click to open in event viewer.

        • 7 votes
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            Signed in as (Sign out)

            We’ll send you updates on this idea

            1 comment  ·  PowerShell » Package Management  ·  Flag idea as inappropriate…  ·  Admin →

            This is definitely something we’re thinking about and working towards. The question becomes whether it’s “good enough” to update all the built-in modules (like MS.PS.Utility or MS.PS.Management) via PowerShellGet or if we need to actually update PowerShell itself.

            As we work on PowerShell Core on GitHub (https://github.com/powershell/powershell) we’re beginning to think about how more engine work might be abstracted into individual modules (which, again, could be updated async from the Gallery).

            That being said, there also is probably some value in installing PowerShell Core all up via “Install-Package” or “Update-Package”. Given that PS Core is fully side-by-side enabled, you could slap down a new version of PowerShell Core next to the one from which you’re actually running PowerShell Core.

            At the same time, updating Windows PowerShell (the Windows-only edition of PowerShell that sits on top of the full, .NET Framework) from within Windows PowerShell is significantly trickier…

            DarwinJS supported this idea  · 
            DarwinJS commented  · 

            It would be cool to be able to do this with full powershll - even if it results in needing a reboot (just like it does now). In the currently bundling with WMF, it seems like a reboot would be necessary regardless of file locking. Currently I co-maintain the chocolatey package that does allow updating powershell from within a powershell script. http://chocolatey.org/packages/powershell/

          • 9 votes
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              Signed in as (Sign out)

              We’ll send you updates on this idea

              5 comments  ·  PowerShell » Package Management  ·  Flag idea as inappropriate…  ·  Admin →
              DarwinJS commented  · 

              Should install-module just be made to take the -ForceBootstap switch that automates that prompt for Install-Package ?

            • 61 votes
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                Signed in as (Sign out)

                We’ll send you updates on this idea

                2 comments  ·  PowerShell » Package Management  ·  Flag idea as inappropriate…  ·  Admin →
                DarwinJS supported this idea  · 
              • 3 votes
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  Signed in as (Sign out)

                  We’ll send you updates on this idea

                  0 comments  ·  Security and Assurance » Certificates and CA  ·  Flag idea as inappropriate…  ·  Admin →
                  DarwinJS shared this idea  · 
                • 14 votes
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    Signed in as (Sign out)

                    We’ll send you updates on this idea

                    1 comment  ·  Core Server » Management tools  ·  Flag idea as inappropriate…  ·  Admin →
                    DarwinJS shared this idea  · 

                  Feedback and Knowledge Base