Need help getting Hatch working after Python Update, so I can fix small extension bug [Solved]

I would like to build and test a 1-line bug fix for my package JPSL_Tools_Menu. However, I am stuck on getting hatch env to work. I am pretty sure that this worked 6 months ago, when I last made a release. I updated my Python version since then so reinstalled Hatch with pipx. The environment build is failing on handling of the pyproject.toml line [tool.hatch.metadata.hooks.nodejs] with an error that seems to boil down to these two problems:

  1. AttributeError: module 'hatchling.build' has no attribute 'prepare_metadata_for_build_editable', which I believe is a pretty generic Hatch failure
  2. hatchling.plugin.exceptions.UnknownPluginError: Unknown metadata hook: nodejs, which seems specific to the line in the pyproject.toml file.

Trying to do this manually within an environment created via pipenv, gave the same error message.

pipenv install -e "." yields an error suggesting a dependency conflict. I have not changed the version requirements in either pyproject.toml nor in package.json. So, if this is actually the problem I assume it is a related to one of the dependencies in the Jupyter suite that I do not control. As this fails at a point where nothing is installed in the environment, I am at a loss to determine where the conflict is. The message does not say. Does anybody have suggestions on how I might go about searching the conflict out?

I am open to suggestions. I have spent more time trouble shooting this than the problem that needed fixing.

The use of pipenv install -e "." gave me the hint I needed. I could not get any more useful messages, but it led me to check back through all changes committed to the local repository since the last release. One of them had some apparently accidental one-digit deletions from version numbers that were not obvious just reading the most recent version of the .toml file. I’m still having trouble getting the package running, but at least the tools to do that are now working.

I need to learn to NOT work on code using a laptop on my lap with a super sensitive track pad :blush:.