summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOliver Albertini <oliverralbertini@users.noreply.github.com>2021-09-15 05:07:45 -0700
committerGitHub <noreply@github.com>2021-09-15 21:07:45 +0900
commitf769f64c079d2f3216559234fb92673182089267 (patch)
treec2266520dd129a489b1178c87b6cb34066f8d3d6
parent19437e25d05950ab83dce285b4b8ec5166e06dba (diff)
downloadale-f769f64c079d2f3216559234fb92673182089267.zip
[ale-python-root] add `.pyre_configuration.local` to list of files (#3900)
Without this, we have one `pyre` process running across different pyre projects. With this change, files in different projects can be linted with pyre at the same time. Co-authored-by: Oliver Ruben Albertini <ora@fb.com>
-rw-r--r--autoload/ale/python.vim1
-rw-r--r--doc/ale-python.txt1
-rw-r--r--test/linter/test_pyre.vader7
-rw-r--r--test/test-files/python/pyre_configuration_dir/.pyre_configuration.local0
-rw-r--r--test/test-files/python/pyre_configuration_dir/foo/__init__.py0
-rw-r--r--test/test-files/python/pyre_configuration_dir/foo/bar.py0
6 files changed, 9 insertions, 0 deletions
diff --git a/autoload/ale/python.vim b/autoload/ale/python.vim
index ee856a27..81cb06e0 100644
--- a/autoload/ale/python.vim
+++ b/autoload/ale/python.vim
@@ -24,6 +24,7 @@ function! ale#python#FindProjectRootIni(buffer) abort
\|| filereadable(l:path . '/setup.cfg')
\|| filereadable(l:path . '/pytest.ini')
\|| filereadable(l:path . '/tox.ini')
+ \|| filereadable(l:path . '/.pyre_configuration.local')
\|| filereadable(l:path . '/mypy.ini')
\|| filereadable(l:path . '/pycodestyle.cfg')
\|| filereadable(l:path . '/.flake8')
diff --git a/doc/ale-python.txt b/doc/ale-python.txt
index 6e03e872..8f0d8ffa 100644
--- a/doc/ale-python.txt
+++ b/doc/ale-python.txt
@@ -35,6 +35,7 @@ ALE will look for configuration files with the following filenames. >
setup.cfg
pytest.ini
tox.ini
+ .pyre_configuration.local
mypy.ini
pycodestyle.cfg
.flake8
diff --git a/test/linter/test_pyre.vader b/test/linter/test_pyre.vader
index 335e31f2..53f84e6f 100644
--- a/test/linter/test_pyre.vader
+++ b/test/linter/test_pyre.vader
@@ -57,3 +57,10 @@ Execute(Poetry is detected when python_pyre_auto_poetry is set):
AssertLinter 'poetry',
\ ale#Escape('poetry') . ' run pyre persistent'
+
+Execute(The FindProjectRoot should detect the project root directory for namespace package via .pyre_configuration.local):
+ silent execute 'file ' . fnameescape(g:dir . '/../test-files/python/pyre_configuration_dir/foo/bar.py')
+
+ AssertEqual
+ \ ale#path#Simplify(g:dir . '/../test-files/python/pyre_configuration_dir'),
+ \ ale#python#FindProjectRoot(bufnr(''))
diff --git a/test/test-files/python/pyre_configuration_dir/.pyre_configuration.local b/test/test-files/python/pyre_configuration_dir/.pyre_configuration.local
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/test/test-files/python/pyre_configuration_dir/.pyre_configuration.local
diff --git a/test/test-files/python/pyre_configuration_dir/foo/__init__.py b/test/test-files/python/pyre_configuration_dir/foo/__init__.py
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/test/test-files/python/pyre_configuration_dir/foo/__init__.py
diff --git a/test/test-files/python/pyre_configuration_dir/foo/bar.py b/test/test-files/python/pyre_configuration_dir/foo/bar.py
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/test/test-files/python/pyre_configuration_dir/foo/bar.py