difflicious 0.12.0__tar.gz → 0.13.0__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.
- difflicious-0.13.0/.github/workflows/check-version-bump.yml +75 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/CHANGELOG.md +22 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/PKG-INFO +1 -1
- {difflicious-0.12.0 → difflicious-0.13.0}/package.json +0 -1
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/__init__.py +1 -1
- {difflicious-0.12.0 → difflicious-0.13.0}/.dockerignore +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/.github/workflows/auto-release.yml +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/.github/workflows/ci.yml +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/.github/workflows/docker-publish.yml +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/.github/workflows/pages.yml +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/.github/workflows/pypi-publish.yml +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/.gitignore +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/AGENTS.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/CLAUDE.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/CONTRIBUTING.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/DEVELOPING.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/Dockerfile +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/INSTALLATION.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/LICENSE +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/PLAN.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/README.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/cilicious.sh +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/2025-11-18-alpine-component-architecture.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/CSS-STYLE-GUIDE.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/TROUBLESHOOTING.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/notes/2025-08-03-1009-claude-fixing-uncommon-off-by-one-error.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/notes/2025-08-19-1925-expandable-context.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/notes/2025-08-19-1925-troubleshooting-context-expansion-2025-07-29.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/notes/2025-11-18-alpine-js-migration-progress.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/notes/2025-11-18-alpine-js-migration-status.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/prompts/2025-08-19-1934-phase-1-css-foundation-dark-theme.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-07-29-1916-code-structure-refactoring-recommendations.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-07-29-1917-extract-context-expansion-module.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-07-29-1918-extract-business-logic-service-layer.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-07-30-1701-jinja2-server-side-diff-rendering.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-07-30-1730-virtual-scrolling-lazy-rendering.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-08-03-2106-typescript-migration-plan.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-08-04-2130-simplify-diff-logic-and-ui.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-08-18-1954-font-configuration-proposal.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-08-18-1954-font-implementation-plan.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-08-18-1954-font-implementation-summary.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-08-19-1430-dark-light-mode-implementation.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/proposals/2025-11-18-0130-alpine-js-dom-manipulation.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-07-29-2100-context-expansion-extraction-report.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-07-30-1647-diff-rendering-performance-analysis.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-07-30-1655-backend-migration-performance-analysis.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-08-18-1200-dead-code-analysis-report.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-09-22-1857-production-readiness-analysis.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-09-22-1949-ui-css-cleanup-analysis.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-10-30-2201-production-readiness-update.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-10-31-1253-test-coverage-analysis.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-10-31-1718-test-coverage-improvement-summary.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-10-31-1720-0.9-release-plan.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-11-05-1857-css-rationalization-analysis.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-11-05-2019-color-audit.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-11-05-2019-phase2-implementation-plan.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-11-17-1730-codebase-improvements-analysis.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2026-02-05-v1.0-release-readiness-audit.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/sessions/2025-07-27-1256-project-setup-and-modern-python-packaging.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/sessions/2025-07-27-1415-git-integration-and-security-implementation.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/sessions/2025-07-27-1820-diff-parser-and-side-by-side-ui.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/sessions/2025-07-28-0953-syntax-highlighting-implementation.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/sessions/2025-07-28-1500-commit-comparison-and-ui-enhancements.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/sessions/2025-07-28-1805-untracked-files-implementation-and-bugfix.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/sessions/2025-07-31-1730-pygments-syntax-highlighting.compacted.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/sessions/2025-11-18-0130-alpine-js-migration-implementation.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/javascript-modularization-plan.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/plans/2025-07-29-1015-expandable-context-feature.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/plans/2025-11-04-2318-gitpython-migration-plan.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/plans/2025-11-22-1.0-release-execution-plan.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/plans/2026-04-12-presentation-layer-separation.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/presentation-layer-separation.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/reference/app.js.reference +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/reference/diff-interactions.js.reference +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/screenshots/.gitkeep +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/screenshots/dark.png +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/screenshots/light.png +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/site/_config.yml +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/site/assets/logo.png +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/site/index.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/docs/tailwind-design-system.md +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/package-lock.json +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/pnpm-lock.yaml +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/postcss.config.cjs +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/pyproject.toml +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/scripts/screenshot.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/app.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/blueprints/__init__.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/blueprints/auto_reload_routes.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/blueprints/context_routes.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/blueprints/diff_routes.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/blueprints/git_routes.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/blueprints/helpers.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/blueprints/views.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/cli.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/config.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/diff_parser.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/dummy_data.json +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/git_operations.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/services/__init__.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/services/base_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/services/diff_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/services/dtos.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/services/exceptions.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/services/file_watcher.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/services/git_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/services/syntax_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/services/template_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/css/styles.css +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/css/tailwind.css +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/css/tailwind.input.css +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/data/language_map.json +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/alpine-init.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/components/fileComponent.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/components/groupComponent.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/components/hunkComponent.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/components/searchComponent.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/main.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/auto-reload.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/context-expansion-ui.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/context-expansion.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/design-system.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/dom-utils.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/full-diff.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/hunk-operations.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/navigation.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/search.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/theme.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/toolbar.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/stores/diffStore.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/stores/searchStore.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/stores/themeStore.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/base.html +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/diff_file.html +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/diff_groups.html +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/diff_hunk.html +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/index.html +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/partials/empty_state.html +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/partials/global_controls.html +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/partials/loading_state.html +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/partials/toolbar.html +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tailwind.config.cjs +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/__init__.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/conftest.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/integration/conftest.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/integration/test_api.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/integration/test_api_detailed.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/integration/test_frontend.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/auto-reload.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/components/fileComponent.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/components/groupComponent.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/components/hunkComponent.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/context-expansion-ui.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/context-expansion.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/design-system.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/diff-state-persistence.test.js.old +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/diffStore-actions.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/dom-utils.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/full-diff.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/navigation.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/search.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/setup.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/stores/diffStore.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/stores/searchStore.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/stores/themeStore.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/js/toolbar.test.js +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/sample_01.diff +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/services/__init__.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/services/test_base_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/services/test_diff_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/services/test_exceptions.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/services/test_file_watcher.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/services/test_git_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/services/test_syntax_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/services/test_template_service.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/test_app.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/test_auto_reload_routes.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/test_cli.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/test_git_operations.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/unit/test_diff_parser_line_count.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/unit/test_diff_parser_side_by_side.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/unit/test_diff_rendering.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/tests/unit/test_parser.py +0 -0
- {difflicious-0.12.0 → difflicious-0.13.0}/uv.lock +0 -0
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
name: Check Version Bump
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request:
|
|
5
|
+
paths:
|
|
6
|
+
- 'src/difflicious/__init__.py'
|
|
7
|
+
- 'CHANGELOG.md'
|
|
8
|
+
pull_request_target:
|
|
9
|
+
paths:
|
|
10
|
+
- 'src/difflicious/__init__.py'
|
|
11
|
+
- 'CHANGELOG.md'
|
|
12
|
+
|
|
13
|
+
permissions:
|
|
14
|
+
pull-requests: write
|
|
15
|
+
contents: read
|
|
16
|
+
|
|
17
|
+
jobs:
|
|
18
|
+
check-version-bump:
|
|
19
|
+
runs-on: ubuntu-latest
|
|
20
|
+
name: Verify version was bumped
|
|
21
|
+
|
|
22
|
+
steps:
|
|
23
|
+
- name: Checkout base (main)
|
|
24
|
+
uses: actions/checkout@v4
|
|
25
|
+
with:
|
|
26
|
+
ref: main
|
|
27
|
+
path: base
|
|
28
|
+
|
|
29
|
+
- name: Checkout PR head
|
|
30
|
+
uses: actions/checkout@v4
|
|
31
|
+
with:
|
|
32
|
+
path: head
|
|
33
|
+
|
|
34
|
+
- name: Extract version from main
|
|
35
|
+
id: main_version
|
|
36
|
+
run: |
|
|
37
|
+
version=$(grep '__version__' base/src/difflicious/__init__.py | sed -E 's/.*"([^"]+)".*/\1/')
|
|
38
|
+
echo "version=$version" >> $GITHUB_OUTPUT
|
|
39
|
+
echo "Main version: $version"
|
|
40
|
+
|
|
41
|
+
- name: Extract version from PR
|
|
42
|
+
id: pr_version
|
|
43
|
+
run: |
|
|
44
|
+
version=$(grep '__version__' head/src/difflicious/__init__.py | sed -E 's/.*"([^"]+)".*/\1/')
|
|
45
|
+
echo "version=$version" >> $GITHUB_OUTPUT
|
|
46
|
+
echo "PR version: $version"
|
|
47
|
+
|
|
48
|
+
- name: Compare versions
|
|
49
|
+
id: compare
|
|
50
|
+
run: |
|
|
51
|
+
main_version="${{ steps.main_version.outputs.version }}"
|
|
52
|
+
pr_version="${{ steps.pr_version.outputs.version }}"
|
|
53
|
+
|
|
54
|
+
if [ "$main_version" = "$pr_version" ]; then
|
|
55
|
+
echo "❌ Version was not bumped"
|
|
56
|
+
echo "Main: $main_version"
|
|
57
|
+
echo "PR: $pr_version"
|
|
58
|
+
exit 1
|
|
59
|
+
fi
|
|
60
|
+
|
|
61
|
+
echo "✅ Version was bumped"
|
|
62
|
+
echo "Main: $main_version → PR: $pr_version"
|
|
63
|
+
|
|
64
|
+
- name: Comment on PR if version not bumped
|
|
65
|
+
if: failure()
|
|
66
|
+
uses: actions/github-script@v7
|
|
67
|
+
with:
|
|
68
|
+
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
69
|
+
script: |
|
|
70
|
+
github.rest.issues.createComment({
|
|
71
|
+
issue_number: context.issue.number,
|
|
72
|
+
owner: context.repo.owner,
|
|
73
|
+
repo: context.repo.repo,
|
|
74
|
+
body: '❌ **Version Check Failed**\n\nThis PR does not have a version bump in `src/difflicious/__init__.py`. Please update the version to proceed.\n\nIf this is an intentional release without version changes, a maintainer can override this check.'
|
|
75
|
+
})
|
|
@@ -5,6 +5,28 @@ All notable changes to difflicious will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.13.0] - 2026-04-14
|
|
9
|
+
|
|
10
|
+
### Release Automation & Infrastructure
|
|
11
|
+
|
|
12
|
+
Automated version management and release processes to streamline development workflows.
|
|
13
|
+
|
|
14
|
+
### Added
|
|
15
|
+
- **Automated version bump enforcement** - GitHub Action that requires version updates on main branch merges
|
|
16
|
+
- **Branch protection integration** - Enforces changelog discipline with override capability
|
|
17
|
+
|
|
18
|
+
### Improved
|
|
19
|
+
- **Frontend animations** - Smoother transitions and reduced visual flashing during state changes
|
|
20
|
+
- **CSS architecture** - Consolidated theme styling and improved dark mode consistency
|
|
21
|
+
- **Signal handling** - Better graceful shutdown for SIGINT/SIGTERM
|
|
22
|
+
- **JavaScript selectors** - Standardized hooks with `js-` prefix for maintainability
|
|
23
|
+
|
|
24
|
+
### Fixed
|
|
25
|
+
- **CSS x-cloak** - Added missing rule to prevent FOUC (flash of unstyled content)
|
|
26
|
+
- **Expansion state** - Eliminated flash of incorrect state on page load
|
|
27
|
+
- **Dark mode backgrounds** - Consistent file header styling across themes
|
|
28
|
+
- **Queue warnings** - Resolved Waitress concurrency warnings
|
|
29
|
+
|
|
8
30
|
## [0.12.0] - 2026-04-14
|
|
9
31
|
|
|
10
32
|
### Presentation Layer Separation
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: difflicious
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.13.0
|
|
4
4
|
Summary: A sleek web-based git diff visualization tool for developers
|
|
5
5
|
Project-URL: Homepage, https://github.com/insipid/difflicious
|
|
6
6
|
Project-URL: Repository, https://github.com/insipid/difflicious
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/notes/2025-08-19-1925-expandable-context.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-10-31-1720-0.9-release-plan.md
RENAMED
|
File without changes
|
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/docs/internal/reports/2025-11-05-2019-color-audit.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/docs/plans/2025-07-29-1015-expandable-context-feature.md
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/docs/plans/2025-11-04-2318-gitpython-migration-plan.md
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/docs/plans/2025-11-22-1.0-release-execution-plan.md
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/docs/plans/2026-04-12-presentation-layer-separation.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/components/fileComponent.js
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/components/groupComponent.js
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/components/hunkComponent.js
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/components/searchComponent.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/context-expansion-ui.js
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/context-expansion.js
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/design-system.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/static/js/modules/hunk-operations.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/partials/empty_state.html
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/partials/global_controls.html
RENAMED
|
File without changes
|
{difflicious-0.12.0 → difflicious-0.13.0}/src/difflicious/templates/partials/loading_state.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|