Open core, niente lock-in
Spec: Apache License 2.0Apache License 2.0
In breve
Sezione intitolata “In breve”NextPDF è open core. Il motore su cui costruisci — nextpdf/core — è rilasciato
sotto la Apache License 2.0, quindi puoi usarlo, modificarlo e ridistribuirlo,
anche commercialmente. Pro ed Enterprise sono add-on proprietari che paghi solo
quando vuoi ciò che aggiungono. La fondazione è tua da tenere; le capacità
avanzate sono opzionali.
Perché è importante
Sezione intitolata “Perché è importante”La domanda costosa con qualunque motore documentale non è «quanto costa oggi». È «cosa succede il giorno in cui vorrò andarmene». Con un motore chiuso, quel giorno è un progetto di migrazione: ri-piattaformare, ri-testare, ri-certificare un output che i tuoi auditor avevano già approvato. Il costo di passaggio è il lock-in, e si paga per intero nel momento peggiore possibile.
L’open core elimina quella domanda per costruzione. La parte da cui dipendi di più — il motore di rendering, il modello a oggetti, la conformità agli standard — è sotto licenza permissiva e resterà tale per la versione che hai adottato. Non sei mai a un rinnovo di distanza dal perdere l’accesso al codice su cui è costruito il tuo prodotto.
La versione breve
Sezione intitolata “La versione breve”- Il motore core è Apache-2.0: usa, copia, modifica, ridistribuisci e usa commercialmente, senza alcuna restrizione non commerciale.
- La licenza include una concessione di brevetto esplicita dai contributori, con una clausola di risoluzione difensiva (Spec: Apache License 2.0, §3Apache License 2.0 §3).
- Pro ed Enterprise sono add-on proprietari. Paghi per capacità avanzate, mai per il diritto di continuare a usare il core aperto.
- La ridistribuzione comporta doveri di attribuzione — mantieni gli avvisi,
includi la licenza, dichiara le tue modifiche, riporta in avanti
NOTICE(Spec: Apache License 2.0, §4Apache License 2.0 §4). - Puoi forkare e distribuire il codice; non puoi distribuirlo sotto il nome o il logo NextPDF (Spec: Apache License 2.0, §6Apache License 2.0 §6).
Come NextPDF lo affronta
Sezione intitolata “Come NextPDF lo affronta”Il modello è deliberatamente semplice, e la semplicità è il punto. Ci sono tre cose, e rispondono a tre domande diverse.
- Core open sourcenextpdf/core sotto la Apache License 2.0 — usa, modifica, ridistribuisci, commercializza. È la fondazione su cui costruisci, ed è tua da tenere.
- Add-on proprietariNextPDF Pro ed Enterprise aggiungono capacità avanzate sotto licenza commerciale. Paghi per ciò che aggiungono, non per l'uso continuato del core.
- MarchioIl nome e il logo NextPDF sono riservati. La licenza del codice non concede diritti sul brand — quel confine è ciò che mantiene «NextPDF» a significare il software ufficiale.
La Apache License 2.0 è una licenza open source permissiva approvata dalla Open Source Initiative. Per il core, concede ampi diritti d’uso — sorgente o compilato, autonomo o come parte di un’opera più ampia — senza alcuna clausola non commerciale. Puoi inserire il core dentro un prodotto closed-source, a pagamento o interno.
Due clausole vale la pena nominarle, perché sono il punto in cui «permissivo»
diventa «duraturo». La licenza porta con sé una concessione di brevetto
esplicita: i contributori ti concedono una licenza di brevetto esente da
royalty sui loro contributi, e quella concessione si risolve solo in modo
difensivo, se avvii determinate cause in materia di brevetti sul software
(Spec: Apache License 2.0, §3Apache License 2.0 §3). È una protezione che una
nuda licenza «fai quello che vuoi» non sempre ti dà. E la ridistribuzione è
consentita ma non priva di obblighi: mantieni gli avvisi esistenti di copyright,
brevetto, marchio e attribuzione, includi la licenza, dichiari le modifiche
apportate ai file modificati e riporti in avanti qualsiasi file NOTICE
(Spec: Apache License 2.0, §4Apache License 2.0 §4). Onorare quei doveri è il
prezzo della libertà, ed è basso.
Ciò per cui paghi, quando paghi, è capacità — non continuità. La divisione è netta: lo stesso writer a memoria limitata, lo stesso modello a oggetti, la stessa conformità agli standard vivono nel core, che tu compri o no qualcosa.
| Edition | Availability |
|---|---|
| Core | Apache-2.0. Il motore di rendering completo, il modello a oggetti e l’output PDF 2.0 — liberi da usare, modificare, ridistribuire e commercializzare. È la fondazione, ed è lo stesso motore sotto ogni edizione. |
| Pro | Pro si basa sull’identico core Apache-2.0 e aggiunge capacità proprietarie. Non sostituisce il core né cambia i tuoi diritti su di esso. |
| Enterprise | Enterprise si basa sull’identico core Apache-2.0 e aggiunge capacità proprietarie. Non sostituisce il core né cambia i tuoi diritti su di esso. |
Pro ed Enterprise non sono open source. I loro pacchetti dichiarano
"license": "LicenseRef-NextPDF-Commercial", e i loro termini vivono nel NextPDF
Commercial License Agreement (Version 3.0) — non nella Apache License 2.0, e non
desunti dal core aperto. Aggiungono cose; non tolgono nulla a ciò che il core ti
dà.
Esempio pratico
Sezione intitolata “Esempio pratico”Il confine è visibile nel posto più ordinario che esista: il tuo
composer.json. Adottare il core aperto è una sola dipendenza da registro
pubblico.
<?php
declare(strict_types=1);
// composer require nextpdf/core//// nextpdf/core declares "license": "Apache-2.0" and ships the full// Apache License 2.0 text in its LICENSE file. This single dependency// is the open foundation — yours to use, modify, and redistribute.
use NextPDF\Core\Document;use NextPDF\Contracts\OutputDestination;
$document = Document::createStandalone();$document->setTitle('Open core, no lock-in');$document->addPage();$document->setFont('helvetica', 'B', 16);$document->cell(0, 12, 'Built on an Apache-2.0 foundation', newLine: true);
// Output uses only the open core. Nothing here is gated, time-limited,// or contingent on a paid edition. A Pro or Enterprise add-on, if you// ever choose one, layers on top of this — it does not stand between// you and the engine.$bytes = $document->output(dest: OutputDestination::String);Niente in quel programma è in prestito. Non c’è alcun controllo di licenza tra te e il motore, nessuna edizione che debba essere presente perché il core giri. Se in seguito vorrai una capacità che Pro o Enterprise fornisce, la aggiungi. Se non lo farai mai, il core continua a funzionare esattamente come fa oggi.
Equivoco frequente
Sezione intitolata “Equivoco frequente”Il fraintendimento frequente è «open core significa che ottengo anche il brand».
Non è così. La Apache License 2.0 non concede alcun diritto sui nomi commerciali,
i marchi o i loghi del licenziante, al di là di un riferimento ragionevole e
consueto all’origine dell’opera
(Spec: Apache License 2.0, §6Apache License 2.0 §6). Quindi puoi forkare
nextpdf/core, modificarlo e ridistribuirlo — è il diritto sul codice — ma non
puoi distribuire quel fork in quanto «NextPDF» o sotto il logo NextPDF. Scegli
un tuo nome.
Quella divisione non è un tranello nascosto nella generosità. È ciò che rende la generosità sicura. Una licenza permissiva può cedere il codice proprio perché il diritto dei marchi mantiene «NextPDF» a significare il software ufficiale e non modificato anche dopo che il codice è stato forkato. Senza il confine, qualunque build alterata potrebbe chiamarsi NextPDF, e nessuno potrebbe distinguere il motore ufficiale dalla patch di qualcuno. La linea protegge gli utenti, non solo il marchio. Il trattamento completo codice-contro-brand vive sulla pagina del marchio.
Un secondo equivoco è che «open core» renda in qualche modo aperte anche le edizioni a pagamento. Non è così. Che il core sia Apache-2.0 non dice nulla su Pro o Enterprise — quelle sono proprietarie a prescindere dalla licenza del core.
Limiti e confini
Sezione intitolata “Limiti e confini”L’open core è un vantaggio reale, dichiarato apertamente — non l’affermazione che tutto sia gratuito. Le capacità avanzate in Pro ed Enterprise sono genuinamente proprietarie e genuinamente a pagamento; questa pagina non finge il contrario, e non fa alcuna promessa sui termini di quelle edizioni, che vivono nel tuo accordo commerciale.
«Niente lock-in» è preciso. Significa che la fondazione su cui costruisci è sotto licenza permissiva e resta utilizzabile alle tue condizioni. Non significa che ogni funzionalità sia nel core, e non significa che migrare via da una capacità Pro o Enterprise che hai adottato sia a costo zero — una capacità proprietaria è, per natura, una dipendenza che ti sei assunto consapevolmente. La libertà è nel core.
I doveri di attribuzione ai sensi dell’Apache-2.0 §4 sono obblighi, non opzioni. Una ridistribuzione che ometta gli avvisi, tralasci la licenza o nasconda le modifiche apportate ai file modificati è una violazione della licenza anche se la licenza è permissiva. Qui la libertà viene con un elenco breve e onesto di doveri.
Questa pagina è un riassunto in linguaggio semplice del modello di licenza, non
la licenza stessa e non un parere legale. Dove questo riassunto e i documenti
autorevoli divergono — il file LICENSE nel pacchetto, e il tuo accordo
commerciale per le edizioni a pagamento — prevalgono quei documenti. Il
trattamento completo e vincolante è sulla
pagina sulle licenze.
Documenti correlati
Sezione intitolata “Documenti correlati”- Licenze del prodotto — il resoconto autorevole e in linguaggio semplice di quale licenza si applica a quale edizione, e cosa concede ciascuna.
- Marchio e uso del brand — il confine codice-contro-brand per intero, con usi accettabili e inaccettabili.
- L’azienda dietro NextPDF — chi detiene il marchio e perché un prodotto commerciale è diventato open source.
- Quando non usare NextPDF — un resoconto onesto di dove si ferma il core e dove inizia un add-on.
Glossario
Sezione intitolata “Glossario”- Open core — un modello in cui un core open source sotto licenza permissiva è circondato da add-on proprietari a pagamento. Il core è libero da usare e da tenere; gli add-on sono opzionali.
- Apache License 2.0 — una licenza open source permissiva e approvata dall’OSI. Concede ampi diritti di uso, modifica e ridistribuzione, include una concessione di brevetto esplicita, richiede l’attribuzione in caso di ridistribuzione e non concede diritti sui marchi.
- Patent grant — una licenza esplicita ed esente da royalty sui brevetti dei contributori che coprono i loro contributi, con risoluzione difensiva se intenti causa su determinati brevetti relativi al software (Apache-2.0 §3).
- NOTICE file — un file di attribuzione che, quando presente nell’opera, deve essere riportato in avanti nella tua ridistribuzione ai sensi dell’Apache-2.0 §4.
- Lock-in — il costo di passaggio che rende costoso lasciare un fornitore. L’open core lo elimina per la fondazione concedendo il core sotto licenza permissiva.