summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorw0rp <devw0rp@gmail.com>2019-04-07 16:24:08 +0100
committerw0rp <devw0rp@gmail.com>2019-04-07 16:24:08 +0100
commitce64e349cd202936bfb07abd84a5d99edd5e40dc (patch)
tree677e018cae16fe33f36e7012e2f21d92faaf98ab
parente85eb824016a0ca4217d41cc2ec603ff22a3b74d (diff)
downloadale-ce64e349cd202936bfb07abd84a5d99edd5e40dc.zip
Close #2132 - Add deprecation warnings for old features
-rw-r--r--autoload/ale/engine.vim20
-rw-r--r--autoload/ale/fix.vim4
-rw-r--r--autoload/ale/linter.vim8
-rw-r--r--test/lsp/test_reset_lsp.vader8
-rw-r--r--test/vimrc2
5 files changed, 33 insertions, 9 deletions
diff --git a/autoload/ale/engine.vim b/autoload/ale/engine.vim
index 340f6913..6b312b4f 100644
--- a/autoload/ale/engine.vim
+++ b/autoload/ale/engine.vim
@@ -107,24 +107,36 @@ endfunction
" Register a temporary file to be managed with the ALE engine for
" a current job run.
function! ale#engine#ManageFile(buffer, filename) abort
- " TODO: Emit deprecation warning here later.
+ if !get(g:, 'ale_ignore_2_4_warnings')
+ execute 'echom ''ale#engine#ManageFile is deprecated. Use `let g:ale_ignore_2_4_warnings = 1` to disable this message.'''
+ endif
+
call ale#command#ManageFile(a:buffer, a:filename)
endfunction
" Same as the above, but manage an entire directory.
function! ale#engine#ManageDirectory(buffer, directory) abort
- " TODO: Emit deprecation warning here later.
+ if !get(g:, 'ale_ignore_2_4_warnings')
+ execute 'echom ''ale#engine#ManageDirectory is deprecated. Use `let g:ale_ignore_2_4_warnings = 1` to disable this message.'''
+ endif
+
call ale#command#ManageDirectory(a:buffer, a:directory)
endfunction
function! ale#engine#CreateFile(buffer) abort
- " TODO: Emit deprecation warning here later.
+ if !get(g:, 'ale_ignore_2_4_warnings')
+ execute 'echom ''ale#engine#CreateFile is deprecated. Use `let g:ale_ignore_2_4_warnings = 1` to disable this message.'''
+ endif
+
return ale#command#CreateFile(a:buffer)
endfunction
" Create a new temporary directory and manage it in one go.
function! ale#engine#CreateDirectory(buffer) abort
- " TODO: Emit deprecation warning here later.
+ if !get(g:, 'ale_ignore_2_4_warnings')
+ execute 'echom ''ale#engine#CreateDirectory is deprecated. Use `let g:ale_ignore_2_4_warnings = 1` to disable this message.'''
+ endif
+
return ale#command#CreateDirectory(a:buffer)
endfunction
diff --git a/autoload/ale/fix.vim b/autoload/ale/fix.vim
index b8674606..c0f05611 100644
--- a/autoload/ale/fix.vim
+++ b/autoload/ale/fix.vim
@@ -117,6 +117,10 @@ function! s:HandleExit(job_info, buffer, job_output, data) abort
let l:input = a:job_info.input
endif
+ if l:ChainCallback isnot v:null && !get(g:, 'ale_ignore_2_4_warnings')
+ execute 'echom ''chain_with is deprecated. Use `let g:ale_ignore_2_4_warnings = 1` to disable this message.'''
+ endif
+
let l:next_index = l:ChainCallback is v:null
\ ? a:job_info.callback_index + 1
\ : a:job_info.callback_index
diff --git a/autoload/ale/linter.vim b/autoload/ale/linter.vim
index d680391d..273778c7 100644
--- a/autoload/ale/linter.vim
+++ b/autoload/ale/linter.vim
@@ -340,7 +340,13 @@ function! ale#linter#PreProcess(filetype, linter) abort
throw '`aliases` must be a List of String values'
endif
- " TODO: Emit deprecation warnings for deprecated options later.
+ for l:key in filter(keys(l:obj), 'v:val[-9:] is# ''_callback'' || v:val is# ''command_chain''')
+ if !get(g:, 'ale_ignore_2_4_warnings')
+ execute 'echom l:key . '' is deprecated. Use `let g:ale_ignore_2_4_warnings = 1` to disable this message.'''
+ endif
+
+ break
+ endfor
return l:obj
endfunction
diff --git a/test/lsp/test_reset_lsp.vader b/test/lsp/test_reset_lsp.vader
index 4a1a155e..310b3d62 100644
--- a/test/lsp/test_reset_lsp.vader
+++ b/test/lsp/test_reset_lsp.vader
@@ -25,10 +25,10 @@ Before:
call ale#linter#Define('testft', {
\ 'name': 'lsplinter',
\ 'lsp': 'tsserver',
- \ 'executable_callback': 'EmptyString',
- \ 'command_callback': 'EmptyString',
- \ 'project_root_callback': 'EmptyString',
- \ 'language_callback': 'EmptyString',
+ \ 'executable': function('EmptyString'),
+ \ 'command': function('EmptyString'),
+ \ 'project_root': function('EmptyString'),
+ \ 'language': function('EmptyString'),
\})
call ale#linter#Define('testft', {
diff --git a/test/vimrc b/test/vimrc
index 9548f861..018b8f67 100644
--- a/test/vimrc
+++ b/test/vimrc
@@ -35,3 +35,5 @@ set ttimeoutlen=0
execute 'set encoding=utf-8'
let g:mapleader=','
+
+let g:ale_ignore_2_4_warnings = 1