Post-update hook should not run in case of an error
This commit is contained in:
		
							parent
							
								
									eb29cc9b47
								
							
						
					
					
						commit
						fb8a5f9246
					
				
							
								
								
									
										2
									
								
								plug.vim
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								plug.vim
									
									
									
									
									
								
							|  | @ -646,7 +646,7 @@ function! s:do(pull, force, todo) | ||||||
|     endif |     endif | ||||||
|     let installed = has_key(s:update.new, name) |     let installed = has_key(s:update.new, name) | ||||||
|     let updated = installed ? 0 : |     let updated = installed ? 0 : | ||||||
|       \ (a:pull && !empty(s:system_chomp('git log --pretty=format:"%h" "HEAD...HEAD@{1}"', spec.dir))) |       \ (a:pull && index(s:update.errors, name) < 0 && !empty(s:system_chomp('git log --pretty=format:"%h" "HEAD...HEAD@{1}"', spec.dir))) | ||||||
|     if a:force || installed || updated |     if a:force || installed || updated | ||||||
|       execute 'cd' s:esc(spec.dir) |       execute 'cd' s:esc(spec.dir) | ||||||
|       call append(3, '- Post-update hook for '. name .' ... ') |       call append(3, '- Post-update hook for '. name .' ... ') | ||||||
|  |  | ||||||
|  | @ -756,6 +756,28 @@ Execute (Using Funcref): | ||||||
|   Assert filereadable(g:plugs['vim-pseudocl'].dir.'/vim-pseudoclunchanged13'), |   Assert filereadable(g:plugs['vim-pseudocl'].dir.'/vim-pseudoclunchanged13'), | ||||||
|     \ 'vim-pseudocl/vim-pseudoclunchanged13 should exist' |     \ 'vim-pseudocl/vim-pseudoclunchanged13 should exist' | ||||||
| 
 | 
 | ||||||
|  | Execute (Should not run when failed to update): | ||||||
|  |   call plug#begin() | ||||||
|  |   Plug 'junegunn/vim-easy-align', { 'do': 'touch failed'     } | ||||||
|  |   Plug 'junegunn/vim-pseudocl',   { 'do': 'touch not-failed' } | ||||||
|  |   call plug#end() | ||||||
|  | 
 | ||||||
|  |   " Invalid remote URL | ||||||
|  |   call system(printf('cd %s && git remote set-url origin xxx', g:plugs['vim-easy-align'].dir)) | ||||||
|  | 
 | ||||||
|  |   " New commits on remote | ||||||
|  |   call system('cd /tmp/junegunn/vim-easy-align && git commit --allow-empty -m "update"') | ||||||
|  |   call system('cd /tmp/junegunn/vim-pseudocl && git commit --allow-empty -m "update"') | ||||||
|  | 
 | ||||||
|  |   silent PlugUpdate | ||||||
|  |   Log getline(1, '$') | ||||||
|  |   q | ||||||
|  | 
 | ||||||
|  |   Assert !filereadable(g:plugs['vim-easy-align'].dir.'/failed'), | ||||||
|  |     \ 'vim-easy-align/failed should not exist' | ||||||
|  |   Assert filereadable(g:plugs['vim-pseudocl'].dir.'/not-failed'), | ||||||
|  |     \ 'vim-pseudocl/not-failed should exist' | ||||||
|  | 
 | ||||||
| ********************************************************************** | ********************************************************************** | ||||||
| ~ Overriding `dir` | ~ Overriding `dir` | ||||||
| ********************************************************************** | ********************************************************************** | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user