openproto / protoconfig Goto Github PK
View Code? Open in Web Editor NEWProtoConfig 1.0: Open Standard for using, defining, and consuming software configuration input in a unified way.
License: Apache License 2.0
ProtoConfig 1.0: Open Standard for using, defining, and consuming software configuration input in a unified way.
License: Apache License 2.0
Discoverability of the protobuf
is a big problem in the ecosystem (e.g gRPC
). Ideally, binaries are self-descriptive. There might be huge value in bringing
this topic here, but it could be also subject to another specification (as per Focus on one thing well
).
For example:
CPD
Shall be embedded in the software executable/binary and available on demand. Note that this specification does not force any delivery mechanism as long as there is one.
- It's recommended to expose
protoconfig.v1
argument or flag that will output embeddedCPD
in.proto
format.- For web applications it's recommended to also expose
/protoconfig/v1
endpoint that returnsCPD
.proto
format.
The above assumes CPD
is self-contained which conflicts with the above about extensibility.
Common stuff that needs bit thinking
To make this really good standard, we need to improve the ecosystem. It's not bad (e.g IDE proto files support exists, tools are reliable, version etc), but there are rough edges:
protoc
does not automate path lookups, it's hard to find correct paths (e.g all has to be absolute, for some reason)protoc
, protoc-gen-go
protoc-gen-go-openconfig
), with strict naming (plugin system)All is solvable though. Help & ideas welcome ๐ค
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.