vimPlugins: --update-redirects improvements.

In response to @timokau's review here are a couple changes:

- Decrease the fragility of the replacement code by normalizing
whitespace on each line.
- Throw an error when plugins are renamed rather than silently aliasing
to the new name.
This commit is contained in:
ryneeverett 2020-03-24 03:04:42 +00:00
parent 6601c1699f
commit a9c9b0d40c
2 changed files with 10 additions and 6 deletions

View File

@ -30,6 +30,9 @@ let
(removeRecurseForDerivations
(checkInPkgs n alias)))
aliases;
deprecateName = oldName: newName:
throw "${oldName} was renamed to ${newName}. Please update to ${newName}.";
in
mapAliases {
@ -68,7 +71,7 @@ mapAliases {
ghcmod = ghcmod-vim;
goyo = goyo-vim;
Gist = vim-gist;
gist-vim = vim-gist; # backwards compat, added 2020-3-22
gist-vim = deprecateName "vim-gist" "gist-vim"; # backwards compat, added 2020-3-22
gitgutter = vim-gitgutter;
gundo = gundo-vim;
Gundo = gundo-vim; # backwards compat, added 2015-10-03
@ -126,17 +129,17 @@ mapAliases {
unite = unite-vim;
UltiSnips = ultisnips;
vim-addon-vim2nix = vim2nix;
vim-jade = vim-pug; # backwards compat, added 2020-3-22
vim-jade = deprecateName "vim-pug" "vim-jade"; # backwards compat, added 2020-3-22
vimproc = vimproc-vim;
vimshell = vimshell-vim;
vinegar = vim-vinegar;
vundle = Vundle-vim; # backwards compat, added 2020-3-22
vundle = deprecateName "Vundle-vim" "vundle"; # backwards compat, added 2020-3-22
watchdogs = vim-watchdogs;
WebAPI = webapi-vim;
wombat256 = wombat256-vim; # backwards compat, added 2015-7-8
yankring = YankRing-vim;
Yankring = YankRing-vim;
youcompleteme = YouCompleteMe; # backwards compat, added 2020-3-22
youcompleteme = deprecateName "YouCompleteMe" "youcompleteme"; # backwards compat, added 2020-3-22
xterm-color-table = xterm-color-table-vim;
zeavim = zeavim-vim;
}

View File

@ -419,6 +419,7 @@ in lib.fix' (lib.extends overrides packages)
def update_redirects(input_file: Path, output_file: Path, redirects: dict):
with fileinput.input(input_file, inplace=True) as f:
for line in f:
line = " ".join(line.split())
print(redirects.get(line, line), end="")
print(
f"""\
@ -427,8 +428,8 @@ following steps:
1. Go ahead and commit just the updated expressions as you intended to do:
git add {output_file}
git commit -m "vimPlugins: Update"
2. If any of the plugin names were changed, add the old names as aliases in
aliases.nix
2. If any of the plugin names were changed, throw an error in aliases.nix:
<oldName> = deprecateName "<oldName>" "<newName>"; # backwards compat, added YYYY-MM-DD
3. Make sure the updated {input_file} is still correctly sorted:
sort -udf ./vim-plugin-names > sorted && mv sorted vim-plugin-names
4. Run this script again so these changes will be reflected in the