Skip to content

NEC drives support, 3.10rib removed, firmware matching refactored#367

Merged
superg merged 1 commit intomainfrom
nec_firmwares
Apr 6, 2026
Merged

NEC drives support, 3.10rib removed, firmware matching refactored#367
superg merged 1 commit intomainfrom
nec_firmwares

Conversation

@superg
Copy link
Copy Markdown
Owner

@superg superg commented Apr 6, 2026

Summary by CodeRabbit

  • Bug Fixes

    • Improved drive detection and matching accuracy by refining the database lookup mechanism.
    • Enhanced compatibility with additional drive models through updated firmware database entries.
  • Improvements

    • Simplified error messaging for unsupported drive firmware to provide clearer feedback.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 6, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 0d569e93-8864-44ae-89c3-6163d5b004a7

📥 Commits

Reviewing files that changed from the base of the PR and between 2accb81 and 1a5c3ee.

📒 Files selected for processing (1)
  • drive.ixx

📝 Walkthrough

Walkthrough

The pull request updates the DRIVE_DATABASE in drive.ixx by removing hardcoded firmware/date strings from database entries and refactoring the drive lookup functions to include vendor_specific field matching. The drive_find_in_database function signature is updated to require vendor_specific as a parameter, and all related lookup logic is adjusted accordingly.

Changes

Cohort / File(s) Summary
Database Entries
drive.ixx
Removed hardcoded firmware/date strings from product_revision_level and vendor_specific fields in DRIVE_DATABASE entries for PLEXTOR/CD-R and PLEXTOR/DVD drives; removed one ASUS BW-16D1HT "PATCHED" entry; added multiple new "PATCHED" entries for generic drives (hp/Optiarc/NEC/Sony).
Function Signature & Lookup Logic
drive.ixx
Updated drive_find_in_database signature to include vendor_specific parameter and match records by vendor_id, product_id, product_revision_level, and vendor_specific; refactored drive_get_config to pass vendor_specific and use empty strings as fallback; updated drive_is_recommended to filter by vendor_specific; removed prior ASUS revision mismatch special-case logic; changed unsupported-revision warning from listing supported levels to generic "unsupported drive firmware" message.

Estimated Code Review Effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly Related PRs

  • new drive added #299: Modifies DRIVE_DATABASE entries in drive.ixx; shares the same data structure alterations and database record management patterns.

Poem

🐰 The drives once wore timestamps like badges of pride,
Now stripped clean and sorted by vendor_specific guide!
New patched entries hop in, old fuzzy matches depart,
A tidy database brings joy to this rabbit's heart! 🌱

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the three main changes: NEC drives support addition, removal of 3.10rib entries, and refactoring of firmware matching logic in drive_find_in_database.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch nec_firmwares

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@superg superg merged commit e3ac3d5 into main Apr 6, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant