@@ -125,11 +125,13 @@ creation according to their needs, the :class:`EnvBuilder` class.
125125 :meth: `create_configuration `, :meth: `setup_python `,
126126 :meth: `setup_scripts ` and :meth: `post_setup ` can be overridden.
127127
128- .. method :: create_directories (env_dir)
128+ .. method :: ensure_directories (env_dir)
129129
130130 Creates the environment directory and all necessary directories, and
131131 returns a context object. This is just a holder for attributes (such as
132- paths), for use by the other methods.
132+ paths), for use by the other methods. The directories are allowed to
133+ exist already, as long as either ``clear `` or ``upgrade `` were
134+ specified to allow operating on an existing environment directory.
133135
134136 .. method :: create_configuration(context)
135137
@@ -138,7 +140,10 @@ creation according to their needs, the :class:`EnvBuilder` class.
138140 .. method :: setup_python(context)
139141
140142 Creates a copy of the Python executable (and, under Windows, DLLs) in
141- the environment.
143+ the environment. On a POSIX system, if a specific executable
144+ ``python3.x `` was used, symlinks to ``python `` and ``python3 `` will be
145+ created pointing to that executable, unless files with those names
146+ already exist.
142147
143148 .. method :: setup_scripts(context)
144149
@@ -175,6 +180,8 @@ creation according to their needs, the :class:`EnvBuilder` class.
175180 * ``__VENV_PYTHON__ `` is replaced with the absolute path of the
176181 environment's executable.
177182
183+ The directories are allowed to exist (for when an existing environment
184+ is being upgraded).
178185
179186There is also a module-level convenience function:
180187
0 commit comments