@anysphere/file-service 0.0.0-d50aa568 → 0.0.0-da91e36e

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.
Files changed (2) hide show
  1. package/package.json +8 -8
  2. package/src/lib.rs +35 -21
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anysphere/file-service",
3
- "version": "0.0.0-d50aa568",
3
+ "version": "0.0.0-da91e36e",
4
4
  "main": "index.js",
5
5
  "types": "index.d.ts",
6
6
  "napi": {
@@ -36,12 +36,12 @@
36
36
  "version": "napi version"
37
37
  },
38
38
  "optionalDependencies": {
39
- "@anysphere/file-service-win32-x64-msvc": "0.0.0-d50aa568",
40
- "@anysphere/file-service-darwin-x64": "0.0.0-d50aa568",
41
- "@anysphere/file-service-linux-x64-gnu": "0.0.0-d50aa568",
42
- "@anysphere/file-service-darwin-arm64": "0.0.0-d50aa568",
43
- "@anysphere/file-service-win32-arm64-msvc": "0.0.0-d50aa568",
44
- "@anysphere/file-service-darwin-universal": "0.0.0-d50aa568",
45
- "@anysphere/file-service-linux-arm64-gnu": "0.0.0-d50aa568"
39
+ "@anysphere/file-service-win32-x64-msvc": "0.0.0-da91e36e",
40
+ "@anysphere/file-service-darwin-x64": "0.0.0-da91e36e",
41
+ "@anysphere/file-service-linux-x64-gnu": "0.0.0-da91e36e",
42
+ "@anysphere/file-service-darwin-arm64": "0.0.0-da91e36e",
43
+ "@anysphere/file-service-win32-arm64-msvc": "0.0.0-da91e36e",
44
+ "@anysphere/file-service-darwin-universal": "0.0.0-da91e36e",
45
+ "@anysphere/file-service-linux-arm64-gnu": "0.0.0-da91e36e"
46
46
  }
47
47
  }
package/src/lib.rs CHANGED
@@ -4,7 +4,7 @@
4
4
  pub mod file_utils;
5
5
  pub mod merkle_tree;
6
6
 
7
- use std::{vec, collections::HashSet};
7
+ use std::{collections::HashSet, vec};
8
8
 
9
9
  use anyhow::Context;
10
10
  use merkle_tree::{LocalConstruction, MerkleTree};
@@ -19,22 +19,27 @@ extern crate napi_derive;
19
19
  pub struct MerkleClient {
20
20
  tree: MerkleTree,
21
21
  absolute_root_directory: String,
22
- _guard: tracing_appender::non_blocking::WorkerGuard,
22
+ _guard: Option<tracing_appender::non_blocking::WorkerGuard>,
23
23
  }
24
24
 
25
- pub fn init_logger() -> tracing_appender::non_blocking::WorkerGuard {
26
- let file_appender =
27
- RollingFileAppender::new(Rotation::NEVER, "./", "rust_log.txt");
28
- let (non_blocking, _guard) = tracing_appender::non_blocking(file_appender);
29
- let subscriber = fmt::Subscriber::builder()
30
- .with_max_level(Level::TRACE)
31
- .with_writer(non_blocking)
32
- .with_ansi(false)
33
- .with_line_number(true)
34
- .finish();
35
-
36
- let _ = tracing::subscriber::set_global_default(subscriber);
37
-
25
+ pub fn init_logger() -> Option<tracing_appender::non_blocking::WorkerGuard> {
26
+ #[cfg(feature = "debugfile")]
27
+ let _guard = {
28
+ let file_appender =
29
+ RollingFileAppender::new(Rotation::NEVER, "./", "rust_log.txt");
30
+ let (non_blocking, _guard) = tracing_appender::non_blocking(file_appender);
31
+ let subscriber = fmt::Subscriber::builder()
32
+ .with_max_level(Level::TRACE)
33
+ .with_writer(non_blocking)
34
+ .with_ansi(false)
35
+ .with_line_number(true)
36
+ .finish();
37
+
38
+ let _ = tracing::subscriber::set_global_default(subscriber);
39
+ _guard
40
+ };
41
+ #[cfg(not(feature = "debugfile"))]
42
+ let _guard = { None };
38
43
  _guard
39
44
  }
40
45
 
@@ -62,13 +67,19 @@ impl MerkleClient {
62
67
  }
63
68
 
64
69
  #[napi]
65
- pub async unsafe fn init(&mut self, git_ignored_files: Vec<String>, is_git_repo: bool) -> Result<(), napi::Error> {
70
+ pub async unsafe fn init(
71
+ &mut self,
72
+ git_ignored_files: Vec<String>,
73
+ is_git_repo: bool,
74
+ ) -> Result<(), napi::Error> {
66
75
  // 1. compute the merkle tree
67
76
  // 2. update the backend
68
77
  // 3. sync with the remote
69
78
  info!("Merkle tree compute started!");
70
79
  unsafe {
71
- self.compute_merkle_tree(git_ignored_files, is_git_repo).await?;
80
+ self
81
+ .compute_merkle_tree(git_ignored_files, is_git_repo)
82
+ .await?;
72
83
  }
73
84
 
74
85
  Ok(())
@@ -82,14 +93,17 @@ impl MerkleClient {
82
93
  pub async unsafe fn compute_merkle_tree(
83
94
  &mut self,
84
95
  git_ignored_files: Vec<String>,
85
- is_git_repo: bool
96
+ is_git_repo: bool,
86
97
  ) -> Result<(), napi::Error> {
87
98
  // make the git ignored files into a hash set
88
99
  let git_ignored_set = HashSet::from_iter(git_ignored_files.into_iter());
89
100
 
90
- let t =
91
- MerkleTree::construct_merkle_tree(self.absolute_root_directory.clone(), git_ignored_set, is_git_repo)
92
- .await;
101
+ let t = MerkleTree::construct_merkle_tree(
102
+ self.absolute_root_directory.clone(),
103
+ git_ignored_set,
104
+ is_git_repo,
105
+ )
106
+ .await;
93
107
 
94
108
  match t {
95
109
  Ok(tree) => {