Michael R Sweet, autor tiskového systému CUPS, představil vydání PAPPL 1.3, frameworku pro vývoj tiskových aplikací založených na protokolu IPP Everywhere, který se doporučuje používat místo tradičních ovladačů tiskáren. Kód frameworku je napsán v jazyce C a je distribuován pod licencí Apache 2.0 s výjimkou, která povoluje propojení s kódem pod licencemi GPLv2 a LGPLv2.
Framework PAPPL byl původně navržen pro podporu tiskového systému LPrint a ovladačů Gutenprint, ale může být použit pro implementaci podpory jakýchkoliv tiskáren a ovladačů při tisku na desktopových, serverových a vestavěných systémech. Předpokládá se, že PAPPL pomůže urychlit adopci technologie IPP Everywhere místo klasických ovladačů a zjednoduší podporu jiných aplikací založených na IPP, jako je AirPrint a Mopria.
PAPPL obsahuje vestavěnou implementaci protokolu IPP Everywhere, který poskytuje prostředky pro přístup k tiskárnám lokálně nebo v síti a zpracování tiskových požadavků. IPP Everywhere funguje v bezdriverovém režimu a na rozdíl od ovladačů PPD nevyžaduje vytvoření statických konfiguračních souborů. Podporováno je interakce s tiskárnami jak přímo přes lokální USB připojení tiskárny, tak přístup přes síť pomocí protokolů AppSocket a JetDirect. Data mohou být odesílána na tiskárnu ve formátech JPEG, PNG, PWG Raster, Apple Raster a "raw".
PAPPL může být sestaven pro POSIX-kompatibilní operační systémy, včetně Linuxu, macOS, QNX a VxWorks. Mezi závislostmi se nachází Avahi (pro podporu mDNS/DNS-SD), CUPS, GNU TLS, JPEGLIB, LIBPNG, LIBPAM (pro autentifikaci) a ZLIB. Na základě PAPPL projekt OpenPrinting vyvíjí univerzální aplikaci PostScript Printer Application, která dokáže pracovat jak se moderními IPP-kompatibilními tiskárnami (využívá PAPPL), podporujícími PostScript a Ghostscript, tak se staršími tiskárnami, pro které jsou k dispozici ovladače PPD (používají se filtry cups-filters a libppd).
Mezi změnami v nové verzi:
- Byla přidána možnost pozastavení a obnovení tisku.
- Bylo přidáno vedení ladicího protokolu pro operace správy zařízení.
- Byla přidána podpora pro škálování PNG obrázků pomocí vestavěných informací o rozlišení.
- Byla poskytnuta možnost výstupu lokalizovaného banneru v horní části webových stránek se zprávami o tiskárně a systému.
- Byl přidán API pro správu spuštění periodických úloh.
- Byla implementována možnost nastavení sítě prostřednictvím callbacků.
- Byl přidán API pro omezení maximální velikosti obrázků JPEG a PNG.
- Byla přidána podpora pro kompilaci v Clang/GCC v režimu ThreadSanitizer (-enable-tsanitizer).
- Do pole pro zadání hesla pro Wi-Fi byla přidána tlačítko pro zobrazení hesla.
Zdroj: opennet.ru
