2013-11-27 Tim Waugh * setup.py: Version 1.9.66. 2013-11-04 Jiri Popelka * Python3 compatibility 2013-11-27 Tim Waugh * setup.py: Version 1.9.65. 2013-07-31 Jiri Popelka * cupsconnection.c (PyObject_from_attr_value): Fix getting of booleans. 2013-04-12 Tim Waugh * cupsconnection.c (UTF8_from_PyObj): Propagate UTF-8 decoding errors. 2013-04-10 Tim Waugh * cupsconnection.c: Don't just append printer name to base URI to get printer URI. Need to actually encode the name. 2013-04-03 Tim Waugh * cupsconnection.c: Fixed documentation typo for Connection.getPPDs2. 2013-03-20 Tim Waugh * setup.py: Version 1.9.63. 2013-03-20 Tim Waugh * cupsconnection.c (set_ipp_error): IPPError tuple now contains a string describing the specific error encountered, if available. 2012-08-01 Tim Waugh * setup.py: Version 1.9.62. 2012-03-28 Tim Waugh * cupsmodule.c: Define all constants regardless of which version of CUPS is built against. 2012-03-22 Tim Waugh * cupsppd.c (PPD_dealloc): Add missing NULL check for debugging message (Ubuntu #951001). Patch from Till Kamppeter. 2012-03-06 Tim Waugh * setup.py: Version 1.9.61. 2011-12-08 Tim Waugh * cupsipp.c (IPPRequest_getAttributes): Hardened for Py* failures. * cupsppd.c (PPD_emitString): Fixed some more reference count issues (trac #17). * cupsipp.c: Fixed reference count issue with called object result (trac #17). (cupsipp_iocb_read): Prevent NULL dereference when Py_BuildValue fails (trac #17). 2011-12-06 Tim Waugh * cupsconnection.c, cupsmodule.c, cupsppd.c: Use Py_RETURN_NONE where appropriate. * cupsmodule.c, cupsppd.c: Fixed reference count issues with Py_None (trac #17). 2011-11-28 Tim Waugh * cupsmodule.c: Fixed typo in fix for trac #16. 2011-11-25 Tim Waugh * cupsmodule.c: HTTP_AUTHORIZATION_CANCELED constant requires CUPS 1.4 (trac #16). * cupsppd.c: Object lifecycle debugging. 2011-10-11 Tim Waugh * setup.py: Version 1.9.60. 2011-10-06 Tim Waugh * cupsmodule.c: New constants defined. 2011-10-03 Tim Waugh * setup.py: Version 1.9.59. 2011-10-03 Tim Waugh * cupsmodule.c (do_password_callback), cupsconnection.c (password_callback): Return NULL instead of the empty string when handling an exception or when the callback returned an empty string, and handle the callback returning None. 2011-07-26 Tim Waugh * setup.py: Version 1.9.58. 2011-07-25 Tim Waugh * MANIFEST.in: New file. * Makefile: Use sdist for creating tarballs. * setup.py: Added more information ready for PyPI. 2011-07-18 Tim Waugh * cupsconnection.c: Applied patch from Gowtham Narisipalli to add adminExportSamba method. 2011-06-27 Tim Waugh * setup.py: Link against libiconv on darwin (trac #15). * cupsppd.c: Fixed feature test for getline() (trac #15). 2011-06-16 Tim Waugh * postscriptdriver.prov: Increase timeout for dynamic driver listing. 2011-06-09 Tim Waugh * setup.py: Version 1.9.57. * postscriptdriver.prov: Get RPM_BUILD_ROOT from environment if not provided on command line (bug #712027). 2011-06-02 Tim Waugh * setup.py: Version 1.9.56. 2011-05-24 Tim Waugh * cupsconnection.c (Connection_getPPD3): Only provide this binding for CUPS >= 1.4. * cupsmodule.c (cups_setPasswordCB): Fixed build against CUPS < 1.4. 2011-05-23 Tim Waugh * cupsmodule.c (do_password_callback): Fixed typo preventing build against CUPS < 1.4. 2011-03-20 Tim Waugh * setup.py: Version 1.9.55. 2011-02-24 Tim Waugh * cupsmodule.c (initcups): IPP orientation and quality constants. * cupsconnection.c (PyObject_from_attr_value): Support for IPP_TAG_RESOLUTION. * cupsmodule.c (initcups): IPP_RES_PER_CM and IPP_RES_PER_INCH. 2011-02-23 Tim Waugh * setup.py: Version 1.9.54. 2011-02-23 Tim Waugh * cupsconnection.c (Connection_begin_allow_threads): Avoid 'unused variable' warning. 2011-02-23 Tim Waugh * psdriver.attr, postscriptdriver.prov: RPM hooks for tagging packages with Device IDs of models supported by drivers. * Makefile: Install RPM hooks if rpm is available. 2011-02-03 Tim Waugh * cupsconnection.c (Connection_deletePrinterFromClass): More defensive coding (bug #673468). 2010-12-15 Tim Waugh * setup.py: Version 1.9.53. 2010-12-15 Tim Waugh * cupsmodule.h: Declare new function get_TLS and its data structure. * cupsmodule.c: Implement it. * cupsmodule.c, cupsconnection.c: Use thread-local storage for CUPS password callback (bug #662805). 2010-11-01 Tim Waugh * setup.py: Version 1.9.52. 2010-10-18 Tim Waugh * cupsconnection.c (Connection.getPPDs2): New method as getPPDs but with attribute values as lists. 2010-05-11 Tim Waugh * cupsmodule.c: New HTTP_NOT_MODIFIED int constant. * cupsconnection.c (Connection_getPPD3): New method. 2010-05-05 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): The member-names attribute is always a list. 2010-04-28 Tim Waugh * cupsconnection.c (Connection_addPrinter): Clear printer-state-reasons if the PPD has been changed (bug #510926). 2010-04-26 Tim Waugh * Makefile, setup.py: Define VERSION in setup.py (trac #14). * cupsipp.c: Added compatibility code to allow compilation with Python < 2.5 (trac #14). 2010-04-25 Scott Balneaves * cupsmodule.c: PPD order constants. * cupsconnection.c: Support for ppdEmit* functions. 2010-04-22 Tim Waugh * cupsconnection.c (Connection_getJobs): Optional requested_attributes argument (bug #584806). * cupsconnection.c (Connection_getPPDs, Connection_getDevices, Connection_getJobs, Connection_getJobAttributes): Avoid memory leak when argument parsing fails. 2010-02-23 Tim Waugh * cupsconnection.c (Connection_dealloc): Be more cautious when removing the Connection object from the list (bug #567386). 2010-01-06 Tim Waugh * cupsipp.c (IPPRequest_getAttributes): Continue to next attribute if we can't translate a value. 2010-01-04 Tim Waugh * cupsconnection.c (Connection_cancelJob): Optional second argument is now a keyword. 2009-12-22 Tim Waugh * cupsconnection.c (Connection_init): Use more descriptive exception message (trac #10). 2009-12-21 Tim Waugh * cupsmodule.c (cups_setPasswordCB2): Allow None. 2009-12-18 Jiri Popelka * cupsconnection.c (Connection.cancelJob): Added optional purge_job patameter. 2009-12-16 Tim Waugh * cupsconnection.c (password_callback, Connection_setPasswordCB): New method. 2009-12-08 Tim Waugh * cupsconnection.c (Connection_printFile): If cupsPrintFile2() fails it returns zero, not -1 (trac #9). 2009-09-03 Tim Waugh * cupsconnection.c (Connection_getDevices): Added optional timeout parameter. 2009-08-18 Tim Waugh * cupsmodule.c: Define some IPP attribute tag constants. * cupsipp.c (IPPRequest_getAttributes): Handle IPP_TAG_ZERO attributes which have no attribute name. 2009-08-17 Tim Waugh * cupsipp.c: New file implementing IPPRequest and IPPAttribute types. * setup.py: Include it as part of the module. * Makefile: Add to SOURCES. * cupsmodule.c: Define IPP constants. 2009-08-10 Tim Waugh * cupsconnection.c: Fixed missing newline in documentation for getPPDs. 2009-07-07 Tim Waugh * cupsconnection.c (Connection_moveJob): New method. 2009-06-19 Tim Waugh * examples/cupstree.py (getippqueue): IPP printers won't support CUPS-Get-Printers so don't try recursing. (getqueue): Slightly prettier display. 2009-06-18 Tim Waugh * Makefile: Version 1.9.46. 2009-06-18 Tim Waugh * cupsmodule.c (do_model_compare): Handle wide characters. (cups_modelSort): Coersce arguments to Unicode and convert them to wide character strings (trac #8). 2009-06-18 Tim Waugh * cupsconnection.c (Connection_getDevices): Removed unused variable. 2009-04-14 Tim Waugh * cupsmodule.c (cups_ppdSetConformance): New method (trac #3). 2009-03-20 Tim Waugh * cupsconnection.c (Connection_getDevices): New optional arguments limit, exclude_schemes and include_schemes. 2009-03-18 Tim Waugh * cupsconnection.c (Connection_getPPDs): New optional arguments limit, exclude_schemes, include_schemes, ppd_device_id, ppd_make, ppd_make_and_model, ppd_model_number, ppd_product, ppd_psversion, ppd_type and ppd_natural_language (trac #5). 2009-03-10 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): The marker-* attributes are lists. 2009-01-08 Tim Waugh * Makefile: Version 1.9.45. 2008-12-23 Tim Waugh * cupsconnection.c (Connection_getServerPPD): Fixed version check. (Connection_getDocument): Likewise. * cupsmodule.c (initcups): Likewise. 2008-12-23 Tim Waugh * cupsppd.c (PPD_localizeIPPReason): New method. (PPD_localizeMarkerName): Likewise. 2008-12-17 Tim Waugh * cupsconnection.c (Connection_printTestPage): Look for "testprint" as well as "testprint.ps", as that is the name of the test page file in CUPS 1.4 (bug #476612). 2008-12-17 Tim Waugh * cupsconnection.c (Connection_printTestPage): Only set a document-format attribute if one is specified. 2008-12-17 Tim Waugh * cupsconnection.c (Connection_printTestPage): Avoid crash when given bad parameters. 2008-11-28 Tim Waugh * Makefile: Version 1.9.44. 2008-11-25 Tim Waugh * cupsconnection.c (Connection_getFile): Save thread state during call. (Connection_putFile): Likewise. (Connection_getDests): Likewise. (Connection_getDefault): Likewise. (Connection_getPPD): Likewise. (Connection_printFile): Likewise. (Connection_printFiles): Likewise. 2008-11-24 Tim Waugh * cupsconnection.c (Connection_adminGetServerSettings): Save thread state during call. (Connection_adminSetServerSettings): Likewise. 2008-11-21 Tim Waugh * Makefile: Version 1.9.43. 2008-11-13 Tim Waugh * cupsconnection.c (Connection_begin_allow_threads, Connection_end_allow_threads): Fix these functions so they actually work. 2008-11-13 Tim Waugh * cupsconnection.c (Connection_getJobs): Set printer-uri attribute instead of job-uri attribute. 2008-11-12 Tim Waugh * cupsconnection.c (Connection): Store thread state in Connection data. (Connection_begin_allow_threads): Save current thread state. (Connection_end_allow_threads): Restore current thread state. (Connection_init): Use new functions. (Connection_getPPDs): Likewise. (Connection_getServerPPD): Likewise. (Connection_getDocument): Likewise. (Connection_getDevices): Likewise. 2008-08-28 Tim Waugh * cupsconnection.c (Connection_methods): Documentation fix for getJobAttributes. 2008-08-28 Tim Waugh * cupsconnection.c (Connection_getJobAttributes): New parameter requested_attributes. 2008-08-28 Tim Waugh * cupsconnection.c (get_requested_attrs): New function for extracting requested attributes from list. (free_requested_attrs): Deallocate memory. (Connection_getPrinterAttributes): Use get/free_requested_attrs. 2008-08-22 Tim Waugh * cupsconnection.c (Connection_getJobs): Support limit and first-job-id attributes (trac #1). 2008-07-15 Tim Waugh * cupsconnection.c (Connection_getPPDs): Return all attributes, not just a selection. 2008-07-14 Tim Waugh * Makefile: Version 1.9.41. 2008-07-14 Tim Waugh * cupsconnection.c (Connection_putFile): Allow destination to be a file descriptor or a Python file object, and call cupsPutFd() in those cases. 2008-07-09 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): Fixed requested_attributes parameter. 2008-06-20 Tim Waugh * Makefile: Version 1.9.40. 2008-06-20 Tim Waugh * cupsppd.c (Attribute_repr): New method. (cups_AttributeType): Set repr function. * cupsppd.c (Group_repr): New method. (cups_GroupType): Set repr function. * cupsppd.c (Option_repr): New method. (cups_OptionType): Set repr function. * cupsconnection.c (Dest_repr): New method. (cups_DestType): Set repr function. * cupsconnection.c (Connection): New structure member, host. (Connection_init): Store connected host name. (Connection_dealloc): Free it. (Connection_repr): New method. Include host name in repr string. (cups_ConnectionType): Set repr function. * cupsconnection.c (Connection_init): New optional arguments host, port, and encryption. 2008-06-17 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): Enum-type attributes may be lists. 2008-05-30 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): New optional requested_attributes argument. 2008-05-29 Tim Waugh * configure.in: Version 1.9.39. 2008-05-29 Tim Waugh * cupsconnection.c (Connection_authenticateJob): Allow auth parameter to be optional in order to allow for Kerberos authentication. 2008-05-27 Tim Waugh * cupsconnection.c (free_string_list): New helper function. (Connection_printFiles): New method. Patch from Fabian Knittel. * cupsconnection.c (Connection_printFile): New method. Patch from Fabian Knittel. 2008-04-09 Tim Waugh * cupsconnection.c (Connection_printTestPage): Test for existence of testprint.ps before performing operation, and look around for it if necessary. 2008-04-03 Tim Waugh * Makefile: Version 1.9.38. 2008-04-03 Tim Waugh * cupsconnection.c (Connection_getDocument): Fixed missing argument to snprintf. 2008-04-01 Tim Waugh * cupsconnection.c (Connection_getFile): Allow destination to be a file descriptor or a Python file object, and call cupsGetFd() in those cases. 2008-03-17 Tim Waugh * Makefile: Version 1.9.37. 2008-03-15 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): Prevent memory leak. (Connection_getNotifications): Likewise. (Dest_getOptions): Likewise. 2008-03-14 Tim Waugh * cupsmodule.c (initcups): Add CUPS_PRINTER_DISCOVERED constant. 2008-03-12 Tim Waugh * cupsconnection.c (Connection_authenticateJob): New method. 2008-03-10 Tim Waugh * Makefile (PYTHONVERS): Removed. 2008-03-05 Norm Jacobs * cupsppd.c (getline): emulate getline() for systems without it. (PPD_writeFd): replace strndup with calloc/strncpy for portability. * cupsconnection.c (Connection_getDocument): generate tempfile template with snprintf instead of alloc, copy, copy. (Connection_addPrinter): generate tempfile template with snprintf instead of strpcpy, strcpy. (PyObject_to_String): avoid using alloca() by declaring a buffer at the top of the function. (Connection_getServerPPD): test for CUPS version using cups.h supplied values. (Connection_getDocument): test for CUPS version using cups.h supplied values. * cupsmodule.c: test for CUPS version using cups.h supplied values. 2008-03-05 Tim Waugh * Makefile: Version 1.9.36. 2008-03-01 Tim Waugh * cupsconnection.c (Connection_renewSubscription): New optional parameter lease_duration. 2008-02-28 Tim Waugh * cupsconnection.c (Connection_getNotifications): State reasons are always a list. (Connection_getJobAttributes): Likewise. 2008-02-19 Tim Waugh * Makefile: Version 1.9.35. 2008-02-19 Tim Waugh * cupsconnection.c (Connection_getJobAttributes): New method. 2008-02-07 Tim Waugh * cupsconnection.c (Connection_cancelAllJobs): New method. (Connection_getPrinterAttributes): Don't free name string before use. (Connection_getPrinterAttributes): Construct the URI in the correct buffer. (Connection_printTestPage): Avoid compiler warning. 2008-02-06 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): The printer-state-reasons attribute is always a list. 2008-02-04 Tim Waugh * Makefile: Version 1.9.34. 2008-02-04 Tim Waugh * cupsconnection.c (Connection_getNotifications): Pass through the sequence numbers. 2008-01-29 Tim Waugh * cupsconnection.c (Connection_printTestPage): Don't default to user guest. 2008-01-23 Tim Waugh * Makefile: Version 1.9.33. 2008-01-23 Tim Waugh * cupsconnection.c (Connection_cancelJob): Revert back to using job-uri since it is a required attribute. 2008-01-02 Tim Waugh * cupsconnection.c (Connection_setJobHoldUntil): Fixed typo (Ubuntu #179520). 2007-12-17 Tim Waugh * Makefile: Version 1.9.32. 2007-12-14 Tim Waugh * cupsconnection.c (Connection_addPrinter): Don't deallocate the Python objects that are our arguments. 2007-12-11 Tim Waugh * cupsppd.c (Option_getChoices): Don't leak Unicode objects. (Option_getChoices): Add 'marked' attribute, based on patch by Romain Jacquet. 2007-11-30 Tim Waugh * cupsconnection.c (do_printer_request): Fixed debugging output. 2007-11-27 Tim Waugh * cupsconnection.c (Connection_cancelJob): Use job-id instead of job-uri. (Connection_getPrinterAttributes): New uri keyword to allow non-CUPS URIs. 2007-11-22 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): Fixed job-sheets-default tuple. 2007-11-22 Tim Waugh * Makefile: Version 1.9.31. 2007-11-22 Tim Waugh * cupsconnection.c (Connection_getDocument): New method. * cupsmodule.h: Check for CUPS 1.4. 2007-11-21 Tim Waugh * cupsconnection.c (Connection_getDefault): New method. * cupsmodule.c (cups_require): Don't read uninitialised memory. * cupsconnection.c (Connection_printTestPage): Don't use uninitialised variables (bug #390431). 2007-11-19 Tim Waugh * Makefile: Version 1.9.30. 2007-11-19 Tim Waugh * cupsconnection.c (Connection_addPrinter): Fixed typo. (Connection_addPrinter): Fixed double-free. (Connection_getDests): Handle there being no default printer. 2007-11-15 Tim Waugh * Makefile: Version 1.9.29. 2007-11-15 Tim Waugh * cupsconnection.c (Connection_getDests): Don't leak each destobj. (build_list_from_attribute_strings): Don't leak each string object. (Connection_getPrinters): Don't leak each dict. (Connection_getClasses): Don't leak each members list. (Connection_getPPDs): Don't leak each dict. (Connection_getDevices): Likewise. (Connection_addPrinter): Don't leak converted strings. (Connection_getPrinterAttributes): Removed unused code. (Connection_adminGetServerSettings): Don't leak each setting value. (Connection_getSubscriptions): Don't leak each value and subscription. (Connection_getNotifications): Don't leak each value, event and item. 2007-11-14 Tim Waugh * cupsconnection.c (PyObj_from_UTF8): New function. Used in lots of places where text attributes are decoded (part of bug #382291). (UTF8_from_PyObj): New function. Used in lots of places where text attributes are given in a request (rest of bug #382291). 2007-10-15 Tim Waugh * Makefile: Version 1.9.28. 2007-10-15 Tim Waugh * cupsconnection.c (Connection_getDests): Add a (None,None) entry for the default printer. 2007-09-19 Tim Waugh * Makefile: Version 1.9.27. 2007-09-19 Tim Waugh * cupsconnection.c (PyObject_from_attr_value): IPP_TAG_NOVALUE tags are now handled, and are translated as None. 2007-09-12 Tim Waugh * cupsmodule.c: Missed some doc strings. 2007-09-12 Tim Waugh * Makefile: Version 1.9.26. 2007-09-12 Tim Waugh * cupsppd.c: Better doc strings throughout. 2007-09-11 Tim Waugh * cupsppd.c: Start of better doc strings for PPD functions. 2007-09-07 Tim Waugh * cupsconnection.c: Better doc strings throughout. 2007-09-06 Tim Waugh * Makefile (doc): New rule. * cupsconnection.c: Start of better documentation. 2007-08-30 Tim Waugh * Makefile: Version 1.9.25. 2007-08-30 Tim Waugh * cupsconnection.c (Connection_adminGetServerSettings): Fix compilation with CUPS 1.3. (Connection_adminSetServerSettings): Likewise. * Makefile: Removed 'tag' target, updated 'dist' target for svn. * cupsconnection.c (Connection_getServerPPD): New method. * cupsmodule.c (initcups): Define CUPS_SERVER_REMOTE_ANY. * cupsmodule.h: Check for CUPS 1.3. 2007-07-06 Tim Waugh * cupsppd.c: Better docstring for PPD.markOption. 2007-06-08 Tim Waugh * Makefile: Ship examples directory correctly. 2007-06-08 Tim Waugh * Makefile: Version 1.9.24. 2007-06-08 Tim Waugh * cupsconnection.c (Connection_adminSetServerSettings): In Python 2.5, PyDict_Next() uses a ssize_t-like type for the position, not int (bug #239805). * cupsconnection.c (Connection_getClasses): Fixed typo in debugging output. 2007-06-07 Tim Waugh * Makefile: Version 1.9.23. 2007-06-07 Tim Waugh * cupsconnection.c (Connection_adminSetServerSettings): Debug output. * cupsppd.c (cautious_PyUnicode_DecodeUTF8): New function to safe-guard against supposed UTF-8 strings that are incorrect (bug #242962). 2007-05-18 Tim Waugh * examples/cupstree.py: New file. 2007-05-17 Tim Waugh * cupsmodule.c (cups_require): New method. * Makefile: Build with VERSION set. 2007-05-17 Tim Waugh * Makefile: Version 1.9.22. 2007-05-16 Tim Waugh * cupsconnection.c (Connection_getPPDs): Allow threads during cupsDoRequest. (Connection_getDevices): Likewise. 2007-05-04 Tim Waugh * cupsconnection.c (Connection_printTestPage): New optional parameters in order to perform maintenance functions. 2007-04-16 Tim Waugh * Makefile: Version 1.9.21. 2007-04-11 Tim Waugh * cupsconnection.c (Connection_getSubscriptions): New method. (Connection_createSubscription): New method. (Connection_getNotifications): New method. (Connection_renewSubscription): New method. (Connection_cancelSubscription): New method. 2007-04-10 Tim Waugh * cupsmodule.c (initcups): CUPS_PRINTER_COMMANDS. 2007-04-04 Tim Waugh * Makefile: Version 1.9.20. 2007-04-04 Tim Waugh * cupsconnection.c (Connection_getPrinters): printer-state-reasons is a list. 2007-03-27 Tim Waugh * Makefile: Version 1.9.19. 2007-03-27 Tim Waugh * cupsmodule.c (initcups): Job state constants. 2007-03-18 Tim Waugh * Makefile: Version 1.9.18. 2007-03-18 Tim Waugh * cupsconnection.c (Connection_getJobs): Include job-state attribute. (Connection_getJobs): Include job-preserved attribute. (Connection_getJobs): Include time-at-creation, time-at-processing and time-at-completed attributes. (Connection_getJobs): Include job-media-sheets and job-media-sheets-completed attributes. (Connection_getJobs): New optional parameters 'which_jobs' and 'my_jobs'. (Connection_setJobHoldUntil): New method. (Connection_restartJob): New Method. 2007-01-03 Tim Waugh * Makefile: Version 1.9.17. 2007-01-03 Tim Waugh * cupsppd.c (ppd_encoding_is_utf8): Handle there being no known encoding for the PPD file (bug #220136). 2006-12-15 Tim Waugh * cupsppd.c (PPD_localize): New method. 2006-12-07 Tim Waugh * Makefile: Version 1.9.16. 2006-12-07 Tim Waugh * cupsconnection.c (Connection_getPrinters): Include printer-state-reasons attribute. 2006-11-30 Tim Waugh * cupsconnection.c (Connection_getPrinters): Include printer-state-message attribute. (do_printer_request): Set printer-state-message if reason given. (Connection_methods): Updated help strings. (Connection_adminSetServerSettings): Fixed small memory leak. (Connection_init): More debug. (Connection_dealloc): Likewise. (do_printer_request): Likewise. (Connection_getDests): Likewise. (Connection_getPrinters): Likewise. (set_http_error): Likewise. (set_ipp_error): Likewise. (build_list_from_attribute_strings): Likewise. (Connection_getClasses): Likewise. (Connection_getPPDs): Likewise. (Connection_getDevices): Likewise. (Connection_getJobs): Likewise. (Connection_getFile): Likewise. (Connection_putFile): Likewise. 2006-11-29 Tim Waugh * cupsconnection.c (Connection_getJobs): Include job-priority attribute. 2006-11-10 Tim Waugh * Makefile: Version 1.9.15. 2006-11-10 Tim Waugh * cupsconnection.c (Connection_getJobs): New method. (Connection_cancelJob): New method. 2006-11-02 Tim Waugh * Makefile: Version 1.9.14. 2006-11-02 Tim Waugh * cupsppd.c (Option_getChoices): Handle enum values already set outside the range (bug #213136). 2006-10-24 Tim Waugh * cupsmodule.h: Removed bit-rotten CUPS 1.1.x compatibility code. 2006-10-02 Tim Waugh * Makefile: Version 1.9.13. 2006-10-02 Tim Waugh * cupsmodule.c (initcups): Export HTTP_FORBIDDEN as well. 2006-07-05 Tim Waugh * Makefile: Version 1.9.12. 2006-07-05 Tim Waugh * cupsconnection.c (Connection_addPrinterOptionDefault): Send strings as strings, not character sequences. 2006-05-25 Tim Waugh * Makefile: Version 1.9.11. 2006-05-25 Tim Waugh * cupsmodule.c (initcups): Selected HTTP status codes. 2006-05-16 Tim Waugh * cupsppd.c (PPD_writeFd): Follow upstream behaviour for PaperDimension and ImageableArea (see STR #1689). 2006-05-15 Tim Waugh * Makefile: Version 1.9.10. 2006-05-15 Tim Waugh * cupsconnection.c (Connection_addPrinter): Put debug messages in. * cupsmodule.c (debugprintf): Implemented. * cupsmodule.h: Declare debugprintf(). 2006-05-05 Tim Waugh * cupsconnection.c (Connection_getClasses): Handle IPP_NOT_FOUND, which is returned when there are no classes. (Connection_getPrinterAttributes): 'finishings-supported' is a list. (Connection_addPrinterOptionDefault): Prevent buffer overrun. 2006-05-04 Tim Waugh * Makefile: Version 1.9.9. 2006-05-04 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): Make 'requesting-user-name-*' attributes lists. (Connection_getPrinters): Handle IPP_NOT_FOUND, which is returned when there are no queues. 2006-05-03 Tim Waugh * cupsmodule.c (initcups): IPP finishings. * cupsconnection.c (Connection_getPrinterAttributes): Multi-valued network default options should appear as lists. 2006-04-21 Tim Waugh * cupsconnection.c (Connection_addPrinterOptionDefault): Support lists as values. 2006-04-19 Tim Waugh * Makefile: Version 1.9.8. 2006-04-19 Tim Waugh * cupsmodule.c (initcups): String constants from adminutil.h. * cupsconnection.c (Connection_addPrinterOptionDefault): Handle different types for the value. (Connection_adminGetServerSettings): Implemented. (Connection_adminSetServerSettings): Implemented. 2006-04-15 Tim Waugh * Makefile: Version 1.9.7. 2006-04-15 Tim Waugh * cupsconnection.c (Connection_getPrinterAttributes): Fetch all of the printer attributes, not just a named selection. (Connection_deletePrinterOptionDefault): Implemented. 2006-04-14 Tim Waugh * cupsconnection.c (Dest_new): cups.Dest type. (Connection_getDests): Use cups.Dest type. (Dest_getName): New method. (Dest_getInstance): New method. 2006-04-13 Tim Waugh * cupsconnection.c (Connection_setPrinterOptionDefault): Implemented. (Connection_getDests): Implemented. 2006-04-07 Tim Waugh * cupsconnection.c (Connection_init): Allow threads during httpConnectEncrypt(). 2006-04-04 Tim Waugh * Makefile: Version 1.9.6. 2006-04-03 Tim Waugh * cupsconnection.c (Connection_getPPD): Better exception when cupsGetPPD2() fails. 2006-03-28 Tim Waugh * cupsppd.c, cupsppd.h, cupsmodule.c: Added Attribute object, and PPD.attributes attribute. (PPD_findAttr): Implemented. (PPD_findNextAttr): Implemented. 2006-03-24 Tim Waugh * Makefile: Version 1.9.5. 2006-03-23 Tim Waugh * cupsconnection.c (Connection_printTestPage): Implemented. (Connection_getPPDs): Handle broken UTF-8 strings, since CUPS 1.1.x doesn't transcode PPD strings for CUPS_GET_PPDS. (Connection_printTestPage): Return job ID. 2006-03-22 Tim Waugh * cupsconnection.c (Connection_getPPDs): Include ppd-make attribute. (Connection_getPPDs): Use Unicode objects for any string that comes from a PPD file. * cupsmodule.c (do_model_compare): Fix comparisons where one string is a substring of the other. 2006-03-20 Tim Waugh * cupsconnection.c (Connection_setPrinterShared): Handle classes. (Connection_setPrinterJobSheets): Likewise. (Connection_setPrinterErrorPolicy): Likewise. (Connection_setPrinterOpPolicy): Likewise. (do_requesting_user_names): Likewise. (Connection_getPrinterAttributes): Likewise. 2006-03-17 Tim Waugh * cupsmodule.c (initcups): Added IPP_MAX_NAME. 2006-03-17 Tim Waugh * Makefile: Version 1.9.4. 2006-03-16 Tim Waugh * cupsconnection.c (Connection_addPrinter): Initialise local ppd variable. (docstrings): Better doc strings for addPrinterToClass and deletePrinterFromClass. (Connection_deleteClass): Implemented. (Connection_setPrinterInfo): Handle classes. (Connection_setPrinterLocation): Handle classes. 2006-03-14 Tim Waugh * Makefile: Support DESTDIR. 2006-03-14 Tim Waugh * cupsconnection.c (Connection_disablePrinter): Use IPP_PAUSE_PRINTER. (Connection_enablePrinter): Use IPP_RESUME_PRINTER. (Connection_setPrinterJobSheets): Fixed typo. 2006-03-10 Tim Waugh * Makefile: Version 1.9.3. 2006-03-10 Tim Waugh * cupsconnection.c (Connection_setPrinterShared): Renamed. (Connection_getPrinterAttributes): Find requesting-user-name-allowed and requesting-user-name-denied attributes. (Connection_setPrinterUsersAllowed): Implemented. (Connection_setPrinterUsersDenied): Implemented. 2006-03-09 Tim Waugh * cupsconnection.c (Connection_getClasses): Handle empty classes. * cupsmodule.c (initcups): Always define CUPS 1.2.x CUPS_PRINTER_* constants. * cupsmodule.h (CUPS_PRINTER_*): More CUPS 1.1.x compatibility stuff. 2006-03-08 Tim Waugh * cupsppd.c (PPD_init): Handle fopen failure. (utf8_to_ppd_encoding): Nul-terminate the string. (Option_getseters) Better docstring for conflicted attribute. 2006-03-07 Tim Waugh * cupsppd.h (PPD struct): New members for encoding conversion. * cupsppd.c (PPD_new): Initialise encoding conversion members in PPD struct. (PPD_init): Likewise. (PPD_dealloc): Deallocate encoding conversion handles. (ppd_encoding_is_utf8): New function. (make_PyUnicode_from_ppd_string): New function. (utf8_to_ppd_encoding): New function. (Option_getKeyword): Convert to Unicode. (Option_getDefchoice): Likewise. (Option_getText): Likewise. (Option_getChoices): Likewise. (Group_getText): Likewise. (Group_getName): Likewise. (Constraint_getOption1): Likewise. (Constraint_getChoice1): Likewise. (Constraint_getOption2): Likewise. (Constraint_getChoice2): Likewise. (PPD_markOption): Convert to PPD encoding. 2006-03-03 Tim Waugh * Makefile: Version 1.9.2. 2006-03-03 Tim Waugh * cupsconnection.c (do_printer_request): Watch out for exceptions from the password callback. (Connection_addPrinter): Likewise. (Connection_setPrinterDevice): Likewise. (Connection_setPrinterInfo): Likewise. (Connection_setPrinterLocation): Likewise. (Connection_setPrinterPublished): Likewise. (Connection_setPrinterJobSheets): Likewise. (Connection_setPrinterErrorPolicy): Likewise. (Connection_setPrinterOpPolicy): Likewise. (Connection_addPrinterToClass): Likewise. (Connection_deletePrinterFromClass): Likewise. 2006-03-01 Tim Waugh * cupsconnection.c (set_ipp_error): Use ippErrorString(). (Connection_getPrinters): Fixed typo. * cupsmodule.c (initcups): IPP error codes. * cupsppd.c (PPD_writeFd): Treat PageRegion specially, like CUPS does. (nondefaults_are_marked): New function. (PPD_nondefaultsMarked): Implemented. 2006-02-27 Tim Waugh * cupsconnection.c (Connection_setPrinterInfo): Use IPP_TAG_TEXT here. (Connection_setPrinterLocation): Likewise. (get_printer_attributes_request): Removed. * cupsconnection.c (do_printer_request): Use ippNewRequest(). (Connection_getPrinters): Likewise. (Connection_getClasses): Likewise. (Connection_getPPDs): Likewise. (add_modify_printer_request): Likewise. (Connection_addPrinterToClass): Likewise. (Connection_deletePrinterFromClass): Likewise. * cupsmodule.h (ippNewRequest): Implemented, for compatibility with CUPS 1.1.x. * cupsconnection.c (get_printer_attributes_request): New function. (build_list_from_attribute_strings): New function. (Connection_getPrinterAttributes): Implemented. (Connection_setPrinterJobSheets): Implemented. (Connection_setPrinterErrorPolicy): Implemented. (Connection_setPrinterOpPolicy): Implemented. (Connection_getClasses): Use build_list_from_attribute_strings(). 2006-02-23 Tim Waugh * Makefile: Better 'dist' target. 2006-02-23 Tim Waugh * Makefile: Version 1.9.1. 2006-02-23 Tim Waugh * cupsconnection.c (Connection_setPrinterPublished): Implemented. (Connection_getPrinters): Add 'printer-is-shared' Boolean into requested attributes. * cupsmodule.c (cups_getUser): Implemented. (cups_getServer): Implemented. (cups_getPort): Implemented. (cups_getEncryption): Implemented. * cupsppd.h (PPD): Moved this here from.. * cupsppd.c: ..here. (PPD_writeFd): No longer static. (PPD_findOption): Implemented. * cupsconnection.c (Connection_addPrinter): Accept 'ppd' keyword, for cups.PPD object. * cupsppd.c (PPD_init): Open handle to PPD file. (PPD_dealloc): Close it. (PPD_writeFd): Implemented. * cupsmodule.c (cups_setPort): Implemented. 2006-02-22 Tim Waugh * cupsconnection.c (Connection_addPrinterToClass): Implemented. (Connection_deletePrinterFromClass): Implemented. (Connection_addPrinter): Added 'info', 'location', and 'device' keywords. (add_modify_printer_request): New utility function. (Connection_setPrinterInfo): Implemented. (Connection_setPrinterLocation): Implemented. (Connection_getClasses): Implemented. * cupsmodule.c (initcups): Added printer states constants. * cupsconnection.c: More consistent error handling. (do_printer_request): Fixed ipp_t leak. (Connection_addPrinter): Likewise. (Connection_setPrinterDevice): Likewise. (set_ipp_error): Make use of cupsLastErrorString conditional on CUPS 1.2. * cupsconnection.c (Connection_putFile): Fixed ipp_t leak. (set_ipp_error): "i" -> "(is)" for IPPError. * cupsmodule.h: New file. * cupsconnection.c (Connection_getDevices): Implemented. 2006-02-21 Tim Waugh * cupsconnection.c (Connection_getPPDs): Implemented. * cupsppd.c (Group_getOptions): Return a list, not a dict, to preserve the order of options. * test.py (test_cups_module): Updated. * cupsconnection.c (Connection_addPrinter): Allow adding a printer from a ppd-name instead of a filename. * cupsconnection.c (Connection_getFile): Fixed ipp_t leak. * cupsppd.c (PPD_getOptionGroups): Make this an attribute not a method. * test.py (test_cups_module): Updated. * cupsppd.c: Implement 'Constraint' type. * cupsppd.h: Declare cups_ConstraintType. * cupsmodule.c (initcups): Add 'Constraint' type. * cupsconnection.c (Connection_getPrinters): Do this inline instead of in a separate function.