Skip to content

Releases: jdotc1/EntitlementDiff

v0.1.50 — Go to Result

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 18:07

Go to Result selects a one-based result number within tree-search hits already found. Go and Return select and reveal the existing hit without searching further or opening the focused viewer automatically. Previous/Next and row selection keep the result field synchronized; continuation preserves selection.

Bounded ASCII numeric validation rejects malformed, overflowing or out-of-range input while preserving the last valid selection. Query, scope, Clear and restart reset pending jump state. Existing stale-result protection, UTF-8 fidelity, exact Copy/Open behavior and schema-1 reports remain unchanged.

The arm64 app includes Contents/MacOS/entitlementdiff-cli. macOS14 or later. App and CLI are Developer ID signed and Apple notarized; the app is stapled. Sanitized source included. Accepted checks reused; no suite or accessibility work rerun. Declarations are not effective permissions or trust verdicts.

v0.1.49 — Match Context Previews

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 17:25

Tree search results now show bounded context around each match. Up to24 Unicode scalars before and after, and48 match scalars, are prepared from the retained UTF-8 match anchor. Controls are escaped, matches are delimited, and omitted context or a continuing long match is marked explicitly.

Prepared previews are reused by result rows without rescanning long prefixes. Exact paths, byte/scalar offsets, complete copy records, Open Match and schema-1 reports remain unchanged. Existing query, scope and comparison guards suppress stale results. Previews are display-only excerpts, not complete leaf values.

The arm64 app includes Contents/MacOS/entitlementdiff-cli. macOS14 or later. App and CLI are Developer ID signed and Apple notarized; the app is stapled. Sanitized source included. Accepted checks reused; no suite or accessibility work rerun. Declarations are not effective permissions or trust verdicts.

v0.1.48 — Search Side Scope

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 17:01

Find Tree Text now supports Search in Both, Previous or Current. Both remains the default. Scope constrains traversal itself, so excluded sides are not visited. Existing bounded work, UTF-8 fidelity, typed paths and result/depth limits remain unchanged.

Changing scope cancels and invalidates old work, clears results and selection, retains the query and requires an explicit new Search Tree action. Clear Tree Search retains scope. Progress/completion messages and copied details identify the scope; full comparison and path-free schema-1 reports remain unchanged.

The arm64 app includes Contents/MacOS/entitlementdiff-cli. macOS14 or later. App and CLI are Developer ID signed and Apple notarized; the app is stapled. Sanitized source included. Accepted checks reused; no suite or accessibility work rerun. Declarations are not effective permissions or trust verdicts.

v0.1.47 — Clear Tree Search

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 16:50

Clear Tree Search resets the current query, discovered results, selected hit and progress. It remains available during search and uses cancellation plus request generations to prevent late work from restoring cleared results.

Comparison selection, loaded inputs, filters, sorting, reports and clipboard contents remain unchanged. Previous/Next Result, Open Selected Match, Copy Selected Result Details and continuation become unavailable until a new search supplies the required state. No source scan is performed by Clear.

The arm64 app includes Contents/MacOS/entitlementdiff-cli. macOS14 or later. App and CLI are Developer ID signed and Apple notarized; the app is stapled. Sanitized source included. Accepted checks reused; no suite or accessibility work rerun. Declarations are not effective permissions or trust verdicts.

v0.1.46 — Copy Selected Tree Result Details

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 15:11

Copy Selected Result Details records the currently selected tree-search hit with its complete entitlement key, Previous/Current side and typed path. Dictionary keys use exact Unicode scalar escapes, and array indices are explicitly zero-based. Original byte/scalar positions, match length, complete scalar escapes and UTF-8 bytes are included alongside search completion status.

Output is bounded to64KiB. Oversized records are rejected before changing the clipboard; shortened previews never replace exact paths. Copy preserves selection and search continuation, with existing query/comparison guards against stale results. Schema-1 reports remain unchanged.

The arm64 app includes Contents/MacOS/entitlementdiff-cli. macOS14 or later. App and CLI are Developer ID signed and Apple notarized; the app is stapled. Sanitized source included. Accepted checks reused; no suite or accessibility work rerun. Declarations are not effective permissions or trust verdicts.

v0.1.45 — Previous/Next Result Navigation

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 14:34

Find Tree Text now offers Previous Result, Next Result and Open Selected Match. The current result is highlighted and shown as Result k of N found. Navigation walks already discovered results without wrapping or starting additional search. Continue Tree Search preserves the selected hit as more results arrive.

