Issue #378 resolved

quickinstall.py fails on windows

Roger Haase
created an issue

1 Virtual-env under Windows creates a Scripts folder, not a bin folder. Lines ~44 and ~55 yield a traceback unless they are changed to:

    os.path.join(self.dir_venv, 'Scripts', 'pip'),

2a The ending success message needs work:

    Succesfully created or updated venv
      C:\Bitbucket\venv-xxxx-python.exe
    You can run MoinMoin as
      C:\Bitbucket\venv-xxxx-python.exe/bin/moin

last line should be:

    C:\Bitbucket\venv-xxxx-python.exe\Scripts\moin

2b A folder name ending in python.exe is odd. Something like <repo-name> + "-env" would result in file managers displaying the names adjacent to each other.

2c The "You can run MoinMoin as" is misleading as the next step will usually be to build a wiki and maybe load data.

2d Is there an advantage to moving the env outside of the repo root?

Comments (9)

  1. Roger Haase reporter

    On second thought, making the virtual env a sibling of the repo root and changing the name based on the name of the repo root causes unnecessary complexities. Writing scripts to reduce keying is easier if the virtual env is a child of the repo root and has a consistent name, like env.

  2. Thomas Waldmann repo owner

    yeah, I see what you mean, but otoh, having the venv inside the workdir also causes issues, e.g. you always have to care for excluded, e.g. for search or code inspections, otherwise tools will search/inspect a lot of non-project code.

  3. Roger Haase reporter

    Well, the default venv name is not easy to remember. And it would be nice if the starting characters were the same as the repo root so file managers would normally display the repo root and the venv as adjacent siblings. That way a novice user has a chance of discovering the two are related.

    As a compromise, maybe quickinstall.py could create some easy to remember command files in the repo root to reduce keying. For Windows:

    moin.bat

    \path\to\env\Scripts\moin.exe %*
    

    activate.bat

    call \path\to\env\Scripts\activate.bat
    

    deactivate.bat

    call \path\to\env\deactivate.bat
    

    The above could be used within larger scripts to create or load backups, run tests, create docs, etc.

  4. Log in to comment