root / pykota / trunk / NEWS @ 1453

Revision 1453, 31.6 kB (checked in by jalet, 20 years ago)

Added --skipexisting command line option to pkprinters

  • 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-2004 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.19alpha5 :
25   
26        - pkprinters --skipexisting now tells pkprinters to not
27          modify existing printers when --add is used.
28          pkprinters logs a warning message whenever --add is
29          used and a printer already exists.
30         
31    - 1.19alpha4 :
32   
33        - a bad copy&paste prevented pkpgcounter to work at all, this
34          is now fixed.
35         
36        - improved PCL support in pkpgcounter, with the use of
37          HP PCL/PJL Reference Set
38          PCL5 Printer Language Technical Quick Reference Guide
39       
40        - pkpgcounter now uses mmap to speed things up : duration
41          is halved with the sample 87 pages PCL document I use for
42          testing.
43         
44    - 1.19alpha3 :
45   
46        - pkprinters now accepts the --list command line argument
47          to list informations about printers.
48         
49    - 1.19alpha2 :
50   
51        - pkpgcounter is now included as a smart external
52          accounter which can handle both PostScript and PCL.
53         
54    - 1.19alpha1 :
55   
56        - PYKOTALIMITBY environment variable is now exported too.
57       
58        - Inclusion of Michele Baldessari's work on autotools.
59       
60    - 1.18 :
61   
62        - Improved documentation
63       
64    - 1.18beta2 :
65     
66        - Fix for raw jobs with cupspykota
67       
68    - 1.18beta :
69   
70        - Small fix for new waitprinter.sh script
71       
72        - Better tracebacks on error conditions
73       
74        - Improved translations
75       
76        - Improved documentation
77       
78    - 1.18alpha15 :
79
80        - waitprinter.sh replaced by a new and possibly faster
81          and more powerful one.
82   
83        - Names can now begin with a digit.
84       
85        - Stability improvement for quotas set on printers groups.
86       
87    - 1.18alpha14 :
88   
89        - Catches more (all ?) problems with SMTP servers instead
90          of breaking.
91         
92        - Italian translation added.
93       
94    - 1.18alpha13 :
95   
96        - Pre and Post hooks are now available in the pykota
97          filter as well.
98         
99        - The pykota filter doesn't check last user's quota
100          anymore when delayed hardware accounting is used :
101          this will be done anyway the next time the last
102          user will print again. This saves some database
103          queries which are unneeded.
104       
105    - 1.18alpha12 :
106   
107        - Pre and Post hooks to external commands with many
108          many environment variables available are useable
109          from the cupspykota backend.
110          See sample configuration file for details and help.
111         
112    - 1.18alpha11 :
113   
114        - Hopefully final fix wrt groups (users and printers)
115       
116    - 1.18alpha10 :
117   
118        - Fixed nested printer groups accounting.
119       
120        - Fixed user groups + printer groups problem.
121       
122    - 1.18alpha9 :
123   
124        - Fix for LDAP problem when job price was 0.
125       
126        - Fix for empty user groups with LDAP.
127       
128        - Preliminary version of the snmpprinterstatus command added.
129       
130    - 1.18alpha8 :
131   
132        - Don't retrieve data when not needed.
133          This avoids many database queries.
134       
135    - 1.18alpha7 :
136   
137        - New experimental ldapcache directive to improve
138          LDAP caching.
139         
140    - 1.18alpha6 :
141       
142        - New configuration directive added : maildomain
143          to specify the domain to send mail to when user
144          email address is not set in PyKota database.
145         
146        - More complete email message headers. 
147         
148    - 1.18alpha5 :
149   
150        - Debian packaging specific files, contributed by
151          Peter Hawkins are now included in the project's tree.
152         
153        - Preliminary work on future low-level LDAP caching to speed
154          up modifications (at least).
155         
156    - 1.18alpha4 :
157   
158        - Applied some of the modifications suggested by
159          Peter Hawkins, for better Debian integration.
160          Most notably cupspykota, pykota, and the shell
161          scripts are now installed into /usr/share/pykota
162          instead of into /usr/bin
163          BEWARE : double check that your symbolic link
164          to cupspykota is correct, and that your pykota.conf
165          file use correct path for the shell scripts like
166          waitprinter.sh and al.
167         
168        - pkhint command added, to help in configuring correct
169          accounting method for PyKota.
170         
171    - 1.18alpha3 :
172   
173        - Fixed a rare bug in cupspykota backend which gave
174          incorrect "CUPS backend died abnormally" messages.
175       
176    - 1.18alpha2 :
177   
178        - Added the pkprinters command line tool to manage printers
179          exclusively.
180       
181    - 1.18alpha1 :
182   
183        - Preliminary work on Relationnal Database Independance.
184       
185        - Sample report made from OpenOffice.org added as PDF and SXC.
186       
187    - 1.17 :
188   
189        - Finalized release.
190       
191    - 1.17alpha2 :
192   
193        - Fix stupid software accounting bug in the CUPS backend.
194       
195    - 1.17alpha1 :
196   
197        - User/Group deletion code in edpykota rewritten.
198       
199    - 1.16 :
200   
201        - Preliminary documentation on how to use OpenOffice.org
202          to create personnalized reports for PyKota + PostgreSQL.
203         
204        - Spanish installation guide for CUPS+PyKota+PostgreSQL
205          added to the documentation. Doesn't yet document v1.16
206          though.
207       
208        - Portuguese Portuguese translation replaces Brasilian
209          Portuguese Translation. Brasilian portuguese
210          translation is still available under the 'br' locale.
211       
212    - 1.16beta3 :
213   
214        - Swedish translation added.
215       
216        - Small fix in documentation.
217       
218    - 1.16beta2 :
219   
220        - Small fix for job cancelling code while job already
221          printing in CUPS backend.
222         
223        - Big fix wrt printing policies for unknown users. 
224       
225    - 1.16beta1 :
226   
227        - Manpages upgraded.
228       
229    - 1.16alpha26 :
230   
231        - Job price is now computed like this :
232       
233          SUM((NbPages * PricePerPage) + PricePerJob)
234         
235          For current printer and all the printers groups it is
236          a member of, if any.
237         
238          This may be difficult to grasp, but offers unprecedented
239          flexibility.
240         
241    - 1.16alpha25 :
242   
243        - Email address can be set at user creation time,
244          using the following syntax :
245         
246            $ edpykota --add username/email@yourdomain.com
247       
248    - 1.16alpha24 :
249   
250        - CGI script now can show the printing history.
251       
252        - Bug wrt number of copies should be fixed.
253       
254        - Major code refactoring => It is now possible to
255          automatically add printers on first print.
256       
257    - 1.16alpha23 :
258   
259        - Fixed potential accuracy problem if a user printed on
260          several printers at the very same time.
261       
262    - 1.16alpha22 :
263   
264        - edpykota now allows adding printers to printer groups
265       
266    - 1.16alpha21 :
267   
268        - Allows the dot in user and printer names.
269       
270        - Printer groups are now cached too.
271       
272    - 1.16alpha20 :
273   
274        - Fixed several small bugs with the help of PyChecker.
275       
276    - 1.16alpha19 :
277     
278        - Fixed a bug in PostgreSQL backend's code.
279       
280    - 1.16alpha18 :
281   
282        - Initial code for printer groups support. Printer groups have
283          to be added with external tools like psql or gq for example.
284          Printer groups seems to work fine with users. Untested with user
285          groups for now.
286
287        - Several minor visual problems fixed in reports.
288       
289        - Fixed a bug in LDAP date handling.
290       
291        - Fix for LDAP problem with some combination of OpenLDAP + Python-LDAP
292          + some particular settings.
293         
294        - mailandpopup.sh shell script added. See sample configuration file
295          for details.
296       
297        - Several environment variables are now exported when executing
298          external commands (accounters, requesters, mailers) :
299           
300            PYKOTAUSERNAME => user who is printing
301            PYKOTAPRINTERNAME => printer on which the job is being sent
302            PYKOTATITLE => Job's title
303            PYKOTAFILENAME => Job's filename
304            PYKOTACOPIES => number of copies asked
305            PYKOTAOPTIONS => print command options (-o with CUPS)
306         
307    - 1.16alpha17 :
308   
309        - Added portugues translation.
310       
311        - Major code refactoring in accounters.
312       
313    - 1.16alpha16 :
314   
315        - Code refactoring, and addition of a real HTML reporter, to
316          have nice looking and useful web based reports (in the future).
317       
318        - Added utolower configuration option to convert all usernames
319          to lowercase during printing.
320         
321    - 1.15alpha15 :
322   
323        - Now includes the papwaitprinter.sh shell script to wait for
324          AppleTalk enabled printers.
325         
326    - 1.16alpha14 :
327   
328        - Now printing on a printer not defined in the Quota Storage,
329          results in the job being cancelled or stopped, depending
330          on the printing system.
331         
332    - 1.16alpha13 :
333   
334        - Small bugfix wrt Python v2.1
335       
336        - If username is an empty string, user root is assumed.
337       
338        - 'postgresql' is not recognized anymore as a storage backend,
339          you have to use 'pgstorage' instead. 'postgresql' used to
340          be supported for compatibility with very old PyKota versions,
341          this is not the case anymore.
342         
343    - 1.16alpha12 :
344   
345        - Job price added to job history, to keep accounting correct
346          if a printer price per page or per job is modified and the
347          history is not reset : the history would have given a false
348          amount of money charged before the printer's prices were
349          modified, this addition solves the problem.
350         
351    - 1.16alpha11 :
352   
353        - Some preliminary modifications to the database structure for
354          PostgreSQL and OpenLDAP. A script to upgrade a PostgreSQL
355          database is now provided. LDAP attributes now support
356          eq, pres and sub indexes.
357         
358        - Job history now contains additional informations : 
359          number of copies, filename, title and print options.
360         
361    - 1.16alpha10 :
362       
363        - Some modifications done to external policy handling.
364          See sample configuration file for details.
365   
366        - Spanish translation added.
367       
368    - 1.16alpha9 :
369   
370        - mailto can be set to external(...) to warn users above
371          quota with any command of your choice (e.g. linpopup).
372          Several parameters are available, see sample configuration
373          file for details.
374         
375    - 1.16alpha8 :
376   
377        - Now cupspykota transmits SIGTERMS to the original 
378          backend when the user deletes a job being processed.
379         
380        - The documentation is now licensed under the terms of the
381          GNU GPL too.
382         
383    - 1.16alpha7 :
384   
385        - The CUPS backend is now fully functionnal (it seems).
386       
387        - From now on, the use of the pykota filter with CUPS
388          is deprecated. The pykota filter still has to be
389          used with LPRng though.
390       
391    - 1.16alpha6 :
392   
393        - Bug fixed : when edpykota was used to add a printer
394          with no user or group name, a bad user/group name "*" was
395          added to the database.
396         
397    - 1.16alpha5 :
398   
399        - New CUPS backend supports device enumeration !
400          This means that NO manual CUPS configuration has to
401          be done. All can now be done from CUPS web interface.
402       
403    - 1.16alpha4 :
404   
405        - New CUPS backend added.
406       
407    - 1.16alpha3 :
408       
409        - Minimal FAQ document added.
410       
411    - 1.16alpha2 :
412   
413        - CGI script now partially supports browser's language preference
414       
415    - 1.16alpha1 :
416   
417        - Ensures that the LDAP connection is really closed at end.
418       
419        - More complete error messages in case of LDAP operation failure.
420       
421    - 1.15 :
422     
423        - Documentation improved.
424       
425    - 1.15beta :
426   
427        - Command line tools now accept multiple printer
428          names or wildcards, separated with commas.
429         
430    - 1.15alpha9 :
431   
432        - External policy can be used to auto-add unknown users
433          and any other interesting things you may want to do.
434          WARNING : You can't auto-add printers for now.
435          They have to be created manually before.
436          Look at sample configuration file for examples.
437         
438    - 1.15alpha8 :
439   
440        - Job history can be disabled if needed.
441          This feature may be useful for people who use the LDAP
442          backend and don't want their LDAP tree to grow out of
443          control.
444       
445    - 1.15alpha7 :
446   
447        - More work done on caching wrt groups.
448       
449    - 1.15alpha6 :
450   
451        - Performance bottleneck with LDAP solved.
452       
453    - 1.15alpha5 :
454   
455        - Caching mechanism for all database queries.
456
457    - 1.15alpha4 :
458   
459        - Problem with Python 2.3 fixed. Needs some definitive
460          modification.
461         
462    - 1.15alpha3 :
463   
464        - CGI script now tries to restrict view when the
465          REMOTE_USER environment variable is set. This allows
466          people to protect its use with .htaccess files.
467          When unprotected, or if REMOTE_USER is 'root', then
468          unrestricted access is granted.
469          NB : REMOTE_USER is automatically set by the web server
470          (e.g. Apache) when a page with restricted access is viewed.
471         
472    - 1.15alpha2 :
473   
474        - Better detection of LPRng.
475       
476        - Outputs a warning if printing system is unknown.
477       
478    - 1.15alpha1 :
479   
480        - Bug fix in SQL code.
481       
482    - 1.14 :
483   
484        - The PostgreSQL database connection is now always closed before
485          exit. The LDAP database connection too, but it didn't suffer
486          from the problem anyway, AFAICT.
487       
488    - 1.14beta2 :
489   
490        - An LDAP-specific configuration field was introduced, usermail.
491          Use it to specify which LDAP attribute contains a valid email
492          address for the user. See sample configuration file for
493          details.
494       
495    - 1.14beta :
496   
497        - Two new LDAP-specific configuration fields were introduced,
498          newuser and newgroup. Use them to specify if you want to add
499          quota information to existing entries or elsewhere.
500          See sample configuration file for details.
501         
502    - 1.14alpha9 :
503   
504        - Documentation improved.
505       
506        - pykotme now also prints the user's account balance value
507          if the user is registered in the Quota Storage and his
508          limiting factor is "balance".
509         
510    - 1.14alpha8 :
511   
512        - bin/waitprinter.sh is now included to wait for
513          SNMP enabled printers to be idle again before
514          asking for their internal page counter.
515          See sample configuration file for details.
516         
517    - 1.14alpha7 :
518   
519        - edpykota now doesn't check if the user/group is above
520          quota. The check is only done at print time. This
521          prevents the sending of email messages when creating
522          user quotas if quota is already reached at creation
523          time.
524         
525    - 1.14alpha6 :
526   
527        - Configuration file split and moved to /etc/pykota/pykota.conf
528          and /etc/pykota/pykotadmin.conf to prevent simple users to
529          have Read/Write access to the Quota Database.
530          Don't forget to :
531         
532                $ chmod 640 /etc/pykota/pykotadmin.conf
533               
534        - storageuser and storageuserpw configuration fields reintroduced
535          for the same reason.
536         
537        - Code cleaning for future implementation of email addresses
538          support in the PostgreSQL and LDAP backends.
539         
540    - 1.14alpha5 :
541       
542        - Big bug fixed when changing the prices for a printer
543       
544    - 1.14alpha4 :
545   
546        - When adding an user, the user itself and its account balance
547          are now added in the same LDAP entry. Before they were added
548          as two different LDAP entries.
549         
550    - 1.14alpha3 :
551   
552        - Email field added to PostgreSQL database. An upgrade script
553          is included in initscripts/postgresql.
554       
555    - 1.14alpha2 :
556   
557        - Typo fixed when using the --prototype option to edpykota
558       
559    - 1.14alpha1 :
560   
561        - Poor man's treshold included : users with a low account
562          balance (below 1.0 by default, configurable) are sent
563          a warning message.
564         
565        - All warning messages to users are now configurable. 
566          NB : Warning messages to the administrator are not.
567       
568    - 1.13 :
569   
570        - Some small fixes wrt group handling.
571       
572        - The whole module code was passed through PyChecker and
573          several small code inconsistencies were fixed,
574          as well as a bug in the groups code.
575         
576    - 1.13alpha1 :
577   
578        - Bug fix wrt LDAP.
579       
580    - 1.12 :
581   
582        - More complete test added in edpykota.
583       
584    - 1.12alpha2 :
585   
586        - The previous bug fix was incomplete. This is corrected.
587       
588    - 1.12alpha1 :
589   
590        - Small bug fix.
591       
592    - 1.11 :
593   
594        - Now includes the pykotme command line tool, to produce
595          printing quotes for users.
596         
597    - 1.10 :
598   
599        - Bug fixed wrt quota reports when print limiting is by
600          account balance.
601         
602    - 1.09 :
603   
604        - Translations finalized.
605       
606        - Manpages updated.
607       
608        - Installation documentation improved wrt LDAP support.
609       
610    - 1.09beta2 :
611   
612        - The CGI script for quota reports works again, and
613          is much more powerful.
614       
615    - 1.09beta :
616   
617        - edpykota finalized
618       
619    - 1.09alpha2 :
620   
621        - LDAP schema modified a bit. Please upgrade.
622       
623        - LDAP backend works !
624       
625        - repykota and warnpykota allow the root user to pass
626          users or groups names on the command line. Users
627          and groups names may contain wildcards.
628         
629        - repykota and warnpykota only reports or warns the
630          current user when launched by non-root users.
631         
632        - Minor bug fixes. 
633   
634    - 1.09alpha1 :
635   
636        - More work on LDAP storage backend. Many options
637          were added to /etc/pykota.conf to give some
638          hints to the LDAP storage backend.
639         
640        - Severe database access optimizations were done by
641          rewriting most of the Quota Storage backends drivers.
642     
643    - 1.08 :
644   
645        - Major bug fix wrt LPRng support for remote jobs.
646       
647        - Major bug fix wrt increase/decrease account balances.
648       
649    - 1.08alpha8 :
650   
651        - Code refactoring.
652       
653        - A single user/password pair is used to connect
654          to the database backend. The storageuser configuration
655          field, and its associated passwords storageuserpw, are
656          not used anymore.
657         
658        - You can now set PyKota in debug mode, see sample configuration 
659          file for details.
660          WARNING : only Quota Storage backend queries are logged in
661          debug mode, for now.
662       
663    - 1.08alpha7 :
664   
665        - Very latest LDAP schema.
666       
667        - Code enhancement wrt easy pluggability of PyKota attributes
668          and object classes into an existing LDAP directory.
669       
670    - 1.08alpha6 :
671   
672        - Minor bug corrections
673       
674        - More work on LDAP : new schema
675       
676    - 1.08alpha5 :
677   
678        - More good work on LDAP storage.
679          repykota now works reasonably well with the sample LDAP directory.
680       
681    - 1.08alpha4 :
682   
683        - LDAP schema included.
684          THIS IS JUST FOR PEOPLE TO DISCUSS ABOUT THIS.
685          LDAP SUPPORT DOESN'T WORK YET, AND THE SCHEMA
686          MAY CHANGE IN THE FUTURE. PLEASE TELL US
687          WHAT YOU THINK ABOUT THIS SCHEMA ON THE
688          MAILING LIST.
689         
690    - 1.08alpha3 :
691   
692        - External accounting methods were partly rewritten :
693         
694          - No more "broken pipe" should happen.
695         
696          - They now take care of the number of copies
697            This may be unneeded though, if the postscript
698            file already does this, because this would
699            overcharge users (number of copies counted
700            two times). NEEDS MORE TESTING.
701           
702          - The sample configuration file now contains 
703            an external accounting method example which should
704            work with all DSC compliant Postscript files.
705           
706        - Some small bugs were fixed.   
707       
708    - 1.08alpha2 :
709   
710        - Now works with net-snmp v5.0 and above.
711          It already worked, but the sample configuration
712          file didn't contain appropriate values...
713       
714    - 1.07 : Release of the Shame !
715   
716        - The external accounting methods driver was left out of
717          the CVS tree. Nobody could use it since it wasn't included !
718         
719    - 1.06 :
720   
721        - Severe bug fixed : if you had a printer in
722          power saving state which couldn't answer immediately,
723          a bug was triggered.
724          It was caused by a bad copy/paste which
725          forgot to import a Python module at run time.
726         
727    - 1.05 :
728   
729        - External accounters are finally available !
730          This means that you can plug any page accounting
731          method you like by setting the appropriate
732          'accounter' field in /etc/pykota.conf
733          See the sample conf/pykota.conf.sample to
734          learn how to do.
735         
736          NB : Both 'external' and 'stupid' accounting methods
737               account a job size just before *this* job is
738               sent to the printer.
739               The original 'querying' method accounts a job
740               size just before *the next* job is sent to
741               the printer.
742       
743    - 1.05alpha3 :
744   
745        - A 'stupid' and unreliable accounting method was
746          implemented to serve as an example on how to
747          do this sort of things. This method only counts
748          the 'showpage' statements in the input data.
749          See sample configuration file for details.
750          Pluggable accounting methods work, but I advise
751          you TO NOT USE THIS ONE WHICH IS JUST AN EXAMPLE.
752          It is not reliable enough to be used.
753          Use the 'querying' accounting method instead.
754         
755    - 1.05alpha2 :
756   
757        - Pluggable accounting methods.
758       
759        - Better error handling.
760       
761    - 1.05alpha1 :
762   
763        - SECURITY file added to help improve PyKota's security.
764       
765        - Extracting the printer's internal page counter is now
766          tried several times, waiting several seconds between
767          two tries. This lets the time to warm up for some printers
768          which don't answer when they are sleeping (my Apple
769          LaserWriter 16/600 PS is in this case, maybe others too)
770         
771        - Small display bug fixed in repykota
772         
773    - 1.04 :
774   
775        - Default print policy for users/groups unknown from
776          the print quota system is now DENY instead of ALLOW,
777          since ALLOW can generate inaccurate results
778          (incorrect job sizes charged to the wrong persons)
779         
780        - LPRng support works !
781       
782        - A bug was introduced some time ago wrt printers' default
783          policy for unknown users. It is now corrected.
784       
785        - repykota now displays prices per job and per page for each
786          printer, if they are defined.
787         
788        - Minor display bug fixed in repykota.
789       
790        - Problem when running repykota with an empty database was fixed.
791       
792    - 1.03 :
793   
794        - Upgrade script included for earlier versions.
795          Please look inside the initscripts subdirectory.
796          THE DATABASE SCHEMA HAS CHANGED, PLEASE UPGRADE.
797         
798        - repykota now reports account balances too.
799       
800        - PyKota now has a nice logo, see the logos
801          subdirectory.
802       
803        - Manual pages were finally updated.
804       
805        - Group quotas seem to work now !
806       
807        - The new database schema allows to keep an history of all
808          jobs as well as charge users per page and/or per job,
809          and track users' account balance.
810         
811        - edpykota now accepts much more command line options to 
812          use the new functionnalities. See edpykota --help for
813          details.
814         
815        - The installation script now allows to install the sample
816          configuration file during first installation.
817         
818        - More group quota code works, but still not finished. 
819       
820        - The CGI script displays a link to PyKota's website.
821       
822        - The job history is now kept, this will allow per-period
823          reports in the future.
824         
825        - After having modified the quota for an user with edpykota,
826          a quota check is done to eventually warn the user/admin about
827          a quota which is too low to print.
828         
829        - A workaround is provided for HP Printers : their internal
830          page counter is only saved to NVRAM in a 10 increment, so
831          if you switch them off and then on, the reported page counter
832          may be lower than the real number of pages printed.
833          See http://web.mit.edu/source/third/lprng/doc/LPRng-HOWTO-15.html
834          We unconditionnally set the last job's page count to
835          abs(int((10 - abs(lastcounter(snmp) - lastcounter(storage)) / 2))
836          in this case.
837          For a more accurate accounting, never switch your HP printers
838          off.
839         
840        - A fix is provided for printers which only have a volatile 
841          page counter (reset to 0 every time you switch the printer on)
842          This should allow PyKota to work reasonably fine with HP Laserjet
843          4L/5L/6L, not perfect, but better than nothing.
844          See http://web.mit.edu/source/third/lprng/doc/LPRng-HOWTO-15.html
845          For a more accurate accounting, never switch your HP printers
846          off. This is untested, please report any problem.
847         
848        - A bug was fixed when edpykota --add was used with users who already
849          had a quota on the specified printer.
850         
851        - A small display bug in repykota was introduced in preliminary
852          1.03 versions, and fixed later on.
853         
854        - Some minor bugs which happened in rare situations were fixed.
855       
856        - Support for AppleTalk printers was added, see sample configuration
857          file for details.
858         
859        - Users and group printing can now be controlled (limited) either by 
860          print quota or by account balance.
861       
862    - 1.02 :
863   
864        - The installation script now checks for software availability
865          and in case a software is missing asks the user if he
866          wants to continue with the installation or abort it.
867         
868        - The configuration file pykota.conf is now expected to be
869          found in /etc instead of in /etc/cups
870          The installation script prompts the user to see if he
871          wants to move an old configuration file to the new location
872          if needed.
873         
874        - Improved documentation.
875       
876        - You can now set the tcp/ip port on which the Quota Storage
877          Server is listening, see sample configuration file for details.
878       
879        - Better general error handling.
880       
881        - Upgrade script for pre 1.01 PostgreSQL database schema is now
882          included as well.
883       
884    - 1.01 :
885   
886        - The configuration file now accepts an option   
887          to choose the recipient(s) of the email messages :
888         
889            - DevNull means no one will receive them.
890            - User means only the user will receive them.
891            - Admin means only the admin will receive them.
892            - Both means the User and the Admin will receive them.
893           
894        - The configuration file now uses hard-coded default values
895          when an option is not set. See sample configuration file
896          for details.
897         
898        - Manual pages are included since 1.00, but I forgot to   
899          add this information to this file.
900         
901        - Redistribution terms for the official package have 
902          softened and are now fully GPL compatible :
903          unrestricted modification is now allowed even for
904          the version number.
905         
906    - 1.00 :
907   
908        - edpykota now accepts a --noquota option. This
909          disable quota checking while still doing page
910          accounting. This is really useful for people
911          who don't want to limit their users but want
912          to know how much pages they print.
913         
914        - Some untested scripts were added to retrieve
915          the life time page counter of non-SNMP printers.
916         
917        - Every directory now has a specific README file. 
918       
919    - 0.99 :
920   
921        - Under some circumstances while the user wasn't allowed
922          to print, he didn't receive any email message. It is
923          now fixed.
924         
925        - When an user wasn't allowed to print, the quota for
926          the previous user wasn't updated. This is now fixed.
927         
928    - 0.98 :
929   
930        - Correctly handle the case where the printer is switched off.
931       
932        - Small bug wrt syslog fixed.
933       
934    - 0.97 :
935   
936        - edpykota accepts wildcards on its command line for users/groups too
937          if the --add option is not set, e.g. :
938         
939              $ edpykota --printer lp --softlimit 50 --hardlimit 100 "jer*"
940             
941        - If no user name is passed at all, then a default wildcard of "*"
942          which means apply the command on ALL users for this printer is used.
943         
944        - Small bug fixes.
945       
946    - 0.96 :
947
948        - Options requester, policy, admin, adminmail and gracedelay can now
949          be set either globally or per printer. The printer option has
950          priority if both are defined.
951
952        - More powerful configuration parser.
953       
954        - If all options are defined globally, there's no need to
955          define a section for each printer in the configuration
956          file anymore. Just define a [global] section and it's ok.
957
958    - 0.95 :
959
960        - External requesters for printers finally added.
961
962        - Full internationalization (english and french are supported)
963 
964        - More complete quota usage report
965
966        - CGI script to access to the quota usage report
967
968        - Several bugs fixed.
969
970
971    - 0.9 :
972
973        - First public version
Note: See TracBrowser for help on using the browser.