root / pykota / trunk / NEWS @ 1105

Revision 1105, 17.3 kB (checked in by jalet, 21 years ago)

PyKota now tries to add its attributes intelligently in existing LDAP
directories.

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