$Id: //depot/povray/smp/distribution/revision.txt#1 $

Here are the relevent changes between POV-Ray 3.5 release and the version 
included in this installation. It does not include changes made to any 
platform-specific files (e.g. Windows or Mac GUI), It will sometimes note
changes to the documentation, scene and include files, but this is not
guaranteed.

See changes.txt for changes to your platform-specific version.

23 Jan 2005 - 3.6.1a release (Windows only)
-------------------------------------------

Change 3232 on 2004/12/09 by chrisc@hyperthread

	Fix truetype accuracy problem mentioned in <web.40d00f95d1fa449977e777080@news.povray.org>.
	Patch from Massimo Valentini.

Change 3225 on 2004/11/12 by _abx_@_abx_

	Blob queue memory leak fix.

Change 3212 on 2004/10/25 by chrisc@hyperthread

	Merge AMD64 changes into main codebase.

Change 3055 on 2004/08/14 by thorsten@host27

	Removes defective gaussianblob.pov scene

Change 3018 on 2004/07/31 by chrisc@lilliput

	correct small bug from change #3003 found by Massimo.

1 August 2004 - 3.6.1 release
-----------------------------

Change 3010 on 2004/07/27 by thorsten@host27

	Removes povproto.h
	Adds benchmark.h

Change 3003 on 2004/07/22 by thorsten@host27

	Fixes file "saving" bug thanks to Massimo Valentini

Change 3001 on 2004/07/21 by chormann@chho

	fix for antialiasing method 1 + gamma correction bug.  Render
	results will differ because antialiasing now works on
	unclipped values.  But this has been the case for aa method 2 before.

Change 2963 on 2004/07/10 by chrisc@hyperthread

	add source licence to distribution dir.

Change 2935 on 2004/07/03 by chrisc@hyperthread

	adds distribution license.

