Complete Tasks 1-5 of the Hugo-native API migration:
- Promote Hugo-native templates from POC to production location
- Remove RapiDoc templates (rapidoc.html, rapidoc-tag.html, rapidoc-mini.html)
- Remove RapiDoc JS components (api-rapidoc.ts, rapidoc-mini.ts)
- Clean up generation scripts (~200 lines of dead code removed)
- Rewrite Cypress tests for standard HTML (no shadow DOM)
Templates moved from layouts/partials/api/hugo-native/ to parent.
All verifications pass (Hugo build, TypeScript compilation).
Replace unreliable findRE regex with split-based path extraction for
version detection in API section index pages. The previous regex
"[^/]+.*?" was inconsistent and could fail to extract version correctly.
Changes:
- layouts/_default/api.html: Add dual-button logic for clustered/cloud-dedicated
section index pages using split-based URL path extraction
- layouts/api/list.html: Replace findRE with split for version extraction
- layouts/api/section.html: Add dual-button logic matching api.html
The split approach extracts path segments reliably:
/influxdb3/clustered/api/ → ["", "influxdb3", "clustered", "api", ""]
$version = index 2 = "clustered"
- Always show children after content (was showing either/or)
- Use children-links class for arrow indicator styling
- Truncate descriptions to first paragraph and 200 chars
- Apply markdownify filter for proper markdown rendering
* fix(api): refine .IsSection check to prevent breaking endpoint pages
The previous commit added an .IsSection check that correctly fixed
section index pages but inadvertently broke endpoint pages that Hugo
classifies as sections.
This commit refines the conditional to check for the absence of the
staticFilePath parameter, which distinguishes true section index pages
from endpoint pages that need the RapiDoc renderer:
- Section pages (no staticFilePath): Show children listing
- Endpoint pages (with staticFilePath): Use RapiDoc renderer
Fixes the regression introduced in commit 59daf17.
* chore: update Scalar references to RapiDoc in comments
Update code comments and documentation to accurately reflect that
the API documentation uses RapiDoc, not Scalar:
- api-docs/scripts/generate-openapi-articles.ts: Update JSDoc comments
- api-docs/scripts/dist/generate-openapi-articles.js: Update compiled version
- assets/js/components/api-toc.ts: Update implementation comment
- .claude/agents/ts-component-dev.md: Update component reference
- .claude/skills/hugo-template-dev/SKILL.md: Update component reference
The implementation uses RapiDoc throughout, so these comments needed
to be corrected for accuracy.
---------
Co-authored-by: Claude <noreply@anthropic.com>
Update Hugo templates to correctly display API children listing on
section index pages (/influxdb3/core/api/, /influxdb3/enterprise/api/)
instead of the RapiDoc renderer.
- Create layouts/api/section.html for API section pages
- Update layouts/_default/api.html to detect section pages and render
content directly instead of using RapiDoc
- Clean up layouts/api/list.html debug comment
The issue was that layouts/_default/api.html took precedence over
layouts/api/list.html for section pages due to Hugo's type-based
template lookup. The fix adds .IsSection check to delegate section
pages to appropriate rendering logic.
Replace legacy API documentation approach with modern Scalar-based rendering:
## Architecture Changes
- Add renderer abstraction (`layouts/partials/api/`) supporting Scalar and RapiDoc
- Create `api` layout type for API reference pages (single.html, list.html)
- Configure renderer via `site.Params.apiRenderer` (default: scalar)
## OpenAPI Processing Pipeline (TypeScript)
- `api-docs/scripts/generate-openapi-articles.ts` - Main generation script
- `api-docs/scripts/openapi-paths-to-hugo-data/` - OpenAPI to Hugo data converter
- Generates per-endpoint path fragments for AI agent access
- Creates Hugo content pages with `type: api` frontmatter
## AI Agent Accessibility
- Full specs at `/openapi/influxdb-{product}.yml` and `.json`
- Per-endpoint fragments at `/openapi/influxdb-{product}/paths/`
- `<link rel="alternate">` tags in HTML for machine discovery
## Scalar Features
- Dark/light theme support synchronized with site theme
- InfluxData brand colors
- Responsive layout
- Download link for OpenAPI spec
## Products Supported
- cloud-v2, oss-v2
- influxdb3-core, influxdb3-enterprise
- cloud-dedicated, cloud-serverless, clustered
Usage: node api-docs/scripts/dist/generate-openapi-articles.js [product]
* feat(llms): LLM-friendly Markdown, ChatGPT and Claude links.
This enables LLM-friendly documentation for entire sections,
allowing users to copy complete documentation sections with a single click.
Lambda@Edge now generates .md files on-demand with:
- Evaluated Hugo shortcodes
- Proper YAML frontmatter with product metadata
- Clean markdown without UI elements
- Section aggregation (parent + children in single file)
The llms.txt files are now generated automatically during build from
content structure and product metadata in data/products.yml, eliminating
the need for hardcoded files and ensuring maintainability.
**Testing**:
- Automated markdown generation in test setup via cy.exec()
- Implement dynamic content validation that extracts HTML content and
verifies it appears in markdown version
**Documentation**:
Documents LLM-friendly markdown generation
**Details**:
Add gzip decompression for S3 HTML files in Lambda markdown generator
HTML files stored in S3 are gzip-compressed but the Lambda was attempting
to parse compressed data as UTF-8, causing JSDOM to fail to find article
elements. This resulted in 404 errors for .md and .section.md requests.
- Add zlib gunzip decompression in s3-utils.js fetchHtmlFromS3()
- Detect gzip via ContentEncoding header or magic bytes (0x1f 0x8b)
- Add configurable DEBUG constant for verbose logging
- Add debug logging for buffer sizes and decompression in both files
The decompression adds ~1-5ms per request but is necessary to parse
HTML correctly. CloudFront caching minimizes Lambda invocations.
Await async markdown conversion functions
The convertToMarkdown and convertSectionToMarkdown functions are async
but weren't being awaited, causing the Lambda to return a Promise object
instead of a string. This resulted in CloudFront validation errors:
"The body is not a string, is not an object, or exceeds the maximum size"
**Troubleshooting**:
- Set DEBUG for troubleshooting in lambda
* feat(llms): Add build-time LLM-friendly Markdown generation
Implements static Markdown generation during Hugo build.
**Key Features:**
- Two-phase generation: HTML→MD (memory-bounded), MD→sections (fast)
- Automatic redirect detection via file size check (skips Hugo aliases)
- Product detection using compiled TypeScript product-mappings module
- Token estimation for LLM context planning (4 chars/token heuristic)
- YAML serialization with description sanitization
**Performance:**
- ~105 seconds for 5,000 pages + 500 sections
- ~300MB peak memory (safe for 2GB CircleCI environment)
- 23 files/sec conversion rate with controlled concurrency
**Configuration Parameters:**
- MIN_HTML_SIZE_BYTES (default: 1024) - Skip files below threshold
- CHARS_PER_TOKEN (default: 4) - Token estimation ratio
- Concurrency: 10 workers (CI), 20 workers (local)
**Output:**
- Single pages: public/*/index.md (with frontmatter + content)
- Section bundles: public/*/index.section.md (aggregated child pages)
**Files Changed:**
- scripts/build-llm-markdown.js (new) - Main build script
- scripts/lib/markdown-converter.cjs (renamed from .js) - Core conversion
- scripts/html-to-markdown.js - Updated import path
- package.json - Updated exports for .cjs module
Related: Replaces Lambda@Edge on-demand generation (5s response time)
with build-time static generation for production deployment.
feat(deploy): Add staging deployment workflow and update CI
Integrates LLM markdown generation into deployment workflows with
a complete staging deployment solution.
**CircleCI Updates:**
- Switch from legacy html-to-markdown.js to optimized build:md
- 2x performance improvement (105s vs 200s+ for 5000 pages)
- Better memory management (300MB vs variable)
- Enables section bundle generation (index.section.md files)
**Staging Deployment:**
- New scripts/deploy-staging.sh for local staging deploys
- Complete workflow: Hugo build → markdown gen → S3 upload
- Environment variable driven configuration
- Optional step skipping for faster iteration
- CloudFront cache invalidation support
**NPM Scripts:**
- Added deploy:staging command for convenience
- Wraps deploy-staging.sh script
**Documentation:**
- Updated DOCS-DEPLOYING.md with comprehensive guide
- Merged staging/production workflows with Lambda@Edge docs
- Build-time generation now primary, Lambda@Edge fallback
- Troubleshooting section with common issues
- Environment variable reference
- Performance metrics and optimization tips
**Benefits:**
- Manual staging validation before production
- Consistent markdown generation across environments
- Faster CI builds with optimized script
- Better error handling and progress reporting
- Section aggregation for improved LLM context
**Usage:**
```bash
export STAGING_BUCKET="test2.docs.influxdata.com"
export AWS_REGION="us-east-1"
export STAGING_CF_DISTRIBUTION_ID="E1XXXXXXXXXX"
yarn deploy:staging
```
Related: Completes build-time markdown generation implementation
refactor: Remove Lambda@Edge implementation
Build-time markdown generation has replaced Lambda@Edge on-demand
generation as the primary method. Removed Lambda code and updated
documentation to focus on build-time generation and testing.
Removed:
- deploy/llm-markdown/ directory (Lambda@Edge code)
- Lambda@Edge section from DOCS-DEPLOYING.md
Added:
- Testing and Validation section in DOCS-DEPLOYING.md
- Focus on build-time generation workflow
* feat: Add Rust HTML-to-Markdown prototype
Implements core markdown-converter.cjs functions in Rust for performance comparison.
Performance results:
- Rust: ~257 files/sec (10× faster)
- JavaScript: ~25 files/sec average
Recommendation: Keep JavaScript for now, implement incremental builds first.
Rust migration provides 10× speedup but requires 3-4 weeks integration effort.
Files:
- Cargo.toml: Rust dependencies (html2md, scraper, serde_yaml, clap)
- src/main.rs: Core conversion logic + CLI benchmark tool
- benchmark-comparison.js: Side-by-side performance testing
- README.md: Comprehensive findings and recommendations
* fix(ui): improve dropdown positioning on viewport resize
- Ensure dropdown stays within viewport bounds (min 8px padding)
- Reposition dropdown on window resize and scroll events
- Clean up event listeners when dropdown closes
* chore(deps): add remark and unified packages for markdown processing
Add remark-parse, remark-frontmatter, remark-gfm, and unified for
enhanced markdown processing capabilities.
* fix(edge): add return to prevent trailing-slash redirect for valid extensions
Without the return statement, the Lambda@Edge function would continue
executing after the callback, eventually hitting the trailing-slash
redirect logic. This caused .md files to redirect to URLs with trailing
slashes, which returned 404 from S3.
* fix(md): add built-in product mappings and full URL support
- Add URL_PATTERN_MAP and PRODUCT_NAME_MAP constants directly in the
CommonJS module (ESM product-mappings.js cannot be require()'d)
- Update generateFrontmatter() to accept baseUrl parameter and construct
full URLs for the frontmatter url field
- Update generateSectionFrontmatter() similarly for section pages
- Update all call sites to pass baseUrl parameter
This fixes empty product fields and relative URLs in generated markdown
frontmatter when served via Lambda@Edge.
* feat(md): add environment flag for base URL control
Add -e, --env flag to html-to-markdown.js to control the base URL
in generated markdown frontmatter. This matches Hugo's -e flag behavior
and allows generating markdown with staging or production URLs.
Also update build-llm-markdown.js with similar environment support.
* feat(md): add Rust markdown converter and improve validation
- Add Rust-based HTML-to-Markdown converter with NAPI-RS bindings
- Update Cypress markdown validation tests
- Update deploy-staging.sh with force upload flag
* deploy-staging.sh:
- Defaults STAGING_URL to https://test2.docs.influxdata.com
if not set
- Exports it so yarn build:md -e staging can use it
- Displays it in the summary
* Delete scripts/prototypes/rust-markdown/benchmark-comparison.js
* Delete scripts/prototypes directory
* fix(llms): Include full URL for section page Markdown and list of child pages
* feat(llms): clarify format selector text for AI use case
Update button and dropdown text to make the AI/LLM purpose clearer:
- Button: "Copy page for AI" / "Copy section for AI"
- Sublabel: "Clean Markdown optimized for AI assistants"
- Section sublabel: "{N} pages combined as clean Markdown for AI assistants"
Cypress tests updated and passing (13/13).
---------
Co-authored-by: Scott Anderson <scott@influxdata.com>
* implement github style markdown alerts
* hide example doc
* swapped note and tip color schemes
* fixed broken v2 icons
* marked example as draft
* Apply suggestions from code review
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
---------
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
* fix iox ui details (#4660)
* fixed left nav for iox
* updated nav order
* one more nav fix
* added sql data types doc to iox
* removed, need to create separate branch
* IOx get started (#4676)
* WIP iox get started
* WIP iox get started
* WIP iox get started
* WIP iox get-started
* WIP get-started docs
* iox get started setup
* added custom times and datepicker to iox getting started
* finished sample data date picker
* WIP get started querying
* wrapped up new getting started content
* fixed unclosed shortcode
* fixed js bug, updated get started to address PR feedback
* removed influxdbu banner from iox-get-started
* fixed typos
* Migrate data to IOx (#4704)
* WIP iox get started
* WIP iox get started
* WIP iox get started
* WIP iox get-started
* WIP get-started docs
* iox get started setup
* added custom times and datepicker to iox getting started
* finished sample data date picker
* WIP get started querying
* wrapped up new getting started content
* fixed unclosed shortcode
* fixed js bug, updated get started to address PR feedback
* removed influxdbu banner from iox-get-started
* add tsm to iox migration guide
* WIP 1.x iox migration
* WIP iox migration guides
* iox migration landing page content
* updated migration docs to address PR feedback
* one last PR feedback update
* added sql reference for review
* moved reference to sql folder
* removed file
* Schema recommendations for IOx (#4701)
* WIP iox get started
* WIP iox get started
* WIP iox get started
* WIP iox get-started
* WIP get-started docs
* iox get started setup
* added custom times and datepicker to iox getting started
* finished sample data date picker
* WIP get started querying
* wrapped up new getting started content
* fixed unclosed shortcode
* fixed js bug, updated get started to address PR feedback
* removed influxdbu banner from iox-get-started
* schema design recommendations
* add heading color styles
* fixed typos and formatting
* fixed typos
* fixed line protocol descrepencies
* fixed typo
* IOx landing page and notification (#4717)
* updated cloud iox landing page
* added state of the docs notification, removed addition resources from nav
* updated iox page titles
* updated duplicate oss and product data
* add order by doc (#4710)
* add order by doc
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/order-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* added select doc (#4708)
* added select doc
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/select.md
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* having clause (#4713)
* added having clause
* Update content/influxdb/cloud-iox/having.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/having.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/having.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/having.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/having.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/having.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/having.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* added sql-data-types branch and corresponding doc (#4700)
* added sql-data-types branch and corresponding doc
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* Update content/influxdb/cloud-iox/sql-data-types.md
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* added interval
* fixed formatting
* more format fixes
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* add limit doc (#4711)
* add limit doc
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/limit.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* added group by (#4721)
* added group by
* Update content/influxdb/cloud-iox/group-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/group-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/group-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/group-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Update content/influxdb/cloud-iox/group-by.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
---------
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* IOx SQL query guides (#4720)
* WIP basic sql query guide
* WIP query guides
* WIP query docs, updated query format
* fleshed out sql aggregate query doc
* updated aggregate query guide, added explore schema guide
* fixed getting started link
* IOx Grafana and Superset documentation (#4723)
* iox grafana and superset documentation
* updates to the superset and grafana docs
* chore(grafana): Rework the documentation for a release instead of from source. (#4724)
* chore(grafana): Rework the documentation for a release instead of from source.
* chore: Typo.
* chore: v0.1.0 will be the first release.
* updates to address PR feedback
* a few minor updates to the grafana doc
* another minor update to grafana
* fixed grafana archive name
---------
Co-authored-by: Brett Buddin <brett@buddin.org>
* rearranged docs
* fix order by description
* updated more sql reference doc descriptions
* Add SQL selector functions (#4725)
* WIP selector functions
* WIP selector fns
* wrapped up sql selector functions
* relocated function docs
* add iox regions doc
* add messaging to guide users to the correct docs (#4728)
* minor changes
* added Flux reference
* updated algolia tagging
* add delete information to iox docs (#4727)
* fixed typos
* Add write content to the IOx docs (#4729)
* ported telegraf write docs to iox
* write content and updated reference
* updated node deps
* added link to selectors reference
---------
Co-authored-by: lwandzura <51929958+lwandzura@users.noreply.github.com>
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
Co-authored-by: Brett Buddin <brett@buddin.org>
* working on modifying the display of search results
* added product and version to search results dropdown, updated search attributes
* fixed result highlighting
* updated the sidebar toggle icon
* initial changes for flux restructure
* added all aliases
* added introduced date to all flux functions
* marked linearBins and logarithmicBins as draft
* migrated flux stdlib to new flux section, added version range to article template
* fixed list-all-functions shortcode
* duplicated and reordered flux spec, added page-nav shortcode, closes#1870
* added filtering functionality to list-all-functions shortcode
* added function tags
* Stdlib reorg (#2130)
* consolidated influxdb packages
* stdlib rename and reorg
* reorg existing contrib docs
* added keep-url to http.get example
* reorg built-in directory, add function types docs
* updated links
* updated all related links
* fixed reference links in influxdb docs
* updated all internal flux links
* updated flux links in influxdb
* one last link update
* restyle product dropdown
* update flux links in influxdb 1.7 and 1.8
* fixed shortcode call
* updated task options in flux options doc
* Flux 'interpolate' package (#2148)
* add interpolate package, closes#1649
* added missing page description to interpolate package doc
* removed unnecessary space from interpolate description
* updated interpolate package description
* ported from() note to new flux section
* New list filter javascript (#2185)
* generalized list filtering for telegraf plugins and flux functions
* added flux tags, updated filter list functionality
* added more flux tags
* added new experimental functions
* updated derivative params
* ported over new experimental functions
* fixed bad copy-pasta
* ported new notification endpoints into new flux docs
* updated flux function categories
* ported flux changes from master
* fixed product dropdown
* fixed regexp.findString example
* ported flux 0.109 changes
* updated array package aliases and supported version
* ported new functions into flux dir
* added aliases to interpolate package
* ported flux v0.114 packages
* added enterpise logic to url selector modal
* fix minor typo
* Update Flux param type convention (#2515)
* fix minor typo
* WIP new flux data type convention
* wip more param type updates
* cleaned up function type specs
* ported flux 0.115.0 packages and functions
* ported tickscript package
* ported today function
* added aliases to tickscript pkg
* updated timedMovingAverage params example
* updated to function with remote creds
* port flux 0.118 changes over
* port flux changes into flux-restructure
* ported changes from flux 0.123.0 and updated flux function docs
* updated contrib package summary
* updated function definition of schema.tagValues
* ported recent flux changes to the restructure branch
* port changes from master
* Flux get started (#3036)
* Flux group keys demo (#2553)
* interactive group key example
* added js and shortcode for group key demo
* updated group key demo to address PR feedback
* shortened sample data set
* Flux get started intro and data model (#2619)
* starting flux intro content, resolved merge conflicts
* WIP flux get started docs
* WIP flux get started
* flux get started intro and data model
* Apply suggestions from code review
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* Update content/flux/v0.x/get-started/data-model.md
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* addressed PR feedback in flux get started
* updated flux docs landing page
* more updates to flux landing page
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Flux query basics (#2887)
* WIP flux query basics
* WIP flux query basics
* WIP flux query basics
* WIP flux query basics
* wrap up content for flux query basics
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* properly close code block on flux query basics
* Flux – query data (#2891)
* added query data sources with flux and query influxdb
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Update content/flux/v0.x/query-data/influxdb.md
* Query Prometheus with Flux (#2893)
* query prometheus with flux
* Apply suggestions from code review
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* Query CSV data with Flux (#2895)
* query csv data with flux
* address PR feedback
* Update content/flux/v0.x/query-data/csv.md
* update flux query data sources landing page
* updated flux query data doc formats and links
* Query SQL databases (#2922)
* WIP query sql guides
* query SQL data sources, closes#1738
* updated related link on sql.from
* added link to stream of tables and updated text
* updated connection string text
* updated query sql landing page and children hr styles
* updated sql query docs to address PR feedback
* added missing colon
* Query Google Cloud Bigtable with Flux (#2928)
* Query Google Cloud Bigtable with Flux
* updated doc structure of query bigtable doc
* fixed typo in bigquery doc
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* Work with Flux data types (#2967)
* scaffolding for flux types, work with strings
* Apply suggestions from code review
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* removed note about interpolation vs concatenation
* updated wording of variable type association
* generalized type inference
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* WIP work with ints
* reverted int content
* updated strings doc to address PR feedback
* added description to data types landing page
* Apply suggestions from code review
* Update content/flux/v0.x/data-types/basic/string.md
* updated composite front-matter
* Work with time types in Flux (#2974)
* work with time types in flux, closes#2260
* updated time type doc
* fixed type in time type description
* fixed typo
* updated work with time doc
* fixed typos
* updated verbiage
* added related links
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* updated time type doc to address PR feedback
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Work with booleans (#2975)
* work with boolean types
* updated working with booleans
* updated verbiage
* added related links
* Update content/flux/v0.x/data-types/basic/boolean.md
* Work with bytes types (#2976)
* work with bytes types
* added toc to bytes type doc
* Apply suggestions from code review
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* updated work with bytes doc
* fixed typo
* added related links
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* Work with durations (#2977)
* work with durations in flux
* added keywords to duration doc to improve searchability
* minor updates to duration type doc
* updated verbiage
* added related links and removed toDuration from menu
* Update content/flux/v0.x/data-types/basic/duration.md
* Work with null types (#2978)
* WIP null types
* work with null types in flux
* updated null types doc
* Update content/flux/v0.x/data-types/basic/null.md
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Work with floats (#2979)
* work with floats in flux
* Apply suggestions from code review
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* Apply suggestions from code review
* updated floats type doc
* Update content/flux/v0.x/data-types/basic/float.md
* updated verbiage
* added related links
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Work with integers (#2980)
* WIP work with ints
* work with integers
* work with integers
* updated float to int behavior, added related links, closes#2973
* added toc to ints doc
* Apply suggestions from code review
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Update content/flux/v0.x/data-types/basic/integer.md
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Work with uintegers (#2981)
* WIP work with uints
* work with uints
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* fixed minor type
* Work with records (#2982)
* work with records in flux
* updated record type doc
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Work with arrays (#2983)
* work with arrays
* added array.from example, added related links
* Work with dictionaries (#2984)
* WIP work with dicts
* work with dictionaries
* added related links to dict package
* added introduced version to dict package
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* added sample dict output
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Work with functions (#2985)
* work with functions
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* revamped type landing pages
* marked union types as draft
* miscellaneous updates
* Work with regular expression (#3024)
* work with regular expression types, closes#2573, closesinfluxdata/flux#3741
* add context for quoteMeta function
* Apply suggestions from code review
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
* fix latest links in page descriptions
* updated influxdb links
* Flux syntax basics (#3033)
* flux syntax basics
* Apply suggestions from code review
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
* updated function description
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Apply suggestions from code review
* Update content/flux/v0.x/get-started/syntax-basics.md
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
* added table param to transformations, closes#2392 (#3039)
* updated flux function links
* update algolia configuration to fix search, closes#1902 (#3042)
* ported notes in the from function doc
* Flux package options (#3083)
* add now option to universe package
* added missing package options, closes#2464
* addressed PR feedback
* Flux transformation input/output examples (#3103)
* added flux/sample shortcode
* standardize flux package titles and list titles
* added start and stop columns as an option with flux/sample shortcode
* minor updates to stdlib
* WIP add input and output examples to flux transformations
* WIP removed sample data demo from universe index page
* WIP function input and output examples
* WIP flux input output examples
* WIP flux input output examples
* flux transformation input and output examples
* Add Flux 'sampledata' package (#3088)
* add flux sampledata package
* updated sampledata example titles
* Write data with Flux (#3084)
* WIP write to sql data sources
* write to sql data sources
* added write data to influxdb with flux doc
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* made sql headings specific to each db
* updated write to influxdb
* added tag to influxdb to example
* restructred influxdb write examples as code tabs
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
* fixed list on influxdb write with flux page
* Flux move changelog (#3117)
* updated flux redirects in edge.js
* move flux changelog into Flux restructure
* add flux redirects to edge.js
* removed extra parentheses from monitor.notify examples, closes#2505
* updated flux release notes with flux 0.129.0
* moved from and to into the influxdata/influxdb package
* updated notes on to and from docs
* added flux card to homepage
* added flux-0.130.0 to flux release notes
* flux link cleanup
* updated experimental message, closes#3097 (#3128)
* Remove Flux stdlib and language from InfluxDB (#3133)
* remove flux stdlib and lang from influxdb, update flux get-started, closes#2132
* flux link cleanup
* cleaned up prometheus verbiage, updated flux data type links
* function cleanup
* fixed sidenav toggle button
* updated group key links, added aliases for flux landing page
* fixed broken links, commented out prometheus content, updated flux types names
* added flux links to the left nav
* fixed flux links in kapacitor docs
* temporarily disable search (#3134)
* merged master and updated telegraf plugins
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
* WIP separate cloud docs, duplicate content shortcode
* WIP cloud-separation
* WIP separate cloud
* duplicated oss into cloud and am making updates
* moved cloud updates to cloud
* reimplemented duplicate-oss shortcode
* separate Cloud and OSS content in Tools & integ...
* Split OSS and Cloud content for Security & auth
* Split OSS and Cloud content for Manage org
* Split OSS and Cloud - Manage Orgs add'l updates
* various updates, primarily in oss and cloud reference
* split content for notification endpoints
* Move InfluxQL doc to Cloud
- Remove the "Query with InfluxQL" page from OSS docs
- Re-incorporate changes made in https://github.com/influxdata/docs-v2/pull/1506
* removed product tags from nav and articles
* WIP separate cloud docs, duplicate content shortcode
* WIP cloud-separation
* WIP separate cloud
* duplicated oss into cloud and am making updates
* moved cloud updates to cloud
* reimplemented duplicate-oss shortcode
* separate Cloud and OSS content in Tools & integ...
* Split OSS and Cloud content for Security & auth
* Split OSS and Cloud content for Manage org
* Split OSS and Cloud - Manage Orgs add'l updates
* various updates, primarily in oss and cloud reference
* split content for notification endpoints
* Move InfluxQL doc to Cloud
- Remove the "Query with InfluxQL" page from OSS docs
- Re-incorporate changes made in https://github.com/influxdata/docs-v2/pull/1506
* removed product tags from nav and articles
* New URL switcher (#1720)
* restructured url modal
* rearchitected the url switcher functionality
* add influxdb preference management to url switcher
* create separate pages for querying data
* update weight
* Update flux-repl.md
* Update influx-query.md
* edits f Scott
* move content from explore-metrics to data-explorer
* edits; delete explore-metrics
* edits
* delete file
* remove duplicate content
* add InfluxQLquery examples
* Remove references to "security script"
* draft updates for Band Plot vis
* WIP separate cloud docs, duplicate content shortcode
* WIP cloud-separation
* WIP separate cloud
* duplicated oss into cloud and am making updates
* moved cloud updates to cloud
* reimplemented duplicate-oss shortcode
* separate Cloud and OSS content in Tools & integ...
* Split OSS and Cloud content for Security & auth
* Split OSS and Cloud content for Manage org
* Split OSS and Cloud - Manage Orgs add'l updates
* various updates, primarily in oss and cloud reference
* split content for notification endpoints
* Move InfluxQL doc to Cloud
- Remove the "Query with InfluxQL" page from OSS docs
- Re-incorporate changes made in https://github.com/influxdata/docs-v2/pull/1506
* removed product tags from nav and articles
* WIP separate cloud docs, duplicate content shortcode
* WIP cloud-separation
* WIP separate cloud
* duplicated oss into cloud and am making updates
* moved cloud updates to cloud
* reimplemented duplicate-oss shortcode
* separate Cloud and OSS content in Tools & integ...
* Split OSS and Cloud content for Manage org
* Split OSS and Cloud - Manage Orgs add'l updates
* various updates, primarily in oss and cloud reference
* split content for notification endpoints
* Move InfluxQL doc to Cloud
- Remove the "Query with InfluxQL" page from OSS docs
- Re-incorporate changes made in https://github.com/influxdata/docs-v2/pull/1506
* New URL switcher (#1720)
* restructured url modal
* rearchitected the url switcher functionality
* add influxdb preference management to url switcher
* URL validation on custom URL (#1763)
* added url validation to custom url form, resolves#1739
* removed placeholder message from custom url form
* updated styles for url selector modal
* Move restore command to `influx` cli, update flags
* Update table for backup
* Remove RC information, update paths for restore, change `backup-path` flag to `input`
* WIP separate cloud docs, duplicate content shortcode
* WIP cloud-separation
* WIP separate cloud
* duplicated oss into cloud and am making updates
* moved cloud updates to cloud
* reimplemented duplicate-oss shortcode
* separate Cloud and OSS content in Tools & integ...
* Split OSS and Cloud content for Security & auth
* Split OSS and Cloud content for Manage org
* Split OSS and Cloud - Manage Orgs add'l updates
* various updates, primarily in oss and cloud reference
* split content for notification endpoints
* Move InfluxQL doc to Cloud
- Remove the "Query with InfluxQL" page from OSS docs
- Re-incorporate changes made in https://github.com/influxdata/docs-v2/pull/1506
* removed product tags from nav and articles
* WIP separate cloud docs, duplicate content shortcode
* WIP cloud-separation
* WIP separate cloud
* duplicated oss into cloud and am making updates
* moved cloud updates to cloud
* reimplemented duplicate-oss shortcode
* separate Cloud and OSS content in Tools & integ...
* Split OSS and Cloud content for Manage org
* Split OSS and Cloud - Manage Orgs add'l updates
* various updates, primarily in oss and cloud reference
* Move InfluxQL doc to Cloud
- Remove the "Query with InfluxQL" page from OSS docs
- Re-incorporate changes made in https://github.com/influxdata/docs-v2/pull/1506
* New URL switcher (#1720)
* restructured url modal
* rearchitected the url switcher functionality
* add influxdb preference management to url switcher
* WIP separate cloud docs, duplicate content shortcode
* WIP cloud-separation
* WIP separate cloud
* duplicated oss into cloud and am making updates
* moved cloud updates to cloud
* reimplemented duplicate-oss shortcode
* Split OSS and Cloud content for Manage org
* Split OSS and Cloud - Manage Orgs add'l updates
* various updates, primarily in oss and cloud reference
* Move InfluxQL doc to Cloud
- Remove the "Query with InfluxQL" page from OSS docs
- Re-incorporate changes made in https://github.com/influxdata/docs-v2/pull/1506
* WIP separate cloud docs, duplicate content shortcode
* WIP cloud-separation
* WIP separate cloud
* duplicated oss into cloud and am making updates
* moved cloud updates to cloud
* reimplemented duplicate-oss shortcode
* separate Cloud and OSS content in Tools & integ...
* Split OSS and Cloud content for Manage org
* Split OSS and Cloud - Manage Orgs add'l updates
* various updates, primarily in oss and cloud reference
* Move InfluxQL doc to Cloud
- Remove the "Query with InfluxQL" page from OSS docs
- Re-incorporate changes made in https://github.com/influxdata/docs-v2/pull/1506
* URL validation on custom URL (#1763)
* added url validation to custom url form, resolves#1739
* removed placeholder message from custom url form
* updated styles for url selector modal
* WIP updating InfluxDB OSS naming throughout
* updated canonical shortcode for oss vs cloud, updated 2.0 version numbers on homepage
* updated swagger file to rc4 for 2.0 and cloud
* fixed canonical partial
* Update multi-user Cloud docs
Also adds a heading the note on permissions.
Closes#1764
* Fix table for backup flags
* Update input flag, remove TSI references
* Address PR feedback
* Remove product tag
* Fix DBRP mapping examples (#1776)
* updated dbrp mapping examples in influxql query guide, closes#1774
* removed unnecessarily escaped newline from dbrp mapping example
* add draft rc4 and GA RNs
* cloud and oss name updates
* emphasis production ready
* update curl example
* duplicate oss pages in cloud
* Address PR feedback
* added new aws us east region, resolves#1777 (#1782)
* Add steps for script editor
* Add cloud version
* moved and updated upgrade guides (#1783)
* Fix typos
* update upgrade links
* edits
* Clarify 1m cardinality is initial limit only
* fix typo
* fix date
* Add note on `_internal` database to v1-to-v2 upgrade guide
Closes#1775.
* Update influxdb.md
* fixed broken links throughout cloud docs
* fixed broken links in 2.0 oss
* Address PR feedback
* remove window pushdowns
* updated oss pushdown list
* Add instructions for verifying InfluxDB 2.0 download
* updated latest versions in edge.js
* added flux-0.94.0 to flux release notes (#1790)
* update date and add Flux .94.0 link
* delete broken link to image
* remove auto refresh; not currently in UI
* add duplicate-oss tag to Cloud execute-queries
* highlight diff between Flux and InfluxQL example
* delete extra header
* Generate v1 compatibility API docs (#1789)
* updated swagger generation to generate v1 compat api docs
* restructured api docs
* updated restore flags table
* updated infludb binary urls in oss and cloud
* Address PR feedback
* Make contact support a mailto link
* Add --log-level flag to `influxd upgrade`
Closes#1795
* add release note about api/v2/delete
* update delete data note for 2.0
* edit
* Fix URLs and filenames in OSS 2.0 Get Started
* update version for GA
* Add color to Flux example for Flux documentation (addresses #1724 )
* Change versions to 2.0.1 in GS
* Replace 2.0.0 with 2.0.1
* Revert Docker updates to 2.0.0
* Add release notes for 2.0.0
* edits; add known issue
* clarify DB is 1.x
* updated influxdb versions in cloud and oss getting started
* updated influxdb oss urls doc
* remove rc and upd upgrade link in back up data
* Edit `influxd upgrade` docs (#1798)
* Edit `influxd upgrade` guide
Major revision of existing docs.
Add "Before you begin: important considerations" section.
* Address PR feedback
* Edit backup instructions
* More work on kap
* Rm comment
* Rm sentence
* Add note on Docker
* Edit intro
* Edit link
* Work on PR feedback
* Continue PR feedback
* More PR feedback
* More edits
* more edits
* Edits
* more edits
* rm word
* updates to address PR feedback for the upgrade guide
Co-authored-by: pierwill <pierwill@users.noreply.github.com>
Co-authored-by: Scott Anderson <scott@influxdata.com>
Co-authored-by: Kelly <kelly@influxdata.com>
Co-authored-by: pierwill <pierwill@users.noreply.github.com>
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: noramullen1 <42354779+noramullen1@users.noreply.github.com>