summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2021-02-21feat(kotlin): Configure when the module is shown (#2359)Thomas O'Donnell
This makes it possible to configure when the kotlin module is shown based on the contents of a directory.
2021-02-21feat(purescript): Configure when the module is shown (#2357)Shu Kutsuzawa
This makes it possible to configure when the purescript module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-21feat(php): Configure when the module is shown (#2356)Shu Kutsuzawa
This makes it possible to configure when the php module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-21feat(perl): Configure when the module is shown (#2355)Shu Kutsuzawa
This makes it possible to configure when the perl module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-21feat(ocaml): Configure when the module is shown (#2354)Shu Kutsuzawa
This makes it possible to configure when the ocaml module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-21feat(swift): Configure when the module is shown (#2349)David Knaack
This makes it possible to configure when the swift module is shown based on the contents of a directory.
2021-02-21feat(rust): Configure when the module is shown (#2350)David Knaack
This makes it possible to configure when the rust module is shown based on the contents of a directory.
2021-02-21feat(ruby): Configure when the module is shown (#2351)David Knaack
This makes it possible to configure when the ruby module is shown based on the contents of a directory.
2021-02-21feat(nodejs): Configure when the module is shown (#2348)Shu Kutsuzawa
This makes it possible to configure when the nodejs module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-21feat(nim): Configure when the module is shown (#2347)Shu Kutsuzawa
This makes it possible to configure when the nim module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-21feat(erlang): Configure when the module is shown (#2346)Thomas O'Donnell
* feat(erlang): Configure when the module is shown This makes it possible to configure when the erlang module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module. * Update docs/config/README.md Co-authored-by: Shu Kutsuzawa <cappyzawa@gmail.com> Co-authored-by: Shu Kutsuzawa <cappyzawa@gmail.com>
2021-02-21docs: Update README.md with instructions for termux (#2257)Matthew Fry
* Update README.md * make Semantic PR bot happy Co-authored-by: Matthew Fry <matthew@thefrys.net>
2021-02-21docs(config): Clarify the changing starship config (#2339)Thomas O'Donnell
Have clarified changing the starship config file using the `STARSHIP_CONFIG` env var.
2021-02-20feat(elm): Configure when the module is shown (#2341)Thomas O'Donnell
This makes it possible to configure when the elm module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-20feat(elixir): Configure when module is shown (#2340)Thomas O'Donnell
This makes it possible to configure when the elixir module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-20feat: create shell module (#2329)Mikołaj Rosowski
* Add the shell module This module allows to quickly identify which shell is currently used, in case someone frequently switches between them. * Updated documentation with shell module. Co-authored-by: mro <mro@fedorabox.localdomain>
2021-02-20feat(dotnet): Configure when module is shown (#2327)Thomas O'Donnell
This makes it possible to configure when the dotnet module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-17feat(lua): Configure when the module is shown (#2326)Shu Kutsuzawa
This makes it possible to configure when the lua module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-17feat(golang): Configure when the module is shown (#2325)Shu Kutsuzawa
This makes it possible to configure when the golang module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-17feat(terraform): Configure when the module is shown (#2324)Shu Kutsuzawa
This makes it possible to configure when the terraform module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-17fix: Add a fallback prompt under TERM=dumb (#1594)Dietrich Daroch
TESTED=Run it under `env`, `env 'TERM=dumb` and `env 'TERM=dumber`.
2021-02-16ci(docs): only publish site on release (#2322)Matan Kushner
2021-02-16build(deps-dev): bump vuepress-theme-default-prefers-color-scheme from 1.1.2 ↵dependabot-preview[bot]
to 2.0.0 in /docs (#1946) * build(deps-dev): bump vuepress-theme-default-prefers-color-scheme Bumps [vuepress-theme-default-prefers-color-scheme](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme) from 1.1.2 to 2.0.0. - [Release notes](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/releases) - [Changelog](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/blob/master/CHANGELOG.md) - [Commits](https://github.com/tolking/vuepress-theme-default-prefers-color-scheme/compare/v1.1.2...v2.0.0) Signed-off-by: dependabot-preview[bot] <support@dependabot.com> * Remove css-prefers-color-scheme Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> Co-authored-by: Matan Kushner <hello@matchai.dev>
2021-02-16build(deps-dev): bump @vuepress/plugin-google-analytics in /docs (#2317)dependabot-preview[bot]
Bumps [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/HEAD/packages/@vuepress/plugin-google-analytics) from 1.8.0 to 1.8.1. - [Release notes](https://github.com/vuejs/vuepress/releases) - [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md) - [Commits](https://github.com/vuejs/vuepress/commits/v1.8.1/packages/@vuepress/plugin-google-analytics) Signed-off-by: dependabot-preview[bot] <support@dependabot.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-16build(deps-dev): bump vuepress from 1.8.0 to 1.8.1 in /docs (#2318)dependabot-preview[bot]
Bumps [vuepress](https://github.com/vuejs/vuepress/tree/HEAD/packages/vuepress) from 1.8.0 to 1.8.1. - [Release notes](https://github.com/vuejs/vuepress/releases) - [Changelog](https://github.com/vuejs/vuepress/blob/master/CHANGELOG.md) - [Commits](https://github.com/vuejs/vuepress/commits/v1.8.1/packages/vuepress) Signed-off-by: dependabot-preview[bot] <support@dependabot.com> Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-02-16feat(docker_context): Configure when module is shown (#2315)Thomas O'Donnell
* feat(docker_context): Configure when module is shown This makes it possible to configure when the docker_context module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module. * Update docs/config/README.md Co-authored-by: David Knaack <davidkna@users.noreply.github.com> Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2021-02-15feat(vagrant): Configure when the module is shown (#2314)David Knaack
* feat(vagrant): Configure when the module is shown This makes it possible to configure when the vagrant module is shown based on the contents of a directory. * fix documentation Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com> Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2021-02-15fix: correct fish syntax error when setting variables (#2320)Jan Christoph Ebersbach
2021-02-14feat(dart): Configure when the module is shown (#2312)Thomas O'Donnell
* feat(dart): Configure when the module is shown This makes it possible to configure when the dart module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module. * docs(dart): add missing detected files * removed invalid comment
2021-02-14feat(zig): Configure when the module is shown (#2311)David Knaack
* feat(zig): Configure when the module is shown * remove outdated comment
2021-02-14fix(directory): contract git repo with display path (#2304)David Knaack
2021-02-14perf(init): Prefer set -x over export for fish users (#2292)Michael Sanders
2021-02-14feat(crystal): Configure when the module is shown (#2310)Thomas O'Donnell
* feat(crystal): Configure when the module is shown This makes it possible to configure when the crystal module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module. * Update docs/config/README.md Co-authored-by: David Knaack <davidkna@users.noreply.github.com> Co-authored-by: David Knaack <davidkna@users.noreply.github.com>
2021-02-13fix(init): Quote path for elvish init (#2294)Tim Grelka
Fixes starship/starship#2293
2021-02-13feat(test): allow dynamic mocking of commands (#2307)David Knaack
2021-02-13fix(directory): Handle non-UTF-8 folder names (#2303)David Knaack
2021-02-13fix(init): make log messages on pwsh visible again (#2295)David Knaack
2021-02-13build: fix aarch64-apple-darwin builds (#2300)David Knaack
2021-02-13refactor(log): change output colors to shades of blue for trace and debug to ↵Alexandru Macovei
make them more visible (#2299)
2021-02-13fix(utils): Sefely unwrap the command output (#2305)Thomas O'Donnell
Safely unwrap the output of the commands executed by `utils::exec_cmd`, this should avoid panics when the output of the command cannot be decoded.
2021-02-13feat(cmake): Configure when the module is shown (#2280)Thomas O'Donnell
This makes it possible to configure when the cmake module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module.
2021-02-11feat: allow changing default command timeout (#2283)David Knaack
* feat: allow changing default command timeout * fix clippy * add doc to exec_cmd in Context * update docs in CONTRIBUTING.md * Fix comment in CONTRIBUTING.md Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com> Co-authored-by: Thomas O'Donnell <andytom@users.noreply.github.com>
2021-02-11refactor(clippy): fix new lints (#2297)David Knaack
2021-02-09perf(username): get uid without external command (#2286)David Knaack
2021-02-08chore: update Discord link to use vanity URLMatan Kushner
2021-02-08refactor(directory): Introduce `logical-path` argument which allows a shell ↵Benjamin Fox
to explicitly specify both a logical and physical filesystem path (#2104) * refactor(directory): Introduce `logical-path` argument which allows a shell to explicitly specify both a logical and physical filesystem path Fix `directory::module` to consume both path and logical-path (if provided). The "logical" path is preferred when rendering the "display path", while the "physical" path is used to resolve the "read only" flag. Repo- and home-directory contraction behavior is maintained, based on the logical path if it is set, or the physical path if it is not. The custom "get_current_dir" logic has been removed entirely, and the `directory` module now relies on `context.current_dir` / `context.logical_dir` entirely. Changes have been made to `init/starship.ps1` to work with this new flag: - Calculate and pass "physical" and "logical" paths explicitly (as other shells do not pass `--logical-path` that they fall back to rendering the physical path) - Moved the "powershell provider prefix" cleanup code to the PowerShell script - this code _should_ now support any kind of powershell path prefix. * fix(powershell): Fix an issue with trailing backslashes on file paths causing command line parsing issues. This is a bit of a footgun! The work-around chosen is to append a trailing space when a path string ends with a backslash, and then trim any extra whitespace away in the Context constructor. Other alternatives considered and rejected: 1. Always trim trailing backslashes as the filesystem generally doesn't need them. 2. Escape trailing backslashes with another backslash. This proved complex as PS only quotes string args when the string includes some whitespace, and other backslashes within the string apparently don't need to be escaped. * fix(powershell): Use Invoke-Native pattern for safely invoking native executables with strings which may contain characters which need to be escaped carefully. * fix(context): Remove superfluous argument trims These were in place to clean up extra whitespace sometimes injected by starship.ps1::prompt, and are no longer required with the new Invoke-Native helper in place. * refactor(directory): Clean up the semantics of `logical_dir` defaulting it to `current_dir` but overridable by the `--logical-dir` flag. - Restore `use_logical_path` config flag. - Always attempt to contract repo paths from the `current_dir`. * fix(directory) :Use logical_dir for contracting the home directory This keeps the two calls to contract_path in sync. * fix(directory): Remove test script * refactor(directory): Convert current_dir to canonical filesystem path when use_logical_path = false - This requires some clean-up to remove the extended-path prefix on Windows - The configured logical_dir is ignored entirely in this mode - we calculate a new logical_dir by cleaning up the physical_dir path for display. - Test coverage * fix(directory): Use AsRef style for passing Path arguments * fix(directory): Strip the windows extended-path prefix from the display string later in the render process * fix(docs): Update docs/config/README.md for use_logical_path * refactor(context): Populate `current_dir` from `--path` or `std::env::current_dir`, populate `logical_dir` from `--logical-path` or the `PWD` env var - `current_dir` is always canonicalized - On Windows, `current_dir` will have an extended-path prefix - `logical_dir` is now always set - `directory::module` now just selects between `current_dir` and `logical_dir` when picking which path to render - Test coverage * fix(directory): Fix path comparison operations in directory to ignore differences between path prefixes - Added PathExt extension trait which adds `normalised_equals`, `normalised_starts_with` and `without_prefix` * fix(path): Add test coverage for PathExt on *nix * fix(directory): Test coverage for `contract_repo_path`, `contract_path` with variations of verbatim and non-verbatim paths * fix(directory): Update path-slash to latest This fixes the issue with the trailing character of some Windows paths being truncated, e.g. `\\server\share` and `C:` * fix(powershell): Improve UTF8 output handling, argument encoding - Use `ProcessStartInfo` to launch native executable, replacing manual UTF8 output encoding handling - If we detect we're on PWSH6+ use the new `System.Diagnostics.ProcessStartInfo.ArgumentList` parameter, otherwise manually escape the argument string - Move `Get-Cwd` and `Invoke-Native` into the prompt function scope so that they don't leak into the user's shell scope * fix(path): Make PathExt methods no-ops on *nix * fix(path): Cargo fmt * fix(powershell): Remove typo ';'. Fix variable assignment lint.
2021-02-08build(deps): bump serde_json from 1.0.61 to 1.0.62dependabot-preview[bot]
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.61 to 1.0.62. - [Release notes](https://github.com/serde-rs/json/releases) - [Commits](https://github.com/serde-rs/json/compare/v1.0.61...v1.0.62) Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07feat(python): Configure when the module is shown (#2264)Thomas O'Donnell
This makes it possible to configure when the python module is shown based on the contents of a directory. This should make it possible to be a lot more granular when configuring the module. This includes a breaking change since we are removing the `scan_for_pyfiles` configuration option in favour of setting the `detect_extensions` to an empty array.
2021-02-06docs(i18n): New Crowdin updates (#2219)Matan Kushner
2021-02-04ci: fix changelog generation (#2267)David Knaack