root / pykota / trunk / NEWS @ 1471

Revision 1471, 32.4 kB (checked in by jalet, 20 years ago)

Note about SMTP problems

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