Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
balena-cdsl
Advanced tools
A configuration DSL.
Provides facilities to:
Current crate status is experimental. It's because the API is evolving, we're not fully using it yet and we will probably move the transformation functionality to another crate in the future. This crate will become a simple configuration DSL parser and nothing else.
balena-cdsl
crate is one small piece of the balena.io configuration project. This project has
no public / open specification yet, but we're working on it and it will be public once finished.
This library is written in the Rust language and can be used:
Add as a dependency to your Cargo.toml
:
[dependencies]
balena-cdsl = "0"
Evaluate simple JSON:
let input_schema: serde_yaml::Value = serde_yaml::from_str(
include_str!("configuration.yml")).
unwrap();
let (json_schema, ui_object) = Generator::with(input_schema)?.generate();
Install via npm
npm install --save balena-cdsl
Generate simple JSON Schema & UI Object Schema:
const cdsl = require('balena-cdsl');
const initialValue = `
title: demo
version: 1
properties:
- network:
title: Network
properties:
- ssid:
title: Network SSID
type: string
minLength: 1
maxLength: 32
- passphrase:
title: Network Key
type: password
minLength: 8
`;
console.log(cdsl.generate_ui(initialValue));
An example of using this module in nodeJS is available in the examples/node
folder:
cd examples/node
npm install
npm start
An example of using this module in the browser is available in the examples/browser
folder:
cd examples/browser
npm install
npm start
Open localhost:8080
in your browser.
If you're having any problem, please raise an issue on GitHub or contact us, and the balena.io team will be happy to help.
balena-cdsl
is open source software, and may be redistributed under the terms specified in
the license.
FAQs
Configuration DSL
The npm package balena-cdsl receives a total of 4 weekly downloads. As such, balena-cdsl popularity was classified as not popular.
We found that balena-cdsl demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.