live-server.nvim/.github/ISSUE_TEMPLATE/bug_report.yaml
Barrett Ruth c5c69e9ec2
Some checks are pending
quality / changes (push) Waiting to run
quality / Lua Format Check (push) Blocked by required conditions
quality / Lua Lint Check (push) Blocked by required conditions
quality / Lua Type Check (push) Blocked by required conditions
quality / Markdown Format Check (push) Blocked by required conditions
fix: prevent infinite loop when started from non-filesystem buffer (#35)
## Problem

Calling \`:LiveServerStart\` from an oil.nvim buffer (or any URI-scheme
buffer) caused two issues: first, \`find_cached_dir\` entered an
infinite loop as \`fnamemodify(cur, ':h')\` degenerated to \`.\`,
freezing Neovim and pegging the CPU; second, even after fixing the loop,
the server would error out instead of doing the right thing — serving
the directory being browsed.

## Solution

Add a progress check to \`find_cached_dir\` so it bails if the path
stops changing. Fix \`resolve_dir\` to detect URI-scheme buffer names
(e.g. \`oil:///path/to/dir\`) and extract the real filesystem path from
them, so \`:LiveServerStart\` correctly serves the browsed directory.
Also corrects the bug report repro template (\`require('lazy')\`, \`lazy
= false\`, no deprecated \`opts\`) and ignores \`repro.lua\`.

Closes #34
2026-03-06 11:58:46 -05:00

77 lines
1.9 KiB
YAML

name: Bug Report
description: Report a bug
title: "bug: "
labels: [bug]
body:
- type: checkboxes
attributes:
label: Prerequisites
options:
- label: I have searched [existing
issues](https://github.com/barrettruth/live-server.nvim/issues)
required: true
- label: I have updated to the latest version
required: true
- type: textarea
attributes:
label: "Neovim version"
description: "Output of `nvim --version`"
render: text
validations:
required: true
- type: input
attributes:
label: "Operating system"
placeholder: "e.g. Arch Linux, macOS 15, Ubuntu 24.04"
validations:
required: true
- type: textarea
attributes:
label: Description
description: What happened? What did you expect?
validations:
required: true
- type: textarea
attributes:
label: Steps to reproduce
description: Minimal steps to trigger the bug
value: |
1.
2.
3.
validations:
required: true
- type: textarea
attributes:
label: "Health check"
description: "Output of `:checkhealth live-server`"
render: text
- type: textarea
attributes:
label: Minimal reproduction
description: |
Save the script below as `repro.lua`, edit if needed, and run:
```
nvim -u repro.lua
```
Confirm the bug reproduces with this config before submitting.
render: lua
value: |
vim.env.LAZY_STDPATH = '.repro'
load(vim.fn.system('curl -s https://raw.githubusercontent.com/folke/lazy.nvim/main/bootstrap.lua'))()
require('lazy').setup({
spec = {
{
'barrett-ruth/live-server.nvim',
lazy = false,
},
},
})
validations:
required: true