Skip to content

Commit b8cd416

Browse files
committed
publish
1 parent 6c6c632 commit b8cd416

File tree

4 files changed

+32
-18
lines changed

4 files changed

+32
-18
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
# 8.1
2+
3+
- The `create` and `recreate` commands show more detailed information about the created
4+
virtual environment
5+
16
# 8.0
27

38
- The `call` command now supports the `-m` option, that runs the file as a module.

vien/_constants.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
__version__ = "8.0.6"
1+
__version__ = "8.1.0"
22
__copyright__ = "(c) 2020-2021 Artëm IG <github.com/rtmigo>"
33
__license__ = "BSD-3-Clause"

vien/_exceptions.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,15 @@ def __init__(self, exit_code: int):
2222

2323
class VenvExistsExit(VienExit):
2424
def __init__(self, path: Path):
25-
super().__init__(f'Virtual environment "{path}" already exists.')
25+
super().__init__(
26+
f'Virtual environment "{path}" already exists.')
2627

2728

2829
class VenvDoesNotExistExit(VienExit):
2930
def __init__(self, path: Path):
30-
super().__init__(f'Virtual environment "{path}" does not exist.\n'
31-
f'You can create it with "vien create".')
31+
super().__init__(
32+
f'Virtual environment "{path}" does not exist.\n'
33+
f'Run "vien create" to create it.')
3234

3335

3436
class PyFileNotFoundExit(VienExit):

vien/_main.py

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -137,21 +137,28 @@ def arg_to_python_interpreter(argument: Optional[str]) -> str:
137137
return exe
138138

139139

140-
def main_create(venv_dir: Path, interpreter: Optional[str]):
141-
if venv_dir.exists():
142-
raise VenvExistsExit(venv_dir)
140+
def main_create(dirs: Dirs, interpreter: Optional[str]):
141+
if dirs.venv_dir.exists():
142+
raise VenvExistsExit(dirs.venv_dir)
143143

144144
exe = arg_to_python_interpreter(interpreter)
145145

146-
print(f"Creating {venv_dir}")
146+
print(f"Creating {dirs.venv_dir}")
147147

148-
result = subprocess.run([exe, "-m", "venv", str(venv_dir)])
148+
result = subprocess.run([exe, "-m", "venv", str(dirs.venv_dir)])
149149
if result.returncode == 0:
150150
print()
151-
print("The Python executable:")
152-
print(str(venv_dir_to_python_exe(venv_dir)))
151+
print("PROJECT DIR (unmodified)")
152+
print(f" {dirs.project_dir}")
153+
print()
154+
# (for projects named '{os.path.basename(dirs.project_dir)}')
155+
print(f"VIRTUAL ENVIRONMENT (created)")
156+
print(f" {dirs.venv_dir}")
157+
print()
158+
print("PYTHON EXECUTABLE (virtual)")
159+
print(f" {venv_dir_to_python_exe(dirs.venv_dir)}")
153160
else:
154-
raise FailedToCreateVenvExit(venv_dir)
161+
raise FailedToCreateVenvExit(dirs.venv_dir)
155162

156163

157164
def main_delete(venv_dir: Path):
@@ -180,10 +187,10 @@ def main_delete(venv_dir: Path):
180187
shutil.rmtree(str(venv_dir))
181188

182189

183-
def main_recreate(venv_dir: Path, interpreter: Optional[str]):
184-
if venv_dir.exists():
185-
main_delete(venv_dir)
186-
main_create(venv_dir=venv_dir, interpreter=interpreter)
190+
def main_recreate(dirs: Dirs, interpreter: Optional[str]):
191+
if dirs.venv_dir.exists():
192+
main_delete(dirs.venv_dir)
193+
main_create(dirs, interpreter=interpreter)
187194

188195

189196
def guess_bash_ps1():
@@ -460,9 +467,9 @@ def main_entry_point(args: Optional[List[str]] = None):
460467
dirs = Dirs(project_dir=get_project_dir(parsed))
461468

462469
if parsed.command == Commands.create:
463-
main_create(dirs.venv_dir, parsed.python_executable)
470+
main_create(dirs, parsed.python_executable)
464471
elif parsed.command == Commands.recreate:
465-
main_recreate(dirs.venv_dir,
472+
main_recreate(dirs,
466473
parsed.python_executable) # todo .existing()?
467474
elif parsed.command == Commands.delete: # todo move 'existing' check from func?
468475
main_delete(dirs.venv_dir)

0 commit comments

Comments
 (0)