bearcli 1.7.2__tar.gz → 1.7.3__tar.gz

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.

Potentially problematic release.


This version of bearcli might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bearcli
3
- Version: 1.7.2
3
+ Version: 1.7.3
4
4
  Summary: The missing open-source CLI for Bear notes - read, search, export, and manage your notes from the terminal
5
5
  Keywords: bear,notes,cli,markdown,macos
6
6
  Author: Michel Tricot
@@ -12,7 +12,7 @@ Classifier: Environment :: Console
12
12
  Classifier: Operating System :: MacOS
13
13
  Classifier: Programming Language :: Python :: 3.13
14
14
  Classifier: Topic :: Utilities
15
- Requires-Dist: bearkit==1.7.2
15
+ Requires-Dist: bearkit==1.7.3
16
16
  Requires-Dist: fastmcp>=3.4.5
17
17
  Requires-Dist: textual>=8.2.8
18
18
  Requires-Dist: typer>=0.27.0
@@ -58,6 +58,26 @@ brew install michel-tricot/tap/bearcli # or: uv tool install bearcli, pipx ins
58
58
 
59
59
  Or from a clone: `uv sync`, then `uv run bearcli --help`.
60
60
 
61
+ ### Troubleshooting
62
+
63
+ The `bearcli` command can conflict with Bear's official CLI if both are
64
+ installed — `which -a bearcli` shows which one your shell picks. To make
65
+ this CLI take precedence, put its install directory first in your PATH:
66
+
67
+ ```sh
68
+ # in your ~/.zshrc or ~/.bashrc
69
+ export PATH="$(brew --prefix)/bin:$PATH" # brew install
70
+ export PATH="$HOME/.local/bin:$PATH" # uv tool or pipx install
71
+ ```
72
+
73
+ MCP configs are immune to the conflict: `bearcli mcp install` writes the
74
+ absolute path of the very binary it is run from. If `bearcli` itself
75
+ reaches the wrong tool, call ours by its full path once:
76
+
77
+ ```sh
78
+ "$(brew --prefix)/bin/bearcli" mcp install # or: ~/.local/bin/bearcli
79
+ ```
80
+
61
81
  ## Quick start
62
82
 
63
83
  ```sh
@@ -34,6 +34,26 @@ brew install michel-tricot/tap/bearcli # or: uv tool install bearcli, pipx ins
34
34
 
35
35
  Or from a clone: `uv sync`, then `uv run bearcli --help`.
36
36
 
37
+ ### Troubleshooting
38
+
39
+ The `bearcli` command can conflict with Bear's official CLI if both are
40
+ installed — `which -a bearcli` shows which one your shell picks. To make
41
+ this CLI take precedence, put its install directory first in your PATH:
42
+
43
+ ```sh
44
+ # in your ~/.zshrc or ~/.bashrc
45
+ export PATH="$(brew --prefix)/bin:$PATH" # brew install
46
+ export PATH="$HOME/.local/bin:$PATH" # uv tool or pipx install
47
+ ```
48
+
49
+ MCP configs are immune to the conflict: `bearcli mcp install` writes the
50
+ absolute path of the very binary it is run from. If `bearcli` itself
51
+ reaches the wrong tool, call ours by its full path once:
52
+
53
+ ```sh
54
+ "$(brew --prefix)/bin/bearcli" mcp install # or: ~/.local/bin/bearcli
55
+ ```
56
+
37
57
  ## Quick start
38
58
 
39
59
  ```sh
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "bearcli"
3
- version = "1.7.2"
3
+ version = "1.7.3"
4
4
  description = "The missing open-source CLI for Bear notes - read, search, export, and manage your notes from the terminal"
5
5
  readme = "README.md"
6
6
  keywords = ["bear", "notes", "cli", "markdown", "macos"]
@@ -18,7 +18,7 @@ license = "MIT"
18
18
  license-files = ["LICENSE"]
19
19
  requires-python = ">=3.13"
20
20
  dependencies = [
21
- "bearkit==1.7.2",
21
+ "bearkit==1.7.3",
22
22
  "fastmcp>=3.4.5",
23
23
  "textual>=8.2.8",
24
24
  "typer>=0.27.0",
@@ -28,7 +28,13 @@ def run(
28
28
 
29
29
 
30
30
  def _bearcli_command() -> str:
31
- return shutil.which("bearcli") or sys.argv[0] or "bearcli"
31
+ # Prefer the binary we are running from: a PATH lookup could find Bear's
32
+ # official CLI, which shadows ours under the same name. absolute() (not
33
+ # resolve()) keeps brew's stable bin/ symlink out of the versioned Cellar.
34
+ exe = Path(sys.argv[0])
35
+ if exe.name == "bearcli" and exe.is_file():
36
+ return str(exe.absolute())
37
+ return shutil.which("bearcli") or "bearcli"
32
38
 
33
39
 
34
40
  @dataclass(frozen=True)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes