š needs: inf / nan accepted in a number field and written Infinity / NaN by hash, fingerprint and needs.json
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 15/100
Research direction
This is a contract decision, not a code change yet. The payload names the number field, the hash and fingerprint kinds, and needs.json as the places where inf/nan leak out as Python Infinity/NaN tokens. Start by reading how each of those paths serializes numbers, then wait for a maintainer to choose between refusing these values with a finding and defining their text. Done means one agreed contract, mirrored in useblocks/ubcode#4068.
Written by the indexing model from the issue text.
Description
What
A number field accepts inf and nan as authored values and as a default, and the hash / fingerprint kinds (and needs.json) then write Python's Infinity / NaN tokens ā valid for Python's json, not for JSON itself, so a strict reader (and ubCode, whose JSON writer refuses them) cannot read the file, and the digest text is one no other tool can reproduce.
ubCode's side of the same input is useblocks/ubcode#4068 (the default is dropped and an authored nan is exported as 0, silently). Both tools should agree on one contract.
Do
Decide: refuse inf / nan in a number field with a finding (my recommendation: JSON has no such numbers, and the derived-values contract wants byte-identical digests), or define their text. Then mirror in ubCode.
- Dominant language
- Python
- Stars
- 309
- Forks
- 103
- Avg merge
- 11h 26m
- Merged PRs (30d)
- 118
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
- 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.
More from useblocks/sphinx-needs
-
documentation pkg: sphinx-needs
Difficulty 1/5 Under an hour Newbie friendliness 82/100
useblocks/sphinx-needs#2255 Ā·
Maintainers usually reply within 1 day
-
bug pkg: sphinx-needs
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
useblocks/sphinx-needs#2253 Ā·
Maintainers usually reply within 1 day
-
bug pkg: sphinx-needs
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
useblocks/sphinx-needs#2251 Ā·
Maintainers usually reply within 1 day
-
bug pkg: sphinx-needs
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
useblocks/sphinx-needs#2249 Ā·
Maintainers usually reply within 1 day
-
documentation pkg: sphinx-test-reports
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
useblocks/sphinx-needs#2247 Ā·
Maintainers usually reply within 1 day
All issues in useblocks/sphinx-needs
Similar issues
-
md/asciidoc/csv: an explicit `encoding="utf-8"` keeps a leading BOM, the auto-detect path drops itOpen
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
docling-project/docling#4846 Ā·
Maintainers usually reply within 1 day
-
area/sessions comp/dashboard comp/desktop comp/gateway comp/tui duplicate P2 sweeper:risk-session-state type/bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
NousResearch/hermes-agent#138914 Ā· 1 comment Ā·
Maintainers usually reply within 1 day
-
bot-triaged module: activation checkpointing module: inductor oncall: pt2 triaged
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 1 day
-
[oblt-aw][autodoc] Update PR Actions Detective E2E prerequisites and fix dashboard-format table typoOpendocumentation
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
elastic/oblt-aw#2382 Ā· 1 comment Ā·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
Maintainers usually reply within 1 day