framework-m-studio 0.10.0__tar.gz → 0.10.2__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.
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/CHANGELOG.md +12 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/PKG-INFO +3 -3
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/pyproject.toml +4 -4
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/dev.py +1 -1
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/release/cli.py +2 -2
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/release/versioning.py +18 -10
- framework_m_studio-0.10.0/src/framework_m_studio/static/assets/index-Ckia33V8.js → framework_m_studio-0.10.2/src/framework_m_studio/static/assets/index-Db96rZJC.js +7 -7
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/static/index.html +1 -1
- framework_m_studio-0.10.2/src/framework_m_studio/templates/plugin/Dashboard.tsx.template +129 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/index.tsx.template +22 -9
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/package.json.template +4 -4
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/AutoTable.tsx +20 -1
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_release_cli.py +1 -1
- framework_m_studio-0.10.0/src/framework_m_studio/templates/plugin/Dashboard.tsx.template +0 -52
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/.gitignore +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/LICENSE +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/README.md +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/docs/api/index.md +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/docs/user-guide.md +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/__init__.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/aggregate_builder.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/app.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/__init__.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/codegen.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/constants.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/contrib.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/deps.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/docs.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/new.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/quality.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/release/__init__.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/release/gitops.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/release/graph.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/release/models.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/release/orchestrator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/studio.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/utility.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/verify.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/codegen/__init__.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/codegen/generator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/codegen/parser.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/codegen/templates/doctype.py.jinja2 +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/codegen/templates/test_doctype.py.jinja2 +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/codegen/test_generator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/codegen/transformer.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/core/frontend.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/core/gitops.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/core/shell.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/data_elements.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/discovery.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/docs/ast_parsers.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/docs/audit.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/docs/exporters.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/docs/formatters.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/docs/generator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/docs/openapi.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/ephemeral.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/git/__init__.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/git/adapter.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/git/github_provider.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/git/protocol.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/guardrail.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/live_preview.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/metadata_editor.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/print_adapter.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/protocol_scanner.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/py.typed +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/routes.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/schema_diff.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/sdk_generator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/shell_plugin_config.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/sidebar_config.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/static/.gitkeep +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/static/assets/index-BA2TojqY.css +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/static/favicon.ico +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/storage/__init__.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/storage/file_adapter.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/storage/git_api_adapter.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/storage/protocol.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/app/README.md.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/app/__init__.py.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/app/doctypes_init.py.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/app/pyproject.toml.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/doctype/__init__.py.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/doctype/controller.py.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/doctype/doctype.py.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/doctype/test.py.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/.gitignore.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/README.md.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/favicon.png +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/index.html.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/plugin.config.ts.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/theme.css.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/tsconfig.json.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/vite.config.mfe.ts.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/templates/plugin/vite.config.ts.template +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/visual_designer.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/workspace.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/.gitignore +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/.npmrc +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/CHANGELOG.md +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/Dockerfile +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/README.md +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/eslint.config.js +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/index.html +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/package.json +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/pnpm-lock.yaml +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/public/favicon.ico +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/App.css +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/App.test.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/App.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/AutoForm.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/CodePreview.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/ControllerEditor.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/ERDView.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/FieldEditor.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/LayoutDesigner.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/ModuleExplorer.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/NestedEditorDrawer.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/SandboxPreview.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/TableFieldEditor.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/breadcrumb/index.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/fields/DefaultFieldComponents.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/fields/index.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/fields/resolveFieldComponent.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/layout/index.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/components/menu/index.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/index.css +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/index.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/aggregates/AggregateBuilderPage.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/aggregates/index.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/doctypes/edit.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/doctypes/index.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/doctypes/list.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/index.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/prints/PrintBuilderPage.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/prints/index.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/shell-config/ShellConfiguratorPage.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/pages/shell-config/index.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/providers/ThemeContext.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/providers/constants.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/providers/data.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/providers/theme.tsx +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/providers/useTheme.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/registry/defaultComponents.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/registry/fieldComponents.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/registry/index.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/services/mock_data.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/setupTests.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/utils/mockDataGenerator.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/src/vite-env.d.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/tsconfig.json +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/tsconfig.node.json +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/vite.config.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/studio_ui/vitest.config.ts +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/cli/test_new.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/cli/test_verify.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/conftest.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/core/test_frontend.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/core/test_gitops.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/core/test_shell.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_aggregate_builder.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_api_routes.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_builder_shell_routes.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_cli.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_cli_openapi.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_cli_utility.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_contrib_cli.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_core_frontend.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_data_elements.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_data_elements_extended.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_deps_cli.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_dev.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_dev_cli_coverage.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_discovery.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_docs_ast_parsers.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_docs_audit.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_docs_exporters.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_docs_generator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_docs_generator_enhanced.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_docs_generator_extended.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_ephemeral.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_frontend_integration.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_generator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_git_adapter.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_git_protocol.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_github_provider.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_guardrail.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_live_preview.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_metadata_editor.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_multi_repo_workspace.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_new_cli.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_parser.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_print_adapter.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_protocol_scanner.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_protocol_scanner_extended.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_quality_cli.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_release_cli_more.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_release_gitops.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_release_graph.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_release_orchestrator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_release_versioning.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_routes_extended.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_schema_diff.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_screenshot_pipeline.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_sdk_generator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_shell_plugin_config.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_sidebar_routes.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_storage_adapters.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_studio.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_studio_codegen_generator.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_transformer.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_uimeta_routes.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_utility_cli.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_utility_cli_enhanced.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_visual_designer.py +0 -0
- {framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/tests/test_workspace.py +0 -0
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
## framework-m-studio v0.10.2
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
- cli boolean flags (2462916)
|
|
6
|
+
|
|
7
|
+
## framework-m-studio v0.10.1
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
- support workspace semi-version pinning in release orchestrator (aa2c08f)
|
|
12
|
+
|
|
1
13
|
## framework-m-studio v0.10.0
|
|
2
14
|
|
|
3
15
|
### Features
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: framework-m-studio
|
|
3
|
-
Version: 0.10.
|
|
3
|
+
Version: 0.10.2
|
|
4
4
|
Summary: Framework M Studio - Visual DocType Builder & Developer Tools
|
|
5
5
|
Project-URL: Homepage, https://gitlab.com/castlecraft/framework-m
|
|
6
6
|
Project-URL: Documentation, https://gitlab.com/castlecraft/framework-m#readme
|
|
@@ -20,8 +20,8 @@ Classifier: Typing :: Typed
|
|
|
20
20
|
Requires-Python: >=3.12
|
|
21
21
|
Requires-Dist: bandit>=1.9.4
|
|
22
22
|
Requires-Dist: build>=1.0.0
|
|
23
|
-
Requires-Dist: framework-m-core>=0.
|
|
24
|
-
Requires-Dist: framework-m>=0.7.
|
|
23
|
+
Requires-Dist: framework-m-core>=0.12.0
|
|
24
|
+
Requires-Dist: framework-m>=0.7.2
|
|
25
25
|
Requires-Dist: honcho>=1.1.0
|
|
26
26
|
Requires-Dist: httpx>=0.27.0
|
|
27
27
|
Requires-Dist: ipython>=9.11.0
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "framework-m-studio"
|
|
3
|
-
version = "0.10.
|
|
3
|
+
version = "0.10.2"
|
|
4
4
|
description = "Framework M Studio - Visual DocType Builder & Developer Tools"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = { text = "Apache-2.0" }
|
|
@@ -21,8 +21,8 @@ classifiers = [
|
|
|
21
21
|
]
|
|
22
22
|
|
|
23
23
|
dependencies = [
|
|
24
|
-
"framework-m-core>=0.
|
|
25
|
-
"framework-m>=0.7.
|
|
24
|
+
"framework-m-core>=0.12.0",
|
|
25
|
+
"framework-m>=0.7.2",
|
|
26
26
|
# Code generation
|
|
27
27
|
"libcst>=1.0.0",
|
|
28
28
|
"jinja2>=3.1.0",
|
|
@@ -158,7 +158,7 @@ target-version = "py312"
|
|
|
158
158
|
|
|
159
159
|
[tool.ruff.lint]
|
|
160
160
|
select = ["E", "F", "I", "UP", "B", "SIM", "C4", "PTH", "RUF"]
|
|
161
|
-
ignore = ["E501"
|
|
161
|
+
ignore = ["E501"]
|
|
162
162
|
|
|
163
163
|
[tool.ruff.format]
|
|
164
164
|
quote-style = "double"
|
{framework_m_studio-0.10.0 → framework_m_studio-0.10.2}/src/framework_m_studio/cli/release/cli.py
RENAMED
|
@@ -69,7 +69,7 @@ def release_prepare_command(
|
|
|
69
69
|
config: str = "release-config.json",
|
|
70
70
|
branch: str = "release/next",
|
|
71
71
|
root: str | None = None,
|
|
72
|
-
|
|
72
|
+
sbom: bool = True,
|
|
73
73
|
dry_run: bool = False,
|
|
74
74
|
) -> None:
|
|
75
75
|
"""Prepare a release branch with bumped versions."""
|
|
@@ -93,7 +93,7 @@ def release_prepare_command(
|
|
|
93
93
|
if dry_run:
|
|
94
94
|
print(f"[DRY RUN] Would prepare branch {branch} for {len(updates)} components")
|
|
95
95
|
return
|
|
96
|
-
prepare_release(updates, branch, root_path, release_config, sbom=
|
|
96
|
+
prepare_release(updates, branch, root_path, release_config, sbom=sbom)
|
|
97
97
|
print(f"✅ Prepared release files for {branch}")
|
|
98
98
|
|
|
99
99
|
|
|
@@ -109,16 +109,21 @@ def _pin_inter_package_dependencies(
|
|
|
109
109
|
for pub_name, new_ver in update_map.items():
|
|
110
110
|
if pub_name in data[section]:
|
|
111
111
|
current = str(data[section][pub_name])
|
|
112
|
-
# Match
|
|
113
|
-
m = re.match(
|
|
114
|
-
|
|
112
|
+
# Match numeric versions, 'workspace:*' or 'workspace:^0.1.0'
|
|
113
|
+
m = re.match(
|
|
114
|
+
r"^(([~^]?\d+\.\d+(?:\.\d+)*)|workspace:(?:\*|[~^]?\d+\.\d+(?:\.\d+)*))$",
|
|
115
|
+
current,
|
|
116
|
+
)
|
|
117
|
+
if m:
|
|
115
118
|
match_obj = re.match(r"^[^0-9]*", current)
|
|
116
|
-
prefix = (
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
119
|
+
prefix = match_obj.group(0) if match_obj else ""
|
|
120
|
+
|
|
121
|
+
# Canonicalize workspace prefix - preserve it if present
|
|
122
|
+
if not prefix or prefix == "workspace:*":
|
|
123
|
+
prefix = "^"
|
|
124
|
+
elif prefix == "workspace:":
|
|
125
|
+
prefix = "workspace:^"
|
|
126
|
+
|
|
122
127
|
data[section][pub_name] = f"{prefix}{new_ver}"
|
|
123
128
|
changed = True
|
|
124
129
|
|
|
@@ -127,7 +132,10 @@ def _pin_inter_package_dependencies(
|
|
|
127
132
|
if (
|
|
128
133
|
pub_name in data
|
|
129
134
|
and isinstance(data[pub_name], str)
|
|
130
|
-
and re.match(
|
|
135
|
+
and re.match(
|
|
136
|
+
r"^(([~^]?\d+\.\d+(?:\.\d+)*)|workspace:(?:\*|[~^]?\d+\.\d+(?:\.\d+)*))$",
|
|
137
|
+
data[pub_name],
|
|
138
|
+
)
|
|
131
139
|
):
|
|
132
140
|
m = re.match(r"^[^0-9]*", data[pub_name])
|
|
133
141
|
prefix = m.group(0) if m else ""
|