Skip to content

Merge with Vim 7.4.854 #74

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4,949 commits into from
Oct 7, 2015

Conversation

splhack
Copy link
Contributor

@splhack splhack commented Sep 2, 2015

This merge seems big and scary. I merged vim/master branch from the Vim repository, git@github.com:vim/vim.git . It is totally different commits from macvim/vim branch which has been used for merging with Vim source code to MacVim. That's why this pull request seems big. But the next time, we can just do git merge vim/master from the Vim repository.

# I did
$ git remote add vim git@github.com:vim/vim.git
$ git fetch vim
$ git merge vim/master
# merged a lot of files manually...
$ git commit

# created diff between macvim/master (7.4.769) and HEAD
$ git diff b93cc077ea36594e44b5f98e1c76e19288ea809a..HEAD > /tmp/x0.diff
# created diff between 
$ git diff v7-4-769..vim/master > /tmp/x1.diff
# checked /tmp/x0.diff /tmp/x1.diff, no significant changes.

Problem:    Possible NULL pointer dereference.
Solution:   Check for NULL before using it. (Mike Williams)
Problem:    MSVC with W4 gives useless warnings.
Solution:   Disable more warnings. (Mike Williams)
Problem:    The last screen cell is not updated.
Solution:   Respect the "tn" termcap feature. (Hayaki Saito)
Problem:    Compiler warning for variable might be clobbered by longjmp.
Solution:   Add volatile. (Michael Jarvis)
Problem:    Coverity warning for Out-of-bounds read.
Solution:   Increase MAXWLEN to 254. (Eliseo Martínez)
Problem:    When using Insert mode completion combined with autocommands the
            redo command may not work.
Solution:   Do not save the redo buffer when executing autocommands. (Yasuhiro
            Matsumoto)
Problem:    The default conceal character is documented to be a space but it's
            initially a dash. (Christian Brabandt)
Solution:   Make the intial value a space.
Problem:    7.4.592 breaks the netrw plugin, because the autocommands are
            skipped.
Solution:   Roll back the change.
Problem:    After 7.4.630 the problem persists.
Solution:   Also skip redo when calling a user function.
Problem:    Marks are not restored after redo + undo.
Solution:   Fix the way marks are restored. (Olaf Dabrunz)
Problem:    If no NL or CR is found in the first block of a file then the
            'fileformat' may be set to "mac". (Issue 77)
Solution:   Check if a CR was found. (eswald)
Problem:    A search with end offset gets stuck at end of file. (Gary Johnson)
Solution:   When a search doesn't move the cursor repeat it with a higher
            count. (Christian Brabandt)
Problem:    Incorrectly read the number of buffer for which an autocommand
            should be registered.
Solution:   Reverse check for "<buffer=abuf>". (Lech Lorens)
Problem:    Can't build with Lua 5.3 on Windows.
Solution:   use luaL_optinteger() instead of LuaL_optlong(). (Ken Takata)
Problem:    Combination of linebreak and conceal doesn't work well.
Solution:   Fix the display problems. (Christian Brabandt)
Problem:    After deleting characters in Insert mode such that lines are
            joined undo does not work properly. (issue 324)
Solution:   Use Insstart instead of Insstart_orig. (Christian Brabandt)
Problem:    The tabline menu was using ":999tabnew" which is now invalid.
Solution:   Use ":$tabnew" instead. (Florian Degner)
Problem:    When using "gf" escaped spaces are not handled.
Solution:   Recognize escaped spaces.
Problem:    Using the default file format for Mac files. (Issue 77)
Solution:   Reset the try_mac counter in the right place. (Oswald)
Problem:    Stratus VOS doesn't have sync().
Solution:   Use fflush(). (Karli Aurelia)
Problem:    When splitting the window in a BufAdd autocommand while still in
            the first, empty buffer the window count is wrong.
Solution:   Do not reset b_nwindows to zero and don't increment it.
Problem:    ":bufdo" may start at a deleted buffer.
Solution:   Find the first not deleted buffer. (Shane Harper)
Problem:    After running the tests on MS-Windows many files differ from their
            originals as they were checked out.
Solution:   Use a temp directory for executing the tests. (Ken Takata, Taro
            Muraoka)
Problem:    Tests broken on MS-Windows.
Solution:   Delete wrong copy line. (Ken Takata)
Problem:    Compiler complains about ignoring return value of fwrite().
            (Michael Jarvis)
Solution:   Add (void).
Problem:    Configure check may fail because the dl library is not used.
Solution:   Put "-ldl" in LIBS rather than LDFLAGS. (Oazki Kiichi)
Problem:    Can't match "%>80v" properly for multi-byte characters.
Solution:   Multiply the character number by the maximum number of bytes in a
            character. (Yasuhiro Matsumoto)
