From 689af02e7f711c1560c13c9a8f54084e9ba9b6ac Mon Sep 17 00:00:00 2001 From: TJ DeVries Date: Mon, 11 Sep 2023 12:00:23 -0400 Subject: [PATCH 1/5] start: fixing ci time --- crates/vim9-gen/src/test_harness.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/vim9-gen/src/test_harness.rs b/crates/vim9-gen/src/test_harness.rs index 6431d3a..1e049f1 100644 --- a/crates/vim9-gen/src/test_harness.rs +++ b/crates/vim9-gen/src/test_harness.rs @@ -97,7 +97,7 @@ pub fn exec_lua(preamble: &str) -> Result> { drop(child_stdin); // Wait til output has completed. - let _ = child.wait_with_output()?; + child.wait_with_output()?; // TODO: For some reason we get a weird 256 wait status on my machine... // assert!( From 7aa7fce943539d27da9fbcfa486df8b6f51ec615 Mon Sep 17 00:00:00 2001 From: TJ DeVries Date: Mon, 11 Sep 2023 12:01:05 -0400 Subject: [PATCH 2/5] fixup: switch to older vim.loop --- scripts/init.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/init.lua b/scripts/init.lua index 4175cf5..d81792c 100644 --- a/scripts/init.lua +++ b/scripts/init.lua @@ -1,7 +1,7 @@ -- Add target dir, if not exists vim.fn.mkdir('target', 'p') -if not vim.uv.fs_stat('target/plenary.nvim') then +if not vim.loop.fs_stat('target/plenary.nvim') then vim .system({ 'git', 'clone', 'https://github.com/nvim-lua/plenary.nvim', 'target/plenary.nvim' }) :wait() From 49951d4e036134c802a26d50a71c0d9bde2fc436 Mon Sep 17 00:00:00 2001 From: TJ DeVries Date: Mon, 11 Sep 2023 12:15:24 -0400 Subject: [PATCH 3/5] lets spin up github servers again i guess :'( --- .github/workflows/build-and-test.yml | 12 +++++++----- crates/vim9-gen/testdata/busted/defer.vim | 2 +- crates/vim9-gen/testdata/output/busted_defer.lua | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 914f606..838b9ef 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -14,6 +14,8 @@ jobs: check: name: Build and Check runs-on: ubuntu-latest + timeout-minutes: 10 + steps: - uses: actions/checkout@v4 - uses: actions/cache@v3 @@ -44,11 +46,11 @@ jobs: override: true components: rustfmt, clippy - - name: Run cargo clippy (workspace) - uses: actions-rs/cargo@v1 - with: - command: clippy - args: --workspace + # - name: Run cargo clippy (workspace) + # uses: actions-rs/cargo@v1 + # with: + # command: clippy + # args: --workspace - name: Run cargo build (workspace) uses: actions-rs/cargo@v1 diff --git a/crates/vim9-gen/testdata/busted/defer.vim b/crates/vim9-gen/testdata/busted/defer.vim index 4c3eb01..198341b 100644 --- a/crates/vim9-gen/testdata/busted/defer.vim +++ b/crates/vim9-gen/testdata/busted/defer.vim @@ -55,5 +55,5 @@ def Test_defer() assert_equal([3, 2, 1], x) var y = RangeDefer() - assert_equal([3, 2, 1], x) + assert_equal([2, 1, 0], y) enddef diff --git a/crates/vim9-gen/testdata/output/busted_defer.lua b/crates/vim9-gen/testdata/output/busted_defer.lua index 8c938c0..55a3a2c 100644 --- a/crates/vim9-gen/testdata/output/busted_defer.lua +++ b/crates/vim9-gen/testdata/output/busted_defer.lua @@ -100,7 +100,7 @@ describe('filename', function() vim9.fn.assert_equal({ 3, 2, 1 }, x) local y = RangeDefer() - vim9.fn.assert_equal({ 3, 2, 1 }, x) + vim9.fn.assert_equal({ 2, 1, 0 }, y) -- Assert that errors is still empty assert.are.same({}, vim.v.errors) From a902801ddc89e10728def73e8d33e0fbfdfe09d5 Mon Sep 17 00:00:00 2001 From: TJ DeVries Date: Mon, 11 Sep 2023 12:47:55 -0400 Subject: [PATCH 4/5] ci: use vendored plenary --- scripts/init.lua | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/scripts/init.lua b/scripts/init.lua index d81792c..dbca806 100644 --- a/scripts/init.lua +++ b/scripts/init.lua @@ -1,12 +1,6 @@ --- Add target dir, if not exists -vim.fn.mkdir('target', 'p') - -if not vim.loop.fs_stat('target/plenary.nvim') then - vim - .system({ 'git', 'clone', 'https://github.com/nvim-lua/plenary.nvim', 'target/plenary.nvim' }) - :wait() -end - -vim.opt.rtp:append({ '.', './target/plenary.nvim' }) +vim.opt.rtp:append({ + '.', + vim.fn.expand('~/.local/share/nvim/site/pack/vendor/start/plenary.nvim'), +}) vim.cmd([[runtime! plugin/plenary.vim]]) From dca57339c89de8f17945d8c059f357ff1dcc2778 Mon Sep 17 00:00:00 2001 From: TJ DeVries Date: Mon, 11 Sep 2023 13:06:07 -0400 Subject: [PATCH 5/5] should block locally now as well --- crates/vim9-gen/src/lib.rs | 29 ++++++++++++++++++++++++++++- scripts/init.lua | 4 +++- 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/crates/vim9-gen/src/lib.rs b/crates/vim9-gen/src/lib.rs index 1ebf1e4..1a32e56 100644 --- a/crates/vim9-gen/src/lib.rs +++ b/crates/vim9-gen/src/lib.rs @@ -1768,13 +1768,38 @@ pub fn generate(contents: &str, opts: ParserOpts) -> Result { #[test] @@ -1802,6 +1827,8 @@ mod test { ($name:tt, $path:tt) => { #[test] fn $name() { + ensure_plenary_downloaded(); + let vim_contents = include_str!($path); let lua_contents = generate( vim_contents, diff --git a/scripts/init.lua b/scripts/init.lua index dbca806..8a9b847 100644 --- a/scripts/init.lua +++ b/scripts/init.lua @@ -1,6 +1,8 @@ +local plenary_path = vim.fn.expand('~/.local/share/nvim/site/pack/vendor/start/plenary.nvim') --[[@as string]] + vim.opt.rtp:append({ '.', - vim.fn.expand('~/.local/share/nvim/site/pack/vendor/start/plenary.nvim'), + plenary_path, }) vim.cmd([[runtime! plugin/plenary.vim]])