root / pykota / trunk / NEWS @ 1194

Revision 1194, 21.2 kB (checked in by jalet, 21 years ago)

Spanish translation by Dennis Romero L. added.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1# $Id$
2
3PyKota - Print Quota for CUPS
4
5(c) 2003 Jerome Alet <alet@librelogiciel.com>
6This program is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2 of the License, or
9(at your option) any later version.
10
11This program is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with this program; if not, write to the Free Software
18Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
19
20============================================================
21
22PyKota NEWS :
23
24    - 1.16alpha10 :
25   
26        - Spanish translation added.
27       
28    - 1.16alpha9 :
29   
30        - mailto can be set to external(...) to warn users above
31          quota with any command of your choice (e.g. linpopup).
32          Several parameters are available, see sample configuration
33          file for details.
34         
35    - 1.16alpha8 :
36   
37        - Now cupspykota transmits SIGTERMS to the original 
38          backend when the user deletes a job being processed.
39         
40        - The documentation is now licensed under the terms of the
41          GNU GPL too.
42         
43    - 1.16alpha7 :
44   
45        - The CUPS backend is now fully functionnal (it seems).
46       
47        - From now on, the use of the pykota filter with CUPS
48          is deprecated. The pykota filter still has to be
49          used with LPRng though.
50       
51    - 1.16alpha6 :
52   
53        - Bug fixed : when edpykota was used to add a printer
54          with no user or group name, a bad user/group name "*" was
55          added to the database.
56         
57    - 1.16alpha5 :
58   
59        - New CUPS backend supports device enumeration !
60          This means that NO manual CUPS configuration has to
61          be done. All can now be done from CUPS web interface.
62       
63    - 1.16alpha4 :
64   
65        - New CUPS backend added.
66       
67    - 1.16alpha3 :
68       
69        - Minimal FAQ document added.
70       
71    - 1.16alpha2 :
72   
73        - CGI script now partially supports browser's language preference
74       
75    - 1.16alpha1 :
76   
77        - Ensures that the LDAP connection is really closed at end.
78       
79        - More complete error messages in case of LDAP operation failure.
80       
81    - 1.15 :
82     
83        - Documentation improved.
84       
85    - 1.15beta :
86   
87        - Command line tools now accept multiple printer
88          names or wildcards, separated with commas.
89         
90    - 1.15alpha9 :
91   
92        - External policy can be used to auto-add unknown users
93          and any other interesting things you may want to do.
94          WARNING : You can't auto-add printers for now.
95          They have to be created manually before.
96          Look at sample configuration file for examples.
97         
98    - 1.15alpha8 :
99   
100        - Job history can be disabled if needed.
101          This feature may be useful for people who use the LDAP
102          backend and don't want their LDAP tree to grow out of
103          control.
104       
105    - 1.15alpha7 :
106   
107        - More work done on caching wrt groups.
108       
109    - 1.15alpha6 :
110   
111        - Performance bottleneck with LDAP solved.
112       
113    - 1.15alpha5 :
114   
115        - Caching mechanism for all database queries.
116
117    - 1.15alpha4 :
118   
119        - Problem with Python 2.3 fixed. Needs some definitive
120          modification.
121         
122    - 1.15alpha3 :
123   
124        - CGI script now tries to restrict view when the
125          REMOTE_USER environment variable is set. This allows
126          people to protect its use with .htaccess files.
127          When unprotected, or if REMOTE_USER is 'root', then
128          unrestricted access is granted.
129          NB : REMOTE_USER is automatically set by the web server
130          (e.g. Apache) when a page with restricted access is viewed.
131         
132    - 1.15alpha2 :
133   
134        - Better detection of LPRng.
135       
136        - Outputs a warning if printing system is unknown.
137       
138    - 1.15alpha1 :
139   
140        - Bug fix in SQL code.
141       
142    - 1.14 :
143   
144        - The PostgreSQL database connection is now always closed before
145          exit. The LDAP database connection too, but it didn't suffer
146          from the problem anyway, AFAICT.
147       
148    - 1.14beta2 :
149   
150        - An LDAP-specific configuration field was introduced, usermail.
151          Use it to specify which LDAP attribute contains a valid email
152          address for the user. See sample configuration file for
153          details.
154       
155    - 1.14beta :
156   
157        - Two new LDAP-specific configuration fields were introduced,
158          newuser and newgroup. Use them to specify if you want to add
159          quota information to existing entries or elsewhere.
160          See sample configuration file for details.
161         
162    - 1.14alpha9 :
163   
164        - Documentation improved.
165       
166        - pykotme now also prints the user's account balance value
167          if the user is registered in the Quota Storage and his
168          limiting factor is "balance".
169         
170    - 1.14alpha8 :
171   
172        - bin/waitprinter.sh is now included to wait for
173          SNMP enabled printers to be idle again before
174          asking for their internal page counter.
175          See sample configuration file for details.
176         
177    - 1.14alpha7 :
178   
179        - edpykota now doesn't check if the user/group is above
180          quota. The check is only done at print time. This
181          prevents the sending of email messages when creating
182          user quotas if quota is already reached at creation
183          time.
184         
185    - 1.14alpha6 :
186   
187        - Configuration file split and moved to /etc/pykota/pykota.conf
188          and /etc/pykota/pykotadmin.conf to prevent simple users to
189          have Read/Write access to the Quota Database.
190          Don't forget to :
191         
192                $ chmod 640 /etc/pykota/pykotadmin.conf
193               
194        - storageuser and storageuserpw configuration fields reintroduced
195          for the same reason.
196         
197        - Code cleaning for future implementation of email addresses
198          support in the PostgreSQL and LDAP backends.
199         
200    - 1.14alpha5 :
201       
202        - Big bug fixed when changing the prices for a printer
203       
204    - 1.14alpha4 :
205   
206        - When adding an user, the user itself and its account balance
207          are now added in the same LDAP entry. Before they were added
208          as two different LDAP entries.
209         
210    - 1.14alpha3 :
211   
212        - Email field added to PostgreSQL database. An upgrade script
213          is included in initscripts/postgresql.
214       
215    - 1.14alpha2 :
216   
217        - Typo fixed when using the --prototype option to edpykota
218       
219    - 1.14alpha1 :
220   
221        - Poor man's treshold included : users with a low account
222          balance (below 1.0 by default, configurable) are sent
223          a warning message.
224         
225        - All warning messages to users are now configurable. 
226          NB : Warning messages to the administrator are not.
227       
228    - 1.13 :
229   
230        - Some small fixes wrt group handling.
231       
232        - The whole module code was passed through PyChecker and
233          several small code inconsistencies were fixed,
234          as well as a bug in the groups code.
235         
236    - 1.13alpha1 :
237   
238        - Bug fix wrt LDAP.
239       
240    - 1.12 :
241   
242        - More complete test added in edpykota.
243       
244    - 1.12alpha2 :
245   
246        - The previous bug fix was incomplete. This is corrected.
247       
248    - 1.12alpha1 :
249   
250        - Small bug fix.
251       
252    - 1.11 :
253   
254        - Now includes the pykotme command line tool, to produce
255          printing quotes for users.
256         
257    - 1.10 :
258   
259        - Bug fixed wrt quota reports when print limiting is by
260          account balance.
261         
262    - 1.09 :
263   
264        - Translations finalized.
265       
266        - Manpages updated.
267       
268        - Installation documentation improved wrt LDAP support.
269       
270    - 1.09beta2 :
271   
272        - The CGI script for quota reports works again, and
273          is much more powerful.
274       
275    - 1.09beta :
276   
277        - edpykota finalized
278       
279    - 1.09alpha2 :
280   
281        - LDAP schema modified a bit. Please upgrade.
282       
283        - LDAP backend works !
284       
285        - repykota and warnpykota allow the root user to pass
286          users or groups names on the command line. Users
287          and groups names may contain wildcards.
288         
289        - repykota and warnpykota only reports or warns the
290          current user when launched by non-root users.
291         
292        - Minor bug fixes. 
293   
294    - 1.09alpha1 :
295   
296        - More work on LDAP storage backend. Many options
297          were added to /etc/pykota.conf to give some
298          hints to the LDAP storage backend.
299         
300        - Severe database access optimizations were done by
301          rewriting most of the Quota Storage backends drivers.
302     
303    - 1.08 :
304   
305        - Major bug fix wrt LPRng support for remote jobs.
306       
307        - Major bug fix wrt increase/decrease account balances.
308       
309    - 1.08alpha8 :
310   
311        - Code refactoring.
312       
313        - A single user/password pair is used to connect
314          to the database backend. The storageuser configuration
315          field, and its associated passwords storageuserpw, are
316          not used anymore.
317         
318        - You can now set PyKota in debug mode, see sample configuration 
319          file for details.
320          WARNING : only Quota Storage backend queries are logged in
321          debug mode, for now.
322       
323    - 1.08alpha7 :
324   
325        - Very latest LDAP schema.
326       
327        - Code enhancement wrt easy pluggability of PyKota attributes
328          and object classes into an existing LDAP directory.
329       
330    - 1.08alpha6 :
331   
332        - Minor bug corrections
333       
334        - More work on LDAP : new schema
335       
336    - 1.08alpha5 :
337   
338        - More good work on LDAP storage.
339          repykota now works reasonably well with the sample LDAP directory.
340       
341    - 1.08alpha4 :
342   
343        - LDAP schema included.
344          THIS IS JUST FOR PEOPLE TO DISCUSS ABOUT THIS.
345          LDAP SUPPORT DOESN'T WORK YET, AND THE SCHEMA
346          MAY CHANGE IN THE FUTURE. PLEASE TELL US
347          WHAT YOU THINK ABOUT THIS SCHEMA ON THE
348          MAILING LIST.
349         
350    - 1.08alpha3 :
351   
352        - External accounting methods were partly rewritten :
353         
354          - No more "broken pipe" should happen.
355         
356          - They now take care of the number of copies
357            This may be unneeded though, if the postscript
358            file already does this, because this would
359            overcharge users (number of copies counted
360            two times). NEEDS MORE TESTING.
361           
362          - The sample configuration file now contains 
363            an external accounting method example which should
364            work with all DSC compliant Postscript files.
365           
366        - Some small bugs were fixed.   
367       
368    - 1.08alpha2 :
369   
370        - Now works with net-snmp v5.0 and above.
371          It already worked, but the sample configuration
372          file didn't contain appropriate values...
373       
374    - 1.07 : Release of the Shame !
375   
376        - The external accounting methods driver was left out of
377          the CVS tree. Nobody could use it since it wasn't included !
378         
379    - 1.06 :
380   
381        - Severe bug fixed : if you had a printer in
382          power saving state which couldn't answer immediately,
383          a bug was triggered.
384          It was caused by a bad copy/paste which
385          forgot to import a Python module at run time.
386         
387    - 1.05 :
388   
389        - External accounters are finally available !
390          This means that you can plug any page accounting
391          method you like by setting the appropriate
392          'accounter' field in /etc/pykota.conf
393          See the sample conf/pykota.conf.sample to
394          learn how to do.
395         
396          NB : Both 'external' and 'stupid' accounting methods
397               account a job size just before *this* job is
398               sent to the printer.
399               The original 'querying' method accounts a job
400               size just before *the next* job is sent to
401               the printer.
402       
403    - 1.05alpha3 :
404   
405        - A 'stupid' and unreliable accounting method was
406          implemented to serve as an example on how to
407          do this sort of things. This method only counts
408          the 'showpage' statements in the input data.
409          See sample configuration file for details.
410          Pluggable accounting methods work, but I advise
411          you TO NOT USE THIS ONE WHICH IS JUST AN EXAMPLE.
412          It is not reliable enough to be used.
413          Use the 'querying' accounting method instead.
414         
415    - 1.05alpha2 :
416   
417        - Pluggable accounting methods.
418       
419        - Better error handling.
420       
421    - 1.05alpha1 :
422   
423        - SECURITY file added to help improve PyKota's security.
424       
425        - Extracting the printer's internal page counter is now
426          tried several times, waiting several seconds between
427          two tries. This lets the time to warm up for some printers
428          which don't answer when they are sleeping (my Apple
429          LaserWriter 16/600 PS is in this case, maybe others too)
430         
431        - Small display bug fixed in repykota
432         
433    - 1.04 :
434   
435        - Default print policy for users/groups unknown from
436          the print quota system is now DENY instead of ALLOW,
437          since ALLOW can generate inaccurate results
438          (incorrect job sizes charged to the wrong persons)
439         
440        - LPRng support works !
441       
442        - A bug was introduced some time ago wrt printers' default
443          policy for unknown users. It is now corrected.
444       
445        - repykota now displays prices per job and per page for each
446          printer, if they are defined.
447         
448        - Minor display bug fixed in repykota.
449       
450        - Problem when running repykota with an empty database was fixed.
451       
452    - 1.03 :
453   
454        - Upgrade script included for earlier versions.
455          Please look inside the initscripts subdirectory.
456          THE DATABASE SCHEMA HAS CHANGED, PLEASE UPGRADE.
457         
458        - repykota now reports account balances too.
459       
460        - PyKota now has a nice logo, see the logos
461          subdirectory.
462       
463        - Manual pages were finally updated.
464       
465        - Group quotas seem to work now !
466       
467        - The new database schema allows to keep an history of all
468          jobs as well as charge users per page and/or per job,
469          and track users' account balance.
470         
471        - edpykota now accepts much more command line options to 
472          use the new functionnalities. See edpykota --help for
473          details.
474         
475        - The installation script now allows to install the sample
476          configuration file during first installation.
477         
478        - More group quota code works, but still not finished. 
479       
480        - The CGI script displays a link to PyKota's website.
481       
482        - The job history is now kept, this will allow per-period
483          reports in the future.
484         
485        - After having modified the quota for an user with edpykota,
486          a quota check is done to eventually warn the user/admin about
487          a quota which is too low to print.
488         
489        - A workaround is provided for HP Printers : their internal
490          page counter is only saved to NVRAM in a 10 increment, so
491          if you switch them off and then on, the reported page counter
492          may be lower than the real number of pages printed.
493          See http://web.mit.edu/source/third/lprng/doc/LPRng-HOWTO-15.html
494          We unconditionnally set the last job's page count to
495          abs(int((10 - abs(lastcounter(snmp) - lastcounter(storage)) / 2))
496          in this case.
497          For a more accurate accounting, never switch your HP printers
498          off.
499         
500        - A fix is provided for printers which only have a volatile 
501          page counter (reset to 0 every time you switch the printer on)
502          This should allow PyKota to work reasonably fine with HP Laserjet
503          4L/5L/6L, not perfect, but better than nothing.
504          See http://web.mit.edu/source/third/lprng/doc/LPRng-HOWTO-15.html
505          For a more accurate accounting, never switch your HP printers
506          off. This is untested, please report any problem.
507         
508        - A bug was fixed when edpykota --add was used with users who already
509          had a quota on the specified printer.
510         
511        - A small display bug in repykota was introduced in preliminary
512          1.03 versions, and fixed later on.
513         
514        - Some minor bugs which happened in rare situations were fixed.
515       
516        - Support for AppleTalk printers was added, see sample configuration
517          file for details.
518         
519        - Users and group printing can now be controlled (limited) either by 
520          print quota or by account balance.
521       
522    - 1.02 :
523   
524        - The installation script now checks for software availability
525          and in case a software is missing asks the user if he
526          wants to continue with the installation or abort it.
527         
528        - The configuration file pykota.conf is now expected to be
529          found in /etc instead of in /etc/cups
530          The installation script prompts the user to see if he
531          wants to move an old configuration file to the new location
532          if needed.
533         
534        - Improved documentation.
535       
536        - You can now set the tcp/ip port on which the Quota Storage
537          Server is listening, see sample configuration file for details.
538       
539        - Better general error handling.
540       
541        - Upgrade script for pre 1.01 PostgreSQL database schema is now
542          included as well.
543       
544    - 1.01 :
545   
546        - The configuration file now accepts an option   
547          to choose the recipient(s) of the email messages :
548         
549            - DevNull means no one will receive them.
550            - User means only the user will receive them.
551            - Admin means only the admin will receive them.
552            - Both means the User and the Admin will receive them.
553           
554        - The configuration file now uses hard-coded default values
555          when an option is not set. See sample configuration file
556          for details.
557         
558        - Manual pages are included since 1.00, but I forgot to   
559          add this information to this file.
560         
561        - Redistribution terms for the official package have 
562          softened and are now fully GPL compatible :
563          unrestricted modification is now allowed even for
564          the version number.
565         
566    - 1.00 :
567   
568        - edpykota now accepts a --noquota option. This
569          disable quota checking while still doing page
570          accounting. This is really useful for people
571          who don't want to limit their users but want
572          to know how much pages they print.
573         
574        - Some untested scripts were added to retrieve
575          the life time page counter of non-SNMP printers.
576         
577        - Every directory now has a specific README file. 
578       
579    - 0.99 :
580   
581        - Under some circumstances while the user wasn't allowed
582          to print, he didn't receive any email message. It is
583          now fixed.
584         
585        - When an user wasn't allowed to print, the quota for
586          the previous user wasn't updated. This is now fixed.
587         
588    - 0.98 :
589   
590        - Correctly handle the case where the printer is switched off.
591       
592        - Small bug wrt syslog fixed.
593       
594    - 0.97 :
595   
596        - edpykota accepts wildcards on its command line for users/groups too
597          if the --add option is not set, e.g. :
598         
599              $ edpykota --printer lp --softlimit 50 --hardlimit 100 "jer*"
600             
601        - If no user name is passed at all, then a default wildcard of "*"
602          which means apply the command on ALL users for this printer is used.
603         
604        - Small bug fixes.
605       
606    - 0.96 :
607
608        - Options requester, policy, admin, adminmail and gracedelay can now
609          be set either globally or per printer. The printer option has
610          priority if both are defined.
611
612        - More powerful configuration parser.
613       
614        - If all options are defined globally, there's no need to
615          define a section for each printer in the configuration
616          file anymore. Just define a [global] section and it's ok.
617
618    - 0.95 :
619
620        - External requesters for printers finally added.
621
622        - Full internationalization (english and french are supported)
623 
624        - More complete quota usage report
625
626        - CGI script to access to the quota usage report
627
628        - Several bugs fixed.
629
630
631    - 0.9 :
632
633        - First public version
Note: See TracBrowser for help on using the browser.