]> git.ipfire.org Git - thirdparty/cups.git/blob - CHANGES.txt
604557f50ccd38995a676780e17812558d735d5f
[thirdparty/cups.git] / CHANGES.txt
1 CHANGES.txt - 2006-04-07
2 ------------------------
3
4 CHANGES IN CUPS V1.2
5
6 - The scheduler was not always using the string pool,
7 causing random crashes.
8 - The lpmove and the web interface's Move Job button did
9 not work with stopped jobs (STR #1534)
10 - The PostScript filter did not handle the page-set
11 option properly with number-up printing (STR #1543)
12 - The scheduler now only warns about unsupported ACLs
13 once (STR #1532)
14 - The "fitplot" option did not work with output from
15 Mozilla (STR #1542)
16 - The imagetops filter did not work with Level 2 or 3
17 printers (STR #1533)
18 - The scheduler now recognizes PostScript files with PJL
19 commands that do not include an ENTER LANGUAGE command.
20 - Added --with-printcap configure option.
21 - 64-bit SSL fixes for MacOS X.
22 - The scheduler didn't send some printer state change
23 events.
24 - The scheduler didn't send jobs to busy remote printers.
25 - Fixed some problems with the launchd support.
26 - Added new USB printer backend for MacOS X.
27 - The PostScript filter now handles files that start with
28 an incomplete PJL header (PR #6076)
29 - The web interface language selection code did not try
30 the generic language localization (STR #1531)
31 - The language cache, string pool, and transcoding caches
32 are now process global instead of per-thread to avoid
33 problems with GNOME and to allow for data sharing
34 between threads (STR #1530)
35 - Fixed a CUPS 1.1.x compatibility bug (STR #1528)
36 - The web interface redirection after certain printer
37 administration tasks was broken (STR #1516)
38 - Web interface authorization could get stuck (STR #1512)
39 - Localization updates (STR #1513, STR #1518, STR #1520)
40 - The pstops filter didn't work with some files (STR
41 #1523)
42 - "./configure --enable-static" didn't work (STR #1522)
43 - The scheduler was not using the configured default
44 Group (STR #1521)
45 - The web interface still did not show the localized time
46 and date for some locales and systems (STR #1509)
47 - httpAddrGetList() would crash on systems without
48 getaddrinfo().
49 - Socket URIs without a trailing slash would cause the
50 port number to not be accepted (STR #1519)
51 - Local raw and System V printers were not advertised as
52 such for printer browsing (STR #1502)
53 - The RPM spec file incorrectly put duplicate copies of
54 the Japanese and Spanish web interface templates in the
55 main cups package (STR #1517)
56 - cupsSetDests() did not explicitly set the permissions
57 of the /etc/cups/lpoptions file (STR #1508)
58 - The lpq command crashed with the -h option (STR #1515)
59
60
61 CHANGES IN CUPS V1.2rc1
62
63 - Documentation updates (STR #1497, STR #1498)
64 - The scheduler now redirects browsers to https: URLs
65 when encryption is required.
66 - The scheduler would crash when printing with a banner
67 (STR #1500)
68 - cups-driverd did not use the LanguageEncoding attribute
69 in PPD files to convert the NickName to UTF-8 (STR
70 #1503)
71 - The lpadmin command could not set the
72 printer-error-policy attribute (STR #1504)
73 - The web interface did not show the time and date in the
74 correct format for the locale (STR #1505)
75 - CUPS no longer accepts print jobs if a printer does not
76 support the file format (STR #1501)
77 - Cleaned up the PostScript filter (pstops) so that it
78 properly supports %%IncludeFeature and page scaling
79 (STR #1453)
80 - Fixed the cupsFileRewind() and cupsFileSeek() functions
81 to work properly with uncompressed files.
82 - Added cupsFileGetLine(), cupsFileStderr(),
83 cupsFileStdin(), and cupsFileStdout() functions to the
84 CUPS library.
85 - Added a new cupstestdsc program to test the DSC
86 conformance of PostScript files.
87 - Added KDE/GNOME icons and a Manage Printers menu item.
88 - Added --enable-image and --enable-pdftops configure
89 options to control whether the image and PDF filters
90 are built and installed (default = yes for all
91 platforms but MacOS X)
92 - Fixed a minor memory leak in the PPD API.
93 - Fixed transcoding issues (STR #1493)
94 - The scheduler now enforces a minimum job cost of 100
95 when doing FilterLimit checks.
96 - The scheduler would leak file descriptors when printing
97 to raw queues (STR #1491)
98 - The IPv6 support did not compile on Tru64 UNIX (STR
99 #1488)
100 - ppdOpen2() now converts the NickName and all UI text to
101 UTF-8 (STR #1475)
102 - The Set Allows Users web page did not work (STR #1486)
103 - When the default policy was not set or set to a non-
104 existing policy, the scheduler did not set the default
105 policy name to "default" (STR #1484)
106 - The Zebra CPCL driver did not use the correct righthand
107 margin for the 4" wide label sizes.
108 - Fixed a problem with the parsing of fractional real
109 numbers in PPD files.
110 - Added Spanish localization files (STR #1480)
111 - Fixed localization of a few scheduler messages (STR
112 #1478)
113 - Fixed support for HEAD requests in the scheduler (STR
114 #1481)
115
116
117 CHANGES IN CUPS V1.2b2
118
119 - Updated the CUPS design description.
120 - Added --enable-32bit and --enable-64bit configure
121 options to allow building of separate 32/64-bit
122 libraries on systems that support both environments
123 (STR #1472)
124 - Various compiler warning fixes.
125 - Fixes for Solaris 10 builds against old GNU TLS and
126 LDAP libraries.
127 - Added a cupsArrayUserData() function to retrieve the
128 user data pointer for an array (useful for typing
129 arrays)
130 - The ppdEmitString() function did not compute the
131 required buffer size properly, leading to dropped
132 characters on the end of the printer commands in pstops
133 and imagetops (STR #1470)
134
135
136 CHANGES IN CUPS V1.2b1
137
138 - The serial backend now supports Equinox 8-port serial
139 hubs (STR #526)
140 - The IPP backend now supports a compression option to
141 compress print files as they are sent to the remote
142 server (STR #956)
143 - The CUPS browse protocol now supports passing of
144 default options and browse timeout values from the
145 server to the clients (STR #800)
146 - Implicit classes that timed out could cause the
147 scheduler to crash (STR #1439)
148 - Added DragonFly support in local device backends (STR
149 #1362)
150 - Added LDAP printer browsing support (STR #338)
151 - Added official support for printer maintenance commands
152 via the CUPS Command file format and hooks in the
153 printer-type and web interfaces (STR #932)
154 - The HP-GL/2 filter could get in an infinite loop trying
155 to convert HP-PCL files (STR #1415)
156 - CUPS now implements the HTTP/1.1 Expect header (STR
157 #1407)
158 - Options in PPD files are no longer automatically put in
159 an "Extra" group; rather, all options that are not
160 inside an Open/CloseGroup will be placed in the
161 "General" group (STR #1385)
162 - The scheduler now creates a job-uuid attribute that
163 uniquely identifies a job on a network (STR #1410)
164 - The init script now unsets the TMPDIR environment
165 variable to prevent user temporary directories from
166 being used by cupsd accidentally (STR #1424)
167 - Added support for launchd on MacOS X.
168 - Added support for notify_post on MacOS X.
169 - Added support for DBUS on Linux.
170 - All of the Berkeley (except for lpc) and System V
171 commands now support specification of user, host, and
172 port (STR #1028, STR #1029, STR #1087)
173 - The lpmove command now allows you to move all jobs for
174 a given queue (STR #56)
175 - The web interface now supports moving of a job or jobs
176 to another queue (STR #56)
177 - The web interface now provides searching, paging, and
178 changing of the sort/display order of classes, jobs,
179 and printers.
180 - cupsaddsmb now accepts a password on the command-line
181 and supports passwords with special characters (STR
182 #822, STR #1236)
183 - ppdLoad*() no longer tries to "fix" bad characters in
184 UI text (STR #1101)
185 - Printer names can now (reliably) contain Unicode
186 characters (STR #896)
187 - The lpstat command now shows the time and date of the
188 last printer state change instead of the hardcoded "Jan
189 01 00:00" (STR #659)
190 - The scheduler now adds a job-actual-printer-uri
191 attribute to job objects when printing to a class (STR
192 #116)
193 - The scheduler now logs log file open errors to the
194 system log (STR #1289)
195 - The scheduler now sets the job-originating-user-name to
196 the authenticated username, if available (STR #1318)
197 - The scheduler now only updates the permissions of SSL
198 keys and certificates when they are under the
199 ServerRoot directory (STR #1324)
200 - The rastertodymo driver has been renamed to
201 rastertolabel (a symlink is installed so that existing
202 queues continue to work) and now also supports Zebra's
203 CPCL language.
204 - The lpstat command could show the wrong active job for
205 a printer (STR #1301)
206 - Fixed a potential crash problem in the scheduler when
207 aborting a CGI program (STR #1290)
208 - Added a "cancel all jobs" button to the class and
209 printer web interfaces (STR #1140)
210 - The add-printer web page now shows the
211 set-printer-options page after the printer has been
212 added (STR #690)
213 - The classes web page now provides links to each of the
214 member printers (STR #307)
215 - CUPS now handles HTTP request/response lines up to 32k
216 in length; this is mainly for better cookie support
217 (STR #1274)
218 - Added support for the Apache PassEnv and SetEnv
219 directives to cupsd.conf (STR #853)
220 - Added large file (64-bit) support (STR #541)
221 - Fixed a performance issue with the ippReadIO()
222 implementation (STR #1284)
223 - Fixed a performance issue with the scheduler's implicit
224 class implementation (STR #1283)
225 - The pdftops filter now adds the Title and Creator
226 fields from the PDF file to the PostScript document
227 comments section (STR #539, STR #830)
228 - Added a new cups_array_t and cupsArray*() functions to
229 the CUPS API to support sorted lists of data.
230 - Made the CUPS API library thread-safe (STR #1276)
231 - Added "media" option support for EFI EFMediaType option
232 (STR #902)
233 - Added write buffering to the HTTP code to improve
234 performance (STR #547)
235 - The scheduler now uses the attributes-natural-language
236 attribute to localize banner pages (STR #386)
237 - The scheduler now returns the address that was used to
238 connect to it (STR #1076)
239 - Fixed a problem with N-up printing and OpenOffice (STR
240 #576)
241 - Added support for the GCC position independent
242 executable options (STR #1209)
243 - Added new BrowseLocalProtocols and
244 BrowseRemoteProtocols directives to cupsd.conf,
245 allowing for different browse protocols for local and
246 remote printers (STR #877)
247 - PPD files can now contain strings up to 256k in length
248 (STR #1215)
249 - The pstops filter now supports the IncludeFeature DSC
250 comment (STR #1212)
251 - The pstops filter now disables the setpagedevice
252 procedure when doing N-up printing (STR #1161)
253 - The serial backend now supports "stop=1", "stop=2",
254 "parity=space", and "parity=mark" options (STR #1155)
255 - "make install" no longer overwrites an existing PAM
256 configuration file (STR #1064)
257 - The scheduler now closes all files on startup when run
258 in daemon mode (STR #1009)
259 - Added a new RGBW colorspace to the CUPS raster format
260 (STR #1071)
261 - The pdftops filter now sets the page size based on the
262 media box when not scaling the output (STR #912)
263 - The pdftops filter now supports masked images (STR
264 #281)
265 - The pdftops filter produced large output when rendering
266 PDF files containing lot of repeated images (STR #327)
267 - The pdftops filter now minimizes print processing of
268 PDF files when using the page-ranges option (STR #273)
269 - Updated pdftops filter to Xpdf 3.01.
270 - Added new cupsBackchannelRead() and
271 cupsBackchannelWrite() functions, as well as
272 backchannel support to the parallel, serial, socket,
273 and USB backends (STR #1252)
274 - The parallel and USB backends now treat a "no space
275 available" error as an out-of-paper condition (STR
276 #1225)
277 - The "lpc" command now supports the "status all" command
278 (STR #1004)
279 - ippReadIO() did not read collections properly (STR
280 #1249)
281 - The "make test" script now creates the test files in
282 "/tmp/cups-$USER" instead of "/tmp/$USER" (STR #981)
283 - All backends now abort on error when printing a job to
284 a class - this allows the next printer in the class to
285 print the job (STR #1084)
286 - The scheduler now verifies that a printer supports
287 Letter or A4 media sizes before setting them as the
288 initial default (STR #1250)
289 - The cupstestppd program now flags bad Resolution
290 options (STR #1269)
291 - The USB backend now retries printing when the printer
292 is disconnected or turned off (STR #1267)
293 - Added new httpGetHostname() function to CUPS API, and
294 use it instead of gethostname() so that the web
295 interface will work correctly on systems whose hostname
296 is not the FQDN (STR #1266)
297 - The scheduler now stops printers if the backend for the
298 queue is missing on startup (STR #1265)
299 - The configure script now supports "--disable-library"
300 to disable particular image file format support
301 libraries, even if they are available on the build
302 system (STR #1248)
303 - The IPP backend did not always report on the total
304 number of pages that were printed (STR #1251)
305 - The lpstat program could display garbage date and time
306 values for locales whose date format exceeded 31
307 characters (STR #1263)
308 - The cupstestppd program would segfault when testing
309 certain broken PPD files (STR #1268)
310 - Dramatically reduced the overhead of implicit classes.
311 - Added new cupsDir*() functions to CUPS API.
312 - Printers can now be published individually for sharing.
313 - Fixed a bug in the scheduler's startup signalling code
314 which caused cupsd to send the SIGUSR1 signal to the
315 init process instead of the original parent process
316 (STR #1258)
317 - Added new on-line help CGI to web interface to provide
318 searchable help.
319 - Devices are now tracked dynamically, with each query
320 doing a new device scan. This eliminates a previous
321 startup delay caused by slow backends and allows new
322 printers to be seen without restarting the server,
323 however it limits the amount of device URI checking
324 that can be done (basically now the scheduler only
325 requires a URI with a method that is a listed backend)
326 - Added new printer auto-detection, server configuration,
327 and log file viewing to the administration web page.
328 - Added new "set allowed users" web interface to set the
329 list of allowed users for a printer or class.
330 - The scheduler, command-line, and web interfaces now
331 limit the list of printers and classes to those
332 accessible by a user.
333 - cupsMarkOptions() now handles more non-standard
334 duplexing options and choices (STR #915)
335 - cups-lpd now honors remote banner requests with the
336 "standard" banner whenever a printer does not have one
337 defined (STR #1220)
338 - The scheduler's denial-of-service checks did not work
339 properly with IPv6 addresses (STR #1134)
340 - The lp and lpr commands did not error out properly when
341 they were unable to write to a temporary file (STR
342 #1129)
343 - The pstops filter did not handle Adobe-specific
344 comments in Windows NT driver output (STR #1085)
345 - "lpstat -l -p" incorrectly reported the printer
346 interface (STR #936)
347 - The web interface now operates exclusively with the
348 UTF-8 encoding, and sends the appropriate character set
349 and header information to the web browser (STR #919,
350 STR #1007)
351 - Added a "set allowed users" interface to the web
352 interface so that you can set the list of allowed or
353 denied users/groups for a printer or class.
354 - Disallow the "#" character in printer names, since it
355 has special meaning in the shell, config files, and in
356 URIs (STR #917, STR #1202)
357 - Added a new application/x-csource MIME type, and
358 support for it to the texttops filter so that you can
359 pretty print plain text files without the C/C++
360 keywords being highlighted.
361 - The pdftops filter did not compile with GCC 4.0 (STR
362 #1226)
363 - The texttops filter did not highlight preprocessor
364 directives followed by a tab properly.
365 - HP PJL output now uses both JOB DISPLAY and RDYMSG
366 commands to show the current job on the printer's
367 display (STR #1218)
368 - Local authentication certificates are now stored in
369 /var/run/cups/certs by default instead of
370 /etc/cups/certs (STR #1211)
371 - Backends now use "&" to separate options in device
372 URIs; "+" is still recognized but is deprecated (STR
373 #842)
374 - The USB backend no longer supports the usb:/dev/foo
375 format on systems that support device ID queries.
376 - Forced classification markings did not work when the
377 job-sheets parameters were "none,none".
378 - "lpstat -l -p" incorrectly showed all users as allowed,
379 even if the queue was restricted to certain users (STR
380 #801)
381 - The scheduler now automatically detects SSL/TLS clients
382 without using the SSLPort/SSLListen directives.
383 - The CUPS API and scheduler no longer support SSLv2-
384 encrypted connections.
385 - Updated the cupsaddsmb utility to correctly export the
386 CUPS driver for Windows.
387 - Fixed a signal-handling bug in httpRead() which
388 ultimately caused the server to print multiple copies
389 when it was busy (STR #1184)
390 - The cupsFile API now uses the O_APPEND option when
391 opening files in append mode (STR #990)
392 - The md5.h header and md5_* functions are now officially
393 private and have been renamed to avoid conflicts with
394 other implementations with the same name.
395 - The pdftops filter incorrectly embedded some Type1
396 fonts (STR #1093)
397 - The scheduler didn't detect a closed connection in the
398 middle of an IPP request (STR #1153)
399 - The scheduler could block trying to read the job status
400 if there was input pending and the job was cancelled in
401 the same input cycle (STR #1157)
402 - The scheduler could crash when deleting a class due to
403 infinite recursion.
404 - Updated the Zebra ZPL label printer driver to use the
405 run-length encoding and support more options.
406 - Updated serial backend to scan for /dev/ttyC* as well
407 as /dev/ttyc* for Cyclades serial ports (STR #1049)
408 - The scheduler could hang reading the job status under
409 certain circumstances (STR #1068)
410 - The USB backend termination signal code was inverted
411 (STR #1046)
412 - Moved enable and disable commands to sbindir to be
413 consistent.
414 - Added new cupsRasterInterpretPPD() function for RIP
415 filters to setup the raster page header from
416 PostScript commands in a PPD file.
417 - The CUPS browsing protocol now offers a "delete" bit
418 to remove printers as soon as they are deleted on the
419 server or as soon as the server shuts down gracefully
420 (STR #793)
421 - The CUPS_SERVER and ServerName directives (client.conf
422 and ~/.cupsrc) may now contain names of the form
423 "server:port" and "/path/to/domain/socket".
424 - The "cancel -u user" command now works for ordinary
425 users (STR #751)
426 - Added test run support to "make test" target (STR #64)
427 - Added domain socket support (STR #656)
428 - Added BrowseLocalOptions directive to allow the
429 administrator to add printer URI options to the browse
430 URI, e.g. "encryption=required" (STR #732)
431 - Added BrowseRemoteOptions directive to allow the
432 administrator to add standard URI options to the
433 remote printer URI, e.g. "encryption=required" (STR
434 #732)
435 - Now put "-I.." compiler option in front of all others
436 to ensure that local CUPS headers are used before
437 installed headers (STR #437)
438 - New cupsLangPrintf() and cupsLangPuts() for localized
439 interfaces.
440 - Now support custom attributes and extended options in
441 PPD files.
442 - Now provide functions to save PPD files.
443 - New policy mechanism allows per-operation and
444 per-printer control over what users and groups are
445 allowed to do various IPP operations.
446 - New error policy mechanism to control how aborted
447 backend errors are handled by the scheduler
448 (abort-job, retry-job, requeue-job, stop-printer)
449 - Updated the printer test page with a better color
450 wheel and a separate grayscale ramp.
451 - A single backend process is now run to send all print
452 data for a job.
453 - Backends and filters can now send and receive
454 backchannel data over file descriptor 3.
455 - Updated the raster stream format to support more
456 user-defined attributes and to do compression of the
457 page data.