Port to protozero
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 248
- Forks
- 67
- PR merge metrics
- No merged PRs in 30d
Description
We should port the code to [protozero](https://github.com/mapbox/protozero/) because:
- it would make the code easier to build: no protoc to run, no pre-compiled library to link
- it would make the build system easier to maintain and easier to update deps
- it would make the code potentially higher performance
The downside to protozero is that it makes it slightly more work when you want to update the protobuf scheme. However, I think this is a fine tradeoff since the schema here for [glyphs](https://github.com/mapbox/node-fontnik/blob/master/proto/glyphs.proto) has not changed frequently so far.
This in my mind is low urgency, but a nice to have and a good starter task for someone interested in learning and using protozero more.
/cc for visibility @kkaefer @ChrisLoer @mapbox/core-tech
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with proto/glyphs.proto and trace how protoc and the pre-compiled protobuf library enter the current build. Compare that path with protozero's usage and confirm the glyph schema remains supported; done means the code builds without protoc or the pre-compiled library while preserving glyph encoding.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- build-system
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100