Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
7c4be90
Add generation of cue files from vrl Function
thomasqueirozb Feb 5, 2026
d028ae8
Use __mock_return_values_for_tests to show mocked examples
thomasqueirozb Feb 5, 2026
73d9585
Handle kind::any
thomasqueirozb Feb 6, 2026
ea36b23
Replace generate-component-docs with generate-docs
thomasqueirozb Feb 6, 2026
58fa9ab
Bump VRL
thomasqueirozb Feb 7, 2026
4f02f21
chore(vrl): Bump vrl and add return_kind to functions
thomasqueirozb Feb 7, 2026
d5c6ce5
Merge branch 'function-return' into automatic-vrl-documentation
thomasqueirozb Feb 7, 2026
4cc7bb4
Enable all features for vector-vrl-functions
thomasqueirozb Feb 8, 2026
a571dac
Add stubs and implement new params
thomasqueirozb Feb 8, 2026
ad740b0
Bump vrl and unstub pure
thomasqueirozb Feb 9, 2026
f6431ae
Bump vrl and unstub notices
thomasqueirozb Feb 9, 2026
8c42a0a
Trim strings
thomasqueirozb Feb 9, 2026
f0c2b92
Merge remote-tracking branch 'origin/master' into automatic-vrl-docum…
thomasqueirozb Feb 12, 2026
b5553de
chore(vrl): Bump VRL and implement category for functions
thomasqueirozb Feb 12, 2026
55e557b
Merge branch 'function-category' into automatic-vrl-documentation
thomasqueirozb Feb 12, 2026
e4d921a
Use .category()
thomasqueirozb Feb 12, 2026
74e4020
Merge remote-tracking branch 'origin/master' into automatic-vrl-docum…
thomasqueirozb Feb 13, 2026
cc66ebe
chore(vrl): bump VRL and use Parameter builder
thomasqueirozb Feb 18, 2026
4b8797e
Add .enum_variants to aggregate_vector_metrics
thomasqueirozb Feb 18, 2026
f2a3ddf
Add missing import
thomasqueirozb Feb 18, 2026
06eb975
Merge branch 'parameter-enum-variant' into automatic-vrl-documentation
thomasqueirozb Feb 19, 2026
44cacba
Add support for enum_variants
thomasqueirozb Feb 19, 2026
443e765
Merge remote-tracking branch 'origin/master' into automatic-vrl-docum…
thomasqueirozb Feb 19, 2026
2504f35
Add Raises block to remap rendering
thomasqueirozb Feb 19, 2026
c157925
Merge remote-tracking branch 'origin/master' into automatic-vrl-docum…
thomasqueirozb Feb 23, 2026
decc387
Bump vrl
thomasqueirozb Feb 23, 2026
142b3d3
Fix clippy
thomasqueirozb Feb 23, 2026
c4b4600
Install protoc when compiling vdev
thomasqueirozb Feb 23, 2026
5f0ef54
Add generated files
thomasqueirozb Feb 23, 2026
ad2a14b
Format json using 4 spaces instead of 2
thomasqueirozb Feb 23, 2026
cc139f5
Ignore VRL generated docs from cue fmt
thomasqueirozb Feb 23, 2026
ad035c8
Revert "Format json using 4 spaces instead of 2"
thomasqueirozb Feb 23, 2026
ee95f01
Push newline at the end of generated json
thomasqueirozb Feb 23, 2026
92eefbc
Bump VRL
thomasqueirozb Feb 24, 2026
76cd0c9
Add preserve_order to keep doc generation consistent
thomasqueirozb Feb 24, 2026
0782eab
Render input
thomasqueirozb Feb 24, 2026
1fad561
Regenerate docs
thomasqueirozb Feb 24, 2026
d6cbadc
Use IndexMap to preserve enum ordering
thomasqueirozb Feb 24, 2026
b51bc76
Regenerate docs with enum ordering
thomasqueirozb Feb 24, 2026
5cf0e1c
Fix cue schema
thomasqueirozb Feb 24, 2026
fd24c6d
Merge remote-tracking branch 'origin/master' into automatic-vrl-docum…
thomasqueirozb Feb 24, 2026
3335605
Remove .log when rendering VRL examples' input
thomasqueirozb Feb 24, 2026
2c5806f
Fix clippy
thomasqueirozb Feb 24, 2026
2b21351
Format cue
thomasqueirozb Feb 24, 2026
23cde3c
Add base64 encoded letters to spellcheck ignore
thomasqueirozb Feb 24, 2026
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
2 changes: 1 addition & 1 deletion .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@ runs:
EOF

