I have a library that sometimes expects to be used in a Bazel build, but can also be used in a regular JS project built using npm. One utility function attempts to locate files, using @bazel/runfiles if it can't find the files the regular way.
When used in the regular npm project, the line const { runfiles } = require('@bazel/runfiles') throws an exception. I would expect the check to be done when the resolve function is called, allowing @bazel/runfiles to be used as a regular library in a normal JS project.
Version
Bazel 7.2.1.
Runfiles 5.8.1
How to reproduce
Load `const { runfiles } = require('@bazel/runfiles')` in a regular project
What happened?
I have a library that sometimes expects to be used in a Bazel build, but can also be used in a regular JS project built using
npm
. One utility function attempts to locate files, using@bazel/runfiles
if it can't find the files the regular way.When used in the regular
npm
project, the lineconst { runfiles } = require('@bazel/runfiles')
throws an exception. I would expect the check to be done when theresolve
function is called, allowing@bazel/runfiles
to be used as a regular library in a normal JS project.Version
Bazel 7.2.1. Runfiles 5.8.1
How to reproduce
Any other information?
No response