Skip to content

fix(installer): add zip extension to requirements check (#117)#118

Merged
fabiodalez-dev merged 1 commit intomainfrom
fix/installer-zip-extension-check
May 4, 2026
Merged

fix(installer): add zip extension to requirements check (#117)#118
fabiodalez-dev merged 1 commit intomainfrom
fix/installer-zip-extension-check

Conversation

@fabiodalez-dev
Copy link
Copy Markdown
Owner

@fabiodalez-dev fabiodalez-dev commented May 1, 2026

Summary

  • Adds extension_loaded('zip') to the installer step-1 requirements list (UI)
  • Adds 'zip' => extension_loaded('zip') to Validator::validateSystemRequirements() (logic)

The Updater already guards against missing ZipArchive at runtime, but the installer never surfaced this as a missing requirement. Users who installed on a server without the zip extension would only discover the gap when applying an update (HTTP 500), not at install time.

Test plan

  • Deploy on a server without the zip PHP extension → installer step 1 should now show "Zip Extension ✗ Not met" and block the "Next" button
  • Deploy on a server with the zip extension → no change in behaviour, requirement shows ✓

Fixes #117

Summary by CodeRabbit

  • Nuove Funzionalità
    • Il processo di installazione ora verifica la presenza dell'estensione PHP zip e blocca l'installazione se manca.
    • La schermata "Requisiti di Sistema" mostra lo stato "soddisfatto / non soddisfatto" per l'estensione zip, migliorando la diagnostica pre-installazione.
  • Correzioni
    • Validazione dei requisiti migliorata per riportare errori più chiari relativi all'estensione zip.

The updater already guards against missing ZipArchive at runtime, but the
installer step 1 did not surface this as a missing requirement. Users who
installed without the zip extension would only discover the gap when trying
to apply an update (HTTP 500). Now both the UI requirements list and the
Validator class include extension_loaded('zip') so the gap is caught before
installation completes.

Fixes #117
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 1, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 88169050-f71e-4c5e-9d09-d1841da798af

📥 Commits

Reviewing files that changed from the base of the PR and between 18c168c and bea8bf3.

📒 Files selected for processing (2)
  • installer/classes/Validator.php
  • installer/steps/step1.php

📝 Walkthrough

Walkthrough

Aggiunto un controllo per l'estensione PHP zip ai requisiti di sistema dell'installer; la verifica viene valutata in Validator::validateSystemRequirements() e il requisito è mostrato in installer/steps/step1.php, bloccando la procedura se non soddisfatto.

Changes

Validazione estensioni

Layer / File(s) Summary
Requisiti dati
installer/classes/Validator.php
Aggiunta voce 'zip' => extension_loaded('zip') all'array dei requisiti di sistema.
Logica di validazione
installer/classes/Validator.php
La valutazione degli errori ora include il controllo zip tramite l'esistente loop che popola l'array errors se la voce è falsa.
Wiring / UI passo 1
installer/steps/step1.php
Aggiunta la riga Zip Extension => extension_loaded('zip') alla lista dei requisiti mostrata nell'interfaccia del passo 1; lo stato visualizzato riflette il risultato di extension_loaded('zip').
Test / Documentazione
(nessuna modifica)
Nessun test o documentazione aggiornati nel diff.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed Il titolo riflette accuratamente il cambio principale: aggiungere il controllo dell'estensione zip ai requisiti dell'installer.
Linked Issues check ✅ Passed La PR implementa completamente l'obiettivo della issue #117: aggiunge il controllo per l'estensione PHP zip sia nell'interfaccia che nella logica di validazione.
Out of Scope Changes check ✅ Passed Tutti i cambiamenti sono strettamente correlati al requisito della issue #117; non ci sono modifiche fuori scope.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

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

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/installer-zip-extension-check

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 PHPStan (2.1.51)

PHPStan was skipped because the sandbox runner could not parse its output.


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
Review rate limit: 0/1 reviews remaining, refill in 60 minutes.

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

@fabiodalez-dev
Copy link
Copy Markdown
Owner Author

@coderabbitai full review

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 2, 2026

✅ Actions performed

Full review triggered.

fabiodalez-dev added a commit that referenced this pull request May 2, 2026
…AD3, fix broken links

- Fix broken links: create guida/arricchimento.md and en/guide/bulk-enrichment.md
- Add guida/dischi.md + en/guide/discs.md: media types, dynamic labels, Discogs/MusicBrainz/Deezer plugins
- Add guida/collane.md + en/guide/series.md: series hierarchy (cycles, seasons, spin-offs) from v0.5.9.6
- Update guida/archivi.md + en/guide/archives.md: unified search (PR #120) + interoperability section (OAI-PMH 2.0, Dublin Core XML, EAD3 bulk export — PR #127)
- Update _sidebar.md + en/_sidebar.md: add Dischi/Discs and Collane/Series entries
- Update changelog: add v0.5.9.6 entry (series hierarchy) and "In arrivo" section (PR #118/119/120/127)
- Update tecnico/requisiti.md + en/technical/requirements.md: note on zip extension installer check (PR #118)
@fabiodalez-dev
Copy link
Copy Markdown
Owner Author

@coderabbitai full review

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 3, 2026

✅ Actions performed

Full review triggered.

@fabiodalez-dev
Copy link
Copy Markdown
Owner Author

@coderabbitai full review

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 3, 2026

✅ Actions performed

Full review triggered.

@fabiodalez-dev fabiodalez-dev merged commit 80143e7 into main May 4, 2026
1 check 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.

Installer : missing check for zip extension

1 participant