root / pykota / trunk / NEWS @ 1115

Revision 1115, 17.8 kB (checked in by jalet, 21 years ago)

Bug fix by Oleg Biteryakov

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