remove uses of "npm bin"
This was removed from recent Node versions. Using 'npx' is the new way and should resolve this issue. I suppose we might run into someone who had a non-working npx and it breaks, but we'll cross that bridge when we come to it; it works in my testing and there are people broken in the current version.
This commit is contained in:
parent
650b21a03d
commit
553c175eb5
16
tzk/tw.py
16
tzk/tw.py
@ -7,20 +7,10 @@ import subprocess
|
|||||||
from textwrap import dedent
|
from textwrap import dedent
|
||||||
from typing import Callable, Optional, Sequence
|
from typing import Callable, Optional, Sequence
|
||||||
|
|
||||||
from tzk import config
|
|
||||||
from tzk import git
|
from tzk import git
|
||||||
from tzk.util import pushd
|
from tzk.util import pushd
|
||||||
|
|
||||||
|
|
||||||
@functools.lru_cache(1)
|
|
||||||
def _npm_bin() -> str:
|
|
||||||
return subprocess.check_output(("npm", "bin"), text=True).strip()
|
|
||||||
|
|
||||||
|
|
||||||
def _tw_path() -> str:
|
|
||||||
return _npm_bin() + "/tiddlywiki"
|
|
||||||
|
|
||||||
|
|
||||||
@functools.lru_cache(1)
|
@functools.lru_cache(1)
|
||||||
def _whoami() -> str:
|
def _whoami() -> str:
|
||||||
"Try to guess the user's name."
|
"Try to guess the user's name."
|
||||||
@ -47,9 +37,9 @@ def exec(args: Sequence[Sequence[str]], base_wiki_folder: str = None) -> int:
|
|||||||
# must pushd into base wiki to find the tiddlywiki node_modules
|
# must pushd into base wiki to find the tiddlywiki node_modules
|
||||||
if base_wiki_folder is not None:
|
if base_wiki_folder is not None:
|
||||||
with pushd(base_wiki_folder):
|
with pushd(base_wiki_folder):
|
||||||
call_args = [_tw_path()]
|
call_args = ["npx", "tiddlywiki"]
|
||||||
else:
|
else:
|
||||||
call_args = [_tw_path()]
|
call_args = ["npx", "tiddlywiki"]
|
||||||
|
|
||||||
if base_wiki_folder is not None:
|
if base_wiki_folder is not None:
|
||||||
call_args.append(base_wiki_folder)
|
call_args.append(base_wiki_folder)
|
||||||
@ -114,7 +104,7 @@ def _init_tw(wiki_name: str) -> None:
|
|||||||
old_edition_path = os.environ.get('TIDDLYWIKI_EDITION_PATH')
|
old_edition_path = os.environ.get('TIDDLYWIKI_EDITION_PATH')
|
||||||
os.environ['TIDDLYWIKI_EDITION_PATH'] = str(Path(__file__).parent / "editions")
|
os.environ['TIDDLYWIKI_EDITION_PATH'] = str(Path(__file__).parent / "editions")
|
||||||
try:
|
try:
|
||||||
subprocess.check_call((_tw_path(), "--init", "tzk"))
|
subprocess.check_call(("npx", "tiddlywiki", "--init", "tzk"))
|
||||||
finally:
|
finally:
|
||||||
if old_edition_path:
|
if old_edition_path:
|
||||||
os.environ['TIDDLYWIKI_EDITION_PATH'] = old_edition_path
|
os.environ['TIDDLYWIKI_EDITION_PATH'] = old_edition_path
|
||||||
|
Loading…
Reference in New Issue
Block a user