[tensor-shapes] torch.half dtype alias is missing from torch stubs
Maintainers usually reply within 2 days
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 82/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Domain
- developer-experience, testing
Research direction
The relevant declaration is in tensor-shapes/pyrefly-torch-stubs/torch-stubs/__init__.pyi around line 680. Read the existing float16 declaration and compare it with the public torch.half alias described in the issue; the Tensor.half method is a separate API. Done when the module-level alias has the same dtype type as torch.float16 and the supplied reproduction no longer reports missing-attribute.
Written by the indexing model from the issue text.
Description
Describe the Bug
torch.half is a public dtype alias for torch.float16.
Pyrefly reports missing-attribute when the shape stubs are active.
Minimal reproduction
Save this code as repro.py. Create an empty pyrefly.toml next to it.
import torch
assert torch.half == torch.float16
Run:
python repro.py
pyrefly check repro.py
The runtime assertions pass and the process exits with code 0. The type check reports the errors below.
Expected behavior
Expose the module-level torch.half alias with the same dtype type as torch.float16.
Actual behavior
repro.py:3:8: No attribute `half` in module `torch` [missing-attribute]
Environment and current source
- Python 3.13.13 on Linux.
- Pyrefly 1.4.0.
pyrefly-torch-stubs==1.4.0.- PyTorch 2.13.0+cu126.
I also reproduced this with the stub sources from main at e5f077bcb2897dad3d168c45b9b64271fca94db6. The local Pyrefly binary reports pyrefly 1.4.0. I selected the checkout stub package directories with --site-packages-path. The diagnostics above use those current source files.
Current stub source. The current stub declares float16, but does not expose the module-level half alias. The existing Tensor.half method is a separate API.
- Dominant language
- Rust
- Stars
- 7.1k
- Forks
- 564
- PR merge metrics
- No merged PRs in 30d
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing 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.
More from facebook/pyrefly
-
`pyrefly report .` panics if stream not read completelyPossibly taken @asukaminato0721 claimed this today. Opencrash
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
facebook/pyrefly#5362 · 1 assignee ·
Maintainers usually reply within 2 days
-
[tensor-shapes] torch.lerp rejects tensor weights and omits their broadcast shapePossibly taken @mangeshraut712 claimed this today. Openpytorch tensor-shapes
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 2 days
-
[tensor-shapes] torch.empty overloads omit requires_gradPossibly taken @Cha-Imaa claimed this today. Openpytorch tensor-shapes
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
facebook/pyrefly#5359 · 2 comments · 1 assignee ·
Maintainers usually reply within 2 days
-
bug(stubgen): `typing` / `_typeshed` imports are emitted above `from __future__ import annotations`Possibly taken @mangeshraut712 claimed this today. Opengood first issue stubgen
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
facebook/pyrefly#5321 · 1 comment ·
Maintainers usually reply within 2 days
-
[tensor-shapes] NumPy mean and sum declare rank-zero ndarrays for scalar resultsPossibly taken @mangeshraut712 claimed this today. Opentensor-shapes
Difficulty 4/5 3-5 days Newbie friendliness 55/100
Maintainers usually reply within 2 days
All issues in facebook/pyrefly
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 73/100
Maintainers usually reply within 1 day
-
C-bug needs-triage O-UEFI T-libs
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
bug priority: P3 ready-for-agent
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
shep-pm/shep-kelpie#1332 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
ramensoftware/windhawk#1156 · 2 comments ·
-
area/cli complexity:trivial good first issue Stellar Wave test
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Externalize-Labs/externalize#23 ·
Maintainers usually reply within 1 day