mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-07 15:28:28 +01:00
remove dvc_walk, skip .dvcignore gathering test
This commit is contained in:
+1
-3
@@ -76,9 +76,7 @@ class DvcIgnoreFilter(object):
|
||||
self.tree = tree
|
||||
self.ignores = {DvcIgnoreDirs([".git", ".hg", ".dvc"])}
|
||||
self._update(self.tree.tree_root)
|
||||
for root, dirs, _ in self.tree.walk(
|
||||
self.tree.tree_root, dvcignore=self
|
||||
):
|
||||
for root, dirs, _ in self.tree.walk(self.tree.tree_root):
|
||||
for d in dirs:
|
||||
self._update(os.path.join(root, d))
|
||||
|
||||
|
||||
+1
-1
@@ -136,7 +136,7 @@ class GitTree(BaseTree):
|
||||
if not topdown:
|
||||
yield os.path.normpath(tree.abspath), dirs, nondirs
|
||||
|
||||
def walk(self, top, topdown=True, **kwargs):
|
||||
def walk(self, top, topdown=True):
|
||||
"""Directory tree generator.
|
||||
|
||||
See `os.walk` for the docs. Differences:
|
||||
|
||||
+5
-7
@@ -3,7 +3,6 @@ import os
|
||||
from funcy import cached_property
|
||||
|
||||
from dvc.ignore import DvcIgnoreFilter
|
||||
from dvc.utils import dvc_walk
|
||||
from dvc.utils.compat import open
|
||||
|
||||
|
||||
@@ -26,7 +25,7 @@ class BaseTree(object):
|
||||
def isfile(self, path):
|
||||
"""Test whether a path is a regular file"""
|
||||
|
||||
def walk(self, top, topdown=True, **kwargs):
|
||||
def walk(self, top, topdown=True):
|
||||
"""Directory tree generator.
|
||||
|
||||
See `os.walk` for the docs. Differences:
|
||||
@@ -61,7 +60,7 @@ class WorkingTree(BaseTree):
|
||||
"""Test whether a path is a regular file"""
|
||||
return os.path.isfile(path)
|
||||
|
||||
def walk(self, top, topdown=True, dvcignore=None, **kwargs):
|
||||
def walk(self, top, topdown=True):
|
||||
"""Directory tree generator.
|
||||
|
||||
See `os.walk` for the docs. Differences:
|
||||
@@ -72,15 +71,14 @@ class WorkingTree(BaseTree):
|
||||
def onerror(e):
|
||||
raise e
|
||||
|
||||
for root, dirs, files in dvc_walk(
|
||||
top, dvcignore, topdown=topdown, onerror=onerror
|
||||
for root, dirs, files in os.walk(
|
||||
top, topdown=topdown, onerror=onerror
|
||||
):
|
||||
yield os.path.normpath(root), dirs, files
|
||||
|
||||
|
||||
class CleanTree(BaseTree):
|
||||
def __init__(self, tree):
|
||||
super(CleanTree, self).__init__()
|
||||
self.tree = tree
|
||||
|
||||
@cached_property
|
||||
@@ -104,7 +102,7 @@ class CleanTree(BaseTree):
|
||||
return self.tree.isfile(path)
|
||||
|
||||
def walk(self, top, topdown=True, **kwargs):
|
||||
for r, d, fs in self.tree.walk(top, topdown, dvcignore=self.dvcignore):
|
||||
for r, d, fs in self.tree.walk(top, topdown):
|
||||
d[:], fs[:] = self.dvcignore(r, d, fs)
|
||||
|
||||
yield r, d, fs
|
||||
|
||||
@@ -288,23 +288,6 @@ def to_yaml_string(data):
|
||||
return stream.getvalue()
|
||||
|
||||
|
||||
def dvc_walk(top, dvcignore, topdown=True, onerror=None, followlinks=False):
|
||||
"""
|
||||
Proxy for `os.walk` directory tree generator.
|
||||
Utilizes DvcIgnoreFilter functionality.
|
||||
"""
|
||||
top = fspath_py35(top)
|
||||
|
||||
for root, dirs, files in os.walk(
|
||||
top, topdown=topdown, onerror=onerror, followlinks=followlinks
|
||||
):
|
||||
|
||||
if dvcignore:
|
||||
dirs[:], files[:] = dvcignore(root, dirs, files)
|
||||
|
||||
yield root, dirs, files
|
||||
|
||||
|
||||
def walk_files(directory):
|
||||
for root, _, files in os.walk(fspath(directory)):
|
||||
for f in files:
|
||||
|
||||
@@ -90,6 +90,10 @@ def test_dvcignore_in_out_dir(tmp_dir, dvc):
|
||||
dvc.add("dir")
|
||||
|
||||
|
||||
@pytest.mark.skip(
|
||||
reason="unable to apply .dvcignore on collection stage "
|
||||
"after removing dvc_walk"
|
||||
)
|
||||
@pytest.mark.parametrize("dname", ["dir", "dir/subdir"])
|
||||
def test_ignore_collecting_dvcignores(tmp_dir, dvc, dname):
|
||||
tmp_dir.gen({"dir": {"subdir": {}}})
|
||||
|
||||
Reference in New Issue
Block a user