Skip to content

Conversation

@skusel
Copy link
Contributor

@skusel skusel commented Dec 4, 2025

Describe your changes

Enhanced file path auto-completion to account for typical OS filesystem case sensitivity.

By default, Windows and macOS use case-insensitive filesystems, and Linux typically uses case-sensitive filesystems. Previously, file path auto-completion in F3D was always case-sensitive.

To determine with 100% certainty whether a filesystem is case-sensitive, I would have to create two files with the same name that differ only in casing in the filesystem of interest (multiple filesystems can be present on a system). This approach felt over engineered, so I used the OS filesystem case-sensitivity defaults to determine when to use case-sensitive vs case-insensitive file path autocompletion.

In the application tests, I added a WORKING_DIR option to the f3d_test function that changes the test's working directory. This was done so I could test these changes on directories that differed only in casing, without worrying about how the file path separators differ across operating systems.

Issue ticket number and link if any

#2681

Checklist for finalizing the PR

  • I have performed a self-review of my code
  • I have added tests for new features and bugfixes
  • I have added documentation for new features
  • If it is a modifying the libf3d API, I have updated bindings
  • If it is a modifying the .github/workflows/versions.json, I have updated docker_timestamp

Continuous integration

Please write a comment to run CI, eg: \ci fast.
See here for more info.

@skusel
Copy link
Contributor Author

skusel commented Dec 4, 2025

\ci fast

@skusel skusel force-pushed the AutoCompletionCaseSensitivity branch 2 times, most recently from 729b9a4 to 59b6a14 Compare December 4, 2025 02:41
@codecov
Copy link

codecov bot commented Dec 4, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.52%. Comparing base (e5a06bb) to head (ffc3028).
⚠️ Report is 2 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #2694   +/-   ##
=======================================
  Coverage   96.52%   96.52%           
=======================================
  Files         141      141           
  Lines       12484    12489    +5     
=======================================
+ Hits        12050    12055    +5     
  Misses        434      434           

☔ 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.

@skusel skusel force-pushed the AutoCompletionCaseSensitivity branch from 59b6a14 to ca33a04 Compare December 4, 2025 10:45
@skusel
Copy link
Contributor Author

skusel commented Dec 4, 2025

\ci main

@mwestphal
Copy link
Member

nice @skusel ! let me know when this is ready for review.

@mwestphal
Copy link
Member

\ci full

Copy link
Member

@mwestphal mwestphal left a comment

Choose a reason for hiding this comment

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

changes and a question

skusel added a commit to skusel/f3d that referenced this pull request Dec 5, 2025
skusel added a commit to skusel/f3d that referenced this pull request Dec 5, 2025
@skusel skusel force-pushed the AutoCompletionCaseSensitivity branch from 59d8371 to 6a42562 Compare December 5, 2025 13:04
skusel added a commit to skusel/f3d that referenced this pull request Dec 5, 2025
@skusel skusel force-pushed the AutoCompletionCaseSensitivity branch from 6a42562 to bfc3eb3 Compare December 5, 2025 13:09
Copy link
Member

@mwestphal mwestphal left a comment

Choose a reason for hiding this comment

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

still some questions

Copy link
Member

@mwestphal mwestphal left a comment

Choose a reason for hiding this comment

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

It looks great! Only remain the cleaning up of log files. I've cleaned up one of them as an example, Ill let you handle the others :)

@skusel
Copy link
Contributor Author

skusel commented Dec 6, 2025

It looks great! Only remain the cleaning up of log files. I've cleaned up one of them as an example, Ill let you handle the others :)

Thanks for the example and review! I have cleaned up all the log files and pushed up the changes.

@skusel skusel force-pushed the AutoCompletionCaseSensitivity branch from fafd0da to ffc3028 Compare December 6, 2025 15:34
@mwestphal mwestphal merged commit 4ced3dc into f3d-app:master Dec 6, 2025
73 checks passed
@mwestphal
Copy link
Member

Thanks for the contribution @skusel !

Samarthi pushed a commit to Samarthi/f3d that referenced this pull request Dec 8, 2025
…vity

Enhanced file path auto-completion to account for typical OS filesystem case sensitivity.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants