Blog Project Updates and Random Thoughts

LPrint v1.2.0 December 31, 2022

LPrint v1.2.0 adds support for snap configuration and EPL/ZPL auto-typing support, and fixes a number of bugs. Changes include:

  • Documentation corrections (Issue #53, Issue #76)
  • Added snap server configuration.
  • Added --with-systemd configure option and install to $prefix/lib/systemd/system by default (Issue #50)
  • Added EPL2 and ZPL auto-typing support (Issue #64)
  • Changed the default log level for systemd to info (Issue #82)
  • Fixed macOS installer to start LPrint server (Issue #48)
  • Fixed configure script not using warning/preprocessor options in build (Issue #60)
  • Fixed printer renaming algorithm to not truncate the name (Issue #60)
  • Fixed missing “print-color-mode=bi-level” for bar code printing (Issue #76)
  • Fixed label mode support in EPL and ZPL drivers (Issue #79)
  • Fixed driver names for EPL printers (Issue #52)

Enjoy!

Download LPrint 1.2.0 Install lprint Snap Home Page

Comments
 

PAPPL v1.3.1 December 30, 2022

PAPPL v1.3.1 is now available for download and is a general bug fix release. Changes in 1.3.1 include:

  • Fixed auto-add of USB printers
  • Updated “ipp-attribute-fidelity” support
  • Reduced sleep interval for USB gadget initialization

Enjoy!

Download PAPPL v1.3.1 Home Page

Comments
 

PAPPL v1.3.0 December 02, 2022

PAPPL v1.3.0 is now available for download and adds new job management, image printing, localization, and configuration features. Changes in 1.3.0 include:

  • Added debug logging for device management.
  • Added support for job hold and release (Issue #15)
  • Added support for PNG image scaling using embedded resolution information (Issue #65)
  • Added papplLocGetDefaultMediaSizeName function to get the default media size for the current country (Issue #167)
  • Added support for localized banners at the top of printer and system web pages (Issue #183)
  • Added timer APIs to manage periodic tasks (Issue #208)
  • Added support for network configuration via callbacks (Issue #217)
  • Added APIs to limit the maximum size of JPEG/PNG images (Issue #224)
  • Added support for the Clang/GCC ThreadSanitizer with the --enable-tsanitizer configure option.
  • Added Norwegian Bokmål, Polish, and Turkish localizations.
  • Added a password visibility button to the Wi-Fi password field.
  • Changed names of PAPPL-specific attributes to use “smi55357” prefix.
  • Updated USB device code to generate a 1284 device ID and use the manufacturer and product strings when necessary (Issue #234)
  • Updated the USB gadget code to handle disconnections.
  • Updated PAPPL to conform to the new prototype PWG 5100.13 specification (Issue #216)
  • Fixed a device race condition with job processing.
  • Fixed a initialization timing issue with USB gadgets on newer Linux kernels.
  • Fixed a potential memory underflow with USB device IDs.
  • Fixed web interface support for vendor text options (Issue #142)
  • Fixed a potential value overflow when reading SNMP OIDs (Issue #210)
  • Fixed more CUPS 2.2.x compatibility issues (Issue #212)
  • Fixed a 100% CPU usage bug when cleaning the job history (Issue #218)
  • Fixed the default values of --with-papplstatedir and --with-papplsockdir to use the localstatedir value (Issue #219)
  • Fixed storage of label offsets for printers that implement them.
  • Fixed some thread access issues on ARM.
  • Fixed when the kernel USB printer driver is unloaded on Linux (Issue #233)
  • Fixed papplDevicePrintf to allow the “%c” character to be 0.

Enjoy!

Download PAPPL v1.3.0 Home Page

Comments
 

mantohtml v2.0 Now Available October 09, 2022

mantohtml is a man page to HTML conversion program. It supports all of the common man/roff macros and can combine multiple man pages in a single HTML output file.

mantohtml v2.0 is an all-new implementation of my original utility, now available as a separate project.

Enjoy!

Download mantohtml Install mantohtml Snap Home Page

Comments
 

PAPPL v1.2.3 October 08, 2022

PAPPL v1.2.3 is now available for download and is a general bug fix release. Changes in 1.2.3 include:

  • Fixed a bug in the TLS upgrade logic.
  • Fixed a potential memory underflow with USB device IDs.
  • Fixed web interface support for vendor text options (Issue #142)

Enjoy!

Download PAPPL v1.2.3 Home Page

Comments
 

PAPPL v1.2.2 September 21, 2022

PAPPL v1.2.2 is now available for download and is a general bug fix release. Changes in 1.2.2 include:

  • Added debug logging for device management.
  • Fixed a device race condition with job processing.
  • Fixed a potential value overflow when reading SNMP OIDs (Issue #210)
  • Fixed more CUPS 2.2.x compatibility issues (Issue #212)
  • Fixed a 100% CPU usage bug when cleaning the job history (Issue #218)
  • Fixed the default values of --with-papplstatedir and --with-papplsockdir to use the localstatedir value (Issue #219)
  • Fixed a initialization timing issue with USB gadgets on newer Linux kernels.

Enjoy!

Download PAPPL v1.2.2 Home Page

Comments
 

Mini-XML 3.3.1 July 25, 2022

Mini-XML 3.3.1 fixes a POSIX thread cleanup bug.

Enjoy!

Download Mini-XML 3.3.1 Home Page

Comments
 

PAPPL v1.2.1 May 26, 2022

PAPPL v1.2.1 is now available for download and fixes some key issues with localization, client limits, and compiling against older versions of CUPS. Changes in 1.2.1 include:

  • Fixed a bug in the max-clients support code (Issue #205)
  • Fixed compiler warnings (Issue #206, Issue #207)
  • Fixed corruption in the English localization file.
  • PAPPL didn’t compile against CUPS 2.2.6 and earlier.

Enjoy!

Download PAPPL v1.2.1 Home Page

Comments
 

HTMLDOC 1.9.16 May 19, 2022

HTMLDOC 1.9.16 adds new time and date support and fixes bugs. Changes include:

  • Added support for $DATE(format) and $TIME(format) header/footer strings (Issue #472)
  • Fixed a potential image overflow bug with JPEG and PNG images (Issue #471)
  • Fixed potential heap overflow bugs with pages (Issue #477, Issue #478, Issue #480, Issue #482, Issue #483)
  • Fixed potential use-after-free in blocks (Issue #484)
  • Updated the GNU TLS HTTPS support code to use a faster connection shutdown mode (Issue #487)
  • Fixed some minor Coverity warnings.
  • Updated the GUI interface for current display fonts.

Binaries are available from Github for Windows and macOS, and through the Snapcraft store for Linux.

Enjoy!

Download HTMLDOC 1.9.16 Install HTMLDOC 1.9.16 Snap Home Page

Comments
 

PAPPL v1.2.0 May 15, 2022

PAPPL v1.2.0 is now available for download. PAPPL v1.2 adds full localization, support for additional IPP features, and some other improvements. Changes in 1.2.0 include:

  • Added papplMainloopShutdown API to trigger a shutdown of the system that was started by papplMainloop.
  • Fixed mapping of MIME media types to IEEE-1284 Command Set values.
  • Fixed a crash bug when no printers are added.
  • Fixed compatibility issues with libcups3.
  • The macOS menu extra did not update the list of available printers.
  • No longer try to show the macOS menu extra when running from a root launchd service (Issue #201)

Enjoy!

Download PAPPL v1.2.0 Home Page

Comments
 

HP Printer Application v1.2.0 May 15, 2022

HP Printer Application v1.2.0 is now available for download as an “officially supported” printer application for older PCL laser and inkjet printers. Changes in 1.2.0 include:

  • Fixed default listen address when running as a server (Issue #7)
  • Fixed the media size list which prevented A4 from showing up (Issue #8)
  • Fixed dropped connections in the web browser when switching to HTTPS (Issue #9)
  • Now offer more appropriate printer icons (Issue #10)
  • Fixed a bug in the HP DeskJet driver (Issue #11)
  • Fixed draft output (Issue #12)
  • Fixed a crash bug when there was no default printer (Issue #14)

Enjoy!

Download PAPPL v1.2.0 Home Page

Comments
 

PAPPL v1.2rc1 May 03, 2022

PAPPL v1.2rc1 is now available for download. PAPPL v1.2 adds full localization, support for additional IPP features, and some other improvements. Changes in 1.2rc1 include:

  • Added explicit support for running macOS printer applications as a server.
  • Added unit test support for the new SNMP-based supply level and status monitoring code.
  • Updated USB gadget code to not enable gadget until system is started or USB options are set.
  • Updated default spool directory to use a persistent, per-user location.
  • Fixed DNS-SD advertising when adding a printer from the web interface.
  • Fixed double “Supplies” buttons in the web interface.
  • Fixed human-readable location fields in web interfaces.
  • Fixed an issue with the default system callback for papplMainloop.
  • Fixed an issue with papplDeviceList and DNS-SD discovery when there was no active system.
  • Fixed printer compatibility issues with the new papplDeviceGetSupplies API.
  • Fixed some locking issues with the macOS menubar icon.

Enjoy!

Download PAPPL v1.2rc1 Home Page

Comments
 

PAPPL v1.2b1 April 23, 2022

PAPPL v1.2b1 is now available for download. PAPPL v1.2 adds full localization, support for additional IPP features, and some other improvements. Changes include:

  • Added macOS menubar icon/menu (Issue #27)
  • Added support for localization, with base localizations for English, French, German, Italian, Japanese, and Spanish (Issue #58)
  • Added interpolation when printing JPEG images or when using the papplJobFilterImage function with smoothing enabled (Issue #64)
  • Added papplDeviceGetSupplies API to query supply levels via SNMP (Issue #83)
  • Added support for custom media sizes in millimeters (Issue #118)
  • Added papplPrinterGet/SetMaxPreservedJobs API and reprint web interface (Issue #189)
  • Added IPP notifications support with papplSystemAddEvent and papplSubscriptionXxx functions (Issue #191)
  • Added papplPrinterDisable and papplPrinterEnable functions and proper support for the IPP “printer-is-accepting-jobs” attribute.
  • Added OpenSSL/LibreSSL support (Issue #195)
  • Added papplSystemGet/SetMaxClients API (Issue #198)
  • Updated papplPrinterSetReadyMedia to support up to PAPPL_MAX_SOURCE media entries, regardless of the number of sources.

Enjoy!

Download PAPPL v1.2b1 Home Page

Comments
 

StringsUtil v1.0 April 16, 2022

StringsUtil v1.0 is now available for download. StringsUtil provides a library for using Apple “.strings” localization files and a utility for managing those files.

Download StringsUtil v1.0 Home Page Github Project

Comments
 

Announcing StringsUtil, a Strings File Library and Utility April 14, 2022

StringsUtil provides a library for using Apple “.strings” localization files and a utility for managing those files. It is intended as a free, smaller, embeddable, and more flexible alternative to GNU gettext. Key features include:

  • Support for localizing using both Apple “.strings” and GNU gettext “.po” files.
  • Simple C/C++ library with support for embedding localization data in an executable and/or loading localizations from external files.
  • Tools for exporting, importing, and merging localization files.
  • Tool for reporting on the quality of a localization.
  • Tool for scanning C/C++ source files for localization strings.
  • Coming Soon: Tool for doing a first pass machine translation.

I’m providing StringsUtil under the Apache License Version 2.0 with an (optional) exception to allow linking against GPL2/LGPL2 software.

Home Page Github Project

Comments
 

PDFio 1.0.1 March 02, 2022

PDFio 1.0.1 is a bug fix release. Changes include:

  • Added missing pdfioPageGetNumStreams and pdfioPageOpenStream functions.
  • Added demo pdfiototext utility.
  • Fixed bug in pdfioStreamGetToken.

Enjoy!

Download PDFio v1.0.1 Home Page

Comments
 

mmd v1.9 March 01, 2022

This release of mmd adds support for task lists as well as resolving a few minor issues reported by the Clang static code analysis tool. Changes include:

  • Added support for the Github-flavored markdown task list extension (check boxes in lists)
  • Addressed some issues found by the Clang static analyzer.

Enjoy!

Download mmd 1.9 Install mmdutil 1.9 Snap Home Page

Comments
 

HTMLDOC Now Available on Flathub February 09, 2022

HTMLDOC is now available on Flathub, another Linux app store.

Enjoy!

Install HTMLDOC 1.9.15 from Flathub

Comments
 

HTMLDOC 1.9.15 February 05, 2022

HTMLDOC 1.9.15 is a bug fix release. Changes include:

  • Fixed a potential heap overflow bug with GIF images (Issue #461)
  • Fixed a potential double-free bug with PNG images (Issue #462)
  • Fixed a potential stack overflow bug with GIF images (Issue #463)
  • Fixed a potential heap underflow bug with empty attributes (Issue #464)
  • Fixed a potential stack overflow bug with BMP images (Issue #466)
  • Fixed a potential heap overflow bug with the table-of-contents (Issue #467)
  • Fixed a potential heap overflow bug with headings (Issue #468)
  • Fixed a potential stack overflow bug with GIF images (Issue #470)

Binaries are available from Github for Windows and macOS, and through the Snapcraft store for Linux.

Enjoy!

Download HTMLDOC 1.9.15 Install HTMLDOC 1.9.15 Snap Home Page

Comments