Skip to content
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

support virtual variable value #228

Open
wants to merge 77 commits into
base: feat/variable-values-hover
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
33564f0
feat(style): Standardize the code format
Aug 24, 2024
81653ea
Merge branch 'mistweaverco:main' into main
iamxiaojianzheng Aug 30, 2024
84c4000
Merge branch 'mistweaverco:main' into main
iamxiaojianzheng Aug 31, 2024
ef2f944
Merge branch 'mistweaverco:main' into main
iamxiaojianzheng Sep 2, 2024
4bc33af
fix(parser): trimming lines caused troubles (#221)
gorillamoe Sep 9, 2024
7cf2c4a
Feat/add best practices doc (#208)
iamxiaojianzheng Sep 9, 2024
1c53300
chore(version): bump
gorillamoe Sep 9, 2024
deaa564
chore(docs): fix tip
gorillamoe Sep 9, 2024
bbbc91a
chore(docs): fix warning
gorillamoe Sep 9, 2024
3639181
lazily parse treesitter queries (#224)
treywood Sep 9, 2024
e732f42
docs(fix): remove duplification
gorillamoe Sep 9, 2024
ea1b276
feat(config): make curl path configurable (#226)
gorillamoe Sep 9, 2024
37977a4
fix(docs): example (#227)
gorillamoe Sep 9, 2024
1bc28a9
fix(form): fix binary multipart-form-data (#230)
gorillamoe Sep 10, 2024
45ac960
feat(ci): add linter (#231)
gorillamoe Sep 10, 2024
b825414
chore(deps): bump body-parser and express in /docs (#232)
dependabot[bot] Sep 10, 2024
f123519
chore(npm): update packages 📦 (#233)
gorillamoe Sep 10, 2024
ddf3781
feat(ci): add docs linter (#234)
gorillamoe Sep 10, 2024
8adfa27
fix(gql): introspection curl path (#235)
gorillamoe Sep 11, 2024
f6bbeef
add .nvim to gitignore
gorillamoe Sep 12, 2024
dd6a549
fix(shlex): make split function more robust (#229)
vyskocilm Sep 12, 2024
1a016d1
fix(health): support curl_path in a healthcheck (#237)
vyskocilm Sep 12, 2024
4a08292
fix(from_curl): improve heuristic and recognize curl_path too (#238)
vyskocilm Sep 12, 2024
a8696b2
Output path to curl executable and version in checkhealth (#239)
Grueslayer Sep 12, 2024
82bf4d7
Fix request variables documentation example (#241)
vlivanov1232 Sep 15, 2024
f373b48
SSL Client Certificate Auth (#247)
Grueslayer Sep 18, 2024
bfbb7b2
fix(ui): treesitter foldexpr calculate not work (#249)
wenjinnn Sep 29, 2024
b950b88
fix(parser): handle exception when no reqs found (#250)
gorillamoe Sep 29, 2024
558337b
feat: add json schema for http-client.env.json (#243)
gorillamoe Sep 30, 2024
3b53dbb
docs(http-client.env): add docs for `.private.json`. (#251)
gorillamoe Sep 30, 2024
6d6865c
Improve scripts (#252)
gorillamoe Oct 1, 2024
67447c2
fix: resolve "no such file or directory" error in scratchpad (#254)
arrow2nd Oct 3, 2024
50d0318
fix(scripts): only process if not empty (#257)
gorillamoe Oct 4, 2024
77a8ad3
fix(fs): join_paths on windows (#258)
gorillamoe Oct 4, 2024
39ce81e
feat(parser): streamline globals (#259)
gorillamoe Oct 4, 2024
a408fcf
feat(headers): use as supplied + support multiple headers (#260)
gorillamoe Oct 4, 2024
c7d258d
fix(utils): remove print
gorillamoe Oct 5, 2024
757f87c
fix(scripts): remove lowercase headers access (#261)
gorillamoe Oct 5, 2024
3407b68
feat(scripts): add `request.body.getComputed()` (#262)
gorillamoe Oct 6, 2024
2a19eb4
feat(ci): add tag script (#263)
gorillamoe Oct 6, 2024
04f648d
chore(makefile): tag and release both doing the same
gorillamoe Oct 6, 2024
e156929
feat(docs): support json highlights
gorillamoe Oct 6, 2024
03f80f5
feat(docs): fix CODEOWNERS, add CODE_OF_CONDUCT & CONTRIBUTING (#264)
gorillamoe Oct 6, 2024
0c88376
fix(docs): typo in CONTRIBUTING (#265)
gorillamoe Oct 6, 2024
7f95cd0
feat(ci): testrunner clipboard support (#267)
gorillamoe Oct 7, 2024
9140eed
test(ui): add tests for from_curl() and close() (#266)
rcasia Oct 7, 2024
140e653
fix(env): selector without telescope (#272)
gorillamoe Oct 8, 2024
f7186ec
feat(scripts): add request to post_request script (#273)
gorillamoe Oct 8, 2024
f6a85b3
fix(graphql): add a Content-Type: application/json if not specified (…
vyskocilm Oct 9, 2024
7d8ccb3
fix(parser): form-data + binary (#278)
gorillamoe Oct 9, 2024
a543d6e
fix(ui): folds not working in lazy (#279)
gorillamoe Oct 9, 2024
bfc6c10
feat(search): searching for named requests now (#280)
gorillamoe Oct 9, 2024
6978c23
chore(version): bump
gorillamoe Oct 10, 2024
fb7e5d9
fix(scripts): keep tmp dir tree (#283)
gorillamoe Oct 10, 2024
d4d78b2
fix(scratchpad): noswapfile (#286)
gorillamoe Oct 11, 2024
ee9a49a
WIP
gorillamoe Oct 11, 2024
c7a2c79
fix(tmp): use `stdpath('cache')` for tmp files (#284)
gorillamoe Oct 14, 2024
c1eebbd
Keep alternative-file (#291)
Grueslayer Oct 17, 2024
af1de14
docs: add stats to available winbar panes (#293)
Foo-x Oct 19, 2024
0a52e1b
docs: fix typos (#296)
Foo-x Oct 20, 2024
9bfa4e9
fix: LICENSE + docusaurus notice
gorillamoe Oct 23, 2024
df111b4
Merge branch 'mistweaverco:main' into main
iamxiaojianzheng Oct 24, 2024
aebb0e9
feat(variable): support virtual variable
iamxiaojianzheng Sep 10, 2024
5f13918
refactor(variable): move to augroups
iamxiaojianzheng Sep 12, 2024
43cec2b
refactor(variable): support virtual_variable_max_length
iamxiaojianzheng Oct 24, 2024
25be105
Merge branch 'main' into feat/variable-values-hover
iamxiaojianzheng Oct 24, 2024
59787b2
fix(treesitter): show body on treesitter inspect (#303)
ng-tony Nov 1, 2024
623a26a
feat(scripts): install failure verbosity
gorillamoe Nov 1, 2024
bc2eb2d
feat(parser): huge req bodies + don't assume blobs (#305)
gorillamoe Nov 1, 2024
ac61243
revert(quickfix): folds not working in lazyvim (#306)
gorillamoe Nov 1, 2024
164dc11
fix(winbar): keybinds after session restore (#307)
gorillamoe Nov 1, 2024
a3643b2
feat(display_mode): split or float (#308)
gorillamoe Nov 1, 2024
70001fe
fix: space character problem when parsing content-type (#310)
zruhao Nov 3, 2024
3fc84b7
bump(version)
gorillamoe Nov 3, 2024
383defc
fix(scripts): windows: js engine build and run (#313)
gorillamoe Nov 7, 2024
da8a3d2
Merge branch 'mistweaverco:main' into main
iamxiaojianzheng Nov 8, 2024
e806e50
Merge branch 'main' into feat/variable-values-hover
iamxiaojianzheng Nov 8, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,6 @@ indent_style = space
indent_size = 2
charset = utf-8

[Makefile]
indent_style = tab

1 change: 0 additions & 1 deletion .github/CODEOWNERS

This file was deleted.

21 changes: 21 additions & 0 deletions .github/workflows/conform-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
name: Conform Docs

on:
pull_request:
paths:
- 'docs/**/*.md'
branches:
- main

jobs:
lint:
name: Lint Docs
runs-on: ubuntu-latest
container:
image: ghcr.io/mistweaverco/kulala-nvim-testrunner:latest
steps:
- uses: actions/checkout@v4

- name: Run linter
run: ./scripts/lint.sh check-docs
63 changes: 50 additions & 13 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -1,31 +1,68 @@
---
name: Test
name: Tests

on:
pull_request:
paths:
- '**/*.lua'
branches:
- main

jobs:
tests:
name: Tests
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-latest
container-image: ghcr.io/mistweaverco/kulala-nvim-testrunner:latest
test-linux:
name: Test Code on Linux
runs-on: ubuntu-latest
container:
image: ${{ matrix.container-image }}
image: ghcr.io/mistweaverco/kulala-nvim-testrunner:latest
steps:
- uses: actions/checkout@v4
- name: Restore cache
uses: actions/cache@v4
with:
path: |
.tests
key: ${{ runner.os }}-${{ matrix.container-image }}

key: ${{ runner.os }}-tests
- name: Run tests
run: ./scripts/tests.sh run
lint:
name: Lint Code
runs-on: ubuntu-latest
container:
image: ghcr.io/mistweaverco/kulala-nvim-testrunner:latest
steps:
- uses: actions/checkout@v4

- name: Run linter
run: ./scripts/lint.sh check-code
test-windows:
name: Test Code on Windows
runs-on: windows-latest
if: ${{ github.event.label.name == 'needs-windows-test' }}
steps:
- uses: actions/checkout@v4
- name: Restore cache
id: cache-deps
uses: actions/cache@v4
with:
path: |
.tests
~\scoop
~\AppData\Roaming\LJ4W
~\AppData\Roaming\luarocks
key: ${{ runner.os }}-tests
- name: Check if cache hit
if: steps.cache-deps.outputs.cache-hit == 'true'
run: echo "GH_CACHE_HIT=true" >> $Env:GITHUB_ENV
- name: Install dependencies
run: ./scripts/install-ci-test-requirements.ps1
- name: Save cache
uses: actions/cache/save@v4
with:
path: |
.tests
~\scoop
~\AppData\Roaming\LJ4W
~\AppData\Roaming\luarocks
key: ${{ runner.os }}-tests
- name: Run tests
run: ./scripts/tests.ps1
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
node_modules
.env
http-client.env.json
!/schemas/http-client.env.json
*.http
*graphql-schema.json
/http-examples
.tests
.nvim
1 change: 1 addition & 0 deletions CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @gorillamoe @Grueslayer
85 changes: 85 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# Contributor Covenant Code of Conduct

## Our Pledge

In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to make participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, gender identity and expression, level of experience,
nationality, personal appearance, race, religion, or sexual identity and
orientation.

## Our Standards

Examples of behavior that contributes to creating a positive environment
include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

- The use of sexualized language or imagery and unwelcome sexual attention or
advances
- Trolling, insulting/derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or electronic
address, without explicit permission
- Other conduct which could reasonably be considered inappropriate in a
professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community includes using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting an individual maintainer on:

### GitHub

- @gorillamoe

> (at `GitHub username` + `@github.com`).

### Discord

- gorillamoe

All complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at [https://contributor-covenant.org/version/1/4][version]

[homepage]: https://contributor-covenant.org
[version]: https://contributor-covenant.org/version/1/4/
89 changes: 89 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
# Contributing to Kulala

Thanks for checking out Kulala!
We're excited to hear and learn from you.

We've put together the following guidelines to
help you figure out where you can best be helpful.

## Table of Contents

0. [Types of contributions we're looking for](#types-of-contributions-were-looking-for)
0. [Ground rules & expectations](#ground-rules--expectations)
0. [How to contribute](#how-to-contribute)
0. [Style guide](#style-guide)
1. [Documentation](#documentation)
2. [Code](#code)
0. [Setting up your environment](#setting-up-your-environment)
0. [Community](#community)

## Types of contributions we're looking for

There are many ways you can directly contribute to Kulala:

- Feature requests
- Bug reports
- Code contributions
- Writing or editing documentation

## Ground rules & expectations

Before we get started,
here are a few things we expect from you (and that you should expect from others):

- Be kind and thoughtful in your conversations around this project.
We all come from different backgrounds and projects,
which means we likely have different perspectives on "how open source is done."
Try to listen to others rather than convince them that your way is correct.
- Kulala is released with a [Contributor Code of Conduct](./CODE_OF_CONDUCT.md).
By participating in this project, you agree to abide by its terms.
- Please ensure that your contribution passes all tests if you open a pull request.
If there are test failures, you will need to address them before we can merge your contribution.
- When adding content, please consider if it is widely valuable.
Please don't add references or links to things you or your employer have created,
as others will do so if they appreciate it.

## How to contribute

If you'd like to contribute,
start by searching through the [pull requests](https://github.com/mistweaverco/kulala.nvim/pulls) to
see whether someone else has raised a similar idea or question.

If you don't see your idea listed, and you think it fits into the goals of this guide, open a pull request.

## Style guide

### Documentation

If you're writing documentation,
see the [style guide](./docs/.vale/styles) (which uses [vale](https://vale.sh)) to
help your prose match the rest of the documentation.

### Code

When writing code,
please follow these configurations:

- [stylua](./stylua.toml)
- [luacheck](./.luacheckrc)
- [EditorConfig](./.editorconfig)
- [yaml-lint](./.yamllint.yaml)

Most of them are automatically checked by the CI,
so you don't need to worry about them.

## Community

Discussions about the Kulala take place on:

- This repository's [Issues](https://github.com/mistweaverco/kulala.nvim/issues) and
[Pull Requests](https://github.com/mistweaverco/kulala.nvim/pulls) sections
- The [Kulala Discord server](https://discord.gg/QyVQmfY4Rt)

Anybody is welcome to join these conversations.

Wherever possible,
do not take these conversations to private channels,
including contacting the maintainers directly.

Keeping communication public means everybody can benefit and learn from the conversation.
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2024 mistweaver.co
Copyright (c) 2024+ mistweaverco

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
11 changes: 11 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,2 +1,13 @@
version:
./scripts/set-version.sh $(VERSION)
tag:
./scripts/tag.sh
release:
./scripts/tag.sh
docker-build:
if [ "$(OS)" != "linux" ] || [ "$(OS)" != "windows" ]; then (echo "OS must be either linux or windows"; exit 1); fi
docker build -t ghcr.io/mistweaverco/kulala-nvim-$(OS)-testrunner:latest tests/_dockerfiles/$(OS)
docker-push:
if [ "$(OS)" != "linux" ] || [ "$(OS)" != "windows" ]; then (echo "OS must be either linux or windows"; exit 1); fi
docker push ghcr.io/mistweaverco/kulala-nvim-$(OS)-testrunner:latest

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ See [configuration options](https://kulala.mwco.app/docs/getting-started/configu

For getting this project started.

This project was heaviliy inspired by the idea of having a REST client in Neovim.
This project was heavily inspired by the idea of having a REST client in Neovim.

The actual state of [rest.nvim](https://github.com/rest-nvim/rest.nvim)
as archived kicked off the development of kulala.nvim.
Expand Down
15 changes: 15 additions & 0 deletions docs/.vale/styles/18F/Abbreviations.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
extends: substitution
message: "Use '%s' instead of '%s'."
link: https://content-guide.18f.gov/specific-words-and-phrases/
ignorecase: false
level: error
nonword: true
swap:
'\beg\b': e.g.,
'\bie\b': i.e.,
'e\.g\.(?:[^,]|$)': e.g.,
'i\.e\.(?:[^,]|$)': i.e.,
'(?i)\d{1,2} ?[ap]m': a.m. or p.m.
'D\.C\.': DC
'\bUSA?\b': U.S.
7 changes: 7 additions & 0 deletions docs/.vale/styles/18F/Ages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
extends: existence
message: Avoid hyphens in ages unless it clarifies the text.
link: https://content-guide.18f.gov/specific-words-and-phrases/
level: warning
tokens:
- '\d{1,3}-year-old'
22 changes: 22 additions & 0 deletions docs/.vale/styles/18F/Brands.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
extends: substitution
message: "Use '%s' instead of '%s'."
link: https://content-guide.18f.gov/trademarks-and-brands/
level: warning
ignorecase: true
swap:
Band-Aid: bandage
Bubble Wrap: packaging bubbles
Chapstick: lip balm
Crayola: crayons
Dumpster: waste container
Hi-Liter: highlighting marker
iPod: MP3 player
Kleenex: tissue
Plexiglas: plastic glass
Post-it note: adhesive note
Q-Tips: cotton swabs
Scotch tape: transparent tape
Styrofoam: plastic foam
Taser: stun gun
Xerox: photocopy
Loading