Version 2.0.0

See the v2.0.0 release notes
(https://liquidprompt.readthedocs.io/en/stable/release-notes/v2.0.html)
for an overview of the improvements and features in this major version.

BREAKING CHANGES

Note: these breaking changes are the only reason that this version is so
much faster. They are also on private functions and variables, which end
users were not supposed to use. If you were using them, see the upgrade
notes
(https://liquidprompt.readthedocs.io/en/stable/upgrading/v2.0.html) for
help.

- general: `$_LP_SHELL_bash` and `$_LP_SHELL_zsh` contain `1` or `0`
  instead of `true` or `false` (f681cdf)
- general: `_lp_color_map()` return changed from stdout to
  `$ret` (e843ccf)
- general: `_lp_escape()` renamed to `__lp_escape()` and return changed
  from stdout to `$ret` (f3404f9)
- general: `_lp_set_prompt()` renamed to
  `__lp_set_prompt()` (decaece)
- general: `_lp_source_config()` renamed to
  `__lp_source_config()` (decaece)
- battery: `_lp_battery()` return changed from stdout to
  `$lp_battery` (3f57231)
- battery: `_lp_battery_color()` return changed from stdout to
  `$lp_battery_color` (3f57231)
- env: `$lp_err` renamed to `$lp_error` (63b9f73)
- env: `_lp_connection()` return changed from stdout to
  `$lp_connection` (edc490f)
- git: `_lp_git_head_status()` return changed from stdout to
  `$lp_vcs_head_status` (7c21470)
- jobs: `_lp_jobcount_color()` return changed from stdout to
  `$lp_jobcount_color` (73f2057)
- load: `_lp_load_color()` return changed from stdout to
  `$lp_load_color` (8a987f4)
- path: `_lp_get_home_tilde_collapsed()` renamed to `__lp_pwd_tilde()`
  and return changed from stdout to `$lp_pwd_tilde` (28c13f2)
- path: `_lp_set_dirtrim()` renamed to `__lp_set_dirtrim()` (decaece)
- path: `_lp_shorten_path()` replaced by
  `_lp_path_format()` (decaece, a35032f, ae769dc)
- runtime: `_lp_runtime()` renamed to `_lp_runtime_color()` and return
  changed from stdout to `$lp_runtime_color` (0f0fd37)
- runtime: `_lp_runtime_after()` renamed to
  `__lp_runtime_after()` (decaece)
- runtime: `_lp_runtime_before()` renamed to
  `__lp_runtime_before()` (decaece)
- temperature: `_lp_temp_acpi()` renamed to `__lp_temp_acpi()` and
  return changed from `$temperature` to `$lp_temperature` (69c75a3)
- temperature: `_lp_temp_detect()` renamed to
  `__lp_temp_detect()` (69c75a3)
- temperature: `_lp_temp_sensors()` renamed to `__lp_temp_sensors()` and
  return changed from `$temperature` to `$lp_temperature` (69c75a3)
- temperature: `_lp_temperature()` changed to data function, replaced by
  `_lp_temperature_color()` and return changed from stdout to
  `$lp_temperature_color` (69c75a3)
- time: `_lp_time()` split into `_lp_time()`, `_lp_time_color()`,
  `_lp_analog_time()`, and `_lp_analog_time_color()` (8cb609d)
- vcs: `_lp_<vcs>_branch()` return changed from stdout to
  `$lp_vcs_branch` (f3404f9)
- vcs: `_lp_<vcs>_branch_color()` functions removed, replaced by
  `_lp_vcs_details_color()` (cafb8b2, bf2b9c6, 1a9fcd0, 4fff496,
  b523025)
- vcs: `_lp_smart_mark()` return changed from stdout to
  `$lp_smart_mark` (9c6d073)
- vcs: `_lp_upwards_find()` removed, replaced by
  `_lp_find_vcs()` (f434b6d)

See the full CHANGELOG.md for details on deprecated, added, fixed,
changed, and removed changes.

Thanks to:

* Dimitrie Hoekstra (@dimitrieh) for requesting VCS root highlighting in
  path.
* Felix Schlitter (@felixSchl) for requesting VCS root highlighting in
  path.
* Fabien MARTY (@thefab) for reporting `sensors verbose error messages.
* Alessio Garzi (@Ozzyboshi) for reporting `sensors verbose error
  messages.
* Mathieu MD (@mathieumd) for reporting `sensors verbose error messages.
* Mike Simonson (@mikeSimonson) for reporting `sensors verbose error
  messages.
* Romano Giannetti (@Rmano) for reporting `sensors verbose error
  messages.
* Paulo Cazarotto (@phcco) for reporting `sensors verbose error
  messages.
* Jürgen Weigert (@jnweiger) for reporting `sensors verbose error
  messages.
* Sven-Hendrik Haase (@svenstaro) for reporting `sensors verbose error
  messages.
* Paul Lhussiez (@Depado) for reporting lacking documentation around
  path shortening to last directory.
* Cyril Bouthors (@cyril-bouthors) for reporting `set -u` issues.
* Christoph Burschka (@cburschka) for requesting a method to always
  display a matching Git tag.
* Iain Hallam (@iainhallam) for requesting 256 color support.
* @dreamcat4 for requesting Powerline support.
* Munif Tanjim (@MunifTanjim) for requesting and implementing an
  alternate VCS display theme.
* @ilovezfs for suggesting more detailed Git head statuses.
* Aleksey Tsalolikhin (@atsaloli) for suggesting an `LP_ENABLE_ERROR`
  config option.
* Micah Silverman (@dogeared) for reporting multipler lookup slowness.
* Rohan Kapadia (@kapad) for reporting terminal title issues on MacOS.
* Étienne Deparis (@milouse) for implementing Mercurial bookmark
  display.
* Jan Gorecki (@jangorecki) for requesting hot swappable themes.
* Otto Kekäläinen (@ottok) for requesting terminal title improvements.
* Hynek Vychodil (@pichi) for describing CPU load average issues.
* Tore Anderson (@toreanderson) for describing CPU load average issues
  and suggesting fixes.
* Sandro Jäckel (@SuperSandro2000) for updating the default template
  file.
* David Pape (@zyzzyxdonta) for implementing the dirstack feature.
* Aksel Sjögren (@akselsjogren) for fixing config variable usage in
  Powerline theme.
* Raina Otoni (@rotoni) for fixing an IFS bug.
* Viorel-Cosmin Miron (@uhlhosting) for reporting Zsh special variable
  issues.
* Brad Beyenhof (@augmentedfourth) for consulting on packaging issues
  and adding documentation on machine specific configuration.
* Arturo Borrero Gonzalez (@aborrero) for consulting on packaging
  issues.
* John Hamelink (@johnhamelink) for adding install instructions for
  Zinit.
* Ned Batchelder (@nedbat) for reporting Zsh completion and VCS binary
  files issues.
* Gary Wolfman (@OldCrow) for reporting Zsh-5.0.X issues.
* @Orgams for requesting _lp_vcs_staged_files() / lines().
* @YouthfulIndiscretion for reporting issues with `LP_MARK_PREFIX`
  documentation.
* Imran Munshi (@imran27) for reporting issues with `LP_MARK_PREFIX`
  documentation.

See the v2.0.0 release notes for an overview of the improvements and features in this major version.

BREAKING CHANGES

Note: these breaking changes are the only reason that this version is so much faster. They are also on private functions and variables, which end users were not supposed to use. If you were using them, see the upgrade notes for help.

  • general: $_LP_SHELL_bash and $_LP_SHELL_zsh contain 1 or 0 instead of true or false (f681cdf9)
  • general: _lp_color_map() return changed from stdout to $ret (e843ccfd)
  • general: _lp_escape() renamed to __lp_escape() and return changed from stdout to $ret (f3404f99)
  • general: _lp_set_prompt() renamed to __lp_set_prompt() (decaece0)
  • general: _lp_source_config() renamed to __lp_source_config() (decaece0)
  • battery: _lp_battery() return changed from stdout to $lp_battery (3f57231d)
  • battery: _lp_battery_color() return changed from stdout to $lp_battery_color (3f57231d)
  • env: $lp_err renamed to $lp_error (63b9f73d)
  • env: _lp_connection() return changed from stdout to $lp_connection (edc490f3)
  • git: _lp_git_head_status() return changed from stdout to $lp_vcs_head_status (7c214708)
  • jobs: _lp_jobcount_color() return changed from stdout to $lp_jobcount_color (73f20574)
  • load: _lp_load_color() return changed from stdout to $lp_load_color (8a987f43)
  • path: _lp_get_home_tilde_collapsed() renamed to __lp_pwd_tilde() and return changed from stdout to $lp_pwd_tilde (28c13f27)
  • path: _lp_set_dirtrim() renamed to __lp_set_dirtrim() (decaece0)
  • path: _lp_shorten_path() replaced by _lp_path_format() (decaece0, a35032fe, ae769dc9)
  • runtime: _lp_runtime() renamed to _lp_runtime_color() and return changed from stdout to $lp_runtime_color (0f0fd373)
  • runtime: _lp_runtime_after() renamed to __lp_runtime_after() (decaece0)
  • runtime: _lp_runtime_before() renamed to __lp_runtime_before() (decaece0)
  • temperature: _lp_temp_acpi() renamed to __lp_temp_acpi() and return changed from $temperature to $lp_temperature (69c75a3e)
  • temperature: _lp_temp_detect() renamed to __lp_temp_detect() (69c75a3e)
  • temperature: _lp_temp_sensors() renamed to __lp_temp_sensors() and return changed from $temperature to $lp_temperature (69c75a3e)
  • temperature: _lp_temperature() changed to data function, replaced by _lp_temperature_color() and return changed from stdout to $lp_temperature_color (69c75a3e)
  • time: _lp_time() split into _lp_time(), _lp_time_color(), _lp_analog_time(), and _lp_analog_time_color() (8cb609d4)
  • vcs: _lp_<vcs>_branch() return changed from stdout to $lp_vcs_branch (f3404f99)
  • vcs: _lp_<vcs>_branch_color() functions removed, replaced by _lp_vcs_details_color() (cafb8b2e, bf2b9c60, 1a9fcd09, 4fff4964, b5230252)
  • vcs: _lp_smart_mark() return changed from stdout to $lp_smart_mark (9c6d073e)
  • vcs: _lp_upwards_find() removed, replaced by _lp_find_vcs() (f434b6dc)

Deprecated, Added, Fixed, Changed, Removed

See the full Changelog for details.

Thanks to

  • Dimitrie Hoekstra (@dimitrieh) for requesting VCS root highlighting in path.
  • Felix Schlitter (@felixSchl) for requesting VCS root highlighting in path.
  • Fabien MARTY (@thefab) for reporting `sensors verbose error messages.
  • Alessio Garzi (@Ozzyboshi) for reporting `sensors verbose error messages.
  • Mathieu MD (@mathieumd) for reporting `sensors verbose error messages.
  • Mike Simonson (@mikeSimonson) for reporting `sensors verbose error messages.
  • Romano Giannetti (@Rmano) for reporting `sensors verbose error messages.
  • Paulo Cazarotto (@phcco) for reporting `sensors verbose error messages.
  • Jürgen Weigert (@jnweiger) for reporting `sensors verbose error messages.
  • Sven-Hendrik Haase (@svenstaro) for reporting `sensors verbose error messages.
  • Paul Lhussiez (@Depado) for reporting lacking documentation around path shortening to last directory.
  • Cyril Bouthors (@cyril-bouthors) for reporting set -u issues.
  • Christoph Burschka (@cburschka) for requesting a method to always display a matching Git tag.
  • Iain Hallam (@iainhallam) for requesting 256 color support.
  • @dreamcat4 for requesting Powerline support.
  • Munif Tanjim (@MunifTanjim) for requesting and implementing an alternate VCS display theme.
  • @ilovezfs for suggesting more detailed Git head statuses.
  • Aleksey Tsalolikhin (@atsaloli) for suggesting an LP_ENABLE_ERROR config option.
  • Micah Silverman (@dogeared) for reporting multipler lookup slowness.
  • Rohan Kapadia (@kapad) for reporting terminal title issues on MacOS.
  • Étienne Deparis (@milouse) for implementing Mercurial bookmark display.
  • Jan Gorecki (@jangorecki) for requesting hot swappable themes.
  • Otto Kekäläinen (@ottok) for requesting terminal title improvements.
  • Hynek Vychodil (@pichi) for describing CPU load average issues.
  • Tore Anderson (@toreanderson) for describing CPU load average issues and suggesting fixes.
  • Sandro Jäckel (@SuperSandro2000) for updating the default template file.
  • David Pape (@zyzzyxdonta) for implementing the dirstack feature.
  • Aksel Sjögren (@akselsjogren) for fixing config variable usage in Powerline theme.
  • Raina Otoni (@rotoni) for fixing an IFS bug.
  • Viorel-Cosmin Miron (@uhlhosting) for reporting Zsh special variable issues.
  • Brad Beyenhof (@augmentedfourth) for consulting on packaging issues and adding documentation on machine specific configuration.
  • Arturo Borrero Gonzalez (@aborrero) for consulting on packaging issues.
  • John Hamelink (@johnhamelink) for adding install instructions for Zinit.
  • Ned Batchelder (@nedbat) for reporting Zsh completion and VCS binary files issues.
  • Gary Wolfman (@OldCrow) for reporting Zsh-5.0.X issues.
  • @Orgams for requesting _lp_vcs_staged_files() / lines().
  • @YouthfulIndiscretion for reporting issues with LP_MARK_PREFIX documentation.
  • Imran Munshi (@imran27) for reporting issues with LP_MARK_PREFIX documentation.