ΠΠ°ΠΉΠΊΠ» Π‘Π²ΠΈΡ (Michael R Sweet), Π°Π²ΡΠΎΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ°ΡΠΈ CUPS, ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ» Π²ΡΠΏΡΡΠΊ PAPPL 1.3, ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ° Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ ΠΏΠ΅ΡΠ°ΡΠΈ Π½Π° Π±Π°Π·Π΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° IPP Everywhere, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² Π΄Π»Ρ ΠΏΡΠΈΠ½ΡΠ΅ΡΠΎΠ². ΠΠΎΠ΄ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ° Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ΅ Π‘ΠΈ ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ Apache 2.0 Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ, ΡΠ°Π·ΡΠ΅ΡΠ°ΡΡΠΈΠΌ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΠ΅ Ρ ΠΊΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠΌΠΈ GPLv2 ΠΈ LGPLv2.
Il framework PAPPL Γ¨ stato originariamente sviluppato per supportare il sistema di stampa LPrint e i driver Gutenprint, ma puΓ² essere utilizzato per implementare il supporto per qualsiasi stampante e driver nella stampa su sistemi desktop, server e integrati. Si prevede che PAPPL possa contribuire ad accelerare la diffusione della tecnologia IPP Everywhere, sostituendo i classici driver e semplificando il supporto per altri software basati su IPP, come AirPrint e Mopria.
PAPPL include un'implementazione integrata del protocollo IPP Everywhere, che fornisce strumenti per accedere alle stampanti localmente o in rete e per elaborare le richieste di stampa. IPP Everywhere funziona in modalitΓ senza driver ("driverless") e, a differenza dei driver PPD, non richiede la creazione di file di configurazione statici. Γ supportata l'interazione con le stampanti sia direttamente tramite una connessione locale alla stampante via USB, sia attraverso la rete utilizzando i protocolli AppSocket e JetDirect. I dati possono essere inviati alla stampante in formati JPEG, PNG, PWG Raster, Apple Raster e "raw".
PAPPL puΓ² essere compilato per sistemi operativi compatibili con POSIX, tra cui Linux, macOS, QNX e VxWorks. Tra le dipendenze si segnalano Avahi (per il supporto di mDNS/DNS-SD), CUPS, GNU TLS, JPEGLIB, LIBPNG, LIBPAM (per l'autenticazione) e ZLIB. Sulla base di PAPPL, il progetto OpenPrinting sviluppa un'applicazione universale PostScript Printer Application, in grado di funzionare sia con le moderne stampanti compatibili con IPP (utilizzando PAPPL), che supportano PostScript e Ghostscript, sia con le stampanti piΓΉ vecchie per le quali esistono driver PPD (applicando i filtri cups-filters e libppd).
Tra le modifiche nella nuova versione:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΠΈ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡ ΠΏΠΎ Π²ΡΠ²ΠΎΠ΄Ρ Π½Π° ΠΏΠ΅ΡΠ°ΡΡ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΠΎΠ³ΠΎ Π»ΠΎΠ³Π° Π΄Π»Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ PNG-ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠΈ.
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ²ΠΎΠ΄Π° Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π±Π°Π½Π½Π΅ΡΠ° Π² Π²Π΅ΡΡ Π½Π΅ΠΉ ΡΠ°ΡΡΠΈ web-ΡΡΡΠ°Π½ΠΈΡ ΡΠΎ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡΠΌΠΈ ΠΎ ΠΏΡΠΈΠ½ΡΠ΅ΡΠ΅ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ΅.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ API Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ Π·Π°Π΄Π°Ρ.
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ΅ΡΠΈ ΡΠ΅ΡΠ΅Π· callback-Π²ΡΠ·ΠΎΠ²Ρ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ API Π΄Π»Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ JPEG ΠΈ PNG.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ±ΠΎΡΠΊΠΈ Π² Clang/GCC Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ThreadSanitizer (-enable-tsanitizer).
- Π ΠΏΠΎΠ»Π΅ Π΄Π»Ρ Π²Π²ΠΎΠ΄Π° ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ Wi-Fi Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΠ°ΡΠΎΠ»Ρ.
Fonte: opennet.ru
