Compare commits
4 Commits
0.14.2
...
gankra/roo
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8e12163754 | ||
|
|
5473636256 | ||
|
|
b96e1b9759 | ||
|
|
05cde8bd19 |
@@ -190,6 +190,7 @@ impl Files {
|
||||
let roots = self.inner.roots.read().unwrap();
|
||||
|
||||
let absolute = SystemPath::absolute(path, db.system().current_directory());
|
||||
|
||||
roots.at(&absolute)
|
||||
}
|
||||
|
||||
@@ -211,7 +212,10 @@ impl Files {
|
||||
let mut roots = self.inner.roots.write().unwrap();
|
||||
|
||||
let absolute = SystemPath::absolute(path, db.system().current_directory());
|
||||
roots.try_add(db, absolute, kind)
|
||||
// We need to resolve away symlinks here to avoid getting confused about subdirectories.
|
||||
let canonicalized = db.system().canonicalize_path(&absolute).unwrap_or(absolute);
|
||||
|
||||
roots.try_add(db, canonicalized, kind)
|
||||
}
|
||||
|
||||
/// Updates the revision of the root for `path`.
|
||||
|
||||
@@ -91,10 +91,20 @@ get_unique_task_id()
|
||||
task_decorator_factory()
|
||||
|
||||
|
||||
from airflow.models import Param
|
||||
from airflow.models import DagParam, Param, ParamsDict
|
||||
|
||||
# airflow.models
|
||||
Param()
|
||||
DagParam()
|
||||
ParamsDict()
|
||||
|
||||
|
||||
from airflow.models.param import DagParam, Param, ParamsDict
|
||||
|
||||
# airflow.models.param
|
||||
Param()
|
||||
DagParam()
|
||||
ParamsDict()
|
||||
|
||||
|
||||
from airflow.sensors.base import (
|
||||
|
||||
@@ -262,9 +262,14 @@ fn check_name(checker: &Checker, expr: &Expr, range: TextRange) {
|
||||
name: (*rest).to_string(),
|
||||
}
|
||||
}
|
||||
["airflow", "models", "Param"] => Replacement::Rename {
|
||||
[
|
||||
"airflow",
|
||||
"models",
|
||||
..,
|
||||
rest @ ("Param" | "ParamsDict" | "DagParam"),
|
||||
] => Replacement::SourceModuleMoved {
|
||||
module: "airflow.sdk.definitions.param",
|
||||
name: "Param",
|
||||
name: (*rest).to_string(),
|
||||
},
|
||||
|
||||
// airflow.models.baseoperator
|
||||
|
||||
@@ -737,79 +737,185 @@ AIR311 [*] `airflow.models.Param` is removed in Airflow 3.0; It still works in A
|
||||
96 | # airflow.models
|
||||
97 | Param()
|
||||
| ^^^^^
|
||||
98 | DagParam()
|
||||
99 | ParamsDict()
|
||||
|
|
||||
help: Use `Param` from `airflow.sdk.definitions.param` instead.
|
||||
91 | task_decorator_factory()
|
||||
92 |
|
||||
93 |
|
||||
- from airflow.models import Param
|
||||
94 + from airflow.sdk.definitions.param import Param
|
||||
95 |
|
||||
- from airflow.models import DagParam, Param, ParamsDict
|
||||
94 + from airflow.models import DagParam, ParamsDict
|
||||
95 + from airflow.sdk.definitions.param import Param
|
||||
96 |
|
||||
97 | # airflow.models
|
||||
98 | Param()
|
||||
note: This is an unsafe fix and may change runtime behavior
|
||||
|
||||
AIR311 [*] `airflow.models.DagParam` is removed in Airflow 3.0; It still works in Airflow 3.0 but is expected to be removed in a future version.
|
||||
--> AIR311_names.py:98:1
|
||||
|
|
||||
96 | # airflow.models
|
||||
97 | Param()
|
||||
98 | DagParam()
|
||||
| ^^^^^^^^
|
||||
99 | ParamsDict()
|
||||
|
|
||||
help: Use `DagParam` from `airflow.sdk.definitions.param` instead.
|
||||
91 | task_decorator_factory()
|
||||
92 |
|
||||
93 |
|
||||
- from airflow.models import DagParam, Param, ParamsDict
|
||||
94 + from airflow.models import Param, ParamsDict
|
||||
95 + from airflow.sdk.definitions.param import DagParam
|
||||
96 |
|
||||
97 | # airflow.models
|
||||
98 | Param()
|
||||
note: This is an unsafe fix and may change runtime behavior
|
||||
|
||||
AIR311 [*] `airflow.models.ParamsDict` is removed in Airflow 3.0; It still works in Airflow 3.0 but is expected to be removed in a future version.
|
||||
--> AIR311_names.py:99:1
|
||||
|
|
||||
97 | Param()
|
||||
98 | DagParam()
|
||||
99 | ParamsDict()
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
help: Use `ParamsDict` from `airflow.sdk.definitions.param` instead.
|
||||
91 | task_decorator_factory()
|
||||
92 |
|
||||
93 |
|
||||
- from airflow.models import DagParam, Param, ParamsDict
|
||||
94 + from airflow.models import DagParam, Param
|
||||
95 + from airflow.sdk.definitions.param import ParamsDict
|
||||
96 |
|
||||
97 | # airflow.models
|
||||
98 | Param()
|
||||
note: This is an unsafe fix and may change runtime behavior
|
||||
|
||||
AIR311 [*] `airflow.models.param.Param` is removed in Airflow 3.0; It still works in Airflow 3.0 but is expected to be removed in a future version.
|
||||
--> AIR311_names.py:105:1
|
||||
|
|
||||
104 | # airflow.models.param
|
||||
105 | Param()
|
||||
| ^^^^^
|
||||
106 | DagParam()
|
||||
107 | ParamsDict()
|
||||
|
|
||||
help: Use `Param` from `airflow.sdk.definitions.param` instead.
|
||||
99 | ParamsDict()
|
||||
100 |
|
||||
101 |
|
||||
- from airflow.models.param import DagParam, Param, ParamsDict
|
||||
102 + from airflow.models.param import DagParam, ParamsDict
|
||||
103 + from airflow.sdk.definitions.param import Param
|
||||
104 |
|
||||
105 | # airflow.models.param
|
||||
106 | Param()
|
||||
note: This is an unsafe fix and may change runtime behavior
|
||||
|
||||
AIR311 [*] `airflow.models.param.DagParam` is removed in Airflow 3.0; It still works in Airflow 3.0 but is expected to be removed in a future version.
|
||||
--> AIR311_names.py:106:1
|
||||
|
|
||||
104 | # airflow.models.param
|
||||
105 | Param()
|
||||
106 | DagParam()
|
||||
| ^^^^^^^^
|
||||
107 | ParamsDict()
|
||||
|
|
||||
help: Use `DagParam` from `airflow.sdk.definitions.param` instead.
|
||||
99 | ParamsDict()
|
||||
100 |
|
||||
101 |
|
||||
- from airflow.models.param import DagParam, Param, ParamsDict
|
||||
102 + from airflow.models.param import Param, ParamsDict
|
||||
103 + from airflow.sdk.definitions.param import DagParam
|
||||
104 |
|
||||
105 | # airflow.models.param
|
||||
106 | Param()
|
||||
note: This is an unsafe fix and may change runtime behavior
|
||||
|
||||
AIR311 [*] `airflow.models.param.ParamsDict` is removed in Airflow 3.0; It still works in Airflow 3.0 but is expected to be removed in a future version.
|
||||
--> AIR311_names.py:107:1
|
||||
|
|
||||
105 | Param()
|
||||
106 | DagParam()
|
||||
107 | ParamsDict()
|
||||
| ^^^^^^^^^^
|
||||
|
|
||||
help: Use `ParamsDict` from `airflow.sdk.definitions.param` instead.
|
||||
99 | ParamsDict()
|
||||
100 |
|
||||
101 |
|
||||
- from airflow.models.param import DagParam, Param, ParamsDict
|
||||
102 + from airflow.models.param import DagParam, Param
|
||||
103 + from airflow.sdk.definitions.param import ParamsDict
|
||||
104 |
|
||||
105 | # airflow.models.param
|
||||
106 | Param()
|
||||
note: This is an unsafe fix and may change runtime behavior
|
||||
|
||||
AIR311 [*] `airflow.sensors.base.BaseSensorOperator` is removed in Airflow 3.0; It still works in Airflow 3.0 but is expected to be removed in a future version.
|
||||
--> AIR311_names.py:107:1
|
||||
--> AIR311_names.py:117:1
|
||||
|
|
||||
106 | # airflow.sensors.base
|
||||
107 | BaseSensorOperator()
|
||||
116 | # airflow.sensors.base
|
||||
117 | BaseSensorOperator()
|
||||
| ^^^^^^^^^^^^^^^^^^
|
||||
108 | PokeReturnValue()
|
||||
109 | poke_mode_only()
|
||||
118 | PokeReturnValue()
|
||||
119 | poke_mode_only()
|
||||
|
|
||||
help: Use `BaseSensorOperator` from `airflow.sdk` instead.
|
||||
98 |
|
||||
99 |
|
||||
100 | from airflow.sensors.base import (
|
||||
108 |
|
||||
109 |
|
||||
110 | from airflow.sensors.base import (
|
||||
- BaseSensorOperator,
|
||||
101 | PokeReturnValue,
|
||||
102 | poke_mode_only,
|
||||
103 | )
|
||||
104 + from airflow.sdk import BaseSensorOperator
|
||||
105 |
|
||||
106 | # airflow.sensors.base
|
||||
107 | BaseSensorOperator()
|
||||
111 | PokeReturnValue,
|
||||
112 | poke_mode_only,
|
||||
113 | )
|
||||
114 + from airflow.sdk import BaseSensorOperator
|
||||
115 |
|
||||
116 | # airflow.sensors.base
|
||||
117 | BaseSensorOperator()
|
||||
note: This is an unsafe fix and may change runtime behavior
|
||||
|
||||
AIR311 [*] `airflow.sensors.base.PokeReturnValue` is removed in Airflow 3.0; It still works in Airflow 3.0 but is expected to be removed in a future version.
|
||||
--> AIR311_names.py:108:1
|
||||
--> AIR311_names.py:118:1
|
||||
|
|
||||
106 | # airflow.sensors.base
|
||||
107 | BaseSensorOperator()
|
||||
108 | PokeReturnValue()
|
||||
116 | # airflow.sensors.base
|
||||
117 | BaseSensorOperator()
|
||||
118 | PokeReturnValue()
|
||||
| ^^^^^^^^^^^^^^^
|
||||
109 | poke_mode_only()
|
||||
119 | poke_mode_only()
|
||||
|
|
||||
help: Use `PokeReturnValue` from `airflow.sdk` instead.
|
||||
99 |
|
||||
100 | from airflow.sensors.base import (
|
||||
101 | BaseSensorOperator,
|
||||
109 |
|
||||
110 | from airflow.sensors.base import (
|
||||
111 | BaseSensorOperator,
|
||||
- PokeReturnValue,
|
||||
102 | poke_mode_only,
|
||||
103 | )
|
||||
104 + from airflow.sdk import PokeReturnValue
|
||||
105 |
|
||||
106 | # airflow.sensors.base
|
||||
107 | BaseSensorOperator()
|
||||
112 | poke_mode_only,
|
||||
113 | )
|
||||
114 + from airflow.sdk import PokeReturnValue
|
||||
115 |
|
||||
116 | # airflow.sensors.base
|
||||
117 | BaseSensorOperator()
|
||||
note: This is an unsafe fix and may change runtime behavior
|
||||
|
||||
AIR311 [*] `airflow.sensors.base.poke_mode_only` is removed in Airflow 3.0; It still works in Airflow 3.0 but is expected to be removed in a future version.
|
||||
--> AIR311_names.py:109:1
|
||||
--> AIR311_names.py:119:1
|
||||
|
|
||||
107 | BaseSensorOperator()
|
||||
108 | PokeReturnValue()
|
||||
109 | poke_mode_only()
|
||||
117 | BaseSensorOperator()
|
||||
118 | PokeReturnValue()
|
||||
119 | poke_mode_only()
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
help: Use `poke_mode_only` from `airflow.sdk` instead.
|
||||
100 | from airflow.sensors.base import (
|
||||
101 | BaseSensorOperator,
|
||||
102 | PokeReturnValue,
|
||||
110 | from airflow.sensors.base import (
|
||||
111 | BaseSensorOperator,
|
||||
112 | PokeReturnValue,
|
||||
- poke_mode_only,
|
||||
103 | )
|
||||
104 + from airflow.sdk import poke_mode_only
|
||||
105 |
|
||||
106 | # airflow.sensors.base
|
||||
107 | BaseSensorOperator()
|
||||
113 | )
|
||||
114 + from airflow.sdk import poke_mode_only
|
||||
115 |
|
||||
116 | # airflow.sensors.base
|
||||
117 | BaseSensorOperator()
|
||||
note: This is an unsafe fix and may change runtime behavior
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
use camino::{Utf8Component, Utf8PathBuf};
|
||||
use camino::{Utf8Component, Utf8PathBuf, Utf8Prefix};
|
||||
use ruff_db::Db as SourceDb;
|
||||
use ruff_db::diagnostic::Severity;
|
||||
use ruff_db::files::{File, Files};
|
||||
@@ -180,11 +180,18 @@ impl System for MdtestSystem {
|
||||
.canonicalize_path(&self.normalize_path(path))?;
|
||||
|
||||
if let MdtestSystemInner::Os { os_system, .. } = &*self.0 {
|
||||
// Make the path relative to the current directory
|
||||
Ok(canonicalized
|
||||
.strip_prefix(os_system.current_directory())
|
||||
.unwrap()
|
||||
.to_owned())
|
||||
// Make the path relative to the current directory if the path doesn't require
|
||||
// UNC gunk (`//?/`) to be valid (`strip_prefix` gets really messy otherwise).
|
||||
if let Some(Utf8Component::Prefix(prefix)) = canonicalized.components().next()
|
||||
&& let Utf8Prefix::VerbatimDisk(_) = prefix.kind()
|
||||
{
|
||||
Ok(canonicalized)
|
||||
} else {
|
||||
Ok(canonicalized
|
||||
.strip_prefix(os_system.current_directory())
|
||||
.unwrap()
|
||||
.to_owned())
|
||||
}
|
||||
} else {
|
||||
Ok(canonicalized)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user