cliasi v0.3.0 #1
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
ignyte.link/cliasi!1
Loading…
Reference in a new issue
No description provided.
Delete branch "dev"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This adds documentation, support for multiline text and catching logging.Logger output.
Pull request overview
This PR introduces version 0.3.0 of cliasi, adding comprehensive documentation, multiline text support, and Python logging integration. The changes modernize the build system, improve output formatting, and provide better integration with standard Python logging.
Key Changes
update_prefixtoset_prefix, changed verbosity model to use logging levels)Reviewed changes
Copilot reviewed 20 out of 20 changed files in this pull request and generated 16 comments.
Show a summary per file
set_prefixmethod and demonstrate multiline support💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
@ -0,0 +1,113 @@Advanced usageTypo: 'CRTL-C' should be 'CTRL-C' (Control-C).
Typo: 'CRTL-C' should be 'CTRL-C' (Control-C).
@ -0,0 +1,73 @@import osThe import references 'singlejson' but should import from 'cliasi' to match the actual package name.
@ -0,0 +1,78 @@Getting startedTypo: 'verbostiy' should be 'verbosity'.
The text 'messagesfinish' appears to be missing a space or has incorrect wording. It should likely be 'messages finish' or be reworded for clarity.
The documentation uses HTML
<br>tags in RST format. In reStructuredText, line breaks should be handled differently (e.g., using blank lines or|for explicit line breaks).The documentation uses HTML
<br>tags in RST format. In reStructuredText, line breaks should be handled differently (e.g., using blank lines or|for explicit line breaks).@ -0,0 +1,45 @@.. cliasi documentation master file, created by f.raderThe comment references 'singlejson' but should reference 'cliasi' to match the actual project name.
@ -0,0 +1,35 @@Set up the development environmentThe git clone command is incomplete - it's missing the repository URL. It should be something like
git clone https://github.com/IgnyteX-Labs/cliasi.git.@ -7,0 +14,4 @@from importlib.metadata import version as _pkg_version__version__ = _pkg_version("singlejson")except Exception:# Last resort for local source trees without SCM metadataThe package name 'singlejson' is incorrect. This should be 'cliasi' to match the actual package name.
@ -93,2 +127,3 @@def message(self, message: str, verbosity: int = 0, override_messages_stay_in_one_line: Optional[bool] = None):lines = []The prefix is being constructed with DIM color removed from the assignment (compared to the old implementation on line 62). However, the DIM color is still applied when printing in the
__printmethod (line 147). Consider documenting why DIM was moved from prefix storage to print-time application to make this clearer for future maintainers.@ -202,2 +286,4 @@@staticmethoddef newline() -> None:"""Print a newline.The return type documentation says "None" but the function actually returns a
str(user input). The return type should be documented correctly.@ -388,17 +479,19 @@ class Cliasi:self.__format_progressbar_to_screen_width(message, "#", progress, show_percent),override_messages_stay_in_one_line)The
progressparameter is incorrectly assignedlogging.INFOas its default value instead of0. This will cause type errors when the progress bar tries to use this value as an integer.@ -0,0 +1,139 @@"""The docstring states "existing StreamHandlers from the root logger will be removed" but this is only true when
replace_root_handlers=True. The documentation should clarify that StreamHandlers are only removed when this parameter is True.The variable name
exec_textis misleading - it should beexc_text(short for exception text) since it stores exception information, not execution text.@ -0,0 +76,4 @@if replace_root_handlers:for h in list(root.handlers):if isinstance(h, logging.StreamHandler):root.removeHandler(h)The logic removes StreamHandlers twice - once unconditionally (lines 70-72) and again when
replace_root_handlers=True(lines 74-77). The first removal should only happen whenreplace_root_handlers=True. This causes StreamHandlers to always be removed regardless of the parameter value.