diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 3e6f505..8e733ba 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -25,7 +25,7 @@ jobs: - name: Build docs run: uv run sphinx-build -b html docs/ docs/_build/html - name: Upload artifact - uses: actions/upload-pages-artifact@v4 + uses: actions/upload-pages-artifact@v5 with: path: docs/_build/html diff --git a/src/vibeproj/fused_kernels.py b/src/vibeproj/fused_kernels.py index 0bb8ca4..1f4d010 100644 --- a/src/vibeproj/fused_kernels.py +++ b/src/vibeproj/fused_kernels.py @@ -281,8 +281,7 @@ def can_fuse(projection_name: str, direction: str) -> bool: _KERNEL_UNIT_SIGNATURE_NEEDLE = "int src_north_first, int dst_north_first, int n" _KERNEL_UNIT_SIGNATURE_REPLACEMENT = ( - "double x_unit_to_m, double y_unit_to_m,\n" - " int src_north_first, int dst_north_first, int n" + "double x_unit_to_m, double y_unit_to_m,\n int src_north_first, int dst_north_first, int n" ) @@ -290,6 +289,7 @@ def _inject_linear_unit_args(source: str) -> str: """Inject projected-unit ABI params into compiled kernel source.""" return source.replace(_KERNEL_UNIT_SIGNATURE_NEEDLE, _KERNEL_UNIT_SIGNATURE_REPLACEMENT) + # =================================================================== # Plate Carrée kernels # =================================================================== diff --git a/tests/test_accuracy_api_matrix.py b/tests/test_accuracy_api_matrix.py index db9338f..01dfa6e 100644 --- a/tests/test_accuracy_api_matrix.py +++ b/tests/test_accuracy_api_matrix.py @@ -207,9 +207,7 @@ def test_proj_to_proj_transform_buffers_unit_pairs_vs_pyproj( ) exp_inv_x, exp_inv_y = pp.transform(exp_x, exp_y, direction=TransformDirection.INVERSE) - got_inv_x, got_inv_y = vp.transform_buffers( - exp_x.copy(), exp_y.copy(), direction="INVERSE" - ) + got_inv_x, got_inv_y = vp.transform_buffers(exp_x.copy(), exp_y.copy(), direction="INVERSE") _assert_proj_to_proj_matches( "transform_buffers", got_inv_x, diff --git a/tests/test_accuracy_gpu_oracle.py b/tests/test_accuracy_gpu_oracle.py index 7cb20a9..3149adc 100644 --- a/tests/test_accuracy_gpu_oracle.py +++ b/tests/test_accuracy_gpu_oracle.py @@ -238,7 +238,9 @@ def _proj_to_proj_inputs(src_crs, lat_range, lon_range): return src_x[mask], src_y[mask] -def _assert_proj_to_proj_matches(api_name, result_x, result_y, exp_x, exp_y, tol_m, label, direction): +def _assert_proj_to_proj_matches( + api_name, result_x, result_y, exp_x, exp_y, tol_m, label, direction +): max_err = _max_planar_error_m(result_x, result_y, exp_x, exp_y) assert max_err < tol_m, ( f"{label} GPU {api_name} {direction} proj_to_proj error {max_err:.6e} m exceeds {tol_m} m" @@ -358,11 +360,7 @@ def test_gpu_proj_to_proj_transform_chunked_unit_pairs_vs_pyproj( @pytest.mark.parametrize( "label, crs_spec, lat_range, lon_range, fwd_tol_m, inv_tol_deg", - [ - case - for case in EPSG_SWEEP - if case[1] in ("EPSG:2222", "EPSG:3435") - ], + [case for case in EPSG_SWEEP if case[1] in ("EPSG:2222", "EPSG:3435")], ids=[f"{case[0]}_ds" for case in EPSG_SWEEP if case[1] in ("EPSG:2222", "EPSG:3435")], ) def test_gpu_transform_buffers_ds_vs_pyproj_non_meter_tmerc(