ulpwise 0.1.1__tar.gz → 0.1.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ulpwise-0.1.1 → ulpwise-0.1.2}/CHANGELOG.md +5 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/Cargo.lock +1 -1
- {ulpwise-0.1.1 → ulpwise-0.1.2}/Cargo.toml +1 -1
- {ulpwise-0.1.1 → ulpwise-0.1.2}/PKG-INFO +5 -4
- {ulpwise-0.1.1 → ulpwise-0.1.2}/README.md +4 -3
- {ulpwise-0.1.1 → ulpwise-0.1.2}/pyproject.toml +4 -1
- {ulpwise-0.1.1 → ulpwise-0.1.2}/python/ulpwise/__init__.py +1 -1
- {ulpwise-0.1.1 → ulpwise-0.1.2}/.github/workflows/ci.yml +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/.github/workflows/release.yml +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/.gitignore +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/CONTRIBUTING.md +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/LICENSE-APACHE +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/LICENSE-MIT +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/examples/sqrt_knife_values.py +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/examples/torch_sqrt_conformance.py +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/python/ulpwise/__main__.py +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/python/ulpwise/corpus/__init__.py +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/python/ulpwise/corpus/cases.json +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/python/ulpwise/plugin.py +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/src/edge.rs +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/src/exact.rs +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/src/knife.rs +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/src/lib.rs +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/src/py.rs +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/src/ulp.rs +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/tests/test_core.py +0 -0
- {ulpwise-0.1.1 → ulpwise-0.1.2}/tests/test_corpus.py +0 -0
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.1.2 (2026-09-24)
|
|
4
|
+
|
|
5
|
+
- `ulpwise` console script, so `uvx ulpwise midpoint sqrt 0.85`, `pipx run ulpwise ...` and a plain
|
|
6
|
+
`ulpwise ...` inside a virtualenv work without `python -m`.
|
|
7
|
+
|
|
3
8
|
## 0.1.1 (2026-09-24)
|
|
4
9
|
|
|
5
10
|
No code changes. The AI disclosure in the README was shortened and the package was republished
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ulpwise
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Classifier: Development Status :: 3 - Alpha
|
|
5
5
|
Classifier: Framework :: Pytest
|
|
6
6
|
Classifier: Intended Audience :: Developers
|
|
@@ -51,10 +51,10 @@ estimator under test took two different branches. `ulpwise` finds that input, an
|
|
|
51
51
|
like it in `[0.5, 1)`, before CI does:
|
|
52
52
|
|
|
53
53
|
```
|
|
54
|
-
$
|
|
54
|
+
$ ulpwise midpoint sqrt 0.8528626561164856 --dtype f32
|
|
55
55
|
rounded 0.9235056042671204, exact result lies above it, 3.771e-04 ulp from the rounding midpoint
|
|
56
56
|
|
|
57
|
-
$
|
|
57
|
+
$ ulpwise knife sqrt --lo 0.85 --hi 0.86 --tol 1e-3 --limit 3
|
|
58
58
|
x rounded midpoint distance (ulp) exact lies
|
|
59
59
|
0.8500027060508728 0.9219558835029602 2.521e-04 above
|
|
60
60
|
0.8500217199325562 0.9219662547111511 5.452e-04 below
|
|
@@ -82,7 +82,8 @@ run.
|
|
|
82
82
|
## Install
|
|
83
83
|
|
|
84
84
|
```sh
|
|
85
|
-
pip install ulpwise
|
|
85
|
+
pip install ulpwise # or: uv add ulpwise
|
|
86
|
+
uvx ulpwise special f32 # run the command line tool without installing anything
|
|
86
87
|
```
|
|
87
88
|
|
|
88
89
|
Wheels on [PyPI](https://pypi.org/project/ulpwise/) cover Linux x86_64 and aarch64, macOS arm64 and
|
|
@@ -26,10 +26,10 @@ estimator under test took two different branches. `ulpwise` finds that input, an
|
|
|
26
26
|
like it in `[0.5, 1)`, before CI does:
|
|
27
27
|
|
|
28
28
|
```
|
|
29
|
-
$
|
|
29
|
+
$ ulpwise midpoint sqrt 0.8528626561164856 --dtype f32
|
|
30
30
|
rounded 0.9235056042671204, exact result lies above it, 3.771e-04 ulp from the rounding midpoint
|
|
31
31
|
|
|
32
|
-
$
|
|
32
|
+
$ ulpwise knife sqrt --lo 0.85 --hi 0.86 --tol 1e-3 --limit 3
|
|
33
33
|
x rounded midpoint distance (ulp) exact lies
|
|
34
34
|
0.8500027060508728 0.9219558835029602 2.521e-04 above
|
|
35
35
|
0.8500217199325562 0.9219662547111511 5.452e-04 below
|
|
@@ -57,7 +57,8 @@ run.
|
|
|
57
57
|
## Install
|
|
58
58
|
|
|
59
59
|
```sh
|
|
60
|
-
pip install ulpwise
|
|
60
|
+
pip install ulpwise # or: uv add ulpwise
|
|
61
|
+
uvx ulpwise special f32 # run the command line tool without installing anything
|
|
61
62
|
```
|
|
62
63
|
|
|
63
64
|
Wheels on [PyPI](https://pypi.org/project/ulpwise/) cover Linux x86_64 and aarch64, macOS arm64 and
|
|
@@ -4,7 +4,7 @@ build-backend = "maturin"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "ulpwise"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.2"
|
|
8
8
|
description = "Numerical conformance testing for ML code: float edge values, exact rounding oracles, knife-edge finders and a pytest plugin"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { text = "MIT OR Apache-2.0" }
|
|
@@ -26,6 +26,9 @@ dependencies = []
|
|
|
26
26
|
[project.optional-dependencies]
|
|
27
27
|
test = ["pytest>=7", "numpy"]
|
|
28
28
|
|
|
29
|
+
[project.scripts]
|
|
30
|
+
ulpwise = "ulpwise.__main__:main"
|
|
31
|
+
|
|
29
32
|
[project.entry-points.pytest11]
|
|
30
33
|
ulpwise = "ulpwise.plugin"
|
|
31
34
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|