mirror of
https://github.com/ratatui-org/ratatui
synced 2024-11-10 07:04:17 +00:00
2a74f9d8c1
Updates the requirements on [rstest](https://github.com/la10736/rstest) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/releases">rstest's releases</a>.</em></p> <blockquote> <h2>0.21.0</h2> <p>Use <code>crate-name</code> feature to enable the crate rename support (enabled by default)</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/la10736/rstest/blob/master/CHANGELOG.md">rstest's changelog</a>.</em></p> <blockquote> <h2>[0.21.0] 2024/6/1</h2> <h3>Changed</h3> <ul> <li>Add feature <code>crate-name</code> enabled by default to opt-in crate rename support. See <a href="https://redirect.github.com/la10736/rstest/issues/258">#258</a></li> </ul> <h2>[0.20.0] 2024/5/30</h2> <h3>Add</h3> <ul> <li>Implemented <code>#[by_ref]</code> attribute to take get a local lifetime for test arguments. See <a href="https://redirect.github.com/la10736/rstest/issues/241">#241</a> for more details. Thanks to <a href="https://github.com/narpfel"><code>@narpfel</code></a> for suggesting it and useful discussions.</li> <li>Support for import <code>rstest</code> with another name. See <a href="https://redirect.github.com/la10736/rstest/issues/221">#221</a></li> </ul> <h3>Fixed</h3> <ul> <li>Don't remove Lifetimes from test function if any. See <a href="https://redirect.github.com/la10736/rstest/issues/230">#230</a> <a href="https://redirect.github.com/la10736/rstest/issues/241">#241</a> for more details.</li> <li><a href="https://doc.rust-lang.org/std/path/struct.PathBuf.html"><code>PathBuf</code></a> does no longer need to be in scope when using <code>#[files]</code> (see <a href="https://redirect.github.com/la10736/rstest/pull/242">#242</a>)</li> <li><code>#[from(now:🉑:also::path::for::fixture)]</code> See <a href="https://redirect.github.com/la10736/rstest/issues/246">#246</a> for more details</li> </ul> <h2>[0.19.0] 2024/4/9</h2> <h3>Changed</h3> <ul> <li>Defined <code>rust-version</code> for each crate (see <a href="https://redirect.github.com/la10736/rstest/issues/227">#227</a>)</li> </ul> <h3>Fixed</h3> <ul> <li> <p><code>#[once]</code> fixtures now require the returned type to be <a href="https://doc.rust-lang.org/std/marker/trait.Sync.html"><code>Sync</code></a> to prevent UB when tests are executed in parallel. (see <a href="https://redirect.github.com/la10736/rstest/issues/235">#235</a> for more details)</p> </li> <li> <p><code>#[future(awt)]</code> and <code>#[awt]</code> now properly handle mutable (<code>mut</code>) parameters by treating futures as immutable and treating the awaited rebinding as mutable.</p> </li> </ul> <h2>[0.18.2] 2023/8/13</h2> <h3>Changed</h3> <ul> <li>Now <code>#[files]</code> accept also parent folders (see <a href="https://redirect.github.com/la10736/rstest/issues/205">#205</a> for more details).</li> </ul> <h2>[0.18.1] 2023/7/5</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="38da6bfb96
"><code>38da6bf</code></a> Prepare 0.21.0 Release</li> <li><a href="ca69788392
"><code>ca69788</code></a> bump version rstest_test to 0.13.0</li> <li><a href="b6b43c6740
"><code>b6b43c6</code></a> Clean chackoutlist</li> <li><a href="fef4f7b4f4
"><code>fef4f7b</code></a> Implemented Opt-in crate-name support Fix <a href="https://redirect.github.com/la10736/rstest/issues/258">#258</a></li> <li><a href="236be92a8a
"><code>236be92</code></a> Build should use build tests target</li> <li><a href="8fde5be94f
"><code>8fde5be</code></a> Prepare next changelog</li> <li><a href="f29e6346fe
"><code>f29e634</code></a> Dependency should have a n explicit version to be published</li> <li><a href="e27ad2a4db
"><code>e27ad2a</code></a> Removed empty section</li> <li><a href="3867794483
"><code>3867794</code></a> Fixed docs</li> <li><a href="b90fb8e092
"><code>b90fb8e</code></a> Fix checkout list</li> <li>Additional commits viewable in <a href="https://github.com/la10736/rstest/compare/v0.19.0...v0.21.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
354 lines
8.8 KiB
TOML
354 lines
8.8 KiB
TOML
[package]
|
|
name = "ratatui"
|
|
version = "0.26.3" # crate version
|
|
authors = ["Florian Dehau <work@fdehau.com>", "The Ratatui Developers"]
|
|
description = "A library that's all about cooking up terminal user interfaces"
|
|
documentation = "https://docs.rs/ratatui/latest/ratatui/"
|
|
repository = "https://github.com/ratatui-org/ratatui"
|
|
homepage = "https://ratatui.rs"
|
|
keywords = ["tui", "terminal", "dashboard"]
|
|
categories = ["command-line-interface"]
|
|
readme = "README.md"
|
|
license = "MIT"
|
|
exclude = [
|
|
"assets/*",
|
|
".github",
|
|
"Makefile.toml",
|
|
"CONTRIBUTING.md",
|
|
"*.log",
|
|
"tags",
|
|
]
|
|
autoexamples = true
|
|
edition = "2021"
|
|
rust-version = "1.74.0"
|
|
|
|
[badges]
|
|
|
|
[dependencies]
|
|
bitflags = "2.3"
|
|
cassowary = "0.3"
|
|
compact_str = "0.7.1"
|
|
crossterm = { version = "0.27", optional = true }
|
|
document-features = { version = "0.2.7", optional = true }
|
|
itertools = "0.13"
|
|
lru = "0.12.0"
|
|
paste = "1.0.2"
|
|
serde = { version = "1", optional = true, features = ["derive"] }
|
|
stability = "0.2.0"
|
|
strum = { version = "0.26", features = ["derive"] }
|
|
strum_macros = { version = "0.26.3" }
|
|
termion = { version = "4.0.0", optional = true }
|
|
termwiz = { version = "0.22.0", optional = true }
|
|
time = { version = "0.3.11", optional = true, features = ["local-offset"] }
|
|
unicode-segmentation = "1.10"
|
|
unicode-truncate = "1"
|
|
unicode-width = "0.1"
|
|
|
|
[dev-dependencies]
|
|
anyhow = "1.0.71"
|
|
argh = "0.1.12"
|
|
better-panic = "0.3.0"
|
|
color-eyre = "0.6.2"
|
|
criterion = { version = "0.5.1", features = ["html_reports"] }
|
|
derive_builder = "0.20.0"
|
|
fakeit = "1.1"
|
|
font8x8 = "0.3.1"
|
|
indoc = "2"
|
|
palette = "0.7.3"
|
|
pretty_assertions = "1.4.0"
|
|
rand = "0.8.5"
|
|
rand_chacha = "0.3.1"
|
|
rstest = "0.21.0"
|
|
serde_json = "1.0.109"
|
|
|
|
[lints.rust]
|
|
unsafe_code = "forbid"
|
|
|
|
[lints.clippy]
|
|
cargo = { level = "warn", priority = -1 }
|
|
pedantic = { level = "warn", priority = -1 }
|
|
cast_possible_truncation = "allow"
|
|
cast_possible_wrap = "allow"
|
|
cast_precision_loss = "allow"
|
|
cast_sign_loss = "allow"
|
|
missing_errors_doc = "allow"
|
|
missing_panics_doc = "allow"
|
|
module_name_repetitions = "allow"
|
|
must_use_candidate = "allow"
|
|
|
|
# nursery or restricted
|
|
as_underscore = "warn"
|
|
deref_by_slicing = "warn"
|
|
else_if_without_else = "warn"
|
|
empty_line_after_doc_comments = "warn"
|
|
equatable_if_let = "warn"
|
|
fn_to_numeric_cast_any = "warn"
|
|
format_push_string = "warn"
|
|
map_err_ignore = "warn"
|
|
missing_const_for_fn = "warn"
|
|
mixed_read_write_in_expression = "warn"
|
|
mod_module_files = "warn"
|
|
needless_pass_by_ref_mut = "warn"
|
|
needless_raw_strings = "warn"
|
|
or_fun_call = "warn"
|
|
redundant_type_annotations = "warn"
|
|
rest_pat_in_fully_bound_structs = "warn"
|
|
string_lit_chars_any = "warn"
|
|
string_slice = "warn"
|
|
string_to_string = "warn"
|
|
unnecessary_self_imports = "warn"
|
|
use_self = "warn"
|
|
|
|
[features]
|
|
#! The crate provides a set of optional features that can be enabled in your `cargo.toml` file.
|
|
#!
|
|
## By default, we enable the crossterm backend as this is a reasonable choice for most applications
|
|
## as it is supported on Linux/Mac/Windows systems. We also enable the `underline-color` feature
|
|
## which allows you to set the underline color of text.
|
|
default = ["crossterm", "underline-color"]
|
|
#! Generally an application will only use one backend, so you should only enable one of the following features:
|
|
## enables the [`CrosstermBackend`](backend::CrosstermBackend) backend and adds a dependency on [`crossterm`].
|
|
crossterm = ["dep:crossterm"]
|
|
## enables the [`TermionBackend`](backend::TermionBackend) backend and adds a dependency on [`termion`].
|
|
termion = ["dep:termion"]
|
|
## enables the [`TermwizBackend`](backend::TermwizBackend) backend and adds a dependency on [`termwiz`].
|
|
termwiz = ["dep:termwiz"]
|
|
|
|
#! The following optional features are available for all backends:
|
|
## enables serialization and deserialization of style and color types using the [`serde`] crate.
|
|
## This is useful if you want to save themes to a file.
|
|
serde = ["dep:serde", "bitflags/serde", "compact_str/serde"]
|
|
|
|
## enables the [`border!`] macro.
|
|
macros = []
|
|
|
|
## enables all widgets.
|
|
all-widgets = ["widget-calendar"]
|
|
|
|
#! Widgets that add dependencies are gated behind feature flags to prevent unused transitive
|
|
#! dependencies. The available features are:
|
|
## enables the [`calendar`](widgets::calendar) widget module and adds a dependency on [`time`].
|
|
widget-calendar = ["dep:time"]
|
|
|
|
#! The following optional features are only available for some backends:
|
|
|
|
## enables the backend code that sets the underline color.
|
|
## Underline color is only supported by the [`CrosstermBackend`](backend::CrosstermBackend) backend,
|
|
## and is not supported on Windows 7.
|
|
underline-color = ["dep:crossterm"]
|
|
|
|
#! The following features are unstable and may change in the future:
|
|
|
|
## Enable all unstable features.
|
|
unstable = ["unstable-rendered-line-info", "unstable-widget-ref"]
|
|
|
|
## Enables the [`Paragraph::line_count`](widgets::Paragraph::line_count)
|
|
## [`Paragraph::line_width`](widgets::Paragraph::line_width) methods
|
|
## which are experimental and may change in the future.
|
|
## See [Issue 293](https://github.com/ratatui-org/ratatui/issues/293) for more details.
|
|
unstable-rendered-line-info = []
|
|
|
|
## Enables the [`WidgetRef`](widgets::WidgetRef) and [`StatefulWidgetRef`](widgets::StatefulWidgetRef) traits which are experimental and may change in
|
|
## the future.
|
|
unstable-widget-ref = []
|
|
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|
|
# see https://doc.rust-lang.org/nightly/rustdoc/scraped-examples.html
|
|
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
|
|
rustdoc-args = ["--cfg", "docsrs"]
|
|
|
|
# Improve benchmark consistency
|
|
[profile.bench]
|
|
codegen-units = 1
|
|
lto = true
|
|
|
|
[[bench]]
|
|
name = "barchart"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "block"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "line"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "list"
|
|
harness = false
|
|
|
|
[lib]
|
|
bench = false
|
|
|
|
[[bench]]
|
|
name = "paragraph"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "sparkline"
|
|
harness = false
|
|
|
|
|
|
[[example]]
|
|
name = "barchart"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "block"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "calendar"
|
|
required-features = ["crossterm", "widget-calendar"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "canvas"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "chart"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "colors"
|
|
required-features = ["crossterm"]
|
|
# this example is a bit verbose, so we don't want to include it in the docs
|
|
doc-scrape-examples = false
|
|
|
|
[[example]]
|
|
name = "colors_rgb"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "constraint-explorer"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "constraints"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = false
|
|
|
|
[[example]]
|
|
name = "custom_widget"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "demo"
|
|
# this runs for all of the terminal backends, so it can't be built using --all-features or scraped
|
|
doc-scrape-examples = false
|
|
|
|
[[example]]
|
|
name = "demo2"
|
|
required-features = ["crossterm", "widget-calendar"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "docsrs"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = false
|
|
|
|
[[example]]
|
|
name = "flex"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "gauge"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "hello_world"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "inline"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "layout"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "line_gauge"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "list"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "minimal"
|
|
required-features = ["crossterm"]
|
|
# prefer to show the more featureful examples in the docs
|
|
doc-scrape-examples = false
|
|
|
|
[[example]]
|
|
name = "modifiers"
|
|
required-features = ["crossterm"]
|
|
# this example is a bit verbose, so we don't want to include it in the docs
|
|
doc-scrape-examples = false
|
|
|
|
[[example]]
|
|
name = "panic"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "paragraph"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "popup"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "ratatui-logo"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "scrollbar"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "sparkline"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "table"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "tabs"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[example]]
|
|
name = "user_input"
|
|
required-features = ["crossterm"]
|
|
doc-scrape-examples = true
|
|
|
|
[[test]]
|
|
name = "state_serde"
|
|
required-features = ["serde"]
|