-
Notifications
You must be signed in to change notification settings - Fork 4
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Checking mergeability…
Don’t worry, you can still create the pull request.
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: hardbyte/python-common-expression-language
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: hardbyte/python-common-expression-language
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: feature/tui
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 8 commits
- 16 files changed
- 1 contributor
Commits on Oct 23, 2025
-
Configuration menu - View commit details
-
Copy full SHA for bd72e64 - Browse repository at this point
Copy the full SHA bd72e64View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0d824c1 - Browse repository at this point
Copy the full SHA 0d824c1View commit details -
Configuration menu - View commit details
-
Copy full SHA for cf1301a - Browse repository at this point
Copy the full SHA cf1301aView commit details
Commits on Nov 1, 2025
-
Add batch context processing and comprehensive E2E tests
Implements --for-each flag for evaluating one CEL expression against multiple context files separately, with comprehensive end-to-end test coverage for all CLI features. Features: - New --for-each flag for batch context processing - Evaluates expression separately for each file (not merged) - Results displayed in table or JSON format with timing info - Base context can be merged with each file context Testing: - Added 13 unit tests for batch context processing function - Added 41 E2E tests using subprocess to verify full CLI experience - 25 tests for basic CLI features (context, output, flags, errors) - 7 tests for --file mode (expressions from files) - 9 tests for --for-each batch processing - Total: 91 tests (50 unit + 41 E2E), all passing in ~7.5s - CLI feature coverage: ~95% (excludes interactive/TUI modes) Documentation: - Updated README.md with batch processing example - Added comprehensive --for-each docs to cli-reference.md - Added usage recipes and patterns to cli-recipes.md - Explained difference between --for-each (separate) vs --context-file (merged) Example usage: cel 'user.age >= 18' --for-each user1.json --for-each user2.json --for-each user3.json cel 'expr' --context '{"base": 1}' --for-each file1.json --for-each file2.json --output json The --for-each pattern with repeated flags makes it explicit that each file is evaluated separately, following precedents from cargo test --test and curl -H patterns.Configuration menu - View commit details
-
Copy full SHA for 49ecdc4 - Browse repository at this point
Copy the full SHA 49ecdc4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7399364 - Browse repository at this point
Copy the full SHA 7399364View commit details -
Update CLAUDE.md with CLI architecture and testing patterns
Documents the CLI design patterns, batch processing rationale, E2E testing strategy, and common pitfalls for future agents working on the codebase. Key additions: - CLI architecture overview (modes, key components) - Batch processing design rationale (why --for-each pattern) - E2E testing strategy and patterns - Test organization (91 tests: 50 unit + 41 E2E) - Common pitfalls for CLI development and testing - Documentation requirements for new CLI features - Performance notes
Configuration menu - View commit details
-
Copy full SHA for 9e3f1a4 - Browse repository at this point
Copy the full SHA 9e3f1a4View commit details -
Use platformdirs for cross-platform config directory
Replace custom OS detection logic with platformdirs library for proper cross-platform configuration directory handling. Changes: - Add platformdirs>=4.0.0 to dependencies - Update expression_storage.py to use platformdirs.user_config_dir() - Fallback to manual detection if platformdirs not available - Follows XDG Base Directory spec on Linux - Uses proper AppData on Windows - Uses Library/Application Support on macOS Benefits: - Proper handling of XDG_CONFIG_HOME on Linux - Better Windows roaming profile support - Follows platform conventions correctly - Well-tested library (used by pip, setuptools, etc.)
Configuration menu - View commit details
-
Copy full SHA for 21fcb4e - Browse repository at this point
Copy the full SHA 21fcb4eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 095445e - Browse repository at this point
Copy the full SHA 095445eView commit details
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff main...feature/tui