Pistol

Latest version: v2.7

Safety actively analyzes 723217 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

2.4

- HUGE update
- added `scs`
- - scs stands for smart command suggestions
- - will gather used commands and suggest them using tab completion
- - collection of commands can be disabled with `prop scs-collection false`
- - using scs in tab completion can be disabled with `prop scs false`
- - you can run `prop scs scs-ignore-paths false` to only receive suggestions of commands you ran in the **same directory** as where you ran them for the first time.
- new commands
- - `rms` to remove a `scs` suggestion
- - `cs` to remove all `scs` suggestions
- removed commands
- - `root`
- added props
- - `scs` (mentioned above)
- - `scs-collection` (mentioned above)
- - `scs-ignore-paths` (mentioned above)
- - `scs-refresh` - choose whether scs is saved to the meta file each time `re` is run. this does not affect run speed of `re`
- - `suggest-files` - choose whether files are suggested for tab completion
- - `meta-size-warning` - choose whether to warn the user if pistol's meta file reaches over 500kb in size. recommended to keep enabled.
- you can run pistol in verbose using either the `pistol.verbose` command (instead of `pistol`) or the `verbose` file using `python3 -m pistol.verbose` or similar.
- added explanations for all the meta entries using the `meta` command
- MANY other changes

2.3.2

- tiny update
- removing an alias has a confirmation message now
- minor changes
- typo fixes

2.3.1

- tiny update
- updated README.md
- cleared meta.json to avoid artifacts when building

2.3

- `analyse` command renamed to `meta`
- `re` is automatically ran after every command
- - can be disabled using `prop auto-re false`
- `help` command now takes you to the documentation
- argument 2 on `prop` can now be `check`, to check the state of the prop
- location is now persistent, which means that if the `<location>` argument is not filled, pistol will automatically load to where you last left off
- - if there is no previous location, pistol will default to the cwd
- - this can be disabled using `prop persistent-location false`
- - this is enabled by default
- - you can also specify `last` as the `<location>` argument, which will do the same as without specifying it
- - the `persistent-location` prop still has to be enabled for `pistol last` to work.
- fixed a bug where if a solo command raises an error, it is marked as `solo`, no matter the actual solo command.
- - basically, if you were running `pwsolo`, the error would still be marked as `solo`
- many small changes
- various bug fixes

2.2

- improvements to the `analyse` command
- you no longer need to restart pistol to refresh the meta file with the `re` command
- MANY bug fixes
- pistol will no longer error out, and will rather show the python error in th usual format
- - ex. before:

Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/home/astridot/Desktop/Project/pistol/pistol/__main__.py", line 3, in <module>
main()
File "/home/astridot/Desktop/Project/pistol/pistol/core.py", line 61, in main
if (os.path.getsize(meta.path) / 1024) > 500: larger than 100kb
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen genericpath>", line 62, in getsize
FileNotFoundError: [Errno 2] No such file or directory: '/home/astridot/Desktop/Project/pistol/pistol/meta.json'

- - ex. after:

🚨 error: internal: [errno 2] no such file or directory: '/home/astridot/desktop/project/pistol/pistol/meta.json'

- `core.py` is now split into 10 files
- fixed a bug where ansi colouring is not rendered correctly in the main prompt
- - `storage` is no longer coloured anywhere
- more meta.json space managing options
- - you can now disable the timestamps prop using `prop timestamps false`
- - this cuts a command history item size from about 0.5kb to 0.1kb (80% size decrease)
- - timestamps are enabled by default

2.1.2

- updated bucket dependencies

Page 2 of 4

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.