root / pykota / trunk / NEWS @ 1072

Revision 1072, 14.8 kB (checked in by jalet, 21 years ago)

Some additional fixes

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