Michael R Sweet, pengarang sistem pencetakan CUPS, mengumumkan keluaran PAPPL 1.2, rangka kerja untuk membangunkan aplikasi pencetakan IPP Everywhere yang disyorkan sebagai ganti pemacu pencetak tradisional. Kod rangka kerja ditulis dalam C dan diedarkan di bawah lesen Apache 2.0 dengan pengecualian yang membenarkan pemautan dengan kod di bawah lesen GPLv2 dan LGPLv2.
Antara perubahan dalam versi baharu:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ»Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠ°Π·ΠΎΠ²ΡΠ΅ Π½Π°Π±ΠΎΡΡ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ Π΄Π»Ρ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠ³ΠΎ, ΡΡΠ°Π½ΡΡΠ·ΡΠΊΠΎΠ³ΠΎ, Π½Π΅ΠΌΠ΅ΡΠΊΠΎΠ³ΠΎ, ΠΈΡΠ°Π»ΡΡΠ½ΡΠΊΠΎΠ³ΠΎ, ΡΠΏΠΎΠ½ΡΠΊΠΎΠ³ΠΎ ΠΈ ΠΈΡΠΏΠ°Π½ΡΠΊΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠΎΠ².
- Π£Π»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ macOS. ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Π²Π΅ΡΡ Π½ΠΈΠΌ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠΌ ΠΌΠ΅Π½Ρ macOS. ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π²ΡΠ²ΠΎΠ΄Π° Π½Π° ΠΏΠ΅ΡΠ°ΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ°.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΈΠ½ΡΠ΅ΡΠΏΠΎΠ»ΡΡΠΈΠΈ ΠΏΡΠΈ Π²ΡΠ²ΠΎΠ΄Π΅ Π½Π° ΠΏΠ΅ΡΠ°ΡΡ JPEG-ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ papplJobFilterImage Ρ Π²ΠΊΠ»ΡΡΡΠ½Π½ΡΠΌ ΡΠ³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ.
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° IPP (Internet Printing Protocol) ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ API: papplDeviceGetSupplies Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΡΠΎΠ²Π½Ρ ΡΠ΅ΡΠ½ΠΈΠ» ΠΈ ΡΠΎΠ½Π΅ΡΠ°, papplSystemAddEvent/papplSubscriptionXxx Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ IPP-ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠΉ, papplSystemGet/SetMaxClients Π΄Π»Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΡΠΈΡΠ»Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ². Π ΡΡΠ½ΠΊΡΠΈΡΡ papplPrinterDisable ΠΈ papplPrinterEnable Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° IPP-Π°ΡΡΠΈΠ±ΡΡΠ° Β«printer-is-accepting-jobsΒ».
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π΄Π°Π½ΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² Π»ΠΈΡΡΠΎΠ² Π² ΠΌΠΈΠ»Π»ΠΈΠΌΠ΅ΡΡΠ°Ρ .
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ OpenSSL ΠΈ LibreSSL.
- ΠΠ±Π½ΠΎΠ²Π»ΡΠ½ ΠΊΠΎΠ΄ USB Gadget, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΡ USB-ΡΡΡΡΠΎΠΉΡΡΠ² ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠΈΠΌΡΠ»ΡΡΠΈΠΈ USB-ΡΡΡΡΠΎΠΉΡΡΠ².
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΡΠΎ ΡΠΏΡΠ»ΠΎΠΌ ΠΏΠ΅ΡΠ°ΡΠΈ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
- Π£Π»ΡΡΡΠ΅Π½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ libcups3.
Rangka kerja PAPPL pada asalnya direka untuk menyokong sistem pencetakan LPrint dan pemacu Gutenprint, tetapi boleh digunakan untuk melaksanakan sokongan bagi mana-mana pencetak dan pemacu untuk mencetak pada desktop, pelayan dan sistem terbenam. PAPPL dijangka dapat membantu mempercepatkan kemajuan teknologi IPP Everywhere sebagai ganti pemacu klasik dan memudahkan sokongan untuk program berasaskan IPP lain seperti AirPrint dan Mopria.
PAPPL termasuk pelaksanaan terbina dalam protokol IPP Everywhere, yang menyediakan cara untuk mengakses pencetak secara setempat atau melalui rangkaian dan memproses permintaan cetakan. IPP Everywhere beroperasi dalam mod tanpa pemandu dan, tidak seperti pemacu PPD, tidak memerlukan penciptaan fail konfigurasi statik. Interaksi dengan pencetak disokong secara langsung melalui sambungan pencetak tempatan melalui USB dan akses rangkaian menggunakan protokol AppSocket dan JetDirect. Data boleh dihantar ke pencetak dalam format JPEG, PNG, PWG Raster, Apple Raster dan mentah.
PAPPL boleh dibina untuk sistem pengendalian yang mematuhi POSIX, termasuk Linux, macOS, QNX dan VxWorks. Ketergantungan termasuk Avahi (untuk sokongan mDNS/DNS-SD), CUPS, GNU TLS, JPEGLIB, LIBPNG, LIBPAM (untuk pengesahan) dan ZLIB. Berdasarkan PAPPL, projek OpenPrinting membangunkan Aplikasi Pencetak PostScript universal yang boleh berfungsi dengan kedua-dua pencetak serasi IPP moden (digunakan oleh PAPPL) yang menyokong PostScript dan Ghostscript, dan dengan pencetak lama yang mempunyai pemacu PPD (menggunakan penapis cawan dan penapis libppd ) ).
Sumber: opennet.ru