Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Add checked floating-point byte readers and writers

Open Beginner friendly
#764 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Domain
compilers

Research direction

Start with std/bytes/read.wave, std/bytes/write.wave, std/bytes/endian.wave, and std/math/float.wave to follow the existing checked integer operations and bit-preserving float conversions. Add BE/LE checked f32/f64 offset operations, then verify round trips, unaligned offsets, invalid inputs, and insufficient space at O0 and O2, including NaN payloads and signed zero.

Written by the indexing model from the issue text.

Description

enhancement good first issue needs testing

Motivation

Checked byte readers/writers support integers only, although std::math::float already supplies bit-preserving f32/f64 conversions. Binary protocols currently require users to compose these operations themselves.

Starting points: std/bytes/read.wave, std/bytes/write.wave, std/bytes/endian.wave, std/math/float.wave.

Scope

Add BE/LE checked offset reads and writes for f32/f64. Use bit conversion, not numeric arithmetic, to preserve payloads and signed zero. Cursor convenience methods are outside this task.

Difficulty: easy.

Completion criteria

  • Round-trip ±0, finite values, subnormals, infinities and NaN payload bits.
  • Support unaligned offsets through existing byte-oriented primitives.
  • Preserve outputs/buffers on invalid input or insufficient space.
  • Test both byte orders at O0/O2.
Dominant language
Rust
Stars
56
Forks
21
Avg merge
2h 37m
Merged PRs (30d)
57

Getting set up

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 wavefnd/Wave

All issues in wavefnd/Wave

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.