Query edits and search restart clear selection. Existing comparison, entitlement and generation guards protect against stale work and stale opens. The tree-search detail scrolls within its split pane to keep controls and results reachable. UTF-8 fidelity, bounded search, complete comparison and path-free schema-1 reports remain unchanged.

The arm64 app includes Contents/MacOS/entitlementdiff-cli. macOS14 or later. App and CLI are Developer ID signed and Apple notarized; the app is stapled. Sanitized source included. Accepted checks reused; no suite or accessibility work rerun. Declarations are not effective permissions or trust verdicts.

v0.1.44 — Find Text Across the Selected Entitlement Tree

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 14:07

Find Tree Text searches string values within the selected entitlement. Search Tree and Continue Tree Search perform bounded portions:64 traversal operations and at most one32KiB string scan per action. Literal UTF-8 matching preserves original spellings, typed key paths and positional array indices. Results identify Previous/Current, original byte/scalar positions and query length.

Open Match captures the chosen side and reveals/highlights the original range in the focused viewer. The other side is labelled Not captured rather than absent. Query, selection and source-generation guards reject stale results. First occurrence per leaf;200-result and depth128 limits remain explicitly incomplete. Data/non-string values are excluded. Full equality and path-free schema-1 reports remain unchanged.

The arm64 app includes Contents/MacOS/entitlementdiff-cli. App and CLI require macOS14 or later, are Developer ID signed and Apple notarized; the app is stapled. Sanitized source included. Accepted checks reused; no suite or accessibility work rerun. Declarations are not effective permissions or trust verdicts.

v0.1.43 — Comparison CLI and Manual Position Reveal

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 10:35

This release adds a comparison CLI and Reveal Last Viewed Scalar or Byte.

The bundled Contents/MacOS/entitlementdiff-cli accepts explicit --previous, --current and --architecture arm64|x86_64. It writes existing path-free schema-1 JSON to stdout or an exclusive new --output file; diagnostics use stderr. Exit0 means equal declarations,1 differences (including absent/present representation),2 failure. Existing destinations and output inside either input app are refused. Exclusive writes are not atomic; a write failure may leave a partial new file and exits2. No inspected code is executed.

Reveal Scalar and Reveal Byte restore the last successful manual position and page, ignoring pending/rejected input and preserving search/difference state. Original UTF-8 and bytes are retained with bounded work.

The arm64 app and bundled CLI require macOS14 or later, are Developer ID signed and Apple notarized; the app is stapled. Sanitized source is included. Accepted checks reused; no suite or accessibility work rerun. Entitlement declarations are not effective permissions or trust verdicts.

v0.1.42 — Clear Find in Focused Values

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 09:11

Clear Text Search and Clear Hex Search reset the chosen focused-value pane’s query and search results while preserving its page, last successful manual scalar or byte position, selected difference and difference history. The other pane remains unchanged.

Pending searches are cancelled and their request generations invalidated, preventing late results from restoring cleared matches. Search-specific context and Reveal/Copy Match actions disappear. UTF-8 and byte fidelity, bounded rendering and path-free schema-1 reports are unchanged.

The arm64 app requires macOS 14 or later and is Developer ID signed, Apple notarized and stapled. Sanitized source is included. Accepted focused development checks are reused; no suite or accessibility work was rerun. Entitlement metadata describes the requested architecture of the main executable, not effective permissions or trust.

v0.1.41 — Copy Current Text Match Details

Choose a tag to compare

@jdotc1 jdotc1 released this 18 Oct 08:57

Copy Text Match Details copies the last successful literal-text search match with its side, exact 1-based inclusive UTF-8 byte range, starting Unicode scalar position and byte length. Complete Unicode scalar escapes and exact UTF-8 bytes preserve composed or decomposed spellings, invisible characters and controls without normalization.

Output is path-free and limited to 16 KiB, covering the existing 1,024-byte query limit with complete escaping and hexadecimal expansion. Copying preserves search direction/cursor, manual navigation and selected-difference state. Running searches cannot copy; query changes, dismissal and focused-selection guards reject stale copies. Schema-1 exports are unchanged.

The arm64 app requires macOS 14 or later and is Developer ID signed, Apple notarized and stapled. Sanitized source is included. Accepted focused development checks are reused; no suite or accessibility work was rerun. Entitlement metadata describes the requested architecture of the main executable, not effective permissions or trust.