exstruct 0.5.0__tar.gz → 0.5.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. {exstruct-0.5.0 → exstruct-0.5.1}/PKG-INFO +4 -1
  2. {exstruct-0.5.0 → exstruct-0.5.1}/README.md +3 -0
  3. {exstruct-0.5.0 → exstruct-0.5.1}/pyproject.toml +1 -1
  4. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/op_schema.py +437 -405
  5. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/__init__.py +13 -13
  6. exstruct-0.5.1/src/exstruct/mcp/patch/chart_types.py +63 -0
  7. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/engine/__init__.py +6 -6
  8. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/engine/base.py +34 -34
  9. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/engine/openpyxl_engine.py +18 -18
  10. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/engine/xlwings_engine.py +19 -19
  11. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/internal.py +398 -26
  12. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/models.py +170 -41
  13. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/ops/__init__.py +6 -6
  14. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/ops/common.py +7 -7
  15. exstruct-0.5.1/src/exstruct/mcp/patch/ops/openpyxl_ops.py +69 -0
  16. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/ops/xlwings_ops.py +26 -26
  17. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/runtime.py +159 -153
  18. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/service.py +342 -325
  19. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/specs.py +58 -57
  20. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/types.py +53 -52
  21. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch_runner.py +74 -74
  22. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/server.py +1 -0
  23. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/shared/__init__.py +23 -23
  24. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/shared/a1.py +82 -82
  25. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/tools.py +783 -783
  26. exstruct-0.5.0/src/exstruct/mcp/patch/ops/openpyxl_ops.py +0 -29
  27. {exstruct-0.5.0 → exstruct-0.5.1}/LICENSE +0 -0
  28. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/__init__.py +0 -0
  29. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/cli/availability.py +0 -0
  30. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/cli/main.py +0 -0
  31. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/__init__.py +0 -0
  32. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/backends/__init__.py +0 -0
  33. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/backends/base.py +0 -0
  34. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/backends/com_backend.py +0 -0
  35. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/backends/openpyxl_backend.py +0 -0
  36. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/cells.py +0 -0
  37. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/charts.py +0 -0
  38. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/integrate.py +0 -0
  39. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/logging_utils.py +0 -0
  40. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/modeling.py +0 -0
  41. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/pipeline.py +0 -0
  42. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/ranges.py +0 -0
  43. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/shapes.py +0 -0
  44. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/core/workbook.py +0 -0
  45. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/engine.py +0 -0
  46. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/errors.py +0 -0
  47. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/io/__init__.py +0 -0
  48. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/io/serialize.py +0 -0
  49. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/__init__.py +0 -0
  50. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/chunk_reader.py +0 -0
  51. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/extract_runner.py +0 -0
  52. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/io.py +0 -0
  53. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/patch/normalize.py +0 -0
  54. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/shared/output_path.py +0 -0
  55. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/sheet_reader.py +0 -0
  56. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/mcp/validate_input.py +0 -0
  57. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/models/__init__.py +0 -0
  58. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/models/maps.py +0 -0
  59. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/models/types.py +0 -0
  60. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/py.typed +0 -0
  61. {exstruct-0.5.0 → exstruct-0.5.1}/src/exstruct/render/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: exstruct
3
- Version: 0.5.0
3
+ Version: 0.5.1
4
4
  Summary: Excel to structured JSON (tables, shapes, charts) for LLM/RAG pipelines
5
5
  Keywords: excel,structure,data,exstruct
6
6
  Author: harumiWeb
@@ -175,6 +175,9 @@ Notes:
175
175
  - `auto` (default): prefer COM when available, otherwise openpyxl
176
176
  - `com`: force COM (rejects `dry_run` / `return_inverse_ops` / `preflight_formula_check`)
177
177
  - `openpyxl`: force openpyxl (`.xls` is not supported)
178
+ - `create_chart` is COM-only (`backend="openpyxl"` is not allowed for requests that include it), and it also rejects `dry_run` / `return_inverse_ops` / `preflight_formula_check`.
179
+ - `create_chart` `chart_type` supports: `line`, `column`, `bar`, `area`, `pie`, `doughnut`, `scatter`, `radar` (aliases: `column_clustered`, `bar_clustered`, `xy_scatter`, `donut`).
180
+ - `create_chart` and `apply_table_style` cannot be combined in one request (split into separate calls).
178
181
  - `exstruct_patch` response includes `engine` (`com` or `openpyxl`) to show the actual backend used. `restore_design_snapshot` remains openpyxl-only.
179
182
  - `exstruct_make` creates a new workbook and applies `ops` in one call (`out_path` required, `ops` optional).
180
183
  - Supports `.xlsx` / `.xlsm` / `.xls`
@@ -110,6 +110,9 @@ Notes:
110
110
  - `auto` (default): prefer COM when available, otherwise openpyxl
111
111
  - `com`: force COM (rejects `dry_run` / `return_inverse_ops` / `preflight_formula_check`)
112
112
  - `openpyxl`: force openpyxl (`.xls` is not supported)
113
+ - `create_chart` is COM-only (`backend="openpyxl"` is not allowed for requests that include it), and it also rejects `dry_run` / `return_inverse_ops` / `preflight_formula_check`.
114
+ - `create_chart` `chart_type` supports: `line`, `column`, `bar`, `area`, `pie`, `doughnut`, `scatter`, `radar` (aliases: `column_clustered`, `bar_clustered`, `xy_scatter`, `donut`).
115
+ - `create_chart` and `apply_table_style` cannot be combined in one request (split into separate calls).
113
116
  - `exstruct_patch` response includes `engine` (`com` or `openpyxl`) to show the actual backend used. `restore_design_snapshot` remains openpyxl-only.
114
117
  - `exstruct_make` creates a new workbook and applies `ops` in one call (`out_path` required, `ops` optional).
115
118
  - Supports `.xlsx` / `.xlsm` / `.xls`
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "exstruct"
3
- version = "0.5.0"
3
+ version = "0.5.1"
4
4
  description = "Excel to structured JSON (tables, shapes, charts) for LLM/RAG pipelines"
5
5
  readme = "README.md"
6
6
  license = { file = "LICENSE" }