mirror of
https://github.com/astral-sh/ruff.git
synced 2025-09-26 11:59:35 +00:00
Add plugin properties to settings cache key (#559)
This commit is contained in:
parent
94597fefc1
commit
d448281b33
4 changed files with 10 additions and 5 deletions
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
|
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Hash)]
|
||||||
#[serde(deny_unknown_fields, rename_all = "kebab-case")]
|
#[serde(deny_unknown_fields, rename_all = "kebab-case")]
|
||||||
pub enum Quote {
|
pub enum Quote {
|
||||||
Single,
|
Single,
|
||||||
|
@ -18,7 +18,7 @@ pub struct Options {
|
||||||
pub avoid_escape: Option<bool>,
|
pub avoid_escape: Option<bool>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug, Hash)]
|
||||||
pub struct Settings {
|
pub struct Settings {
|
||||||
pub inline_quotes: Quote,
|
pub inline_quotes: Quote,
|
||||||
pub multiline_quotes: Quote,
|
pub multiline_quotes: Quote,
|
||||||
|
|
|
@ -29,7 +29,7 @@ pub struct Options {
|
||||||
pub staticmethod_decorators: Option<Vec<String>>,
|
pub staticmethod_decorators: Option<Vec<String>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug, Hash)]
|
||||||
pub struct Settings {
|
pub struct Settings {
|
||||||
pub ignore_names: Vec<String>,
|
pub ignore_names: Vec<String>,
|
||||||
pub classmethod_decorators: Vec<String>,
|
pub classmethod_decorators: Vec<String>,
|
||||||
|
|
|
@ -84,14 +84,19 @@ impl Settings {
|
||||||
|
|
||||||
impl Hash for Settings {
|
impl Hash for Settings {
|
||||||
fn hash<H: Hasher>(&self, state: &mut H) {
|
fn hash<H: Hasher>(&self, state: &mut H) {
|
||||||
self.line_length.hash(state);
|
// Add base properties in alphabetical order.
|
||||||
self.dummy_variable_rgx.as_str().hash(state);
|
self.dummy_variable_rgx.as_str().hash(state);
|
||||||
for value in self.enabled.iter() {
|
for value in self.enabled.iter() {
|
||||||
value.hash(state);
|
value.hash(state);
|
||||||
}
|
}
|
||||||
|
self.line_length.hash(state);
|
||||||
for value in self.per_file_ignores.iter() {
|
for value in self.per_file_ignores.iter() {
|
||||||
value.hash(state);
|
value.hash(state);
|
||||||
}
|
}
|
||||||
|
self.target_version.hash(state);
|
||||||
|
// Add plugin properties in alphabetical order.
|
||||||
|
self.flake8_quotes.hash(state);
|
||||||
|
self.pep8_naming.hash(state);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ use crate::checks::CheckCode;
|
||||||
use crate::checks_gen::CheckCodePrefix;
|
use crate::checks_gen::CheckCodePrefix;
|
||||||
use crate::fs;
|
use crate::fs;
|
||||||
|
|
||||||
#[derive(Clone, Debug, PartialOrd, PartialEq, Eq, Serialize, Deserialize)]
|
#[derive(Clone, Debug, PartialOrd, PartialEq, Eq, Serialize, Deserialize, Hash)]
|
||||||
pub enum PythonVersion {
|
pub enum PythonVersion {
|
||||||
Py33,
|
Py33,
|
||||||
Py34,
|
Py34,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue