Dopo un anno di sviluppo, è stato rilasciato il gestore pacchetti RPM 4.17.0. Il progetto RPM4 è sviluppato dalla Red Hat e utilizzato in distribuzioni come RHEL (inclusi i progetti derivati CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen e molte altre. In precedenza, il progetto RPM5 è stato sviluppato da un team indipendente di sviluppatori, ma non è direttamente collegato a RPM4 ed è attualmente abbandonato (non è stato aggiornato dal 2010). Il codice del progetto è distribuito sotto le licenze GPLv2 e LGPLv2.
Miglioramenti più significativi in RPM 4.17:
- Migliorata la gestione dei fallimenti durante l'installazione.
- Migliorata l'interfaccia per la creazione di macro in linguaggio Lua.
- Aggiunta la macro integrata %{exist:…} per verificare la presenza di un file.
- Ampliate le capacità dell'API per la gestione delle transazioni.
- Unificato la sintassi delle macro integrate e personalizzate, così come il formato della loro chiamata (%foo arg, %{foo arg} e %{foo:arg} ora sono equivalenti).
- Nel buildroot, di default, è stata applicata la regola per rimuovere i file «.la» e aggiunta una regola per pulire il bit eseguibile per i file delle librerie condivise.
- Aggiunto il plugin dbus-announce per informare sulle transazioni RPM tramite D-Bus.
- Aggiunto il plugin fapolicyd per la definizione delle politiche di accesso ai file.
- Aggiunto il plugin fs-verity per la verifica dell'autenticità di singoli file tramite il meccanismo fs-verity integrato nel kernel.
- Le pagine delle guide man sono state tradotte nel formato Markdown.
- Presentata una bozza iniziale della guida alla gestione dei pacchetti e alla creazione dei pacchetti.
- Rimosso il backend DBD, progettato per memorizzare dati in Berkeley DB (per compatibilità con sistemi legacy, è rimasto il backend BDB_RO, operante in modalità sola lettura). Come database predefinito è stato utilizzato sqlite.
- Aggiunto il supporto per le firme digitali EdDSA.
- Utilità per l'estrazione di Debuginfo scorporate in un progetto separato.
- Gestori ausiliari e generatori di pacchetti in Python scorporati in un progetto separato.
- Effettuata la pulizia degli script che non sono stati mantenuti.
- Rimossi i backend crittografici beecrypt e NSS.
Fonte: opennet.ru
