mlem icon indicating copy to clipboard operation
mlem copied to clipboard

`build` fails if MLEM was installed with `pip install .`

Open aguschin opened this issue 3 years ago • 0 comments

The same works if MLEM was installed by pip install -e . Reproducing:

$ git clone https://github.com/iterative/mlem
$ cd mlem
$ pip install .

$ mlem --tb build docker -m ../mlem/emoji/lyrics2emoji --image.name lyrics2emoji --image.tag v1
⏳️ Loading model from ../mlem/emoji/lyrics2emoji.mlem
2022-12-28 16:25:10,893 [WARNING] mlem.utils.module: Fail to determine package name for module 'spacy', using module name instead. If that's incorrect, fix metadata manually, either in `.mlem` file or in your MLEM Python object.
🛠 Building MLEM wheel file...
ERROR: Directory '.' is not installable. Neither 'setup.py' nor 'pyproject.toml' found.
WARNING: You are using pip version 21.1.1; however, version 22.3.1 is available.
You should consider upgrading via the '/Users/aguschin/Git/iterative/mlem-fly/.venv/bin/python -m pip install --upgrade pip' command.
Traceback (most recent call last):
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/bin/mlem", line 8, in <module>
    sys.exit(app())
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/typer/main.py", line 328, in __call__
    raise e
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/typer/main.py", line 311, in __call__
    return get_command(self)(*args, **kwargs)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/typer/core.py", line 778, in main
    return _main(
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/typer/core.py", line 216, in _main
    rv = self.invoke(ctx)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/cli/main.py", line 174, in invoke
    return super().invoke(ctx)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/typer/main.py", line 683, in wrapper
    return callback(**use_params)  # type: ignore
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/cli/main.py", line 475, in inner
    f(*iargs, **ikwargs)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/cli/build.py", line 88, in build_type
    build(
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/telemetry.py", line 50, in inner
    return f(*args, **kwargs)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/api/commands.py", line 333, in build
    return builder.build(model)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/contrib/docker/base.py", line 560, in build
    DockerDirBuilder(
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/contrib/docker/base.py", line 537, in build
    docker_dir.write_distribution()
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/contrib/docker/context.py", line 300, in write_distribution
    self.write_mlem_source()
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/contrib/docker/context.py", line 391, in write_mlem_source
    source.build(self.path)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/contrib/docker/context.py", line 88, in build
    self._new_whl(path)
  File "/Users/aguschin/Git/iterative/mlem-fly/.venv/lib/python3.9/site-packages/mlem/contrib/docker/context.py", line 96, in _new_whl
    subprocess.check_output(
  File "/Users/aguschin/.pyenv/versions/3.9.5/lib/python3.9/subprocess.py", line 424, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "/Users/aguschin/.pyenv/versions/3.9.5/lib/python3.9/subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command 'pip wheel . --no-deps -w /var/folders/tv/l60j0x050p536g3bh8g2w1n80000gn/T/tmpl41wg2gk' returned non-zero exit status 1.

aguschin avatar Dec 28 '22 10:12 aguschin