publish-to-git icon indicating copy to clipboard operation
publish-to-git copied to clipboard

Having a 'prepare' script causes trouble

Open Treora opened this issue 5 years ago • 2 comments

If the package.json file defines a prepare script (e.g. to transpile source code), this will be correctly executed while packing and publishing. However, it will again be executed by the consumer that tries to install the package, which then most likely fails. In the npm docs:

prepare: Run both BEFORE the package is packed and published, on local npm install without any arguments, and when installing git dependencies

As a simple workaround, a publish-to-git user could use prepublish instead of prepare, which is almost the same except it is not executed when installing from a git dependency.

Perhaps publish-to-git could automatically remove the prepare script from package.json, or rename it to prepublish, or simply throw a warning when it is present.

Treora avatar Mar 17 '20 00:03 Treora

publish-to-git is not by itself using any prepublish and/or prepare. It's using npm pack see here https://github.com/Rush/publish-to-git/blob/master/index.js#L45

Rush avatar Apr 18 '20 17:04 Rush

I don't feel npm publish should mess up with somebody's package json ... the design of this package is to be as least invasive as possible.

Rush avatar Apr 18 '20 17:04 Rush