Extendable protocol needed.

Open
#8 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
c
Domain
networking

Research direction

Locate and read the current semi-colon-separated protocol handling and trace how groups of fields are parsed by clients. Define a compatible field-count approach that permits new fields at the end of each group while preserving all existing information for older clients; completion requires an agreed protocol design and compatibility behavior.

Written by the indexing model from the issue text.

Description

We really should have a protocol that is extendable, allowing new fields to be reported without breaking compatibility with older clients. Adding a new protocol version for every new item of data we want to add will be quite cumbersome.

A simple way to improve the current semi-colon separated fields would be to have a field count at the beginning of every group of fields. Then we could add new fields to the end of groups without breaking compatibility with older clients. Older clients wouldn't be able to display the new fields, of course, but all of the old info would still be valid.

Dominant language
C
Stars
78
Forks
22
PR merge metrics
No merged PRs in 30d

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from llnl/lmt

All issues in llnl/lmt

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.