neovim 0.7.1 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/docs.yml +39 -0
  3. data/.github/workflows/tests.yml +64 -0
  4. data/.gitignore +2 -0
  5. data/CHANGELOG.md +22 -0
  6. data/CODE_OF_CONDUCT.md +3 -3
  7. data/README.md +19 -20
  8. data/Rakefile +21 -11
  9. data/exe/neovim-ruby-host +5 -0
  10. data/lib/neovim/buffer.rb +120 -41
  11. data/lib/neovim/client.rb +304 -39
  12. data/lib/neovim/client_info.rb +46 -0
  13. data/lib/neovim/connection.rb +7 -2
  14. data/lib/neovim/event_loop.rb +8 -4
  15. data/lib/neovim/host/cli.rb +41 -0
  16. data/lib/neovim/host.rb +3 -0
  17. data/lib/neovim/logging.rb +1 -1
  18. data/lib/neovim/message.rb +1 -1
  19. data/lib/neovim/plugin/dsl.rb +6 -0
  20. data/lib/neovim/plugin.rb +7 -2
  21. data/lib/neovim/remote_object.rb +5 -2
  22. data/lib/neovim/ruby_provider/object_ext.rb +5 -0
  23. data/lib/neovim/ruby_provider/vim.rb +6 -5
  24. data/lib/neovim/ruby_provider.rb +29 -10
  25. data/lib/neovim/session.rb +21 -16
  26. data/lib/neovim/tabpage.rb +8 -15
  27. data/lib/neovim/version.rb +1 -1
  28. data/lib/neovim/window.rb +45 -33
  29. data/lib/neovim.rb +12 -3
  30. data/neovim.gemspec +4 -5
  31. data/script/ci/download_nvim.sh +40 -0
  32. data/script/dump_api.rb +1 -1
  33. data/script/generate_docs.rb +6 -7
  34. data/script/run_acceptance.rb +15 -11
  35. data/spec/acceptance/client_info_spec.vim +42 -0
  36. data/spec/acceptance/rplugin_command_spec.vim +2 -2
  37. data/spec/acceptance/ruby_spec.vim +18 -11
  38. data/spec/acceptance/rubydo_spec.vim +9 -0
  39. data/spec/acceptance/rubyeval_spec.vim +22 -0
  40. data/spec/acceptance/rubyfile/curbuf_ivar_get.rb +1 -1
  41. data/spec/acceptance/rubyfile/curbuf_ivar_set.rb +1 -1
  42. data/spec/acceptance/rubyfile/define_foo.rb +1 -1
  43. data/spec/acceptance/rubyfile/nested_inner.rb +1 -1
  44. data/spec/acceptance/rubyfile/set_pwd_after.rb +1 -1
  45. data/spec/acceptance/rubyfile/set_pwd_before.rb +1 -1
  46. data/spec/acceptance/rubyfile_spec.vim +19 -19
  47. data/spec/acceptance/runtime/init.vim +2 -2
  48. data/spec/acceptance/runtime/rplugin/ruby/commands.rb +2 -2
  49. data/spec/helper.rb +25 -7
  50. data/spec/neovim/api_spec.rb +1 -1
  51. data/spec/neovim/buffer_spec.rb +10 -6
  52. data/spec/neovim/client_info_spec.rb +77 -0
  53. data/spec/neovim/client_spec.rb +9 -2
  54. data/spec/neovim/connection_spec.rb +32 -4
  55. data/spec/neovim/current_spec.rb +1 -2
  56. data/spec/neovim/event_loop_spec.rb +16 -0
  57. data/spec/neovim/host/cli_spec.rb +94 -0
  58. data/spec/neovim/host_spec.rb +16 -14
  59. data/spec/neovim/line_range_spec.rb +1 -3
  60. data/spec/neovim/remote_object_spec.rb +1 -2
  61. data/spec/neovim/ruby_provider/buffer_ext_spec.rb +6 -7
  62. data/spec/neovim/ruby_provider/object_ext_spec.rb +10 -0
  63. data/spec/neovim/ruby_provider/vim_spec.rb +1 -1
  64. data/spec/neovim/ruby_provider/window_ext_spec.rb +7 -10
  65. data/spec/neovim/session_spec.rb +13 -40
  66. data/spec/neovim/window_spec.rb +1 -1
  67. data/spec/neovim_spec.rb +28 -51
  68. data/spec/support.rb +27 -1
  69. metadata +26 -44
  70. data/.coveralls.yml +0 -1
  71. data/.rubocop.yml +0 -118
  72. data/.travis.yml +0 -22
  73. data/appveyor.yml +0 -31
  74. data/bin/neovim-ruby-host +0 -18
  75. data/script/validate_docs.rb +0 -29
