Skip to content

Changelog¤

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

0.3.0 - 2026-10-06¤

Compare with 0.2.4

Build¤

  • Drop support for Python 3.10 (07b3714 by Timothée Mazzucotelli).

Features¤

  • Add secret detection and redaction (913b972 by Timothée Mazzucotelli).
  • Add more charts (0ab6c98 by Timothée Mazzucotelli).
  • Add optional type normalization to the type chart (d9c46dd by Timothée Mazzucotelli).

Bug Fixes¤

  • Fix various chart issues (41ef818 by Timothée Mazzucotelli).
  • Fix word cloud in home page (6174574 by Timothée Mazzucotelli).
  • Serve every chart when the database is empty (b5089b6 by Timothée Mazzucotelli).
  • Restore what the template upgrade dropped (ce852e5 by Timothée Mazzucotelli).
  • Return the real exit code from the early-return path (6747846 by Timothée Mazzucotelli).
  • Make shellhistory enable and disable idempotent (a8285a5 by Timothée Mazzucotelli).
  • Support BSD and macOS date and base64 (2b52408 by Timothée Mazzucotelli).
  • Record the running shell instead of the login shell (f4d59c3 by Timothée Mazzucotelli).
  • Do not record commands the user asked to keep private (411acc2 by Timothée Mazzucotelli).
  • Read the zsh command from preexec instead of history[HISTCMD] (eb1370b by Timothée Mazzucotelli).
  • Use extend_existing instead of the removed useexisting (d7ccef9 by Timothée Mazzucotelli).
  • Create database tables after the model is declared (b27f237 by Timothée Mazzucotelli).
  • Possibly fix for sqlite thread issue (03d4f3e by Timothée Mazzucotelli). Issue-22
  • Fix listing processes with unusual characters (283c5db by Timothée Mazzucotelli).

Performance Improvements¤

  • Avoid forking on every prompt and at shell startup (460fc18 by Timothée Mazzucotelli).

Code Refactoring¤

  • Upgrade Flask (b2f2868 by Timothée Mazzucotelli).
  • Rename the sync button to say what it now does (2a70d36 by Timothée Mazzucotelli).
  • Have the shell primitives assign instead of echoing (bebc9be by Timothée Mazzucotelli).

0.2.4 - 2019-05-17¤

Compare with 0.2.3

Fixed¤

  • Fix stupid mistake (not importing codecs module).
  • Fix trap on DEBUG not being removed when calling shellhistory disable (a4f9d2e).
  • Ignore exceptions when reading history file (log on stderr) (45e3d16).

0.2.3 - 2019-05-04¤

Compare with 0.2.2

Fixed¤

  • Fix python version specifier in pyproject (07f305d).

0.2.2 - 2019-04-30¤

Compare with 0.2.1

Docs¤

  • Add note about performance for shell startup (42ed881).
  • Update pipx installation instructions (44b5c15).

Fixed¤

  • Fix admin internal error (sqlite threads) (a699eac).
  • Fix shell code for ZSH (05795cf).
  • Correctly set and restore precmd, preexec, PROMPT_COMMAND and debug trap (7336a8c).
  • Ignore invalid characters in history file (e8229cd).

0.2.1 - 2018-12-26¤

Compare with 0.2.0

  • Implement new charts (4434afd).
  • Fix shellhistory command (return, don't exit) (a27fb53).

0.2.0 - 2018-12-23¤

Compare with 0.1.0

  • Package the application (edaf15b).

The application is now packaged as a Python package. It is easier to install and setup. - To install it: pip install shellhistory. - To enable it: . $(shellhistory-location); shellhistory enable at shell startup.

BREAKING CHANGES: - The default directory in which shellhistory reads the history file and write the SQlite3 database file is now ~/.shellhistory instead of ~/.shell_history. - The SQlite3 database file is now named db.sqlite3 instead of db.

The migration is very easy:
- rename the directory: `mv ~/.shell_history ~/.shellhistory`,
- and the database file: `mv ~/.shellhistory/db ~/.shellhistory/db.sqlite3`.

You can even skip renaming the database file:
delete it and reimport your data with `shellhistory-cli --import`

Please remember this application is alpha software, and is subject to change without guarantee of backward compatibility.

0.1.0 - 2018-04-23¤

Compare with first commit

  • Initial version without packaging.