release: v6.1.0 — 3D-render fixes + AV/EDR packaging fix - #50
Merged
Conversation
The shared 3D scaling machinery (equal symmetric axis limits + set_box_aspect([1,1,1])) was verified to render true proportions — a sphere renders as a sphere in both passive and active routes. This fixes one data-selection bug and hardens the degenerate-input paths. - save: active H-pol/V-pol 3D saves passed total power; now pass h_power_dBm_2d / v_power_dBm_2d (matches the already-correct GUI path) - plotting: plot_passive_3d_component is NaN-robust + guards the constant-gain (max==min) division-by-zero, mirroring the active route - plotting: _setup_3d_axes guards flat/all-NaN extents (no lim=0 / lim=NaN box collapse) - refactor: process_data returns (grid, theta, phi) only; the dead Cartesian X/Y/Z + db_to_linear radius (discarded by every caller) are removed - cleanup: drop the dead gain_normalized local and the vestigial shadowing_enabled / shadow_direction params (shadowing is applied to the gain data upstream; the overlay was never wired up) - tests: add tests/test_3d_scaling_fixes.py (per-pol save, NaN/constant-gain robustness, degenerate axes, process_data contract) - bump version 6.0.0 -> 6.1.0 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
mcp 2.0.0 was just published on PyPI and restructured the package, dropping mcp.server.fastmcp. The unbounded mcp>=1.0.0 pin let CI resolve to it, and pytest aborted collection for all 32 test files on the single broken import in test_v52_rf_tools.py.
matplotlib now hard-errors on matplotlib.use("TkAgg") in headless
environments (no display) instead of silently deferring the failure.
Every module that force-selects TkAgg at import time broke CI test
collection as a result, since importing plot_antenna transitively
triggers all of them. Falls back to Agg when TkAgg can't load;
real desktop usage is unaffected.
The process_data() call reformatted in 991878e was never actually run through black, so the CI formatting gate has been red since that commit landed — just masked because pytest collection was failing first for unrelated reasons.
…#49) * build: disable UPX, add PE version resource, drop stale hidden import RFlect's Windows exe was getting flagged by Cylance/EDR on every release. Root causes in RFlect.spec: UPX-compressed onefile build with no PE VERSIONINFO resource and no code signing — a textbook PyInstaller false-positive pattern. - upx=False: UPX packing is a well-known AV/EDR heuristic trigger - version='version_info.txt': embeds Company/Product/FileVersion metadata in the exe's PE header (Windows-only; PyInstaller ignores this on Linux/macOS with just a log warning, confirmed against building/api.py, so the Linux CI job is unaffected) - drop the stale 'anthropic' hidden import left over from the removed in-app AI/LLM stack Code signing (the other half of the fix) is tracked separately. * docs: release notes for v6.1.0 (3D fixes + AV/EDR packaging fix) Adds the Version 6.1.0 section to RELEASE_NOTES.md (it was missing — the release workflow's changelog auto-extraction falls back to a generic stub when no matching "## Version X.Y.Z" header exists, which is what happened for v6.0.0). Also documents the packaging fix in CHANGELOG.md and flips the 6.1.0 header from Unreleased to today's date.
RFingAdam
marked this pull request as ready for review
July 30, 2026 17:43
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Rolls up everything currently on
release/v6.1.0intomainfor the v6.1.0 release:Full notes:
RELEASE_NOTES.md→ Version 6.1.0,CHANGELOG.md→ [6.1.0].Merge order
This PR will pick up #49's commits automatically once #49 merges into
release/v6.1.0— no need to wait, GitHub will keep the diff in sync.Test plan
tests/test_3d_scaling_fixes.pycovers the 3D-render fixesrelease/v6.1.0firstmainmainasv6.1.0and push the tag to triggerrelease.yml(builds Windows/Linux, Inno Setup installer, publishes the GitHub Release)