- name: Install protoc
if: ${{ inputs.protoc == 'true' }}
if: ${{ inputs.protoc == 'true' || env.VDEV_NEEDS_COMPILE == 'true' }}
shell: bash
run: |
echo "Installing protoc"
Expand Down
25 changes: 25 additions & 0 deletions .github/actions/spelling/expect.txt
Original file line number Diff line number Diff line change
Expand Up @@ -677,3 +677,28 @@ zork
zorp
zsherman
zulip
QAAAA
LAAAAPAd
VGhl
FAJs
VISU
ISU
Ayv
Bym
MGkzw
TLp
LOk
vsiz
Bpd
Glu
Nvb
ZWVs
CBm
Fyd
Uge
Nhbid
Qgb
IGRI
Vzc
Ugc
IGhhdm
3 changes: 2 additions & 1 deletion .github/workflows/changes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -222,7 +222,8 @@ jobs:
component_docs:
- 'scripts/generate-component-docs.rb'
- "vdev/**"
- 'website/cue/**/base/**.cue'
- 'website/cue/**/generated/**.cue'
- 'website/cue/**/functions/*.cue'
- ".github/workflows/changes.yml"
markdown:
- '**/**.md'
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -146,8 +146,8 @@ jobs:
markdownlint: true
- run: make check-markdown

check-component-docs:
name: Check Component Docs
check-generated-docs:
name: Check Generated Docs
runs-on: ubuntu-24.04-8core
if: ${{ needs.changes.outputs.source == 'true' || needs.changes.outputs.component_docs == 'true' || needs.changes.outputs.test-yml == 'true' }}
needs: changes
Expand All @@ -159,7 +159,7 @@ jobs:
protoc: true
cue: true
libsasl2: true
- run: make check-component-docs
- run: make check-generated-docs

check-rust-docs:
name: Check Rust Docs
Expand Down Expand Up @@ -217,7 +217,7 @@ jobs:
- check-licenses
- check-docs
- check-markdown
- check-component-docs
- check-generated-docs
- check-rust-docs
- test-vrl
- build-vrl-playground
Expand Down
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ echo "Running pre-push checks..."
make check-licenses
make check-fmt
make check-clippy
make check-component-docs
make check-generated-docs

# Some other checks that in our experience rarely fail on PRs.
make check-deny
Expand Down Expand Up @@ -292,7 +292,7 @@ cargo vdev check events
cargo vdev check licenses
# Vector's documentation for each component is generated from the comments attached to the Component structs and members.
# Running this ensures that the generated docs are up to date.
make check-component-docs
make check-generated-docs
# Generate the code documentation for the Vector project.
# Run this to ensure the docs can be generated without errors (warnings are acceptable at the minute).
cd rust-doc && make docs
Expand Down
4 changes: 3 additions & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 12 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -472,7 +472,7 @@ check: ## Run prerequisite code checks
check-all: ## Check everything
check-all: check-fmt check-clippy check-docs
check-all: check-examples check-component-features
check-all: check-scripts check-deny check-component-docs check-licenses
check-all: check-scripts check-deny check-generated-docs check-licenses

.PHONY: check-component-features
check-component-features: ## Check that all component features are setup properly
Expand Down Expand Up @@ -514,9 +514,9 @@ check-deny: ## Check advisories licenses and sources for crate dependencies
check-events: ## Check that events satisfy patterns set in https://github.com/vectordotdev/vector/blob/master/rfcs/2020-03-17-2064-event-driven-observability.md
${MAYBE_ENVIRONMENT_EXEC} $(VDEV) check events

.PHONY: check-component-docs
check-component-docs: generate-component-docs ## Checks that the machine-generated component Cue docs are up-to-date.
${MAYBE_ENVIRONMENT_EXEC} $(VDEV) check component-docs
.PHONY: check-generated-docs
check-generated-docs: generate-docs ## Checks that the machine-generated component Cue docs are up-to-date.
${MAYBE_ENVIRONMENT_EXEC} $(VDEV) check generated-docs

