Skip to content

fix(python): disable ident normalization in merge#4102

Merged
ion-elgreco merged 4 commits intodelta-io:mainfrom
bellshun:fix/python-merge-ident-normalization
Jan 20, 2026
Merged

fix(python): disable ident normalization in merge#4102
ion-elgreco merged 4 commits intodelta-io:mainfrom
bellshun:fix/python-merge-ident-normalization

Conversation

@bellshun
Copy link
Copy Markdown
Contributor

@bellshun bellshun commented Jan 20, 2026

fix(python): disable ident normalization in merge

Use DeltaSessionContext in Python merge bindings to preserve column case and match Rust merge behavior (enable_ident_normalization = false).

Fixes #4097

@bellshun bellshun requested a review from ion-elgreco as a code owner January 20, 2026 00:15
@github-actions github-actions Bot added the binding/python Issues for the Python package label Jan 20, 2026
@github-actions
Copy link
Copy Markdown

ACTION NEEDED

delta-rs follows the Conventional Commits specification for release automation.

The PR title and description are used as the merge commit message. Please update your PR title and description to match the specification.

@bellshun bellshun changed the title Fix/python merge ident normalization fix(python): disable ident normalization in merge Jan 20, 2026
roeap
roeap previously requested changes Jan 20, 2026
Copy link
Copy Markdown
Collaborator

@roeap roeap left a comment

Choose a reason for hiding this comment

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

Awesome, thanks @bellshun.

Using sessions consistently is a core part of the current work!

Just one minor ask.

Comment thread python/src/merge.rs Outdated
@@ -54,7 +55,7 @@ impl PyMergeBuilder {
commit_properties: Option<PyCommitProperties>,
custom_execute_handler: Option<Arc<dyn CustomExecuteHandler>>,
) -> DeltaResult<Self> {
let ctx = SessionContext::new();
let ctx: SessionContext = DeltaSessionContext::default().into();
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Do you mind updating this to use the create_session() method. Right now these are equivalent, but I am planning on integrating a bit more logic there.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

hello, @roeap.
Sure — I updated it to use create_session(). Thanks for the heads-up.

@codecov
Copy link
Copy Markdown

codecov Bot commented Jan 20, 2026

Codecov Report

❌ Patch coverage is 0% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 76.02%. Comparing base (d4d75cc) to head (1c92e44).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
python/src/merge.rs 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4102      +/-   ##
==========================================
- Coverage   76.03%   76.02%   -0.02%     
==========================================
  Files         164      164              
  Lines       44668    44646      -22     
  Branches    44668    44646      -22     
==========================================
- Hits        33963    33940      -23     
- Misses       9024     9026       +2     
+ Partials     1681     1680       -1     

☔ 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.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@ion-elgreco ion-elgreco force-pushed the fix/python-merge-ident-normalization branch from bb48e42 to 1c92e44 Compare January 20, 2026 08:17
@ion-elgreco ion-elgreco enabled auto-merge (squash) January 20, 2026 08:17
@ion-elgreco ion-elgreco requested a review from roeap January 20, 2026 15:03
@ion-elgreco ion-elgreco disabled auto-merge January 20, 2026 15:04
@ion-elgreco ion-elgreco enabled auto-merge (squash) January 20, 2026 15:04
@ion-elgreco ion-elgreco merged commit e12cf1f into delta-io:main Jan 20, 2026
28 of 29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

binding/python Issues for the Python package

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

[Bug]: Python merge operation ignores enable_ident_normalization setting, causing case-sensitive column name errors

3 participants