mirror of
https://github.com/astral-sh/ruff.git
synced 2025-09-27 12:29:28 +00:00
Set a default on PythonVersion
(#6446)
## Summary I think it makes sense for `PythonVersion::default()` to return our minimum-supported non-EOL version. ## Test Plan `cargo test` --------- Co-authored-by: Zanie <contact@zanie.dev>
This commit is contained in:
parent
e4f57434a2
commit
38b9fb8bbd
4 changed files with 17 additions and 6 deletions
|
@ -24,8 +24,6 @@ pub const PREFIXES: &[RuleSelector] = &[
|
||||||
RuleSelector::Linter(Linter::Pyflakes),
|
RuleSelector::Linter(Linter::Pyflakes),
|
||||||
];
|
];
|
||||||
|
|
||||||
pub const TARGET_VERSION: PythonVersion = PythonVersion::Py38;
|
|
||||||
|
|
||||||
pub const TASK_TAGS: &[&str] = &["TODO", "FIXME", "XXX"];
|
pub const TASK_TAGS: &[&str] = &["TODO", "FIXME", "XXX"];
|
||||||
|
|
||||||
pub static DUMMY_VARIABLE_RGX: Lazy<Regex> =
|
pub static DUMMY_VARIABLE_RGX: Lazy<Regex> =
|
||||||
|
@ -91,7 +89,7 @@ impl Default for Settings {
|
||||||
respect_gitignore: true,
|
respect_gitignore: true,
|
||||||
src: vec![path_dedot::CWD.clone()],
|
src: vec![path_dedot::CWD.clone()],
|
||||||
tab_size: TabSize::default(),
|
tab_size: TabSize::default(),
|
||||||
target_version: TARGET_VERSION,
|
target_version: PythonVersion::default(),
|
||||||
task_tags: TASK_TAGS.iter().map(ToString::to_string).collect(),
|
task_tags: TASK_TAGS.iter().map(ToString::to_string).collect(),
|
||||||
typing_modules: vec![],
|
typing_modules: vec![],
|
||||||
flake8_annotations: flake8_annotations::settings::Settings::default(),
|
flake8_annotations: flake8_annotations::settings::Settings::default(),
|
||||||
|
|
|
@ -183,7 +183,7 @@ impl Settings {
|
||||||
.src
|
.src
|
||||||
.unwrap_or_else(|| vec![project_root.to_path_buf()]),
|
.unwrap_or_else(|| vec![project_root.to_path_buf()]),
|
||||||
project_root: project_root.to_path_buf(),
|
project_root: project_root.to_path_buf(),
|
||||||
target_version: config.target_version.unwrap_or(defaults::TARGET_VERSION),
|
target_version: config.target_version.unwrap_or_default(),
|
||||||
task_tags: config.task_tags.unwrap_or_else(|| {
|
task_tags: config.task_tags.unwrap_or_else(|| {
|
||||||
defaults::TASK_TAGS
|
defaults::TASK_TAGS
|
||||||
.iter()
|
.iter()
|
||||||
|
|
|
@ -19,13 +19,25 @@ use crate::registry::RuleSet;
|
||||||
use crate::rule_selector::RuleSelector;
|
use crate::rule_selector::RuleSelector;
|
||||||
|
|
||||||
#[derive(
|
#[derive(
|
||||||
Clone, Copy, Debug, PartialOrd, Ord, PartialEq, Eq, Serialize, Deserialize, CacheKey, EnumIter,
|
Clone,
|
||||||
|
Copy,
|
||||||
|
Debug,
|
||||||
|
PartialOrd,
|
||||||
|
Ord,
|
||||||
|
PartialEq,
|
||||||
|
Eq,
|
||||||
|
Default,
|
||||||
|
Serialize,
|
||||||
|
Deserialize,
|
||||||
|
CacheKey,
|
||||||
|
EnumIter,
|
||||||
)]
|
)]
|
||||||
#[cfg_attr(feature = "clap", derive(clap::ValueEnum))]
|
#[cfg_attr(feature = "clap", derive(clap::ValueEnum))]
|
||||||
#[serde(rename_all = "lowercase")]
|
#[serde(rename_all = "lowercase")]
|
||||||
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schemars", derive(schemars::JsonSchema))]
|
||||||
pub enum PythonVersion {
|
pub enum PythonVersion {
|
||||||
Py37,
|
Py37,
|
||||||
|
#[default]
|
||||||
Py38,
|
Py38,
|
||||||
Py39,
|
Py39,
|
||||||
Py310,
|
Py310,
|
||||||
|
|
|
@ -20,6 +20,7 @@ use ruff::rules::{
|
||||||
};
|
};
|
||||||
use ruff::settings::configuration::Configuration;
|
use ruff::settings::configuration::Configuration;
|
||||||
use ruff::settings::options::Options;
|
use ruff::settings::options::Options;
|
||||||
|
use ruff::settings::types::PythonVersion;
|
||||||
use ruff::settings::{defaults, flags, Settings};
|
use ruff::settings::{defaults, flags, Settings};
|
||||||
use ruff_python_ast::PySourceType;
|
use ruff_python_ast::PySourceType;
|
||||||
use ruff_python_codegen::Stylist;
|
use ruff_python_codegen::Stylist;
|
||||||
|
@ -134,7 +135,7 @@ impl Workspace {
|
||||||
line_length: Some(LineLength::default()),
|
line_length: Some(LineLength::default()),
|
||||||
select: Some(defaults::PREFIXES.to_vec()),
|
select: Some(defaults::PREFIXES.to_vec()),
|
||||||
tab_size: Some(TabSize::default()),
|
tab_size: Some(TabSize::default()),
|
||||||
target_version: Some(defaults::TARGET_VERSION),
|
target_version: Some(PythonVersion::default()),
|
||||||
// Ignore a bunch of options that don't make sense in a single-file editor.
|
// Ignore a bunch of options that don't make sense in a single-file editor.
|
||||||
cache_dir: None,
|
cache_dir: None,
|
||||||
exclude: None,
|
exclude: None,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue