Commit graph

217 commits

Author SHA1 Message Date
Kevin Turcios
3e282ee293 fix: address security vulnerabilities while maintaining Python 3.9 support
Resolve 12 Dependabot security alerts by constraining vulnerable packages
to Python 3.10+ where patches are available:

Python dependencies:
- filelock: Pin <3.20.3 for Python 3.9, >=3.20.3 for Python 3.10+
  (fixes TOCTOU symlink vulnerabilities CVE-2024-XXXXX)
- tensorflow: Only install on Python 3.10+ (brings keras >=3.12.1, pillow >=12.1.1)
  (fixes 8 high-severity keras vulnerabilities including arbitrary code execution,
   directory traversal, and 1 high-severity pillow out-of-bounds write)

JavaScript dependencies:
- vitest: Update to latest (4.0.18) in test fixture directory
  (fixes moderate-severity esbuild SSRF vulnerability GHSA-67mh-4wv8-2f99)

Python 3.9 notes:
- filelock 3.19.1 has known TOCTOU vulnerabilities (medium severity)
- tensorflow/keras/pillow excluded from Python 3.9 test dependencies
- Python 3.9 reached EOL in October 2025, vulnerabilities are expected

All high-severity vulnerabilities are resolved for Python 3.10+.
Python 3.9 users should upgrade to 3.10+ for full security patches.
2026-02-19 01:26:37 -05:00
Kevin Turcios
dc9c60a061 perf: remove remaining redundant .resolve() calls on pre-resolved paths
Drop .resolve() from ImportResolver, TestsCache, init_javascript,
create_pr, and filter_functions where callers already pass resolved
paths via CLI init or TestConfig.__post_init__. Also exclude test
and fixture dirs from mypy to match ruff/ty config.
2026-02-18 23:05:04 -05:00
Kevin Turcios
ee3737a036 chore: exclude test and fixture dirs from ty type checking 2026-02-18 21:18:24 -05:00
Kevin Turcios
5aa115a523 feat: make crosshair-tool optional for Python 3.15+
crosshair-tool doesn't support Python 3.15 yet. The dependency is now
conditional on python_version < 3.15, with a runtime guard that skips
concolic test generation when the package is absent.
2026-02-18 17:56:59 -05:00
KRRT7
fa452f2f31 fix: update license format to use license-files
Replace deprecated license table format with modern license-files array
in both main package and codeflash-benchmark subpackage. This resolves
the setuptools deprecation warning about TOML table license format.

Changes:
- Use license-files = ["LICENSE"] instead of license = {text = "BSL-1.1"}
- Add LICENSE file to root directory
- Add LICENSE and README.md to codeflash-benchmark/
2026-02-17 05:54:21 +00:00
Kevin Turcios
6de75e7bab chore: disable ruff B009 globally to avoid conflict with mypy [misc] 2026-02-13 09:48:18 -05:00
Kevin Turcios
fb5ee232a5
Merge branch 'main' into pyarrow-comparator 2026-02-10 20:52:42 -05:00
Kevin Turcios
476682c303 fix: lower pytest-asyncio minimum version to 0.18.0 2026-02-09 12:49:13 -05:00
aseembits93
2b66d15c06 feat: add PyArrow support to comparator
Add comparison support for PyArrow types including Table, RecordBatch,
Array, ChunkedArray, Scalar, Schema, Field, and DataType.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 10:40:56 -08:00
claude[bot]
c0e8a98ca5 chore: disable FURB110 lint rule that enforces 'or' pattern
The codebase prefers explicit 'a if a else b' over 'a or b' pattern.
Disabled FURB110 (if-exp-instead-of-or-operator) rule to prevent
automatic conversion by the linter.