Change 2926 on 2004/06/30 by chrisc@hyperthread

	adds bglass.inc to balcony scene (recovered from glass.inc#2).

Change 2911 on 2004/06/28 by calimet@lavender

	optout.h: wrap DISTRIBUTION_MESSAGE_2 with #ifndef and add #error


7 June 2004 - 3.6.0 release
---------------------------

Change 2793 on 2004/06/05 by thorsten@host27

  Tweaks command-line error message in case of an empty string

Change 2783 on 2004/06/04 by chrisc@hyperthread

  Fixes bug in poisson distribution as reported by Tina Hirsch.

Change 2782 on 2004/06/04 by chrisc@hyperthread

  Fixes a bug causing lost output from #write etc when TEXTSTREAM_CRLF
    is defined.

Change 2770 on 2004/06/04 by thorsten@host27

  Tweaks one sprintf change a bit
  Adds a note and rationale to povmsgid.h

Change 2769 on 2004/06/03 by calimet@lavender

  renderio.cpp: do not display the region outside first/last columns
    in a continue trace using +sc and/or +ec option; apparently this
    seems also much faster for some reason (at least using the X Window
    display of the unix version)

Change 2768 on 2004/06/03 by calimet@lavender

  png_pov.cpp: fix a 'S' for 's' typo in a PNG_READ_oFFs_SUPPORTED
    which caused continue trace to ignore the y_offset info

Change 2767 on 2004/06/03 by calimet@lavender

  rendctrl.cpp: set STAGE_INIT before opening output file, for more
    meaningful error messages

Change 2764 on 2004/06/02 by calimet@lavender

  png_pov.cpp, povmsrec.cpp, renderio.cpp: some sprintf tweaks


31 May 2004 - 3.6.release-candidate.1
-------------------------------------

Change 2735 on 2004/05/28 by chrisc@hyperthread

  set debug stream's wrap width to 160 (was 80).

Change 2729 on 2004/05/28 by chrisc@hyperthread

  add support for LF -> CRLF expansion in OTextStream if TEXTSTREAM_CRLF is defined.

Change 2727 on 2004/05/28 by chrisc@hyperthread

  Ensure Jitt_Offset is initialized before each render.
  (Lack of this caused subsequent renders on windows/mac to have differences
    if jitter was used).

Change 2702 on 2004/05/18 by thorsten@host27

  Changes version to rc1

Change 2701 on 2004/05/17 by chrisc@hyperthread

  Fix issue with '%s' in #debug statements being expanded.

Change 2681 on 2004/05/11 by calimet@lavender

  Add description for the WLn and UA command-line options, comment out QR,
    and uniformize the text in the rest of the help display.

Change 2670 on 2004/05/06 by thorsten@host27

  Fixes hfield smooth problem as pointed out by Warp and Slime

Change 2662 on 2004/05/03 by thorsten@host27

  Fixes problem with file reading flag in macros

Change 2661 on 2004/05/03 by thorsten@trfatfhg

  Fixed double-free of file stream when using #read
  in tokenize.cpp.

Change 2657 on 2004/05/01 by thorsten@host27

  Parsing of INI files should now correctly skip sections

15 April 2004 - 3.6.beta.4
--------------------------

Change 2629 on 2004/04/16 by chrisc@hyperthread

  if opts.Output_Path is empty, set it to the current working directory.

Change 2627 on 2004/04/16 by chrisc@hyperthread

  add version of ProcessOptions::WriteFile() that accepts an opened stream.
  correct problem where previous WriteFile() method did not check pathname
    against IO restrictions.

Change 2626 on 2004/04/16 by thorsten@host27

  Adds path to output image option output

Change 2625 on 2004/04/16 by chrisc@hyperthread

  add error detection to chdir stuff in init_output_file_handle().

Change 2622 on 2004/04/16 by chrisc@hyperthread

  ensure core doesn't change the CWD permanently.

Change 2614 on 2004/04/13 by thorsten@host27

  Fixes bugs in opts.Output_Path generating code when
   handling a relative path

Change 2592 on 2004/04/11 by calimet@lavender

  source/image.cpp: remove an unecessary fabs() call [trf & Warp]

1 April 2004 - 3.6.beta.3
-------------------------

Change 2567 on 2004/03/31 by calimet@lavender

  source/image.cpp: add a few missing inits in Create_Image()

Change 2562 on 2004/03/31 by chrisc@hyperthread

  bump version to 3.6.beta.3

Change 2561 on 2004/03/31 by thorsten@host27

  Always check if a file exists in file-io directives

Change 2559 on 2004/03/30 by thorsten@host27

  Initialise a not always initialised before being used variable in isosurface code
  Tweaks POVMS

Change 2558 on 2004/03/29 by chrisc@hyperthread

  Fix missing assignment in Terminate_Tokenizer() (causes crash later).

Change 2557 on 2004/03/29 by ingo@ij-bsd

  [docs] Addition of media tutorial

Change 2556 on 2004/03/29 by thorsten@host27

  Eliminates a few more memory leaks in message handling

Change 2555 on 2004/03/28 by thorsten@host27

  Fixes problem freeing queue instead of queue node in POVMS default queue

Change 2548 on 2004/03/24 by thorsten@host27

  Adds TIFF library version 3.6.1
  Adds ZLib version 1.2.5

Change 2541 on 2004/03/15 by chrisc@hyperthread

  [distfiles] updates povray.ini to refer to v3.6 and 20 library paths.

14 March 2004 - 3.6.beta.2
--------------------------

Change 2528 on 2004/03/14 by chrisc@hyperthread

  Restore ability of parser to handle file that doesn't end with a newline.
  Fix two places where In_File is deleted but not set to NULL.

Change 2524 on 2004/03/13 by chrisc@hyperthread

  store the ITextStream file position in a private member to avoid calling tellg(),
    as these calls slow down parsing significantly on some platforms.

Change 2523 on 2004/03/13 by thorsten@host27

  Adds detection of merging of unions. For example code like
   #declare foo = union { object {foo} } ... } used in a loop will
   no longer build heavily recursive unions. Instead, each object
   will be merged directly into the union. Of course this will
   be done if, and only if, the union has no other modifiers set!

Change 2519 on 2004/03/12 by thorsten@host27

  Removed MAX_NESTED_TEXTURES limitations

Change 2515 on 2004/03/12 by thorsten@host27

  Changes radiosity stats to integer output
  Changes debug output and flushing
  Inits stream outputs with setting for all streams prior to applying
   settings for individual streams
  Fixes problem with noise/wave random seed

Change 2512 on 2004/03/12 by chrisc@hyperthread

  Various tweaks and fixes to message code.
  Fix missing LF in debug statements.

Change 2509 on 2004/03/11 by chrisc@hyperthread

  Make sure tstart is initialised before the first progress message in an animation.
  Change version to 3.6.beta.2.

Change 2488 on 2004/03/03 by chormann@titon

  [include files] 
    math.inc: changed function parameter names to avoid conflicts with script variable names

Change 2479 on 2004/02/25 by ingo@CC4536-A

  [docs] Warp's improved images for the Q&T section

Change 2449 on 2004/02/01 by chormann@titon

  Fix for heightfield problem reported by Slime, changing
    two < into <= in hfield.cpp, smooth_height_field()

18 January 2004 - 3.6.beta.1
----------------------------

Change 2405 on 2004/01/17 by chormann@titon

  [sample scenes] Comments for render parameters added to most scenes, 
    the unix sample scene render scripts look for a comment in the first 
    50 lines matching the regexp '^//[ ]+[+-]{1}[^ -]'.
  
  Additional change: the advanced/balcony scene had an include file
    glass.inc - changed this to bglass.inc to avoid interference with 
    system include file.

Change 2398 on 2004/01/16 by thorsten@host27

  Fixes problem with antialiasing options display
  Adds detection of filenames without any prefix to INI file parser

Change 2389 on 2004/01/08 by thorsten@host27

  Fixes problem with constant buffer sizes in sphere-sweep code
  Changes many macros to inline functions and constants
  Tweaks rtr demo source code to work with above changes

Change 2383 on 2003/12/13 by chrisc@lilliput

  Ensure radiosity globals are initialized even if radiosity is turned off.

Change 2295 on 2003/11/03 by thorsten@host27

  Removed povmsgid.h include from povms.h. Include it manually after
   povms.h where needed!
  Adds code for smart handling of INI files which contain value strings
   that are not quoted but contain spaces and other sepcial chars.
   The code now applies the rule that '+', '-', ';', '#', or ',' or the platform
   specific switch character (on Windows '/', non on Unix right now afaik)
   preceded by a space when parsing a string suggests the string ended
   prior to the preceding space. If any other character is found, it and
   the characters that follow are parsed as unquoted string, and if the
   result is a valid INI file option keyword name, then it is assumed the
   string is also a proper unquoted string. However, if the result string
   is no valid INI file option keyword name it is assumed the string is
   an incorrectly unquoted string with spaces. A (non-fatal) error
   message is issued and parsing continues until either the end of the
   line or until a comment character ';' or '#' is found.
   This should provide good backward compatibility while also pointing
   users to the correct INI file syntax.

Change 2271 on 2003/10/27 by thorsten@host27

  Fixes problem with memory stats reporting
  Fixes problem with function image float size

Change 2265 on 2003/10/23 by chormann@titon

  fixed crash with 16 bit png images by adding
      Image->Image_Type |= IS16BITIMAGE;
      Image->Image_Type |= IS16GRAYIMAGE; 
  where required.

Change 2232 on 2003/10/07 by ingo@CC4536-A

  Changes:
  reference:
  000102.html : changed 'charset' to lower cast in listing of default values
  000142.html : added function image as HF_TYPE
  000493.html : additional clarification of what exactly happens when using the partial output options
  
  tutorial:
  000001.html : location of the platform specific docs for unix linux
  000002.html : corrected a word swap.
  000289.html : added #include "colors.inc" to the demo scene

Change 2202 on 2003/09/09 by thorsten@host27

  Updates developer/author lists

Change 2198 on 2003/09/03 by _abx_@abx

  "mesh2" in mesh related warnings replaced with "mesh"

Change 2187 on 2003/08/25 by thorsten@host27

  Removes pointless use of floating-point math
  Enables beta message
  Some error message text changes to match rest of code

Change 2186 on 2003/08/25 by chormann@chho

  New implementation of the ppm/pgm code
  The new version offers additional functionality:
    - full support for 16 bit images 
      (both ppm and pgm, both ASCII and binary)
    - all formats that can be written can also be used in continued trace
      (previously only 8 bit color files could be continued)

Change 2184 on 2003/08/25 by thorsten@host27

  Fixes problems with shells that strip quotes from the command-line
  Adds detection of library path without L switch on command-line
   (Every string ending in a dir separator is considered a library path!)


Change 2182 on 2003/08/22 by nkopp@impulse

  Applied torus patch proposed by Lars C. Hassing.  This fixes
    intersection accruacy problems for a small torus very distant
    from the camera.

Change 2180 on 2003/08/19 by thorsten@host27

  Disables / for command-line switches on platforms where this
   is the directory separator. This allows paths beginning with a
   directory separator to be handled correctly.

Change 2172 on 2003/08/13 by thorsten@host27

  Adds a completely redone INI and switch parser.

Change 2164 on 2003/08/11 by thorsten@host27

  Adds proper handling of quoted parameters passed via the command-line.

Change 2162 on 2003/08/10 by chrisc@lilliput

  Fix issue reported by Andrew Coppin in 3eb9b38e@news.povray.org.
  sort_and_split had two seperate bugs in the bsphere tree reallocation logic
    (including a whopper where it reallocates the local copy of the tree but
    does not propagate the realloced array back to the calling routine) causing
    memory access violations.

Change 2154 on 2003/08/07 by _abx_@abx

  Fixed memory leak in parsing members
  Fixed error message in compile_member
  Fixed memory leak in pigment_pattern
  Fixed memory leak for precomputed arrays in parametric object

Change 2142 on 2003/07/19 by massimo@pluto

  Sum/Prod Bugfix. Details in news.povray.org private.povray.programming:13

Change 2141 on 2003/07/18 by _abx_@abx

  Removed duplicated copying of UV_Trans in case of light_source

Change 2095 on 2003/07/02 by thorsten@g4macosx

  Removes old documentation format
  Adds new documentation format

Change 2094 on 2003/07/02 by thorsten@host27

  Fixes bug in InitSolidNoise. Thanks to Zohar Leder.

Change 2088 on 2003/06/12 by nkopp@impulse

  Fix uninitialized variable problem in BacktraceRefract()

Change 2076 on 2003/06/08 by thorsten@host27

  Added better function VM error reporting
  Changed PNG reading such that 16 bit per component
   images are kept as 16 bit per component internally
   as well
  Added PPM/PGM reading changes from Christoph Hormann

Change 2064 on 2003/05/25 by thorsten@host27

  Reduces function memory allocation
  Corrects cylinder light source problem with photons

Change 2056 on 2003/05/08 by nkopp@impulse

  Fix uninitialized-variable problem with Parse_Three_UVCoords

Change 2053 on 2003/05/06 by nkopp@impulse

  Remove clipping in ra_reuse.  This allows HRD-style radiosity.

Change 2052 on 2003/05/06 by nkopp@impulse

  Fix bug that caused IOR to be computed twice for rays leaving objects that overlap.
  This fix was proposed by Retsam in povray.advanced-users.
  Subject: Re: How does POV-Ray handle IORs between two interfacing surfaces?
  Date: 6 Apr 2003 19:01:56 EDT
  This will change some existing scenes, especially some scenes with photon caustics.

Change 2048 on 2003/04/21 by thorsten@host27

  Fixes a TIFF and a PNG bug reported by Ray Gardener

Change 2045 on 2003/03/13 by thorsten@host27

  Workaround for default io restriction settings to at least work
   without a configuration file (another way to fix would be to allow
   only reading of povray.ini)

Change 2044 on 2003/03/12 by thorsten@host27

  Updates PNG library to 1.2.5

Change 2043 on 2003/03/12 by thorsten@host27

  Fixes adc_bailout bug

Change 2042 on 2003/03/07 by ingo@CC4536-A

  Typo in a contributors name

1 March 2003 - 3.51.beta.RC1 (public)
-------------------------------------

Change 2037 on 2003/02/28 by thorsten@host27

  Adds even more photon speed improvements (thanks to Massimo)
  Changes a POVMS response handling a bit (not yet perfect)
  Misc. little tweaks

Change 2023 on 2003/02/02 by thorsten@host27

  Fix bug in octree search.
  Fix bug in render time display.

Change 2022 on 2003/02/01 by thorsten@host27

  Fix blob artifacts without breaking other scenes.  

31 January 2003 - 3.51.beta.RC1
-------------------------------

Change 2014 on 2003/01/28 by ingo@CC4536-A

  removed array like access to spline

Change 2005 on 2003/01/22 by thorsten@host27

  Fixes two bugs

Change 2004 on 2003/01/21 by thorsten@host27

  Changes filename parsing to issue a warning if quotes
   around filenames (includes their path of course) with
   spaces are missing.
  Misc. bug fixes.

Change 2002 on 2003/01/12 by thorsten@host27

  Fixes density pattern problem in 3.51 beta 1

10 January 2003 - 3.51.beta.1
-----------------------------

Change 1997 on 2003/01/07 by thorsten@host27

  Speed optimisation for radiosity.

Change 1995 on 2003/01/07 by thorsten@host27

  Fixes problem with relative image sizes.
  Fixes problem with default split-time function.

Change 1994 on 2003/01/07 by chrisc@lilliput

  Update text version string to 3.51.beta.1.
  Change copyright date output string to "1991-2003".

Change 1976 on 2002/12/28 by chrisc@lilliput

  Add INI file for standard benchmark.

Change 1975 on 2002/12/28 by chrisc@lilliput

  Add unclipped color support.

Change 1973 on 2002/12/26 by thorsten@host27

  Changes a few more user abort being ignored problems.

Change 1966 on 2002/12/20 by thorsten@host27

  Fixes superellipsoid problems.

Change 1965 on 2002/12/19 by thorsten@host27

 Fixes some sphere_sweep problems (thanks to Massimo Valentini)
 Should fix transform warp problems based on detailed
  bug report from Massimo Valentini
  Warps are now kept in a a doubly linked list (that hopefully is bug free).
  This allows to find the last Warp easily and then just walk through the
  list backwards.
 Fixes some more 64 bit compatibility problems
  (with TrueType font reading this time)

Change 1961 on 2002/12/14 by thorsten@host27

 Fixes incorrect return values of POVMSProcessMessages
 Fixes problem aborting vista buffer drawing stage

Change 1954 on 2002/12/01 by thorsten@host27

 Changes to ease integration of a platform specific function just-in-time
  compiler.

Change 1949 on 2002/11/17 by thorsten@host27

 Adds macro POV_ASSIGN_PIXEL_UNCLIPPED
  Note: This macro currently returns values for all AA settings,
  however, when AA method one is used (the non-adaptive one) it
  will currently only return the not AA adjusted unclipped color.
 Warning, this cahnge also ch anges the way clipping colors is
  performed for AA method 2. Clipping is peformed after
  averaging the colors.
 Note that the unclipped color is also not gamma corrected
  and thus will always be different from the clipped color if
  the gamma is set to something different from 1.0.

Change 1947 on 2002/11/06 by thorsten@host27

  Adds hfield scaling bugfix

Change 1945 on 2002/11/06 by thorsten@host27

  Should fix bug 136, 189, 202 and 216
  Changes version to 3.51beta

Change 1937 on 2002/10/21 by thorsten@host27

  Adds parametric object UV mapping patch.
  Adds Torus UV mapping patch.
  Adds superellipsoid speedup patch.
  Adds density file 16 and 32 bit integer data
   support that depends on the filesize, that is
   if the file is twice (minus header, of course)
   as long then it is assumed to contain 16 bit
   ints and if it is four times as long 32 bit ints.
  Adds density file tricubic interpolation.
  NOTE: All the above need serious testing!
  Removes the mesh and texture creation
   counters previously added for debugging.
  Removes missed sqrt in photon speedup
   changes (effectively the code in Perforce
   was not different from the orginal).

Change 1933 on 2002/10/06 by thorsten@host27

  POVMS now turns messages into flat data before
   placing them into the message queue. This i.e. allows
   messages to be passed between processes.

Change 1932 on 2002/10/06 by thorsten@host27

  Moves square root call in photons.cpp for major speedup.
  Completes POVMS message streaming functions.

Change 1931 on 2002/10/05 by thorsten@host27

  Adds POVMSStream_xxx utility functions for reading and
   writing data in network byteorder. The byteorder is determined
   automatically at runtime! Only on platforms on which IEEE 754
   floating-point numbers are not standard, the macros
   POVMSIEEEFloat, POVMSFloatToPOVMSIEEEFloat,
   POVMSIEEEFloatToPOVMSFloat and HexToPOVMSIEEEFloat
   have to be redefined.

Change 1930 on 2002/10/05 by thorsten@host27

  Fixes misc. crashes caused by various assumptions in various places.
  Fixes problems when using 64 bit file io functions.

Change 1916 on 2002/09/23 by thorsten@host27

  Cleanout of various "long" integers and replcment with "int" integers

Change 1915 on 2002/09/16 by thorsten@host27

  Assign_xxx macros no longer use dangerous memcpy.

Change 1914 on 2002/09/16 by thorsten@host27

  Fixes three incorrect uses of Assign_Vector
