solstone-linux 0.3.0__tar.gz → 0.3.1__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.
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/CHANGELOG.md +6 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/PKG-INFO +1 -1
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/pyproject.toml +1 -1
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/__init__.py +1 -1
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/chat_bridge.py +1 -1
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_chat_bridge.py +26 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/.gitignore +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/AGENTS.md +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/CLAUDE.md +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/INSTALL.md +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/LICENSE +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/Makefile +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/README.md +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/contrib/icons/hicolor/scalable/status/solstone-error.svg +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/contrib/icons/hicolor/scalable/status/solstone-paused.svg +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/contrib/icons/hicolor/scalable/status/solstone-recording.svg +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/contrib/icons/hicolor/scalable/status/solstone-syncing.svg +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/scripts/extract_changelog.sh +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/scripts/release.sh +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/activity.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/audio_detect.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/audio_mute.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/audio_recorder.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/cli.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/config.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/dbus_service.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/dbusmenu.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/doctor.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/icons/hicolor/scalable/status/solstone-error.svg +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/icons/hicolor/scalable/status/solstone-paused.svg +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/icons/hicolor/scalable/status/solstone-recording.svg +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/icons/hicolor/scalable/status/solstone-syncing.svg +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/install_guard.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/monitor_positions.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/observer.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/recovery.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/screencast.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/session_env.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/sni.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/solstone-linux.service.in +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/streams.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/sync.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/tray.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/src/solstone_linux/upload.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/__init__.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_activity.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_cli.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_config.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_dbus_service.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_dbusmenu.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_doctor.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_extract_changelog.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_install_guard.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_monitor_positions.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_observer.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_observer_emits_stream_silent_event.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_screencast.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_screencast_stop_filters_silent_streams.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_session_env.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_streams.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_sync.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_tray.py +0 -0
- {solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_upload.py +0 -0
|
@@ -4,6 +4,12 @@ All notable changes to solstone-linux are documented here.
|
|
|
4
4
|
The format is based on Keep a Changelog (https://keepachangelog.com/),
|
|
5
5
|
and this project adheres to Semantic Versioning.
|
|
6
6
|
|
|
7
|
+
## [0.3.1] - 2026-06-15
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
- chat notifications now use the journal's current callosum connection path,
|
|
11
|
+
with the observer key still sent in the authorization header.
|
|
12
|
+
|
|
7
13
|
## [0.3.0] - 2026-06-14
|
|
8
14
|
|
|
9
15
|
setup is now zero-config: the observer connects to your journal automatically,
|
|
@@ -392,7 +392,7 @@ async def run_chat_bridge(config: Config, stop_event: asyncio.Event) -> None:
|
|
|
392
392
|
|
|
393
393
|
server_url = config.server_url.rstrip("/")
|
|
394
394
|
key = config.key
|
|
395
|
-
sse_url = f"{server_url}/app/observer/
|
|
395
|
+
sse_url = f"{server_url}/app/observer/callosum"
|
|
396
396
|
pending: OrderedDict[str, PendingRequest] = OrderedDict()
|
|
397
397
|
opt_in_state = {"value": False}
|
|
398
398
|
opt_in_task = asyncio.create_task(
|
|
@@ -538,6 +538,32 @@ async def test_chat_bridge_enabled_false_no_sse_attempt():
|
|
|
538
538
|
get.assert_not_called()
|
|
539
539
|
|
|
540
540
|
|
|
541
|
+
@pytest.mark.asyncio
|
|
542
|
+
async def test_chat_bridge_uses_keyless_callosum_url_with_bearer():
|
|
543
|
+
stop_event = asyncio.Event()
|
|
544
|
+
seen = {}
|
|
545
|
+
|
|
546
|
+
def worker(url, key, queue, loop, thread_stop):
|
|
547
|
+
seen["url"] = url
|
|
548
|
+
seen["key"] = key
|
|
549
|
+
loop.call_soon_threadsafe(
|
|
550
|
+
queue.put_nowait, {"_transport_error": True, "error": "stop"}
|
|
551
|
+
)
|
|
552
|
+
|
|
553
|
+
async def fake_sleep(_delay):
|
|
554
|
+
stop_event.set()
|
|
555
|
+
|
|
556
|
+
with patch("solstone_linux.chat_bridge._sse_worker", new=worker):
|
|
557
|
+
with patch("solstone_linux.chat_bridge._opt_in_poll_loop", new=_never_poll):
|
|
558
|
+
with patch("solstone_linux.chat_bridge.asyncio.sleep", new=fake_sleep):
|
|
559
|
+
await run_chat_bridge(_config(), stop_event)
|
|
560
|
+
|
|
561
|
+
assert seen == {
|
|
562
|
+
"url": "https://server.test/app/observer/callosum",
|
|
563
|
+
"key": "key-123",
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
|
|
541
567
|
def test_observer_bridge_task_none_when_disabled():
|
|
542
568
|
import inspect
|
|
543
569
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_observer_emits_stream_silent_event.py
RENAMED
|
File without changes
|
|
File without changes
|
{solstone_linux-0.3.0 → solstone_linux-0.3.1}/tests/test_screencast_stop_filters_silent_streams.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|