Tcharge Version 1.3 - Changelog
===============================
Pre 1.1
-------
Aug 1996
* First working version for private use. Did not publish it because of
  one problem with XSetInputFocus.

Version 1.0
-----------
Wed Feb 05 1997
* Fixed problem with XSetInputFocus.

Fri Feb 14 1997
* Official release version 1.0 announced in newsgroup
  comp.os.linux.announce (!)

Version 1.0 -> 1.2     (A big step for tcharge but a small
------------------          in the version number) 
Mon Feb 17 1997
* Possibility for 2nd textline in X disply: units, charge
 (New options units-only, charge-only and units-and-charge)

Tue Feb 18 1997
* "per second billing"
  Suggested by Neil Dudman <namdud@namdud.demon.co.uk>
* New Makefile: countries are choosen by make instruction (not with a
  '-DCOUNTRY' flag anymore). Idea taken from 'pppcost', version 0.03,
  by Tillmann Steinbrecher <tst@bigfoot.com>

Wed Feb 19 1997
* New variables (tcharge.c, make-tc and charge-files):
  #define DECIMALS "2"
  #define CURRENCY_AFTER_COST
  Idea taken from 'pppcost'
* Added support for the following countries: france japan portugal
  slovenia hungary according to the 'pppcost' cost files, (pppcost,
  version 0.03, by Tillmann Steinbrecher <tst@bigfoot.com>).

Thu Feb 20 1997
* new variable ZONE_HELP_STRING (tcharge.c, make-tc and charge-files)
* Nominal charge
  Suggested by Neil Dudman <namdud@namdud.demon.co.uk>

Sat Feb 22 1997
* New function 'get_options' to tidy up 'main'
* New signal handling of signals SIGUSR1 (10) and SIGUSR2 (12); only
  works #ifdef SUMMARY: Killing tcharge...
  - with SIGUSR1 causes stop of unit/charge counting
  - with SIGUSR1 causes continuing of unit/charge counting
  Suggested by Sascha Ziemann <szi@aibon.ping.de>
* New: a separate '-help' option

Sun Feb 23 1997
* Handling of holidays: make-tc reads a list of yeardays from the
  charge files. Only for calls that do not extend 2 days ;-)
* New option '-holiday': "Today is a holiday"
* For calculation of yeardays from year/month/day pairs added small
  c-program year_of_day (source: year_of_day.c)

