Skip to content

v0.9.0

Choose a tag to compare

@github-actions github-actions released this 15 Oct 18:39
· 16 commits to main since this release
f849aa2

Added

  • scan --emit tx-rm: the findings as JSON Lines for tomix's batch removal, so
    ripbi scan --emit tx-rm | tx rm --from - ./Model.SemanticModel --save removes every
    unused model object, dead auto date/time tables included, as one change. Each line names
    its object by type, table, and name, with ripbi's id beside it; report measures and
    bookmarks are comment lines. Needs a tx with rm --from.
  • Workspace-monitoring query logs (--queries-from PATH on scan and deps, or
    queries_from in ripbi.toml): an export of Fabric workspace monitoring's
    SemanticModelLogs (or Log Analytics' PowerBIDatasetsWorkspace) QueryEnd events
    — CSV, JSON rows, a Kusto REST or Log Analytics query API response, plain,
    gzipped, or zipped — makes every object a logged DAX or MDX
    query names a reachability root, so what Excel pivots, thin reports, and XMLA
    clients read stops being reported unused. ripbi deps --impact shows those objects
    in a Queried section (how often, how many users, last seen, clients, reports) and
    in queried plain records and a JSON queried array; scan --json counts them in
    summary.queried. User names never reach the output. A workspace-wide export is
    narrowed to the scanned model by ItemName/ItemId (--queries-item or
    queries_item when the service name differs), so another model's queries never
    keep this one's objects alive; a log that does not identify the model is a
    stale_state skip notice, so --strict fails on it. A queried table keeps its
    columns alive (a table expression returns every one), not its measures.

Changed

  • Broken visual bindings name the visual and page as Power BI Desktop shows them:
    the visual's type and literal title and the page's tab name, with the generated
    IDs in parentheses — lineChart visual 'Sick leave %' (id '6caf…') on page 'Absence' (id 'b725…') instead of only the IDs. Human, Markdown and SARIF
    output use the new phrase; scan --json adds it as broken[].location and
    keeps provenance unchanged, so baselines still match.
  • Builds against zip 9. An archive member whose name cannot be read now fails
    with an error instead of being skipped silently.

Downloads

  • CLI: the ripbi-<version>-<target>.zip / .tar.gz archives contain ripbi and rib.
  • Desktop (experimental, Windows x64): use ripbi-desktop-<version>-x86_64-pc-windows-msvc-setup.exe for the graphical interface. It shares this release's version and analysis engine.

The desktop installer is currently unsigned, so Windows may display an unknown-publisher or SmartScreen warning. It installs for the current user and downloads WebView2 if the runtime is missing (internet access required). Desktop updates are manual: download and run the installer from a newer release. ripbi update updates only the CLI.

sha256sums.txt covers both the CLI archives and desktop installer.

What's Changed

  • Add workspace-monitoring query logs as consumers (--queries-from) by @bgarcevic in #169
  • Neutralize a test comment and fix Clippy 1.99 lints by @bgarcevic in #174
  • ci: automate releases with a release PR by @bgarcevic in #175
  • ci: give Dependabot PRs conventional titles by @bgarcevic in #179
  • build(deps): bump source-map-js from 1.2.1 to 1.2.2 in /desktop by @dependabot[bot] in #178
  • build(deps): bump rustls from 0.23.44 to 0.23.45 by @dependabot[bot] in #177
  • test: add Excel OLAP pivot fixtures for the upcoming xlsx ingest by @bgarcevic in #170
  • build(deps): bump cargo dependencies and adapt to zip 9 by @bgarcevic in #181
  • build(deps): bump the cargo-dependencies group across 1 directory with 2 updates by @dependabot[bot] in #182
  • feat(scan): name visuals and pages as Power BI Desktop shows them in broken bindings by @bgarcevic in #183
  • feat(scan): --emit tx-rm, findings as JSON Lines for tx rm --from by @bgarcevic in #184
  • chore(release): prepare 0.9.0 by @github-actions[bot] in #176

New Contributors

  • @github-actions[bot] made their first contribution in #176

Full Changelog: v0.8.1...v0.9.0