brammool and others added 21 commits August 25, 2015 16:49
Problem:    Accessing unitinialized memory.
Solution:   Add missing calls to init_tv(). (Dominique Pelle)
Problem:    Compiler warning with MSVC compiler when using +sniff.
Solution:   Use Sleep() instead of _sleep(). (Tux)
Problem:    Can't compile without the crypt feature. (John Marriott)
Solution:   Add #ifdef.
Problem:    Compiler warning on 64-bit system.
Solution:   Add cast to int. (Mike Williams)
Problem:    Tooltip window stays open.
Solution:   Send a WM_CLOSE message. (Jurgen Kramer)
Problem:    Can't compile without the multi-byte feature. (John Marriott)
Solution:   Add more #ifdef's.
Problem:    Sending too many messages to close the balloon.
Solution:   Only send a WM_CLOSE message. (Jurgen Kramer)
Problem:    Still possible to go beyond the end of a string.
Solution:   Check for NUL also in second string. (Dominique Pelle)
Problem:    When '#' is in 'isident' the is# comparator doesn't work.
Solution:   Don't use vim_isIDc(). (Yasuhiro Matsumoto)
Problem:    Compiler warning for possible loss of data.
Solution:   Add a type cast. (Erich Ritz)
Problem:    Some GitHub users don't know how to use issues.
Solution:   Add a file that explains the basics of contributing.
Problem:    "vi)d" may leave a character behind.
Solution:   Skip over multi-byte character. (Christian Brabandt)
Problem:    CTRL-A on hex number in Visual block mode is incorrect.
Solution:   Account for the "0x". (Hirohito Higashi)
Problem:    Moving the cursor in Insert mode starts new undo sequence.
Solution:   Add CTRL-G U to keep the undo sequence for the following cursor
            movement command. (Christian Brabandt)
Problem:    <Esc> does not show up.
Solution:   Use &gt; and &lt;. (Kazunobu Kuriyama)
Problem:    Saving and restoring the console buffer does not work properly.
Solution:   Instead of ReadConsoleOutputA/WriteConsoleOutputA use
            CreateConsoleScreenBuffer and SetConsoleActiveScreenBuffer.
            (Ken Takata)
Problem:    On MS-Windows console Vim uses ANSI APIs for keyboard input and
            console output, it cannot input/output Unicode characters.
Solution:   Use Unicode APIs for console I/O. (Ken Takata, Yasuhiro Matsumoto)
Problem:    "zt" in diff mode does not always work properly. (Gary Johnson)
Solution:   Don't count filler lines twice. (Christian Brabandt)
Problem:    Missing information about runtime files.
Solution:   Add section about runtime files. (Christian Brabandt)
@splhack
Copy link
Contributor Author

splhack commented Sep 8, 2015

the next time, we can just do git merge vim/master from the Vim repository.

See, easy to merge.

$ git remote show vim
* remote vim
  Fetch URL: git@github.com:vim/vim.git
...

$ git fetch vim
remote: Counting objects: 10, done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 10 (delta 4), reused 4 (delta 4), pack-reused 1
Unpacking objects: 100% (10/10), done.
From github.com:vim/vim
   b58988b..a09a2c5  master     -> vim/master
 * [new tag]         v7.4.856   -> v7.4.856
 * [new tag]         v7.4.855   -> v7.4.855

$ git merge vim/master
Auto-merging src/version.c
Merge made by the 'recursive' strategy.
 src/gui_gtk_x11.c |  4 ++--
 src/move.c        | 10 ++++------
 src/version.c     |  4 ++++
 3 files changed, 10 insertions(+), 8 deletions(-)

@amadeus
Copy link

amadeus commented Sep 23, 2015

I think this is probably a pretty bad way to do it, since it ends up duplicating most of the commits?

On my own personal macvim fork I just simply use cherry-pick with a range to to merge things in quickly and easily.

git cherry-pick 9534680^..b860388

It's an inclusive range - so 9534680 would be the first new commit, and b860388 would be the latest commit on vim/vim's master branch.

@splhack
Copy link
Contributor Author

splhack commented Sep 23, 2015

It doesn't break anything and I fixed several merge misses that were happened by the cherry-pick way. why it's bad way? duplicating commits will cause problems?

@splhack
Copy link
Contributor Author

splhack commented Sep 24, 2015

Just in case, I'm going to reconstruct macvim/master branch based on https://github.com/vim/vim/tree/master. It allows to git-merge using vim/master without duplicate commits. The macvim commits history are preserved as well.

douglasdrumond added a commit that referenced this pull request Oct 7, 2015
@douglasdrumond douglasdrumond merged commit c1d214e into macvim-dev:master Oct 7, 2015
@douglasdrumond
Copy link
Member

Thanks, thanks, thanks

@splhack splhack deleted the feat/merge_with_vim_7_4_854 branch October 9, 2015 02:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants