ipfs-pack
ipfs-pack copied to clipboard
Make a real SPEC, not a description of specifications
If there was a well written spec, then it would be easier to diagnose problems, write external tests and even autogenerate better documentation.
ipfs/interface-ipfs-core/SPEC does an excellent job of this.
Is there something specific missing with https://github.com/ipfs/ipfs-pack/blob/master/spec.md ?
This line is bothersome: "ipfs-pack is only a spec at present, but the hope is to implement it imminently."
Furthermore, the spec.md appears out of date. It is not machine-readable and seems to include commands that never made it off the bench, likeipfs-pack car. Where is PackAuth in my pack?
Please compare the following spec for something more along the lines of what I mean by a SPEC:
https://github.com/ipfs/interface-ipfs-core/blob/master/SPEC/KEY.md
This is the way that I feel SPEC driven software design should work:
- Define a machine-readable SPEC.
- Derive documentation from the SPEC.
- Write a generic testing rig that uses the SPEC to create test units.
- Generate code stubs programatically from the SPEC.
- Extend stubs until unit tests no longer fail.
- Along the way define edge cases, extend the SPEC.
- SPEC extension triggers 2. and 3. and 4.
- Smooth docs with human authoring and craftspersonship.