Skip to content

Could you please put CommandLineArguments into user-specific configuration file. #7025

Closed

Description

@chjfth

For a foo.pyproj project created in VS2015~VS2022(up until today, 2022.06.05), if user sets script argument, the argument is saved in foo.pyproj itself .

image

foo.pyproj will be injected with XML tag:

<CommandLineArguments>param1 "param two"</CommandLineArguments>

I have to say, that is very unfriendly for a team. Team member Tom and team member Bob probably run/test the python program with different arguments, and their settings should not stomp on each other. Therefore, <CommandLineArguments> should be placed into another file called foo.pyproj.user . The team will have foo.pyproj checked into git, but not for foo.pyproj.user.

Microsoft Visual Studio projects for C++ and C# has a very long history of putting program startup parameters in foo.vcxproj.user and foo.csproj.user, and I appreciate that decision. I've been so surprised that PTVS developers have not realized this better(or best) practice yet.

Hope to see it implemented soon.

Activity

  1. chjfth commented on Jun 7, 2022

    @chjfth
    Author

    Suggestion: Two-tier configuration of CommandLineArguments is welcome and is the most flexible design in my opinion. It means, PTVS still recognize team-wide CommandLineArguments in foo.pyproj(as suggested running arguments for all/most team members), and a team member can override this setting in his own foo.pyproj.user.

    This requires configuration UI to be updated as well. The UI should tell the user, whether the currently displayed "Script Argument" is from foo.pyproj or from foo.pyproj.user, and make it clear that the changes here will be saved to foo.pyproj.user .

  2. locked and limited conversation to collaborators on Feb 2, 2023
  3. converted this issue into a discussion #7373 on Feb 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions