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