Commit graph

26 commits

Author SHA1 Message Date
MinaSaad1
cb71ba1cf7 feat: add cumulative downloads chart to README
- scripts/generate_downloads_chart.py fetches pypistats.org data
  (mirrors excluded, stdlib only) and renders a dark-theme SVG
  matching the existing asset style
- assets/downloads-chart.svg seeded with the current 15-day history
- .github/workflows/downloads-chart.yml runs daily at 06:15 UTC
  and commits only when the chart actually changes
- README shows the chart directly under stats.svg
2026-04-10 22:06:32 +02:00
MinaSaad1
62680dd060 feat: v3.10.3 - opt-in Claude integration, dual-license DLL attribution, new pbi-cli entry point
## Claude Code integration now fully opt-in (Fix 3)
- `pbi connect` no longer writes to ~/.claude/ automatically
- New `pbi-cli` entry point: `pbi-cli skills install/uninstall/list`
- `pbi-cli skills install` shows exact paths before writing and requires y/N confirmation
- `pbi connect` prints a one-line tip if skills are not yet installed
- `pbi skills` subgroup removed from the `pbi` entry point

## DLL licensing compliance (Fix 1)
- pyproject.toml updated to PEP 639 SPDX dual expression:
  MIT AND LicenseRef-Microsoft-AS-Client-Libraries
- license-files declaration: LICENSE, THIRD_PARTY_LICENSES.md, NOTICE
- THIRD_PARTY_LICENSES.md: full verbatim MS Analysis Services Client Libraries EULA
- NOTICE: short-form attribution for wheel redistribution
- src/pbi_cli/dlls/README.md: in-directory sentinel for the MS DLLs
- setuptools requirement bumped to >=77.0 for PEP 639 support

## SECURITY.md rewrite (Fix 2)
- Supported versions table updated to 3.10.x
- Architecture section: no MCP server, no subprocess, direct pythonnet interop
- Global Configuration Modifications section updated to reflect opt-in model
- Bundled Binaries section references THIRD_PARTY_LICENSES.md

## Documentation
- README.md, README.pypi.md: corrected 3-step setup flow
- CHANGELOG.md: [3.10.3] entry
- CONTRIBUTING.md: pbi skills -> pbi-cli skills
- All 7 semantic model SKILL.md files: prerequisites updated to 3-step flow
- New SVG/PNG marketing and documentation assets
2026-04-05 20:37:05 +02:00
MinaSaad1
fd3b33bcc0 feat: add visual-first SVG marketing assets and update README
Add 4 new SVG assets (layers, commands, stats, workflow) with drawn
icons, block art, and dark GitHub theme. Enhance banner and before-after
with visual redesigns. Update README to reference layers.svg and stats.svg.
2026-04-03 11:49:23 +02:00
MinaSaad1
8390a228e3 feat: restructure README with separate Modeling and Report Layer sections 2026-04-02 17:18:08 +02:00
MinaSaad1
ccdc9c618f feat: add 3 new report-layer SVGs (visual types grid, workflow, chat demo)
- visual-types.svg: grid of 18 visual types with mini icons across 3 rows
  (charts, cards/KPIs/tables, slicers/maps/decorative) + list of 14 more
- report-workflow.svg: 6-step flow (scaffold, pages, visuals, bind, theme, validate)
- chat-demo-report.svg: Claude chat example showing report commands in action
2026-04-02 17:05:21 +02:00
MinaSaad1
b102d83af2 feat: add auto-sync workflow SVG showing the 4-step save-first pattern 2026-04-02 16:45:33 +02:00
MinaSaad1
3a54f2d84c feat: new SVG assets and README for v3 dual-layer messaging
New SVGs:
- dual-layer.svg: hero graphic showing both Modeling + Report layers
- report-layer.svg: 4-column showcase of Visuals, Pages, Themes, Filters

Updated SVGs:
- banner.svg: "The First CLI for Both Power BI Modeling and Reporting"
- skills-hub.svg: 12 skills in two rows (7 modeling + 5 report) with stats bar
- architecture-flow.svg: dual-path showing TOM + PBIR backends
- before-after.svg: added report-layer pain points and solutions

README updated to feature new graphics.
2026-04-02 16:21:05 +02:00
MinaSaad1
f0504bcf51 feat: v3.10.0 -- audit fixes, 12 skills, README rewrite
- Fix 4 code bugs: TopN filter cross-table, theme_set corruption,
  visual_bind type annotation, tmdl_diff hierarchy pluralization
- Add missing VisualTypeError and ReportNotFoundError to errors.py
- Register 5 command groups in CLI (report, visual, filters, format, bookmarks)
- Split monolithic report skill into 5 focused skills (12 total):
  power-bi-report, power-bi-visuals, power-bi-pages, power-bi-themes,
  power-bi-filters
- Update CLAUDE.md snippet for 12 skills organised by layer
- Add diff-tmdl section to deployment skill
- Write CHANGELOG entries for v3.0.0 through v3.10.0
- Rewrite README.md and README.pypi.md for both model and report layers
- Add skill triggering test suite (19/19 passing)
- 488 tests passing, ruff clean
2026-04-02 00:07:52 +02:00
MinaSaad1
2f4bbdee6e fix: remove token cost image, add LinkedIn and Website badges 2026-03-27 18:27:49 +02:00
Mina Saad
8d7856be29
Remove token cost image from README
Removed token cost comparison image from README.
2026-03-27 18:23:52 +02:00
MinaSaad1
f42d355e34 feat: v2.2.0 - add promotional SVG assets and redesign README
Add 12 new SVG graphics showcasing pbi-cli capabilities:
- banner, chat-demo, bulk-operations, dax-debugging
- backup-restore, model-health-check, rls-testing
- token-cost, before-after, skills-hub
- architecture-flow, feature-grid

