Skip to content

v24.0.0

Compare
Choose a tag to compare
@JanDeDobbeleer JanDeDobbeleer released this 04 Nov 13:35
· 137 commits to main since this release

Features

Auto upgrade

oh-my-posh enable upgradenotice
oh-my-posh disable upgradenotice

Breaking changes

Config: OSC99 is removed

Set pwd: OSC99 instead of OSC99: true

Segment: cache_timeout is removed

Segment caching is now managed on a higher level, namely the segment itself. You can cache any segment for a specified amount of time by using the new cache field:

{
  "type": "git",
  "cache": {
    "duration": "1minute",
    "strategy": "folder"
  }
}

Duration can take in values from 1second(s) to xmonths as well as the infinite keyword. The strategy can be folder or session, with folder being the default. Folder is smart enough to take into account SCM context in subfolder, as long as the SCM tool supports it.

Segment: cache_version is removed

The version is now cached for 24 hours by default. Use the above caching mechanism to tweak that even more.

Block: type: linebreak is removed

This was marked as deprecated for a long time and has now been removed. Add newline: true to the block you want to see
on a new line.

Block: horizontal_offset and vertical_offset are removed

This was only relevant in they days where the block positioning wasn't that reliable yet, should no longer be needed.

Changelog

Bug Fixes

  • color: resolve palette before ANSI conversion (6a8cecb), closes #5790
  • image: initialize image CLI correctly (4ebbdd3)
  • windows: do not follow app store symlinks (ab39417)

Code Refactoring

  • segment: remove templates (42b776b)

Features

  • cache: add segment caching strategy (95d8546)
  • cache: create .cache if no other options are found (fbcd78e), closes #5758
  • cache: remove segment specific caching (4fe6efc)
  • cache: store cache on segment level (a45fb39)
  • expose segment output text (9f57650), closes #5750
  • language: add version caching for 1 week (b3b41fc)
  • notice: disable upgrade notice by default (efa8ef9)
  • osc: remove OSC99 from config (0c6ab9b)
  • project: add support for dart (17c19c3)
  • project: add support for mojo (d64de61)
  • remove offset settings from block (e7cbbde)
  • segment: add mojo (6ae82f4)

Performance Improvements

  • add sync pool for template struct (84ac954)
  • correctly align struct fields (d4b86e6)
  • template: cache template functions (9e19420)

BREAKING CHANGES

  • segment: with templates being removed, this need to be a single template element now
  • notice: changes disable_notice: false to upgrade_notice: true
  • this is now completely deprecated and no longer supported
  • osc: this requires to set pwd: OSC99 instead of OSC99: true