You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* feat: Add progress indicator and improve CLI usability
This commit introduces several improvements to the user experience of the privlog CLI.
- A progress indicator is now displayed by default during the scanning process to provide better feedback and prevent the appearance of a hanging process.
- The --verbose flag now controls the verbosity of the underlying semgrep scanner, providing more detailed output for debugging.
- The check subcommand has been merged into the main privlog command to simplify usage and align with the documentation.
- A --version flag has been added to display the current version of the tool.
- A CHANGELOG.md has been created to document changes for future releases.
* chore: Bump version to 0.2.2
* feat: Improve AST-based warnings for sensitive data
The AST checker now provides more informative warnings by including the name of the sensitive identifier that was detected.
Previously, the warning was a generic message:
"Sensitive identifier passed to log. Hash/pseudonymize or omit."
Now, it will include the variable name, for example:
'Sensitive identifier "user_email" passed to log. Hash, pseudonymize, or omit before logging.'
This makes it easier for developers to quickly identify and remediate the issue.
* fix: Add python version classifiers to pyproject.toml
Adds classifiers for Python 3.9 through 3.12 to resolve the 'python missing' badge on PyPI and in the README.
* docs: Update examples to reflect new output style
The examples in the README and the GitHub Pages index.html have been updated to show the new, more informative warning message that includes the name of the sensitive identifier.
All notable changes to this project will be documented in this file.
4
+
5
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+
## [0.2.2] - 2026-03-11
9
+
10
+
### Added
11
+
- Progress indicator during the AST scan when using the `--verbose` flag, showing which file is being scanned.
12
+
-`--version` flag to display the current version of the tool.
13
+
- Verbose output for scanning stages, making it clear when `semgrep` and `AST` scans are running.
14
+
15
+
### Changed
16
+
- Improved AST check warnings to include the name of the sensitive identifier found, making it easier to locate and fix issues. For example, the warning for `PL2101` will now be `Sensitive identifier "user_email" passed to log...`.
17
+
- The progress indicator and scanning stage messages are now shown by default to provide better feedback during scans. The `--verbose` flag now only controls the verbosity of the underlying `semgrep` tool.
18
+
- The `check` subcommand has been merged into the main `privlog` command. This simplifies the command-line usage from `privlog check` to `privlog` and aligns the tool's behavior with the `README.md` documentation.
Running `privlog .` will produce the following error:
30
30
31
31
```
32
-
app/auth.py:5:5 [ERROR] PL2101 Sensitive identifier passed to log. Hash/pseudonymize or omit.
32
+
app/auth.py:5:5 [ERROR] PL2101 Sensitive identifier "user_email" passed to log. Hash, pseudonymize, or omit before logging.
33
33
```
34
34
35
35
## Features
@@ -99,6 +99,11 @@ privlog -w .
99
99
100
100
This will display all findings, color-coded by severity, but will still only fail the build if `ERROR`s are present.
101
101
102
+
### Other Flags
103
+
104
+
-`--verbose` / `-v`: Enables verbose output from the underlying `semgrep` scanner. This is useful for debugging rules and understanding which files `semgrep` is scanning or skipping. By default, `privlog` always shows a high-level progress indicator; this flag provides much more detail about the `semgrep` scanning phase.
105
+
-`--version`: Display the installed version of `privlog`.
106
+
102
107
### Configuring Custom Wrappers
103
108
104
109
You can teach `privlog` to recognize your own custom logging functions. In your project's `pyproject.toml` file, add a `[tool.privlog.custom_wrappers]` section.
0 commit comments