Skip to content

Releases: jdotc1/dicom-anonymizer

DICOM Anonymizer 2.0 — Standalone macOS Preview 6

Choose a tag to compare

@jdotc1 jdotc1 released this 14 Oct 14:19

Standalone macOS app — focused error recovery

Apple Silicon (arm64), macOS 13 or later. Download the ZIP below, extract it and move DICOM Anonymizer 2.0.app to Applications. Python is bundled; Homebrew and a separate Python installation are not required. The app is Developer ID signed and notarized by Apple.

Changes

  • Rejected input clears the previous selection, preventing accidental reuse of an old ready batch.
  • Invalid or disconnected output locations receive appropriate recovery guidance. Choosing a valid replacement preserves the scanned batch without rescanning.
  • Missing or unopenable reports preserve the completed-batch summary and offer Reveal Output and Dismiss.
  • Cancellation and busy-state commands stay consistent; misleading preparing progress is suppressed after an error.

The existing SwiftUI interface, approved icon and engine policy are retained. App version 2.0, build 10.

Verification and limitations

The accepted optimized executable and focused recovery model/layout/native presentation checks are reused. Existing engine, self-audit, bundled-runtime, dependency and icon evidence is reused without rerunning unchanged tests. The new release metadata, root signature, notarization and final artifact delivery were checked for this release.

This is metadata pseudonymization. Numerical folder identifiers remain in PatientName and PatientID, and pixel text is not redacted. Review retained images, contours and labels before sharing. This preview does not claim certified DICOM confidentiality-profile conformance or complete IOD validation.

DICOM Anonymizer 2.0 — Standalone macOS Preview 5

Choose a tag to compare

@jdotc1 jdotc1 released this 14 Oct 12:22

Standalone macOS Preview 5 — workflow polish

App version 2.0/build 9. Apple Silicon, macOS 13 or later. CPython 3.13.16 and pydicom 3.0.2 are bundled: no Homebrew or separate Python installation is needed.

Download the ZIP below, expand it, quit the existing app, and copy DICOM Anonymizer 2.0.app to Applications.

Improvements

  • Preparing and finalizing activity remain visible until the batch actually completes.
  • A compact selected-folder row leaves more room for progress and results; drag-and-drop remains available across the window.
  • Long paths and identifiers fit the layout, with full paths available through help text.
  • Completion actions sit below the summary.
  • File-menu shortcuts provide output-location selection, rechecking, Reveal in Finder and Open Report.
  • Invalid folder selection disables Anonymize and Command–Return, including after a previously ready batch.
  • Folder guidance, retained-identifier wording and startup recovery messages are clearer.

Signing and evidence

Developer ID signed and Apple-notarized. Apple accepted submission c36ff882-9b96-4888-8cf2-a7edf23edb98; the ticket is stapled and validated, and Gatekeeper accepted Notarized Developer ID.

The accepted optimized polish executable is reused. Focused model/layout checks and native presentation/command checks cover the UI changes. The engine, self-audit policy, bundled runtime, dependency and icon evidence remains reused. No unchanged engine, self-audit or full UI suite was rerun for delivery. See docs/WORKFLOW-POLISH.md and docs/RUNTIME-ACCEPTANCE.md for scope.

This remains a preview with the existing metadata-pseudonymization scope. Retained numerical identifiers remain linkable; pixel text is not redacted. Preview 4 remains available as the previous release; earlier tags and acceptance history are preserved.

DICOM Anonymizer 2.0 — Standalone macOS Preview 4

Choose a tag to compare

@jdotc1 jdotc1 released this 14 Oct 05:22

Standalone macOS app with the Lumen icon

Download DICOM-Anonymizer-2.0-preview.4-standalone-macOS-arm64.zip from Assets, expand it, and copy DICOM Anonymizer 2.0.app to Applications.

  • No Homebrew or separate Python installation is required. CPython 3.13.16 and pydicom 3.0.2 are included. The app uses only its bundled interpreter and downloads no runtime at launch.
  • Apple Silicon (arm64), macOS 13+. Runtime acceptance was performed on macOS 27.2; older host versions and Intel Macs were not exercised.
  • App version 2.0/build 8. Engine policy remains 2.0-build5.
  • Developer ID signed, Apple notarized, ticket stapled and validated; Gatekeeper accepted Notarized Developer ID.

New in this package

The app includes the project-selected Lumen icon: patient folders in depth, a front ID card with teal redaction, and a violet ground. The package includes both Assets.car for current macOS appearances and AppIcon.icns for fallback, with both icon plist keys set. Icon authoring assets and provenance remain private; they are not included in the public source repository.

The accepted standalone preview-3 bundle and already compiled icon resources were reused. No engine or Swift rebuild, icon recompilation, engine test, metadata self-audit test, dependency re-verification or source hash was repeated for this resource-only delta. The changed package received a new signature, notarization ticket and first distribution assessment.

Standalone acceptance reused

The bundled interpreter and Swift-to-Python workflow passed with external Python locations denied and a minimal PATH. Missing bundled Python produced a reinstall error without falling back to external Python. The signed standalone app completed a native two-patient/six-file synthetic batch and passed its output self-audit using Python 3.13.16. A relocated copy also scanned successfully with external runtimes denied. Earlier engine/drop/cancellation and metadata preservation evidence remains reused within its original scope.

This remains a preview with focused synthetic acceptance. Metadata pseudonymization retains pixels, selected descriptors and linkable pseudonyms; it does not establish complete anonymization, clinical validation, certified confidentiality-profile compliance or complete IOD conformance. Review retained content before sharing outputs. Use GitHub private vulnerability reporting for security-sensitive reports.