-
Notifications
You must be signed in to change notification settings - Fork 9
docs: add blog featuring the seclang_parser #447
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
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: Felipe Zipitria <felipe.zipitria@owasp.org>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds a comprehensive blog post introducing the seclang_parser project to the CRS community. The blog post explains the project's purpose, design principles, use cases, and how to get started with it.
Changes:
- Added new blog post dated January 22, 2026, featuring the seclang_parser project
- Documented the ANTLR-based parser for SecLang configuration language
- Included examples for Go and Python developers
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| author: fzipi | ||
| --- | ||
|
|
||
| We are excited to announce a significant development in the CRS ecosystem: the [seclang_parser](https://github.com/coreruleset/seclang_parser), a new ANTLR-based parser for the SecLang configuration language used by ModSecurity and compatible WAF engines. |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The introduction states "We are excited to announce a significant development" which implies this is a new announcement, but later the blog mentions "The project is already in active use with multiple releases published. Version 0.3.2 was released in November 2025" (line 94). This creates a discrepancy - the blog cannot both announce something new and acknowledge it has been in active use for months. Consider changing the introduction to say something like "We are excited to highlight" or "We want to introduce the community to" to better reflect that this is a feature article about an existing project rather than an announcement of something new.
| Rather than dealing with low-level parsing details in each target language, the grammar prioritizes simplicity and clarity. This reduces implementation errors and makes the parser easier to understand and maintain. | ||
|
|
||
| ### Minimal Dependencies | ||
| The generated parsers are designed to work with native code without requiring external dependencies or CGo bindings. This makes integration into existing projects straightforward and reduces potential compatibility issues. |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The correct spelling is "cgo" (lowercase), not "CGo". This is the standard way to refer to the Go tool that enables Go programs to call C code.
| The generated parsers are designed to work with native code without requiring external dependencies or CGo bindings. This makes integration into existing projects straightforward and reduces potential compatibility issues. | |
| The generated parsers are designed to work with native code without requiring external dependencies or cgo bindings. This makes integration into existing projects straightforward and reduces potential compatibility issues. |
|
|
||
| ## What is seclang_parser? | ||
|
|
||
| The seclang_parser is a grammar-based parser generator built on ANTLR 4 (Another Tool for Language Recognition) that provides a unified, language-agnostic approach to parsing ModSecurity's SecLang configuration files. Rather than maintaining separate parsing implementations across different programming languages, this project consolidates efforts around a single, authoritative grammar specification. |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The description "grammar-based parser generator" is technically imprecise. ANTLR 4 is the parser generator; seclang_parser provides ANTLR grammar definitions and the parsers generated from those grammars. Consider rephrasing to something like "a grammar-based parser built using ANTLR 4" or "an ANTLR 4-based parser with unified grammar definitions" to more accurately reflect the project's nature.
| The seclang_parser is a grammar-based parser generator built on ANTLR 4 (Another Tool for Language Recognition) that provides a unified, language-agnostic approach to parsing ModSecurity's SecLang configuration files. Rather than maintaining separate parsing implementations across different programming languages, this project consolidates efforts around a single, authoritative grammar specification. | |
| The seclang_parser is a grammar-based parser built using ANTLR 4 (Another Tool for Language Recognition) that provides a unified, language-agnostic approach to parsing ModSecurity's SecLang configuration files. Rather than maintaining separate parsing implementations across different programming languages, this project consolidates efforts around a single, authoritative grammar specification. |
|
@copilot open a new pull request to apply changes based on the comments in this thread |
Deploying website with
|
| Latest commit: |
d48ac0f
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://b45fc680.website-1u6.pages.dev |
| Branch Preview URL: | https://feat-add-seclang-parser-blog.website-1u6.pages.dev |
Co-authored-by: fzipi <3012076+fzipi@users.noreply.github.com>
fix: apply review feedback on seclang_parser blog post
what
why