Make the package.json file in Review Board the primary dependency source.
Review Request #12802 — Created Jan. 23, 2023 and submitted — Latest diff uploaded
We used to depend fully on Djblets's
djblets/dependencies.py
for the
list of Node.js packages to install, since we just made use of the basic
static media tooling in Djblets.This change makes Review Board's
package.json
a primary source of
dependencies. Right now, we just depend on Djblets (via the.djblets
symlink set up when setting up a development environment), setting it up
as a Node workspace to make full use of symlinks. Upcoming changes will
move more dependencies into this.This
package.json
lives inreviewboard/
, making it available to
consumers of published packages. We then symlnk to the root of the tree.These dependencies are reflected into
reviewboard/dependencies.py
via
a new script that is run any time we runnpm install --save
or
npm uninstall --save
(if that operation would updatenode_modules
).This way, it should be easier to ensure that we have the right
dependencies in the tree for building static media, looking up types, or
linting the files.
Erased
node_modules
and re-ransetup.py develop
. Verified I got a
working tree, which I was able to use to compile a new package, and
could use with upcoming changes that make deeper use of these
dependencies.Ran
npm install --save ...
anduninstall --save ...
and verified
thatreviewboard/dependencies.py
was updated.