Co-authored-by: Kevin Turcios <KRRT7@users.noreply.github.com>
2026-02-04 04:39:20 +00:00
Kevin Turcios
9f4776eb2e chore: migrate from pre-commit to prek
Replace pre-commit with prek (faster Rust-based alternative) for linting.
- Add prek to dev dependencies
- Replace pre-commit workflow with prek workflow using setup-uv@v6
- Update Claude workflow allowed tools to use prek
2026-02-03 19:56:58 -05:00
Kevin Turcios
65d77548a3 update versions 2026-02-03 17:17:57 -05:00
Kevin Turcios
84d0b1cf09 Merge branch 'main' into multi-language 2026-01-29 13:05:22 -05:00
Kevin Turcios
1d3aeb997d wrapped 2026-01-29 12:35:53 -05:00
Kevin Turcios
47a3778ff7 ignore s110 2026-01-29 12:07:47 -05:00
Kevin Turcios
c2316692c5 revert 2026-01-29 12:00:03 -05:00
Sarthak Agarwal
72d9a9eafc remove ignored linting issues 2026-01-29 21:39:07 +05:30
Sarthak Agarwal
d295ff39c4 fix directory for skipped tests 2026-01-29 20:20:48 +05:30
Sarthak Agarwal
d29b139c62 fix: lint issues in experiments folder and format fixes 2026-01-29 19:29:12 +05:30
Kevin Turcios
6612be4a8c silence these for now 2026-01-29 07:13:02 -05:00
misrasaurabh1
74c4035595 WIP JS support 2026-01-14 20:55:41 -08:00
misrasaurabh1
4e1b5cf57a Initial attempt at phase 1 2026-01-14 18:56:06 -08:00
Aseem Saxena
a76adafbf9 add numba and tensorflow in test dependency group 2026-01-09 11:08:24 -08:00
Kevin Turcios
2e34d83c52
remove test_framework from pyproject.toml (#955)
* follow up

* remove requirement

* Delete uv.lock

* refresh uv-lock

* first pass

* cleanup test_framework here

* cleanup

* code_review

* cleanup tests

* fix for E2E

* fix tests dir missing

* one more cleanup

* cancel-in-progress

* Revert "cancel-in-progress"

This reverts commit f4bb9079cb.

* not needed here

* lower threshold and cleanup comments

* debug

* temp

* debug

Revert "debug"

This reverts commit fc3655149486c8b980e245e97b8304232086f08d.

fix(discover): Fix pytest discovery for futurehouse structure

Revert "fix(discover): Fix pytest discovery for futurehouse structure"

This reverts commit 40c48882b7413f5876af0e2e08d8f17a65bab091.

Reapply "debug"

This reverts commit c8297e57fbdca2462a8ca1199657748b8bc225e9.

Revert "not needed here"

This reverts commit dd2c5cdf76.

Revert "lower threshold and cleanup comments"

This reverts commit 0e2f57e292.

Reapply "lower threshold and cleanup comments"

This reverts commit e3b24f4a2967551eca8a19f96bf6647b23acdbbc.

Reapply "not needed here"

This reverts commit aec32103c931ff6d57dfa0d012113c2cec5d37a7.

Revert "Reapply "debug""

This reverts commit 77ab9f34f858a17fb29764c544769a0eb72ce7f0.

Reapply "fix(discover): Fix pytest discovery for futurehouse structure"

This reverts commit 506b94ab4fe17a7c8e0d458253812758cced3f22.

feat(futurehouse): Make futurehouse structure pytest compatible

* Revert "debug"

This reverts commit 271c5a37ec.

* Revert "temp"

This reverts commit b363acda1c.

* Revert "debug"

This reverts commit ac29b6beb3.

* just for now
2025-12-09 02:53:08 -08:00
Kevin Turcios
33437d39e3
use pytest as the execution engine for all tests (#951)
* first pass

restore

restore this too

Revert "first pass"

This reverts commit b507770b2c79cc948b33222d8877fb784bfe108a.

* continue

* Update uv.lock

* refresh lockfile

* bugfix

* temp

* fix these

* pytest changes

* formatting

* set up test env properly here too

* ruff

* make ruff happy

* Update e2e-bubblesort-unittest.yaml

* with pytest

* bugfix

* oops
2025-12-06 22:40:25 -06:00
Kevin Turcios
321640cb60
CF-900 allow async optimizations by default (#938)
* remove --async

* include it by default

* don't crash for --async

* pre-commit
2025-11-23 16:36:13 -05:00
Codeflash Bot
fd8c73a152 add eval_type_backport 2025-11-04 00:38:58 -08:00
ali
5280484ce8
migrate pygls to v2
Some checks are pending
E2E - Bubble Sort Pytest (No Git) / bubble-sort-optimization-pytest-no-git (pull_request) Waiting to run
E2E - Futurehouse Structure / futurehouse-structure (pull_request) Waiting to run
E2E - Init Optimization / init-optimization (pull_request) Waiting to run
E2E - Topological Sort (Worktree) / topological-sort-worktree-optimization (pull_request) Waiting to run
E2E - Tracer Replay / tracer-replay (pull_request) Waiting to run
PR Labeler / label-workflow-changes (pull_request) Waiting to run
Mypy Type Checking for CLI / type-check-cli (pull_request) Waiting to run
CodeFlash / Optimize new Python code (pull_request) Waiting to run
E2E - Async / async-optimization (pull_request) Waiting to run
E2E - Bubble Sort Benchmark / benchmark-bubble-sort-optimization (pull_request) Waiting to run
E2E - Bubble Sort Unittest / bubble-sort-optimization-unittest (pull_request) Waiting to run
Coverage E2E / end-to-end-test-coverage (pull_request) Waiting to run
windows-unit-tests / windows-unit-tests (pull_request) Waiting to run
/ Run pr agent on every pull request, respond to user comments (pull_request) Waiting to run
Lint / Run pre-commit hooks (pull_request) Waiting to run
unit-tests / unit-tests (3.12) (pull_request) Waiting to run
unit-tests / unit-tests (3.13) (pull_request) Waiting to run
unit-tests / unit-tests (3.10) (pull_request) Waiting to run
unit-tests / unit-tests (3.11) (pull_request) Waiting to run
unit-tests / unit-tests (3.14) (pull_request) Waiting to run
unit-tests / unit-tests (3.9) (pull_request) Waiting to run
2025-10-21 04:27:46 +03:00
Kevin Turcios
77155a8e00
Merge branch 'main' into 3.14-in-CI 2025-10-14 18:44:11 +00:00
Kevin Turcios
6e2b05150f conditionally run 3.13 with tests dependencies 2025-10-13 22:13:43 -07:00
Kevin Turcios
234df4b927 remove version constaint for pytest 2025-10-13 18:15:01 -07:00
Kevin Turcios
2c8d2ba292 make asyncio optional 2025-09-28 04:13:14 -07:00
Kevin Turcios
736faa1641 add E2E gha & pytest-asyncio 2025-09-26 15:09:49 -07:00
Aseem Saxena
8ce8b7ab4d
filelock should be installed when not using uv sync 2025-09-10 15:26:11 -07:00
Kevin Turcios
f612ef28a2 Update pyproject.toml 2025-08-14 12:16:36 -07:00
Kevin Turcios
733daaf2d7 and fix it 2025-08-05 21:01:26 -07:00
Kevin Turcios
974b89142b Update pyproject.toml 2025-07-28 17:26:31 -07:00
Kevin Turcios
41d314ddbf cleanup benchmark 2025-07-28 16:46:05 -07:00
Kevin Turcios
32d9919735 add the plugin as a pytest entry point 2025-07-23 16:00:42 -07:00
Kevin Turcios
e2e6803543 add markers 2025-07-03 16:20:05 -07:00
Kevin Turcios
fd1e492438 silence test collection warnings 2025-07-01 17:40:01 -07:00
Saurabh Misra
d6bf89ab15 release v0.14.7
update the release scripts
2025-06-30 17:55:13 -07:00
Kevin Turcios
f52ada5eab add pygls as a direct dependency, not transitive 2025-06-25 16:45:55 -07:00
Kevin Turcios
1311198c36 extract benchmark runs 2025-06-25 16:23:26 -07:00
Kevin Turcios
d37d27def3 versioning too 2025-06-19 16:30:10 -07:00
Kevin Turcios
b9540122ae hello world 2025-06-19 15:58:50 -07:00
Kevin Turcios
6f9eaa8eeb remove coverage upload in CI 2025-06-09 20:30:05 -07:00
Kevin Turcios
e6272e8fbf more pre-commit fixes 2025-06-05 20:29:03 -07:00
Kevin Turcios
bde6e06ad5 pre-commit run 2025-06-05 20:12:21 -07:00
aseembits93
17a9e942df ruff should target atleast py39 2025-05-27 10:40:18 -07:00