@ai-ecoverse/slicc-kernel 1.170.1 → 1.170.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7513,7 +7513,7 @@ var init_version = __esm({
7513
7513
  "src/version.ts"() {
7514
7514
  "use strict";
7515
7515
  init_captured_globals();
7516
- KERNEL_VERSION = true ? "1.170.1" : "0.0.0-dev";
7516
+ KERNEL_VERSION = true ? "1.170.2" : "0.0.0-dev";
7517
7517
  OS_RELEASE = "6.0.0-slicc";
7518
7518
  }
7519
7519
  });
@@ -7512,7 +7512,7 @@ var init_version = __esm({
7512
7512
  "src/version.ts"() {
7513
7513
  "use strict";
7514
7514
  init_captured_globals();
7515
- KERNEL_VERSION = true ? "1.170.1" : "0.0.0-dev";
7515
+ KERNEL_VERSION = true ? "1.170.2" : "0.0.0-dev";
7516
7516
  OS_RELEASE = "6.0.0-slicc";
7517
7517
  }
7518
7518
  });
package/dist/node.js CHANGED
@@ -3695,7 +3695,7 @@ function satisfies(version, range2) {
3695
3695
  }
3696
3696
 
3697
3697
  // src/version.ts
3698
- var KERNEL_VERSION = true ? "1.170.1" : "0.0.0-dev";
3698
+ var KERNEL_VERSION = true ? "1.170.2" : "0.0.0-dev";
3699
3699
  var OS_RELEASE = "6.0.0-slicc";
3700
3700
  function procVersion() {
3701
3701
  return `Linux version ${OS_RELEASE} (slicc-kernel ${KERNEL_VERSION}) #1 SMP PREEMPT_DYNAMIC
@@ -4975,7 +4975,8 @@ var UnlinkedKeeper = class {
4975
4975
  if (at !== void 0 || !await this.present(path)) return at;
4976
4976
  throw fsError("EBUSY", `${path}: open, and it could not be kept aside`);
4977
4977
  }
4978
- present(path) {
4978
+ async present(path) {
4979
+ if (await this.fs.commandTarget?.(path)) return false;
4979
4980
  return this.fs.lstat(path).then(
4980
4981
  () => true,
4981
4982
  (err) => err?.code !== "ENOENT" && err?.code !== "ENOTDIR"
@@ -7847,8 +7848,9 @@ var FsWatchers = class {
7847
7848
  this.report(paths);
7848
7849
  this.emit("change", paths);
7849
7850
  }
7850
- report(paths) {
7851
+ report(paths, notify = true) {
7851
7852
  for (const tap of this.taps) tap(paths);
7853
+ if (!notify) return;
7852
7854
  for (const watcher of this.watchers) {
7853
7855
  for (const path of paths) {
7854
7856
  const changed = normalizePath(path);
@@ -7867,16 +7869,16 @@ var FsWatchers = class {
7867
7869
  watcher.notify(paths.length > WATCH_BATCH_LIMIT ? { overflow: true } : { paths });
7868
7870
  }
7869
7871
  wrap(fs) {
7870
- const after = (run2, changed, type) => async (...args) => {
7871
- let done4 = false;
7872
+ const after = (run2, changed, type, partly = () => false) => async (...args) => {
7872
7873
  try {
7873
7874
  await run2(...args);
7874
- done4 = true;
7875
- } finally {
7876
- const paths = changed(...args);
7877
- this.report(paths);
7878
- if (done4) this.emit(type, paths);
7875
+ } catch (err) {
7876
+ this.report(changed(...args), partly(err, ...args));
7877
+ throw err;
7879
7878
  }
7879
+ const paths = changed(...args);
7880
+ this.report(paths);
7881
+ this.emit(type, paths);
7880
7882
  };
7881
7883
  const reals = this.reals;
7882
7884
  const realOf = async (path) => {
@@ -7918,6 +7920,12 @@ var FsWatchers = class {
7918
7920
  this.reshaped();
7919
7921
  }
7920
7922
  };
7923
+ const removing = after(
7924
+ fs.rm.bind(fs),
7925
+ (path) => [path],
7926
+ "rename",
7927
+ (err, _path, options) => options?.recursive === true && err?.code !== "ENOENT"
7928
+ );
7921
7929
  const overrides = {
7922
7930
  writeFile: content(fs.writeFile.bind(fs), overwritten),
7923
7931
  ...fs.createExclusive ? { createExclusive: content(fs.createExclusive.bind(fs), () => ["rename"]) } : {},
@@ -7946,14 +7954,20 @@ var FsWatchers = class {
7946
7954
  if (done4) this.emit("rename", fresh3 ? [...created4, path] : created4);
7947
7955
  }
7948
7956
  },
7949
- rm: reshaping(after(fs.rm.bind(fs), (path) => [path], "rename")),
7957
+ rm: reshaping(async (path, options) => {
7958
+ const absent2 = options?.force === true && await fs.lstat(path).then(
7959
+ () => false,
7960
+ () => true
7961
+ );
7962
+ return absent2 ? fs.rm(path, options) : removing(path, options);
7963
+ }),
7950
7964
  rename: reshaping(async (from, to) => {
7951
7965
  let done4 = false;
7952
7966
  try {
7953
7967
  await fs.rename(from, to);
7954
7968
  done4 = true;
7955
7969
  } finally {
7956
- this.report([from, to]);
7970
+ this.report([from, to], done4);
7957
7971
  if (done4) this.renamed(from, to);
7958
7972
  }
7959
7973
  }),