Skip to content

Releases: wojciech-kulik/xcodebuild.nvim

v2.3.0

11 Feb 16:36
Compare
Choose a tag to compare

Now Xcodebuild.nvim is integrated with nvim-tree to let you manage your project and files in a convenient way.

Every change in the file tree presented by nvim-tree will be automatically reflected in the Xcode project.

nvim-tree.mp4

v2.2.0

11 Feb 00:18
Compare
Choose a tag to compare
  • Improved nvim-dap integration. Now you can debug tests by running require("xcodebuild.dap").debug_tests().
  • Improved debugger start. Now you don't have to be in a buffer with Swift file. It's enough to have it in any visible window.
  • Fixed filtering on Telescope picker. Now your local filter won't affect xcodebuild.nvim causing unexpected behavior.
  • Added new config options: test_explorer.open_expanded and test_explorer.auto_focus.

Sample binding

vim.keymap.set("n", "<leader>dt", require("xcodebuild.dap").debug_tests, { desc = "Debug Tests" })

Tip

You can also debug smaller scope tests: debug_target_tests, debug_class_tests, debug_func_test, debug_selected_tests, debug_failing_tests.

v2.1.0

09 Feb 22:05
Compare
Choose a tag to compare
  • Showing logs in the console window provided by nvim-dap-ui plugin (it's also possible to show logs in the terminal)
  • Improved sorting of errors & warnings on the quick-fix list (note that you can use :cn and :cp commands to navigate between them across the project)
  • Fixed minor issues
  • Improved documentation

If you want to learn more about logs please see Simulator Logs section.

v2.0.0

07 Feb 21:05
Compare
Choose a tag to compare

The new version introduces Project Manager that lets you manage project files directly in Neovim without opening Xcode 🔥 🔥 🔥

👉 Make sure to install CocoaPods/Xcodeproj to use it. Run:

gem install xcodeproj

To see all new commands run :XcodebuildProjectManager.
You can find the list of all commands here.

v1.4.0

06 Feb 01:39
Compare
Choose a tag to compare
  • Added auto commands to send notifications about important plugin events. It enables better customization with other plugins. Check out all auto commands.
  • Fixed the issue with not showing the commands picker when the project is not configured.
  • Fixed the issue with not working code coverage report when the project path contains white spaces.
  • Removed duplicated errors and warnings.
  • Improved default highlights.

Thanks to new auto commands I was already able to integrate fidget.nvim with xcodebuild.nvim. The integration should be soon released: j-hui/fidget.nvim#212.

v1.3.0

29 Jan 19:55
c9f8780
Compare
Choose a tag to compare
  • New Test Explorer to easily browse and run tests. See README.md to find out more.
  • Refactored highlights management, see the default config in README.md and Customize Highlights section.
  • Improved showing inline Code Coverage
  • Improved README.md
  • Fixed minor issues

v1.2.0

04 Dec 15:49
Compare
Choose a tag to compare
  • Removed xcov dependency and implemented built-in code coverage report. (resolved #10)
  • Updated README - added DAP improvement. (ef34a1e)

Remember to add the new dependency (nui.nvim):

return {
  "wojciech-kulik/xcodebuild.nvim",
  dependencies = {
    "nvim-telescope/telescope.nvim",
    "MunifTanjim/nui.nvim",
  },
  -- ...
}

v1.1.0

29 Nov 00:54
Compare
Choose a tag to compare
  • Added code coverage support (see Code Coverage).
  • Fixed case when more than one snapshot being created within a test (#9).
  • Added support for multiple asserts in tests.
  • Added Build for Testing command: XcodebuildBuildForTesting. Useful when you create a new test file.
  • If you create a new test file and call XcodebuildTestClass, a build for testing will be automatically started. After that tests will run.
  • Added XcodebuildTestTarget command that will run all tests from the active target.

v1.0.1

26 Nov 19:30
2b688e8
Compare
Choose a tag to compare

Hotfix

  • Fixed #5 issue causing slow startup time of Neovim when you open a directory with many files.

  • Added commands.project_search_max_depth (default 3) config option to prevent extensive search if your run configuration wizard from for example Home directory.

Notes: Keep in mind that the plugin assumes that you start Neovim in the root directory of your project. Working with projects from external directories like Home is not supported yet.

v1.0.0

26 Nov 00:18
Compare
Choose a tag to compare
  • Improved tests detection. You can also change the mode of searching test files: more details. Using default filename_lsp your test file name doesn't have to match test class name anymore.
  • Improved tests matching. Test classes with the same names across multiple targets are now correctly recognized.
  • Improved startup time. Now the last test report is serialized to the JSON file and loaded on start, without processing logs every time.
  • Integration with lualine.nvim: more details.
  • Added new actions: XcodebuildCleanBuild and XcodebuildCleanDerivedData (resolved #4)
  • Caching list of available devices (until Neovim restart).
  • XcodebuildBootSimulator action now starts also the Simulator app.
  • Improved running of selected tests. Now when you open a project that was previously built and run selected tests, the plugin won't start another build to index tests.
  • Improved opening files and tests from the logs panel (using o keymap).
  • Minor bug fixes and improvements.