]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/help/whatsnew.html
Load cups into easysw/current.
[thirdparty/cups.git] / doc / help / whatsnew.html
CommitLineData
ef416fc2 1<HTML>
2<!-- SECTION: Getting Started -->
3<HEAD>
4 <TITLE>What's New in CUPS 1.2</TITLE>
5</HEAD>
6<BODY>
7
757d2cad 8<P>CUPS 1.2 adds over 90 changes and new features to CUPS 1.1.x.
9This page provides a high-level outline of these changes. If you
ef416fc2 10have never used CUPS before, read the <A
757d2cad 11HREF="overview.html">"Overview of CUPS"</A> document instead.</P>
ef416fc2 12
757d2cad 13<H2 CLASS="title"><A NAME="CHANGES">Changes in CUPS 1.2</A></H2>
ef416fc2 14
757d2cad 15<DL CLASS="category">
ef416fc2 16
757d2cad 17 <DT>Networking</DT>
18 <DD><OL START="1">
ef416fc2 19
757d2cad 20 <LI><EM>IPv6;</EM> CUPS now supports IPv6
21 connectivity when the host operating system
22 provides it</LI>
ef416fc2 23
757d2cad 24 <LI><EM>Domain Sockets;</EM> CUPS now supports
25 the much faster UNIX domain sockets for local
26 printing</LI>
ef416fc2 27
757d2cad 28 <LI><EM>Auto-SSL;</EM> CUPS now automatically
29 detects when a client is connecting with SSL
30 encryption, so it can support both unencrypted,
31 SSL-encrypted, and TLS-encrypted connections over
32 a single port</LI>
33
34 </OL></DD>
ef416fc2 35
ef416fc2 36
757d2cad 37 <DT>Browsing</DT>
38 <DD><OL START="4">
39
40 <LI><EM>LDAP Support;</EM> CUPS now supports
41 printer sharing via the Lightweight Directory
42 Access Protocol, version 3</LI>
43
44 <LI><EM>Printer Lease Times;</EM> The server's
45 BrowseTimeout value is now included</LI>
46
47 <LI><EM>Network Default Options;</EM> The server
48 now advertises a printer's default options such
49 as job-sheets, media, and so forth</LI>
50
51 <LI><EM>Network Default Printer;</EM> CUPS now
52 advertises server-default printers so that
53 clients can choose the correct default network
54 printer</LI>
55
56 <LI><EM>"Delete Printer" Message;</EM> CUPS now
57 sends a final "delete printer" message to all
58 clients when a printer is deleted, allowing for
59 extremely long BrowseTimeout values without
60 side-effects</LI>
ef416fc2 61
757d2cad 62 <LI><EM>BrowseLocalOptions and
63 BrowseRemoteOptions Support;</EM> You can
64 configure CUPS to use specific IPP options for
65 local and remote printers, for example to
66 compress print jobs that are sent over a slow WAN
67 link</LI>
ef416fc2 68
757d2cad 69 <LI><EM>BrowseLocalProtocols and
70 BrowseRemoteProtocols Support;</EM> You can
71 configure CUPS to use different protocols for
72 advertising local shared printers and discovering
73 remote shared printers</LI>
ef416fc2 74
757d2cad 75 </OL></DD>
ef416fc2 76
77
757d2cad 78 <DT>Web Interface</DT>
79 <DD><OL START="11">
ef416fc2 80
757d2cad 81 <LI><EM>Improved Look and Feel;</EM> The web
82 interface has improved readability and a more
83 consistent design</LI>
ef416fc2 84
757d2cad 85 <LI><EM>New Searchable On-Line Help;</EM> The
86 on-line help has been reorganized into
87 categorized articles and references and can be
88 searched</LI>
ef416fc2 89
757d2cad 90 <LI><EM>Add This Printer;</EM> The administration
91 page offers a new <VAR>Add This Printer</VAR>
92 button for automatically-discovered printers,
93 making printer configuration even easier than
94 before</LI>
ef416fc2 95
757d2cad 96 <LI><EM>Export Printers to Samba;</EM> The
97 administration page now offers an <VAR>Export
98 Printers to Samba</VAR> button and function which
99 allows administrators to export printer drivers
100 to Windows clients via Samba</LI>
ef416fc2 101
757d2cad 102 <LI><EM>Change Settings;</EM> The administration
103 page offers a new simple server settings form for
104 controlling common configuration settings such as
105 printer sharing and remote administration</LI>
106
107 <LI><EM>Edit Configuration File;</EM> The
108 administration page now provides a form for
109 editing the <VAR>cupsd.conf</VAR> file from your
110 web browser</LI>
111
112 <LI><EM>View Log Files;</EM> The administration
113 page now provides access to the
114 <VAR>access_log</VAR>, <VAR>error_log</VAR>, and
115 <VAR>page_log</VAR> log files</LI>
116
117 <LI><EM>Searchable Classes, Jobs, and
118 Printers;</EM> the class, job, and printer pages
119 can now be searched and shown in ascending or
120 descending order, with the results displayed in
121 groups of 10</LI>
122
123 <LI><EM>Links for Class Members;</EM> When
124 viewing a printer class, we now provide
125 hyperlinks to each of the class members -
126 previously only the names were shown</LI>
127
128 <LI><EM>Print Self-Test Page;</EM> When the
129 printer driver supports the CUPS command file
130 format, you can now print the printer's self-test
131 page</LI>
132
133 <LI><EM>Clean Print Heads;</EM> When the printer
134 driver supports the CUPS command file format, you
135 can now clean the printer's heads</LI>
136
137 <LI><EM>Set Default Options;</EM> You can now set
138 the default options for a printer, including the
139 new operation and error policies (the previous
140 incarnation of this was confusingly called
141 "Configure Printer")</LI>
142
143 <LI><EM>Set Default Printer;</EM> You can now
144 make a printer the default printer on the
145 network</LI>
146
147 <LI><EM>Set Allowed Users;</EM> You can now set
148 the list of users and/or groups that are allowed
149 or not allowed to access a printer or class</LI>
150
151 <LI><EM>Cancel All Jobs;</EM> You can now cancel
152 all jobs on a printer or class</LI>
153
154 <LI><EM>Move Job;</EM> You can now move an active
155 job to a different printer or class</LI>
156
157 <LI><EM>Move All Jobs;</EM> You can now move all
158 active jobs to a different printer or class</LI>
159
160 <LI><EM>Per-Printer Sharing;</EM> You can now
161 share (Publish) or hide (Unpublish) printers
162 individually</LI>
163
164 <LI><EM>Show All Jobs;</EM> You can now view all
165 jobs in addition to just the active or completed
166 jobs</LI>
167
168 </OL></DD>
169
170
171 <DT>IPP Support</DT>
172 <DD><OL START="30"></EM></LI>
173
174 <LI><EM>IPP Notifications;</EM> CUPS now supports
175 the complete IPP notification specification to
176 provide asynchronous event notification to
177 clients and users</LI>
178
179 <LI><EM>ippget Notification Scheme;</EM> CUPS now
180 supports the required <CODE>ippget</CODE> pull
181 method for event notification, allowing
182 applications to receive events asychronously</LI>
183
184 <LI><EM>mailto Notification Scheme;</EM> CUPS now
185 supports <CODE>mailto</CODE> recipients as
186 proposed by the Printer Working Group, allowing
187 users to receive event notifications via
188 email</LI>
189
190 <LI><EM>CUPS Extensions to IPP
191 Notifications;</EM> CUPS adds several server
192 events (start, stop, restart, and audit) that can
193 be monitored via the IPP notification
194 operations</LI>
195
196 <LI><EM>CUPS-Get-Printers Improvements;</EM> The
197 CUPS-Get-Printers operation now returns all
198 queues by default and filters the results based
199 on the <CODE>requesting-user-name</CODE>
200 attribute</LI>
201
202 <LI><EM>Proxy Authentication;</EM> CUPS provides
203 the new CUPS-Authenticate-Job operation to
204 support proxy authentication of print jobs</LI>
205
206 <LI><EM>Unique Job IDs;</EM> CUPS maintains a new
207 <CODE>job-uuid</CODE> attribute which provides a
208 unique identifier that can be used to track a job
209 on your network or anywhere in the world</LI>
210
211 <LI><EM>port-monitor;</EM> CUPS now supports the
212 per-printer <CODE>port-monitor</CODE> and
213 <CODE>port-monitor-supported</CODE> attributes
214 for device-specific data/transport encoding</LI>
215
216 <LI><EM>printer-op-policy;</EM> CUPS supports new
217 <CODE>printer-op-policy</CODE> and
218 <CODE>printer-op-policy-supported</CODE>
219 attributes which provide per-printer fine-grained
220 access control policies</LI>
221
222 <LI><EM>printer-error-policy;</EM> CUPS supports
223 new <CODE>printer-error-policy</CODE> and
224 <CODE>printer-error-policy-supported</CODE>
225 attributes which provide per-printer control over
226 job error handling</LI>
227
228 <LI><EM>printer-is-shared;</EM> CUPS supports a
229 new <CODE>printer-is-shared</CODE> attribute
230 which provides per-printer sharing</LI>
231
232 <LI><EM>printer-state-change-time;</EM> CUPS now
233 tracks the last time and date of a change to the
234 printer configuration, enabled/disabled state, or
235 accepting/rejecting state</LI>
236
237 <LI><EM>printer-uri-supported;</EM> CUPS now
238 reports the IP address or hostname used by the
239 client in the <CODE>printer-uri-supported</CODE>
240 attribute - this prevents hostname resolution
241 issues on complex networks</LI>
242
243 <LI><EM>requested-attributes;</EM> CUPS now fully
244 supports limiting of attributes by name or group
245 - previously CUPS would only limit common
246 attributes and did not support attribute group
247 names</LI>
248
249 <LI><EM>Default Job Template Attributes;</EM>
250 CUPS now supports arbitrary default job template
251 attributes and applies them to print jobs as
252 needed</LI>
253
254 <LI><EM>which-jobs;</EM> The Get-Jobs operation
255 now supports a <CODE>which-jobs</CODE> value of
256 "all" to return all jobs regardless of state</LI>
257
258 <LI><EM>document-format-supported;</EM> The
259 <CODE>document-format-supported</CODE> attribute
260 now reflects the formats that are actually
261 supported by the printer</LI>
262
263 <LI><EM>printer-type;</EM> The
264 <CODE>printer-type</CODE> attribute now provides
265 bits for "not shared", "authenticated", and
266 "supports commands"</LI>
267
268 </OL></DD>
269
270
271 <DT>Scheduler</DT>
272 <DD><OL START="48">
273
274 <LI><EM>Remote Printer Caching;</EM> The scheduler
275 now maintains a remote printer cache so that
276 remote printers are not lost when the scheduler
277 or system is restarted</LI>
278
279 <LI><EM>Job Caching;</EM> The scheduler now
280 maintains a job cache so that completed jobs do
281 not need to be loaded into memory all of the time
282 - jobs are loaded and unloaded automatically for
283 optimum performance and memory usage</LI>
284
285 <LI><EM>Other Performance Improvements;</EM>
286 Thanks to new CUPS API interfaces, the schedule
287 now uses less memory, less CPU, and scales to
288 even larger installations</LI>
289
290 <LI><EM>Improved Logging;</EM> CUPS now logs the
291 IPP operation and status in in the
292 <VAR>access_log</VAR> file</LI>
293
294 <LI><EM>Policies;</EM> CUPS now provides
295 per-printer and server access control policies
296 based on IPP operations in addition to the
297 traditional location-based access control
298 available in previous releases</LI>
299
300 <LI><EM>DefaultAuthType;</EM> In conjunction with
301 the new policy support, CUPS now supports a
302 default authentication type that is used for IPP
303 operations requiring a username</LI>
304
305 <LI><EM>DefaultEncryption;</EM> When
306 authenticating a request, CUPS now uses the
307 <CODE>DefaultEncryption</CODE> setting in
308 addition to any location or policy encryption
309 setting in effect</LI>
310
311 <LI><EM>Per-Printer
312 document-format-supported;</EM> CUPS now
313 maintains per-printer
314 <CODE>document-format-supported</CODE> attributes
315 that reflect the formats that can be printed by a
316 particular printer</LI>
317
318 <LI><EM>Server-side Default Options;</EM> CUPS
319 now supports server-side default options for each
320 printer or class that are applied to new
321 jobs</LI>
322
323 <LI><EM>POSIX ACL Support;</EM> CUPS now uses
324 POSIX ACLs, when available, to allows multiple
325 system groups to be used for local certificate
326 authentication</LI>
ef416fc2 327
757d2cad 328 <LI><EM>RunAsUser Removed;</EM> The insecure
329 RunAsUser mode has been removed in favor of OS
330 mechanisms such as SELinux</LI>
ef416fc2 331
757d2cad 332 <LI><EM>Launchd Support;</EM> The schedule now
333 supports running via the MacOS X launchd program,
334 delaying cupsd startup until needed</LI>
335
336 <LI><EM>Dynamic Device Lookup;</EM> The scheduler
337 now queries the backends for devices as
338 needed - no more restarting to get new devices!</LI>
339
340 <LI><EM>Dynamic PPD/Printer Driver Lookup;</EM>
341 The scheduler now scans for PPD files and/or
342 printer drivers as needed - no more restarting
343 after installing drivers, and PPD files can be
344 generated dynamically!</LI>
ef416fc2 345
757d2cad 346 <LI><EM>Port Monitor Support;</EM> CUPS now
347 supports "port monitor" filters between the
348 printer driver filters and backend to do printer-
349 and device-specific encoding and transport
350 functions.</LI>
ef416fc2 351
757d2cad 352 <LI><EM>Multi-File Job Improvements;</EM> CUPS
353 now sends multi-file jobs in a single connection
354 to the printer or remote server, preserving the
355 order of jobs</LI>
ef416fc2 356
757d2cad 357 <LI><EM>Environment Variable Support;</EM> The
358 scheduler now supports setting environment
359 variables for filters and CGI programs via the
360 Apache <CODE>PassEnv</CODE> and
361 <CODE>SetEnv</CODE> directives</LI>
ef416fc2 362
757d2cad 363 <LI><EM>Improved CGI Support;</EM> The scheduler
364 now supports more of the CGI/1.1
365 specification</LI>
ef416fc2 366
757d2cad 367 <LI><EM>Log Files;</EM> Log files are now
368 accessible via HTTP requests using the
369 <VAR>/conf/log/filename</VAR> resource</LI>
ef416fc2 370
757d2cad 371 <LI><EM>Power Management;</EM> The scheduler now
372 responds to power management events from the
373 operating system (currently MacOS X only)</LI>
ef416fc2 374
757d2cad 375 </OL></DD>
ef416fc2 376
377
757d2cad 378 <DT>LPD Client Support</DT>
379 <DD><OL START="68">
380
381 <LI><EM>Performance Improvements;</EM> CUPS no
382 longer loads every available printer before
383 accepting a print job</LI>
384
385 <LI><EM>Banner Support;</EM> Banner pages can now
386 be requested by an LPD client, with server-side
387 overrides as desired</LI>
388
389 <LI><EM>Multi-File Support;</EM> CUPS now creates
390 a single IPP job for multi-file LPD jobs</LI>
391
392 </OL></DD>
393
394
395 <DT>Localization and Internationalization</DT>
396 <DD><OL START="71">
397
398 <LI><EM>Command-Line Programs;</EM> All
399 command-line programs are now fully
400 localized</LI>
401
402 <LI><EM>Character Set Support;</EM> CUPS now
403 supports a wider range of character sets
404 including Big5 and Shift-JIS</LI>
405
406 <LI><EM>Globalized PPD Support;</EM> PPD files
407 can now contain multiple language
408 localizations</LI>
409
410 </OL></DD>
411
412
413 <DT>Printer Drivers</DT>
414 <DD><OL START="74">
415
416 <LI><EM>New Drivers;</EM> CUPS 1.2 adds Zebra
417 CPCL and EPL label printer drivers</LI>
418
419 <LI><EM>Driver Interfaces;</EM> CUPS now supports
420 driver interfaces which allow a driver to
421 advertise the printers it supports and
422 automatically generate the PPD file as
423 needed</LI>
424
425 <LI><EM>High-Definition Range Color;</EM> CUPS
426 1.2 adds 16-bit per channel color support</LI>
427
428 <LI><EM>Raster Compression;</EM> The CUPS raster
429 format has been updated to use data
430 compression for faster printing</LI>
431
432 <LI><EM>Extended Printer Attributes;</EM> The
433 CUPS raster format has been extended to support
434 additional per-page printer-specific
435 attributes</LI>
436
437 <LI><EM>Back-Channel Data Support;</EM> Printer
438 drivers can now read data back from the printer
439 device</LI>
440
441 <LI><EM>Custom PPD Options;</EM> PPD files can
442 now contain options that accept custom
443 values</LI>
444
445 </OL></DD>
446
447
448 <DT>CUPS API</DT>
449 <DD><OL START="81">
450
451 <LI><EM>Thread Safety;</EM> All of the CUPS API
452 is now thread-safe on systems that support POSIX
453 threads</LI>
454
455 <LI><EM>Performance Improvements;</EM> Many of
456 the existing APIs have been optimized for
457 speed</LI>
458
459 <LI><EM>Array API;</EM> The new array API
460 provides a generic array container and is used to
461 implement many of the new CUPS 1.2 features and
462 performance improvements</LI>
463
464 <LI><EM>Directory API;</EM> The new directory API
465 allows applications to portably list the contents
466 of a directory</LI>
467
468 <LI><EM>File API;</EM> The new file API supports
469 optionally-compressed file IO and simple socket
470 communications without the limitations of
471 stdio</LI>
472
473 <LI><EM>HTTP API;</EM> The HTTP API now provides
474 many new URI and address handling functions,
475 accessor functions to key <CODE>http_t</CODE>
476 information, write-buffering functions, and large
477 file APIs</LI>
478
479 <LI><EM>IPP API;</EM> The IPP API now provides
480 functions to encode arbitrary options, add
481 <CODE>octetString</CODE> attributes, create
482 common IPP requests, convert IPP status and
483 operation code values to/from strings, and read
484 and write IPP messages via callbacks.</LI>
485
486 <LI><EM>PPD API;</EM> The PPD API has been
487 updated with new functions to support reading
488 from CUPS files, localization of globalized PPD
489 files, emission of arbitrary ranges of options,
490 custom option support, enhanced JCL support, and
491 access to all options in the PPD file</LI>
492
493 <LI><EM>Error Handling;</EM> The CUPS API now
494 provides a convenience function to get the full
495 error message of the last request</LI>
496
497 <LI><EM>Back-Channel API;</EM> The new
498 back-channel API provides backends and filters
499 with access to information sent back from a
500 printer</LI>
501
502 </OL></DD>
503
504
505 <DT>CUPS Imaging API</DT>
506 <DD><OL START="91">
507
508 <LI><EM>Image API;</EM> The new image API
509 provides access to image files of arbitrary size
510 and is based on the CUPS 1.1.x private image
511 filter APIs</LI>
512
513 <LI><EM>Raster API;</EM> The raster API provides
514 new functions to read and write the version 2
515 raster page headers, and a new function to
516 generate a page header from marked PPD
517 options</LI>
518
519 </OL></DD>
520
521</DL>
ef416fc2 522
523</BODY>
524</HTML>