LinbuduLab / esbuild-plugins

ESBuild plugins by @LinbuduLab
MIT License
115 stars 18 forks source link

Support watch mode when running esbuild via js #112

Open oddnugget opened 4 months ago

oddnugget commented 4 months ago

Currently, watch: true on this plugin states that it needs build({wach: true}) however watch: true is not an option when using the js api. instead one must do:

  esbuild
    .context(opts)
    .then((ctx) => {
      ctx.watch();
    })

however when doing it this way the plugin complains that watch is not true

jerrychan7 commented 2 months ago

This is an incompatibility caused by esbuild version upgrade (>= 0.17). If the context API is used, the watch mode will be difficult to identify, and a new identification logic that does not rely on build.initialOptions.watch is required. See also https://github.com/evanw/esbuild/issues/2823

fridaystreet commented 1 week ago

+1 for this to be fixed.

Could it just be a simple flag in the mean time or just don't do the check? I mean if we use our own method to set watch to true/false, is there any reason it needs to second guess what we want by checking esbuild config as well?