##@ Rustdoc
build-rustdoc: ## Build Vector's Rustdocs
Expand Down Expand Up @@ -693,6 +693,14 @@ generate-component-docs: ## Generate per-component Cue docs from the configurati
${MAYBE_ENVIRONMENT_EXEC} $(VDEV) build component-docs /tmp/vector-config-schema.json \
$(if $(findstring true,$(CI)),>/dev/null,)

.PHONY: generate-vrl-docs
generate-vrl-docs: ## Generate VRL function documentation from Rust source.
${MAYBE_ENVIRONMENT_EXEC} $(VDEV) build vrl-docs \
$(if $(findstring true,$(CI)),>/dev/null,)

.PHONY: generate-docs
generate-docs: generate-component-docs generate-vrl-docs

.PHONY: signoff
signoff: ## Signsoff all previous commits since branch creation
scripts/signoff.sh
Expand Down
6 changes: 3 additions & 3 deletions docs/DEVELOPING.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ Loosely, you'll need the following:
- **To run integration tests:** Have `docker` available, or a real live version of that service. (Use `AUTOSPAWN=false`)
- **To run `make check-component-features`:** Have `remarshal` installed.
- **To run `make check-licenses` or `make build-licenses`:** Have `dd-rust-license-tool` [installed](https://github.com/DataDog/rust-license-tool).
- **To run `make generate-component-docs`:** Have `cue` [installed](https://cuelang.org/docs/install/).
- **To run `make generate-docs`:** Have `cue` [installed](https://cuelang.org/docs/install/).

If you find yourself needing to run something inside the Docker environment described above, that's totally fine, they won't collide or hurt each other. In this case, you'd just run `make environment-generate`.

Expand Down Expand Up @@ -161,8 +161,8 @@ cargo bench transforms::example
# Format your code before pushing!
make fmt
cargo fmt
# Build component documentation for the website
make generate-component-docs
# Build component and VRL documentation for the website
make generate-docs
```

If you run `make` you'll see a full list of all our tasks. Some of these will start Docker containers, sign commits, or even make releases. These are not common development commands and your mileage may vary.
Expand Down
2 changes: 1 addition & 1 deletion docs/DOCUMENTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ Much of Vector's reference documentation is automatically compiled from source c
To regenerate this content, run:

```bash
make generate-component-docs
make generate-docs
```

### Formatting
Expand Down
3 changes: 2 additions & 1 deletion scripts/cue.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ cmd_list() {
}

cmd_fmt() {
list-docs-files | xargs cue fmt "$@"
# Ignore JSON-style cue files generated from VRL source code
list-docs-files | grep -v "${CUE_SOURCES}/reference/remap/functions/" | xargs cue fmt "$@"
}

cmd_vet() {
Expand Down
5 changes: 4 additions & 1 deletion vdev/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ paste.workspace = true
regex.workspace = true
reqwest = { workspace = true, features = ["blocking"] }
serde.workspace = true
serde_json.workspace = true
serde_json = { workspace = true, features = ["preserve_order"] }
serde_yaml.workspace = true
sha2 = "0.10.9"
tempfile.workspace = true
Expand All @@ -45,6 +45,9 @@ semver.workspace = true
indoc.workspace = true
git2 = { version = "0.20.4" }
cfg-if.workspace = true
vector-vrl-functions = { path = "../lib/vector-vrl/functions", features = ["dnstap", "vrl-metrics"] }
# Only here for docs generation. Using vrl with this feature enabled will be severely broken
vrl = { workspace = true, features = ["__mock_return_values_for_tests"] }

[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/vdev-v{ version }/{ name }-{ target }-v{ version }.tgz"
2 changes: 2 additions & 0 deletions vdev/src/commands/build/mod.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
mod licenses;
mod publish_metadata;
mod vector;
mod vrl_docs;
mod vrl_wasm;

crate::cli_subcommands! {
Expand All @@ -11,6 +12,7 @@ crate::cli_subcommands! {
publish_metadata,
release_cue,
vector,
vrl_docs,
vrl_wasm,
}

Expand Down
Loading
Loading