dirsql 0.3.86__tar.gz → 0.3.87__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dirsql-0.3.86 → dirsql-0.3.87}/Cargo.lock +1 -1
- {dirsql-0.3.86 → dirsql-0.3.87}/PKG-INFO +1 -1
- {dirsql-0.3.86/packages/rust → dirsql-0.3.87}/docs/reference/hooks.md +0 -1
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/Cargo.toml +1 -1
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/reference/hooks.md +0 -1
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/e2e-attestation.json +2 -2
- {dirsql-0.3.86 → dirsql-0.3.87/packages/rust}/docs/reference/hooks.md +0 -1
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/command.rs +2 -5
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/lib.rs +21 -4
- {dirsql-0.3.86 → dirsql-0.3.87}/Cargo.toml +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/README.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/__init__.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/_async.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/_dirsql.pyi +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/cli/__init__.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/cli/binary_path.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/cli/is_windows.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/cli/main.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/cli/resolve_config_extensions.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/py.typed +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/resolve_config_extensions.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/dirsql/resolve_extension.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/.claude/CLAUDE.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/.vitepress/config.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/.vitepress/theme/index.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/.vitepress/theme/lang.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/AGENTS.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/explanation.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/getting-started.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/howto/define-tables.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/howto/embed.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/howto/load-extension.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/howto/persist.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/howto/skip-files.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/index.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/migrations.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/package.json +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/playwright.config.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/pnpm-lock.yaml +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/pnpm-workspace.yaml +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/reference/cli.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/reference/columns.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/reference/config.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/reference/http-api.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/reference/sdk.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/tests/integration/home.spec.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/tests/integration/language-flag.spec.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/tests/integration/sidebar.spec.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/tests/unit/config.test.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/tests/unit/lang.test.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/docs/vitest.config.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/README.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/conftest.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/.claude/CLAUDE.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/.vitepress/config.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/.vitepress/theme/index.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/.vitepress/theme/lang.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/AGENTS.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/explanation.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/getting-started.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/howto/define-tables.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/howto/embed.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/howto/load-extension.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/howto/persist.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/howto/skip-files.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/index.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/migrations.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/package.json +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/playwright.config.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/pnpm-lock.yaml +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/pnpm-workspace.yaml +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/reference/cli.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/reference/columns.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/reference/config.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/reference/http-api.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/reference/sdk.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/tests/integration/home.spec.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/tests/integration/language-flag.spec.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/tests/integration/sidebar.spec.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/tests/unit/config.test.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/tests/unit/lang.test.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/vitest.config.ts +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/src/lib.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/tests/__init__.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/tests/conftest.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/tests/e2e/__init__.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/tests/integration/__init__.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/tests/integration/binding/__init__.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/python/tests/integration/hermetic/__init__.py +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/Cargo.toml +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/README.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/benches/db_bench.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/benches/differ_bench.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/benches/matcher_bench.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/benches/scanner_bench.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/explanation.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/getting-started.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/howto/columns-from-paths.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/howto/define-tables.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/howto/embed.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/howto/extract-from-contents.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/howto/load-extension.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/howto/persist.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/howto/react-to-changes.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/howto/search-by-meaning.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/howto/skip-files.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/index.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/migrations.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/reference/cli.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/reference/columns.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/reference/config.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/reference/http-api.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/docs/reference/sdk.md +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/bin/dirsql.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/cli/execute.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/cli/init.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/cli/mod.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/cli/router.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/cli/serialize.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/cli/server.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/config.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/db.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/default_config.toml +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/differ.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/matcher.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/persist.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/scanner.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/packages/rust/src/watcher.rs +0 -0
- {dirsql-0.3.86 → dirsql-0.3.87}/pyproject.toml +0 -0
|
@@ -102,7 +102,6 @@ row-mapping rules.
|
|
|
102
102
|
| Placeholder | Value |
|
|
103
103
|
|---|---|
|
|
104
104
|
| `{path}` | The matched file's path **relative to the index root**. Appended automatically as a final argument when the command omits it, so `extract.py` and `extract.py {path}` behave identically. |
|
|
105
|
-
| `{abspath}` | The matched file's absolute path. |
|
|
106
105
|
| `{root}` | The index root directory. |
|
|
107
106
|
|
|
108
107
|
### `pre-query`
|
|
@@ -4,7 +4,7 @@ name = "dirsql-py-ext"
|
|
|
4
4
|
# pypi/maturin handler can rewrite it via `write-version` before
|
|
5
5
|
# `maturin build`. `pyproject.toml` declares `dynamic = ["version"]`
|
|
6
6
|
# and maturin reads this field. Mirrors `packages/rust/Cargo.toml`.
|
|
7
|
-
version = "0.3.
|
|
7
|
+
version = "0.3.87"
|
|
8
8
|
# abi3 note: the `abi3-py311` pyo3 feature (below) builds ONE stable-ABI
|
|
9
9
|
# `cp311-abi3` wheel per platform that loads on every CPython >= 3.11
|
|
10
10
|
# (matching `pyproject.toml`'s `requires-python = ">=3.11"`), instead of
|
|
@@ -102,7 +102,6 @@ row-mapping rules.
|
|
|
102
102
|
| Placeholder | Value |
|
|
103
103
|
|---|---|
|
|
104
104
|
| `{path}` | The matched file's path **relative to the index root**. Appended automatically as a final argument when the command omits it, so `extract.py` and `extract.py {path}` behave identically. |
|
|
105
|
-
| `{abspath}` | The matched file's absolute path. |
|
|
106
105
|
| `{root}` | The index root directory. |
|
|
107
106
|
|
|
108
107
|
### `pre-query`
|
|
@@ -102,7 +102,6 @@ row-mapping rules.
|
|
|
102
102
|
| Placeholder | Value |
|
|
103
103
|
|---|---|
|
|
104
104
|
| `{path}` | The matched file's path **relative to the index root**. Appended automatically as a final argument when the command omits it, so `extract.py` and `extract.py {path}` behave identically. |
|
|
105
|
-
| `{abspath}` | The matched file's absolute path. |
|
|
106
105
|
| `{root}` | The index root directory. |
|
|
107
106
|
|
|
108
107
|
### `pre-query`
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
//! single argument — but no shell is ever invoked: there is no globbing,
|
|
10
10
|
//! piping, or variable expansion. To get a real shell, ask for one
|
|
11
11
|
//! explicitly (`sh -c '…'`).
|
|
12
|
-
//! - **Placeholders.** `{path}`, `{args}`, `{
|
|
12
|
+
//! - **Placeholders.** `{path}`, `{args}`, `{root}` (and any
|
|
13
13
|
//! others a caller supplies) are substituted into whole argv tokens, every
|
|
14
14
|
//! occurrence. Substitution is single-pass and left-to-right per token, so a
|
|
15
15
|
//! value that itself contains `{…}` is never re-scanned — a substituted value
|
|
@@ -437,10 +437,7 @@ mod tests {
|
|
|
437
437
|
|
|
438
438
|
#[test]
|
|
439
439
|
fn substitute_only_placeholder_is_dropped_when_absent() {
|
|
440
|
-
assert_eq!(
|
|
441
|
-
argv("run", &[Placeholder::new("abspath", "/tmp/x")]),
|
|
442
|
-
["run"]
|
|
443
|
-
);
|
|
440
|
+
assert_eq!(argv("run", &[Placeholder::new("extra", "/tmp/x")]), ["run"]);
|
|
444
441
|
}
|
|
445
442
|
|
|
446
443
|
#[test]
|
|
@@ -1428,9 +1428,8 @@ fn build_tables_from_config(
|
|
|
1428
1428
|
/// into rows.
|
|
1429
1429
|
///
|
|
1430
1430
|
/// Placeholders: `{path}` (the file relative to `root`, append-if-absent so
|
|
1431
|
-
/// `cmd` and `cmd {path}` behave identically)
|
|
1432
|
-
///
|
|
1433
|
-
/// when the file is not under `root`.
|
|
1431
|
+
/// `cmd` and `cmd {path}` behave identically) and `{root}` (the index root).
|
|
1432
|
+
/// `{path}` falls back to the absolute path when the file is not under `root`.
|
|
1434
1433
|
///
|
|
1435
1434
|
/// Per-file isolation: any failure — a spawn/exit/timeout error from
|
|
1436
1435
|
/// [`command::run_command`], or output that is not a JSON array of objects —
|
|
@@ -1451,7 +1450,6 @@ fn run_on_file(
|
|
|
1451
1450
|
.unwrap_or_else(|_| abs_path.to_string());
|
|
1452
1451
|
let placeholders = [
|
|
1453
1452
|
Placeholder::append("path", rel),
|
|
1454
|
-
Placeholder::new("abspath", abs_path),
|
|
1455
1453
|
Placeholder::new("root", root.to_string_lossy().into_owned()),
|
|
1456
1454
|
];
|
|
1457
1455
|
|
|
@@ -2890,6 +2888,25 @@ mod internal_tests {
|
|
|
2890
2888
|
assert_eq!(rows[0]["n"], Value::Integer(1));
|
|
2891
2889
|
}
|
|
2892
2890
|
|
|
2891
|
+
/// `{abspath}` is not in the substitution table: it is left literal like any
|
|
2892
|
+
/// unknown `{…}`, so `printf` receives the string `{abspath}` verbatim. The
|
|
2893
|
+
/// template references `{path}` so that arg is the real path (and no path is
|
|
2894
|
+
/// appended), isolating the `{abspath}` behavior in the `q` column.
|
|
2895
|
+
#[test]
|
|
2896
|
+
fn run_on_file_does_not_substitute_abspath() {
|
|
2897
|
+
let dir = TempDir::new().unwrap();
|
|
2898
|
+
let abs = dir.path().join("f.txt");
|
|
2899
|
+
let rows = run_on_file(
|
|
2900
|
+
r#"printf '[{"p":"%s","q":"%s"}]' {path} {abspath}"#,
|
|
2901
|
+
&abs.to_string_lossy(),
|
|
2902
|
+
dir.path(),
|
|
2903
|
+
dir.path(),
|
|
2904
|
+
command::DEFAULT_COMMAND_TIMEOUT,
|
|
2905
|
+
);
|
|
2906
|
+
assert_eq!(rows.len(), 1);
|
|
2907
|
+
assert_eq!(rows[0]["q"], Value::Text("{abspath}".into()));
|
|
2908
|
+
}
|
|
2909
|
+
|
|
2893
2910
|
/// A command that cannot be spawned yields no rows (per-file isolation).
|
|
2894
2911
|
#[test]
|
|
2895
2912
|
fn run_on_file_returns_no_rows_on_spawn_failure() {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dirsql-0.3.86 → dirsql-0.3.87}/packages/python/docs/tests/integration/language-flag.spec.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|