Mon Feb 24 1997
* Changed signal handling (only works #ifdef SUMMARY):
  Also invoked if 'summaryfile' == NULL
* Handling of rounding upwards the charge according to 'DECIMALS'
* Made headers for all files of tcharge
* tcharge now creates a pid file (standard: /var/run/tcharge.pid)
  on startup an deletes it on exit (changed function
  'interrupt_handler' for this purpose)
* New option '-help-charge': print a nice table with all charge
  information tcharge has. Only available if compiled with
  '-DPRINT_CHARGE_STRUCTURE' or '-DDEBUG'
* Set up a mailing list 'tcharge@hix.physik.uni-bremen.de'.
* Update for all documentation files

Wed Feb 26 1997
* fixed setting of InputFocus (tcharge gives focus back to parent
  windows after startup. (Thanks to Thorsten Conradi
  <tconradi@physik.uni-bremen.de>)
* finished work on version 1.1beta

Sun Mar 2 1997
* two new functions: setstarttime() and print_summary(), to tidy up
  the rest of the code

Mon Mar 3 1997

* A really new feature: tcharge now may work in "demon mode" (option
  "-watch-file <filename>"): One may start tcharge e.g. at the
  beginning of a X session. It then keep on looking for creation of
  'filename' and starts charge counting when 'filename' is
  present. When the file is deleted again charge counting stops. Of
  course one will choose as 'filename' the pidfile of PPPD (when using
  PPP). The idea is from 'pppcosts', version 0.03, by Tillmann
  Steinbrecher <tst@bigfoot.com>, though heavily modified. Removed
  special handling of SIGUSR1/2 since it seems obsolete now.
* Removed the 'define SUMMARY' preprocessor instructions for two
  reasons: firstly i wanted signal handling to be no 'extra' since it
  is important for more than just printing of summary information (and
  tcharge then don't grow that much with -DSUMMARY anymore), and
  secondly the preprocessor instructions make the source unreadable.

Tue Mar 4 1997
* added MINIMAL_CHARGE (seen in pppcosts costfile for the British
  Telecom)
* added support for belgium, swiss, italy, netherlands, spain and the
  uk according to the 'pppcost' cost files, (pppcost, version 0.04b4,
  by Tillmann Steinbrecher <tst@bigfoot.com>).
* Finished work on release 1.1c

Fri Mar 7 1997
* work on capability to flash screen (switch to reverse video for a
  short while)

Sun Mar 9 1997
* renamed year_of_day -> day_of_year (misspelled it |-)
  program for yearday->monthday conversion: month_day.c
* fixed bug in setstarttime(): holidays are now correctly handled (I
  hope!)

Mon Mar 10 1997
* New option '-warn-seconds <sec>' for BILLING_PER_UNIT: sound an
  "little alarm" some seconds before new unit begins
* "little alarm": tcharge now is able to switch to reverse video for a
  short while (flash). Time in reverse video is controlled by
  'BLINKTIME' (preprocessor instruction)
* New option '-bell': beep for a "little alarm" instead of flash the
  window. Volume is controlled by 'VOLUME' (preprocessor instruction)
* Fixed bug in charge file 'uk': divided charges by 100 (CURRENCY_NAME
  is Pound not penny!)
* Finished work on release 1.1d

Tue Mar 11 1997
* Fixed a little stupid bug in routine 'print_summary()'. The normal
  way to number the months is 1,...,12 and not 0,...,11! (Silly thing
  in struct tm->tm_mon)

Tue Mar 18 1997
* The little alarm now is set off also when 'billing per second'
  when getting online and on disconnect.

Fri Mar 21 1997
* Added ISDN-support following 'pppcosts-0.04b4'. Not very nicely but
  should work!

Mon Mar 24 1997
* Worked on ISDN-support: tried to find routine for getting the
  connect-time other than checking /dev/isdninfo every second
* Finished Work on version 1.2pre

Tue Mar 25 1997
* Received new pppcosts-prerelease - New supported country: South
  Africa

Thu Mar 27 1997
* ISDN-support: the above mentioned routine doesn't work: erased it
* Finished Work on version 1.2 (to be announced in
comp.os.linux.announce)

Version 1.2 -> 1.3
------------------
Fri Apr 11 1997
* Minor change: If environment variable 'DISPLAY' is not set try ":0"

Tue May 27 1997
* Minor change in Makefile: Documentation of compilerflags
  e.g. '-DISDN' have to be added to 'CFLAGS'

Thu Jun 05 1997
* A major thing: New option '-noX' -> Allow for only update the
  logfile (option '-file <logfile>') with no further
  output/tcharge-window. Suggested by Heiko Brey
  <cthuga@sl.netzservice.de>
* I was wrong, I fixed this only partly (only the first line, second
  output line continued to be wrong!!): "Tue Mar 11 1997: Fixed a
  little stupid bug in routine 'print_summary()'. The normal way to
  number the months is 1,...,12 and not 0,...,11!"

Tue Jun 17 1997
* What a bug! I missed to include the 'make-tc'-script in versions
  1.2 and 1.2a!

Mar-Apr 1998
* Rewrote make-tc as a perl-script `mktc'. This new script is much
  cleverer in finding syntax errors in the charge file. I should
  better call mktc a "charge file compiler".
* Now it is possible to define (or re-define) variables special to one
  zone so that even different charging _structures_ may coexist.
* Now tcharge can deal with costs-changes within a call. The first
  `reduction_second' seconds or the first `reduction_unit' periods of
  a call will be normal taxed. Afterwards they will be reduced to the
  factor `reduction_ratio' (normal price -> reduction_ratio = 1). If
  the costs will be lowered to 90% of the normal, reduction_ratio is
  0.9 . These 3 variables may be "local" variables, special to one
  "zone".
  (Thanks to the german Telekom for the 10plus-Tarif |-( and
  pitura@geocities.com for his question/suggestion.)
* Rewrote the whole documentation (the hardest part of it all! :-(
* Included simple syslogging: Charge logs now may be printed also via
  syslogd (open it once, write and close - it's not the normal way to
  use it)
* New options -start and -end: Give start resp. end time of call in
  `time_t' (seconds since 1.1. 1970). For test purpose mainly but
  perhaps for batch jobs?) Use new (perl-) Script `date2second' to
  generate time_t values from date/time.
* Some new perl-scripts (summary.*, parse_logfile)
* fixed problems with debug output for options -end and -start
* New function XMode(): to clean up main()
* Rearranged the files of tcharge into some subdirectories
* Changed the exit of the signal-handler: It now does an exit not a
  kill. (To define a correct exit code.)
* New option -user: print also the (e)userid in -file or
  -syslog. (Requested by Michael.Schneider@vitrashop.com)

Wed Apr 15 1998
* Finished work on version 1.3beta.

Thu Apr 16 1998
* Fixed bug in charge calculation on saturdays.
   if(! d%6 || today) != if(! (d%6) || today)
  instead it is
   if( (!d)%6) || today)
  Thanks to michael.renner@tuebingen.mpg.de!
* Modified the published version 1.3beta

Sat Apr 18 1998
* Modified scripts summary(.log) for the -user option. Converted the
shell script `summary' to perl. Much nicer output...

Mon Apr 20 1998
* Modified option -user: accept an (optional) argument, the username.
* Added option "-pidfile": other pidfile than /var/run/tcharge.pid
* Modified scripts Tools/summary*: New option to set the period the
  charges should be summarized. (idea of Michael Renner)

Mon May 11 1998
* Added proper documentation of the option "pidfile"
* Changed the name of variable that keeps the name of the file to
  watch into `watch_file' to avoid conflicts with the option "pidfile".
* Finished work on version `1.3'!!!

date "+%a %b %d %Y"