data/.travis.yml DELETED
@@ -1,22 +0,0 @@
1
- language: ruby
2
- sudo: false
3
- dist: trusty
4
-
5
- branches:
6
- only: master
7
-
8
- rvm:
9
- - 2.2
10
- - 2.3
11
- - 2.4
12
- - 2.5
13
- - ruby-head
14
-
15
- before_install:
16
- - eval "$(curl --connect-timeout 30 --retry 3 -Ss https://raw.githubusercontent.com/neovim/bot-ci/master/scripts/travis-setup.sh) nightly-x64"
17
- - gem update --system
18
- - gem update bundler
19
- - bundle --version
20
-
21
- env: REPORT_COVERAGE=1 NVIM_RUBY_LOG_LEVEL=DEBUG NVIM_RUBY_LOG_FILE=ci.log
22
- script: bundle exec rake --trace
data/appveyor.yml DELETED
@@ -1,31 +0,0 @@
1
- version: '{build}'
2
-
3
- environment:
4
- matrix:
5
- - RUBY_VERSION: 25
6
- - RUBY_VERSION: 24
7
- - RUBY_VERSION: 23
8
- - RUBY_VERSION: 22
9
-
10
- install:
11
- - set SSL_CERT_FILE=C:/ruby24-x64/ssl/cert.pem
12
- - set PATH=C:\Ruby%RUBY_VERSION%\bin;C:\tools\neovim\Neovim\bin;%PATH%
13
- - set NVIM_RUBY_LOG_LEVEL=DEBUG
14
- - set NVIM_RUBY_LOG_FILE=%cd%\ci.log
15
- - choco install neovim --pre -fy --ignore-dependencies
16
- - bundle install
17
-
18
- build: off
19
-
20
- branches:
21
- only:
22
- - master
23
-
24
- before_test:
25
- - ruby -v
26
- - gem -v
27
- - bundle -v
28
- - nvim -v
29
-
30
- test_script:
31
- - bundle exec rake
data/bin/neovim-ruby-host DELETED
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require "neovim/host"
4
-
5
- ARGV.each do |arg|
6
- break if arg == "--"
7
-
8
- if ["--version", "-V"].include?(arg)
9
- puts Neovim::VERSION
10
- exit(0)
11
- end
12
- end
13
-
14
- if STDIN.tty?
15
- abort("Can't run neovim-ruby-host interactively.")
16
- else
17
- Neovim::Host.run(ARGV)
18
- end
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require "json"
4
- require "open-uri"
5
-
6
- url = "https://api.github.com/repos/neovim/neovim/releases/latest"
7
-
8
- begin
9
- response = open(url) { |res| JSON.parse(res.read) }
10
- rescue SocketError, OpenURI::HTTPError => e
11
- puts "Request failed: #{e}\n"
12
- exit
13
- end
14
-
15
- release_version = response["name"][/NVIM v?(.+)$/, 1]
16
-
17
- client_file = File.read(
18
- File.expand_path("../../lib/neovim/client.rb", __FILE__)
19
- )
20
- docs_version = client_file[
21
- /The methods documented here were generated using NVIM v?(.+)$/,
22
- 1
23
- ]
24
-
25
- if docs_version == release_version
26
- puts "Documentation is up-to-date."
27
- else
28
- abort "Documentation is out of date: expected #{release_version}, got #{docs_version}."
29
- end