Skip to content

modularize optimization internals#7401

Merged
ben-schwen merged 88 commits intomasterfrom
modular_gforce
Jan 15, 2026
Merged

modularize optimization internals#7401
ben-schwen merged 88 commits intomasterfrom
modular_gforce

Conversation

@ben-schwen
Copy link
Copy Markdown
Member

@ben-schwen ben-schwen commented Oct 28, 2025

Adds arithmetic for GForce as demanded in #3815 but does not add support for blocks in j like d[, j={x<-x; .(min(x))}, by=y].

@codecov
Copy link
Copy Markdown

codecov bot commented Oct 28, 2025

Codecov Report

❌ Patch coverage is 99.23664% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 99.00%. Comparing base (20b463c) to head (bb6c6ed).
⚠️ Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
R/data.table.R 99.58% 1 Missing ⚠️
R/test.data.table.R 95.23% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #7401      +/-   ##
==========================================
- Coverage   99.02%   99.00%   -0.02%     
==========================================
  Files          87       87              
  Lines       16806    16893      +87     
==========================================
+ Hits        16642    16725      +83     
- Misses        164      168       +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Oct 28, 2025

No obvious timing issues in HEAD=modular_gforce
Comparison Plot

Generated via commit bb6c6ed

Download link for the artifact containing the test results: ↓ atime-results.zip

Task Duration
R setup and installing dependencies 2 minutes and 40 seconds
Installing different package versions 42 seconds
Running and plotting the test cases 4 minutes and 26 seconds

@ben-schwen ben-schwen marked this pull request as ready for review November 2, 2025 18:01
@ben-schwen
Copy link
Copy Markdown
Member Author

I'm also not sure about moving the tests to optimize.Rraw since this feels kind of wrong and not needed after introducing the new levels/optimization parameter to test.

@ben-schwen ben-schwen mentioned this pull request Nov 2, 2025
Copy link
Copy Markdown
Member

@MichaelChirico MichaelChirico left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, I think last round of review here. Looking great!

ben-schwen and others added 2 commits January 13, 2026 23:21
Co-authored-by: Michael Chirico <chiricom@google.com>
ben-schwen and others added 4 commits January 13, 2026 23:39
for the case of `is.null(names(jl__))` this should result in `logical(0)` differently from current version which returns `c(FALSE, FALSE, ...)`

Co-authored-by: Michael Chirico <chiricom@google.com>
Co-authored-by: Michael Chirico <chiricom@google.com>
Co-authored-by: Michael Chirico <chiricom@google.com>
Copy link
Copy Markdown
Member

@MichaelChirico MichaelChirico left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's ready to go! Bravo! Be sure to revisit all the open review threads and then submit when you're happy :)

@MichaelChirico
Copy link
Copy Markdown
Member

Great news -- as of now, this PR reduces the cyclomatic complexity of [.data.table by 15% (1038 📉 872)

@ben-schwen ben-schwen merged commit 0216983 into master Jan 15, 2026
12 of 13 checks passed
@ben-schwen ben-schwen deleted the modular_gforce branch January 15, 2026 09:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

5 participants