From 3f33af62190c2ffc7349b40a687ba63c62b2dd41 Mon Sep 17 00:00:00 2001 From: onyx-and-iris Date: Tue, 6 May 2025 20:36:12 +0100 Subject: [PATCH] write to stderr patch bump --- obsws_cli/__about__.py | 2 +- obsws_cli/record.py | 14 ++++++++------ obsws_cli/scene.py | 6 ++++-- obsws_cli/sceneitem.py | 39 +++++++++++++++++++++++++++------------ obsws_cli/stream.py | 4 ++-- 5 files changed, 42 insertions(+), 23 deletions(-) diff --git a/obsws_cli/__about__.py b/obsws_cli/__about__.py index 1fcd12a..c221bba 100644 --- a/obsws_cli/__about__.py +++ b/obsws_cli/__about__.py @@ -1,4 +1,4 @@ # SPDX-FileCopyrightText: 2025-present onyx-and-iris # # SPDX-License-Identifier: MIT -__version__ = "0.10.1" +__version__ = "0.10.2" diff --git a/obsws_cli/record.py b/obsws_cli/record.py index 0f70c08..7496c42 100644 --- a/obsws_cli/record.py +++ b/obsws_cli/record.py @@ -27,7 +27,7 @@ def start(ctx: typer.Context): if paused: err_msg += ' Try resuming it.' - typer.echo(err_msg) + typer.echo(err_msg, err=True) raise typer.Exit(1) ctx.obj.start_record() @@ -39,7 +39,7 @@ def stop(ctx: typer.Context): """Stop recording.""" active, _ = _get_recording_status(ctx) if not active: - typer.echo('Recording is not in progress, cannot stop.') + typer.echo('Recording is not in progress, cannot stop.', err=True) raise typer.Exit(1) ctx.obj.stop_record() @@ -74,10 +74,10 @@ def resume(ctx: typer.Context): """Resume recording.""" active, paused = _get_recording_status(ctx) if not active: - typer.echo('Recording is not in progress, cannot resume.') + typer.echo('Recording is not in progress, cannot resume.', err=True) raise typer.Exit(1) if not paused: - typer.echo('Recording is in progress but not paused, cannot resume.') + typer.echo('Recording is in progress but not paused, cannot resume.', err=True) raise typer.Exit(1) ctx.obj.resume_record() @@ -89,10 +89,12 @@ def pause(ctx: typer.Context): """Pause recording.""" active, paused = _get_recording_status(ctx) if not active: - typer.echo('Recording is not in progress, cannot pause.') + typer.echo('Recording is not in progress, cannot pause.', err=True) raise typer.Exit(1) if paused: - typer.echo('Recording is in progress but already paused, cannot pause.') + typer.echo( + 'Recording is in progress but already paused, cannot pause.', err=True + ) raise typer.Exit(1) ctx.obj.pause_record() diff --git a/obsws_cli/scene.py b/obsws_cli/scene.py index 1b68eb3..ee9f8b1 100644 --- a/obsws_cli/scene.py +++ b/obsws_cli/scene.py @@ -32,7 +32,7 @@ def current( ): """Get the current program scene or preview scene.""" if preview and not validate.studio_mode_enabled(ctx): - typer.echo('Studio mode is not enabled, cannot get preview scene.') + typer.echo('Studio mode is not enabled, cannot get preview scene.', err=True) raise typer.Exit(1) if preview: @@ -54,7 +54,9 @@ def switch( ): """Switch to a scene.""" if preview and not validate.studio_mode_enabled(ctx): - typer.echo('Studio mode is not enabled, cannot set the preview scene.') + typer.echo( + 'Studio mode is not enabled, cannot set the preview scene.', err=True + ) raise typer.Exit(1) if not validate.scene_in_scenes(ctx, scene_name): diff --git a/obsws_cli/sceneitem.py b/obsws_cli/sceneitem.py index cbea91f..967c630 100644 --- a/obsws_cli/sceneitem.py +++ b/obsws_cli/sceneitem.py @@ -20,7 +20,7 @@ def main(): def list(ctx: typer.Context, scene_name: str): """List all items in a scene.""" if not validate.scene_in_scenes(ctx, scene_name): - typer.echo(f"Scene '{scene_name}' not found.") + typer.echo(f"Scene '{scene_name}' not found.", err=True) typer.Exit(code=1) resp = ctx.obj.get_scene_item_list(scene_name) @@ -40,18 +40,21 @@ def _validate_scene_name_and_item_name( parent: Optional[str] = None, ): if not validate.scene_in_scenes(ctx, scene_name): - typer.echo(f"Scene '{scene_name}' not found.") + typer.echo(f"Scene '{scene_name}' not found.", err=True) raise typer.Exit(code=1) if parent: if not validate.item_in_scene_item_list(ctx, scene_name, parent): typer.echo( - f"Parent group '{parent}' not found in scene '{scene_name}'." + f"Parent group '{parent}' not found in scene '{scene_name}'.", + err=True, ) raise typer.Exit(code=1) else: if not validate.item_in_scene_item_list(ctx, scene_name, item_name): - typer.echo(f"Item '{item_name}' not found in scene '{scene_name}'.") + typer.echo( + f"Item '{item_name}' not found in scene '{scene_name}'.", err=True + ) raise typer.Exit(code=1) return func(ctx, scene_name, item_name, parent) @@ -70,7 +73,7 @@ def _get_scene_name_and_item_id( scene_item_id = item.get('sceneItemId') break else: - typer.echo(f"Item '{item_name}' not found in group '{parent}'.") + typer.echo(f"Item '{item_name}' not found in group '{parent}'.", err=True) raise typer.Exit(code=1) else: resp = ctx.obj.get_scene_item_id(scene_name, item_name) @@ -138,11 +141,15 @@ def toggle( if parent: if not validate.item_in_scene_item_list(ctx, scene_name, parent): - typer.echo(f"Parent group '{parent}' not found in scene '{scene_name}'.") + typer.echo( + f"Parent group '{parent}' not found in scene '{scene_name}'.", err=True + ) raise typer.Exit(code=1) else: if not validate.item_in_scene_item_list(ctx, scene_name, item_name): - typer.echo(f"Item '{item_name}' not found in scene '{scene_name}'.") + typer.echo( + f"Item '{item_name}' not found in scene '{scene_name}'.", err=True + ) raise typer.Exit(code=1) scene_name, scene_item_id = _get_scene_name_and_item_id( @@ -177,11 +184,15 @@ def visible( """Check if an item in a scene is visible.""" if parent: if not validate.item_in_scene_item_list(ctx, scene_name, parent): - typer.echo(f"Parent group '{parent}' not found in scene '{scene_name}'.") + typer.echo( + f"Parent group '{parent}' not found in scene '{scene_name}'.", err=True + ) raise typer.Exit(code=1) else: if not validate.item_in_scene_item_list(ctx, scene_name, item_name): - typer.echo(f"Item '{item_name}' not found in scene '{scene_name}'.") + typer.echo( + f"Item '{item_name}' not found in scene '{scene_name}'.", err=True + ) raise typer.Exit(code=1) old_scene_name = scene_name @@ -264,11 +275,15 @@ def transform( """Set the transform of an item in a scene.""" if parent: if not validate.item_in_scene_item_list(ctx, scene_name, parent): - typer.echo(f"Parent group '{parent}' not found in scene '{scene_name}'.") + typer.echo( + f"Parent group '{parent}' not found in scene '{scene_name}'.", err=True + ) raise typer.Exit(code=1) else: if not validate.item_in_scene_item_list(ctx, scene_name, item_name): - typer.echo(f"Item '{item_name}' not found in scene '{scene_name}'.") + typer.echo( + f"Item '{item_name}' not found in scene '{scene_name}'.", err=True + ) raise typer.Exit(code=1) old_scene_name = scene_name @@ -309,7 +324,7 @@ def transform( transform['scaleY'] = scale_y if not transform: - typer.echo('No transform options provided.') + typer.echo('No transform options provided.', err=True) raise typer.Exit(code=1) transform = ctx.obj.set_scene_item_transform( diff --git a/obsws_cli/stream.py b/obsws_cli/stream.py index 1501ed0..726ae47 100644 --- a/obsws_cli/stream.py +++ b/obsws_cli/stream.py @@ -23,7 +23,7 @@ def start(ctx: typer.Context): """Start streaming.""" active, _ = _get_streaming_status(ctx) if active: - typer.echo('Streaming is already in progress, cannot start.') + typer.echo('Streaming is already in progress, cannot start.', err=True) raise typer.Exit(code=1) ctx.obj.start_stream() @@ -35,7 +35,7 @@ def stop(ctx: typer.Context): """Stop streaming.""" active, _ = _get_streaming_status(ctx) if not active: - typer.echo('Streaming is not in progress, cannot stop.') + typer.echo('Streaming is not in progress, cannot stop.', err=True) raise typer.Exit(code=1) ctx.obj.stop_stream()