Rewrite README to be image-driven, replacing verbose text sections
and mermaid diagrams with visual SVGs targeting Power BI developers.
2026-03-27 16:56:06 +02:00
MinaSaad1
b777adec55 feat: v2.0.0 - replace MCP server with direct pythonnet/.NET TOM interop
Remove the MCP server binary dependency entirely. All 22 command groups now
connect directly to Power BI Desktop's Analysis Services engine via pythonnet
and bundled Microsoft.AnalysisServices DLLs (~20MB, in-process).

- Direct .NET TOM/ADOMD.NET interop for sub-second command execution
- 7 Claude Code skills (added Diagnostics and Partitions & Expressions)
- New commands: trace, transaction, calendar, expression, partition, advanced culture
- 91 tests passing, all skills updated, README/CHANGELOG rewritten
2026-03-27 07:19:21 +02:00
MinaSaad1
8632f901f6 chore: remove PyPI version badge 2026-03-26 20:03:07 +02:00
MinaSaad1
144222aa31 feat: support Microsoft Store PBI Desktop and update setup docs
- Add Store version path (~\Microsoft\Power BI Desktop Store App\)
  alongside MSI path for port auto-discovery
- Fix UTF-16 LE encoding when reading msmdsrv.port.txt
- Update all 5 skills to reflect new install flow (pipx + pbi connect)
- Update error messages, docstrings, and READMEs to mention pbi connect
  as the primary entry point instead of pbi setup
- Add tests for Store path discovery, encoding, and path candidates
2026-03-26 19:58:54 +02:00
MinaSaad1
a3d2d5282a fix: separate README for GitHub (Mermaid) and PyPI (text art)
GitHub README.md uses Mermaid diagrams rendered natively.
PyPI README.pypi.md uses plain text diagrams for compatibility.
2026-03-26 19:29:35 +02:00
MinaSaad1
49c38dbb74 fix: make README render correctly on PyPI
Use absolute GitHub URL for SVG header and replace Mermaid diagrams
with plain text art since PyPI does not support either.
2026-03-26 16:53:39 +02:00
MinaSaad1
6f0f1afa61 feat: auto-discover Power BI Desktop port, making -d optional on connect 2026-03-26 16:38:44 +02:00
MinaSaad1
72f75f985c style: left-align README header, badges, and nav links 2026-03-26 16:27:57 +02:00
MinaSaad1
54157cd642 feat: auto-setup on first connect and fix connectionName MCP error
- Remove forbidden connectionName param from Connect/ConnectFabric requests
- Extract server-returned connectionName from response for local tracking
- Auto-download MCP binary if missing when running connect
- Auto-install Claude Code skills if missing when running connect
- Simplify README Get Started to two-command flow (pipx + connect)
2026-03-26 16:27:13 +02:00
MinaSaad1
a247d685ef docs: add Claude-assisted install option to Get Started section 2026-03-26 16:14:25 +02:00
MinaSaad1
f16160fd13 docs: add Windows PATH troubleshooting to Get Started section
pip installs to a user Scripts directory not on PATH by default,
causing "pbi is not recognized" errors. Added collapsible guide
with pipx and manual PATH fix options.
2026-03-26 16:03:31 +02:00
MinaSaad1
038e5b433c fix: CI workflow triggers on master branch, not main 2026-03-26 14:40:24 +02:00
MinaSaad1
015aaa1fa7 docs: restructure README around skills-first workflow
Skills section now sits right after Quick Start as the primary feature.
Each skill shows a plain-English prompt example with collapsible
behind-the-scenes commands. Removed heavy text, simplified architecture
and commands sections. Framed the whole project around the Claude Code
workflow: install, ask in English, Claude handles the rest.
2026-03-26 14:38:04 +02:00
MinaSaad1
e83bd70755 docs: redesign README with SVG header, mermaid diagrams, and visual hierarchy
- Custom SVG banner with animated terminal cursor
- Shield badges (PyPI, Python versions, CI, license)
- Mermaid architecture diagrams (data flow, REPL lifecycle, skills install)
- Organized command reference by category with collapsible extras
- ASCII token comparison chart
- AI Skills showcase section
- Simplified installation to 4 numbered steps
- Project structure and development sections
2026-03-26 14:16:28 +02:00
MinaSaad1
87b7a9cbe7 chore: rename PyPI package to pbi-cli-tool
The name pbi-cli was already taken on PyPI, and power-bi-cli was too
similar to the existing powerbi-cli package. The distribution name is
now pbi-cli-tool while the CLI command remains `pbi`.
2026-03-26 14:09:21 +02:00
MinaSaad1
51a23668a7 feat: add REPL mode, test suite, CI/CD, and Claude Skills (Sprints 6-8)
Sprint 6 - REPL Mode + Polish:
- Error hierarchy (PbiCliError, McpToolError, etc.) for clean REPL error handling
- Interactive REPL with prompt-toolkit (persistent MCP connection, command completion, history)
- REPL-aware run_tool() and connection commands that reuse shared client
- README.md and CHANGELOG.md

Sprint 7 - Tests + CI/CD:
- 120 tests across unit, command, and e2e test files (79% coverage)
- MockPbiMcpClient with canned responses for test isolation
- GitHub Actions CI (lint + typecheck + test matrix: 3 OS x 3 Python)
- GitHub Actions release workflow for PyPI trusted publishing

Sprint 8 - Claude Skills + Installer:
- 5 bundled SKILL.md files (modeling, dax, deployment, security, docs)
- `pbi skills install/list/uninstall` command for Claude Code discovery
- Skills packaged with wheel via setuptools package-data
2026-03-26 13:54:24 +02:00