Skip to content

Make the new, future no-profile CLI for use in shebang lines implement other CLI fixes too #8072

Closed

Description

Follow-up from a conversation with Steve Lee (@SteveL-MSFT) in #7989.

PowerShell's existing CLI has a number of problems, relating to:

The existing CLI cannot be fixed so as not to break backward compatibility, but it was agreed that (a) would be fixed by way of a new, separate executable/symlink, notably for use in shebang lines of stand-alone shell scripts on Unix-like platforms.

More broadly, however, this new CLI is an opportunity to fix (b) and (c) as well, which would go a long way toward endearing PowerShell to CLI-savvy Unix users.

Essentially, it would provide a new CLI that is a well-behaved cross-platform citizen with sane defaults.
(As such the profile-loading behavior should mimic Bash's - only load $PROFILE in interactive shells by default).

Note: The new behavior needn't be a separate binary: The behavior variation could be triggered by invocation via symlink whose name indicates the need to apply alternate behavior, at least on Unix-like platforms. (Invoking .NET Core executables via symlinks on Windows is not yet supported, but will hopefully come in .NET Core 3.0 - see https://github.com/dotnet/core-setup/issues/4080)

Given the then-broader scope, the originally proposed name pwsh-np needs revising, however.

Environment data

Written as of:

PowerShell Core 6.1.0

Activity

  1. SteveL-MSFT commented on Oct 19, 2018

    @SteveL-MSFT
    Member

    Whatever name we choose, we also need to consider pwsh-np-preview

  2. mklement0 commented on Oct 19, 2018

    @mklement0
    ContributorAuthor

    I don't understand, Steve Lee (@SteveL-MSFT): why *-preview?

  3. SteveL-MSFT commented on Oct 19, 2018

    @SteveL-MSFT
    Member

    Michael Klement (@mklement0) we want to maintain a consistent separation of the stable and preview releases so I would think we'd have pwsh, pwsh-preview like we have today, along with pwsh-np and pwsh-np-preview

  4. mklement0 commented on Oct 21, 2018

    @mklement0
    ContributorAuthor

    Ah, of course, thanks Steve Lee (@SteveL-MSFT).

    Any thoughts on a suitable new name that reflects the scope and intent of the changes?

    psh, perhaps? (OK, just kidding).

    Naming is tricky, because the name should be kept short, so I fear it'll come down to documenting things well.

    pwshc? (with the c standing for (a proper) CLI).

  5. tbakerweb commented on Feb 2, 2020

    @tbakerweb

    Hey Steve Lee (@SteveL-MSFT), It isn't clear in this issue, could you please specify if/when/where the Streams output to the associated File Descriptors from #7989 will show up. I'm very interested in this feature and was quite sad when I realized it didn't already exist :(.

    Thanks for your contributions!

  6. sdwheeler commented on May 29, 2024

    @sdwheeler
    Contributor

    Michael Klement (@mklement0) Thanks for collecting these issues in one meta-issue. All of the linked issue have been closed but there is room for more discussion. The WG reviewed this and decided it would be better served by moving this issue to a GitHub Discussion where the community can help us with requirements and decisions for a future solution.

  7. locked and limited conversation to collaborators on May 29, 2024
  8. converted this issue into a discussion #23872 on May 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Issue-Discussionthe issue may not have a clear classification yet. The issue may generate an RFC or may be reclassifWG-Interactive-Consolethe console experienceWG-NeedsReviewNeeds a review by the labeled Working Group

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions