-
Notifications
You must be signed in to change notification settings - Fork 1
new parser #42
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
new parser #42
Conversation
|
GitGuardian id | Secret | Commit | Filename | |
---|---|---|---|---|
3751481 | Generic High Entropy Secret | e3f2eb0 | tests/ini-to-json/11-s3-real.json | View secret |
3751481 | Generic High Entropy Secret | e3f2eb0 | tests/ini-to-json/11-s3-real.yaml | View secret |
🛠 Guidelines to remediate hardcoded secrets
- Understand the implications of revoking this secret by investigating where it is used in your code.
- Replace and store your secrets safely. Learn here the best practices.
- Revoke and rotate these secrets.
- If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.
To avoid such incidents in the future consider
- following these best practices for managing and storing secrets including API keys and other credentials
- install secret detection on pre-commit to catch secret before it leaves your machine and ease remediation.
🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.
Our GitHub checks need improvements? Share your feedbacks!
@niedbalski this is still a WIP but can you take a look? |
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.
Great work.
Looks generally good. I think the parsing schema for json might be a bit fragile.
- Did you remove the schema validator entirely from this parser?
- Any chance you can re-instate the original tests? I am particularly interested
into booleans, multi-field, urls (with schema + port + uri) and the multiple-files ones.
|
Replacing the entire config parser with new code. This version does not use the participle library.
Instead, for the classic mode, it splits by line, and detects commands (
@
prefix) and sections ([NAMED]
). Then each property nested in a section is split by space. Simple.It supports basic data types like string, integer, float and boolean. It does not try to parse regexes, dates, units, arrays, etc. Complex data types are left as string.
For the YAML parser, we use the yaml package with a custom unmarshaler to add support for sorted properties, so we don't loose track of the order of each property inside a plugin. This is mostly for testing so we can expect always the same order.
|-
)