1- #----------------------------------------------------------------------------
2- # Note: To view an original flyspray bug report (FS#xxx), replace the leading
3- # FS# of the bug ID with the URL http://bugs.povray.org/.
4- # For example, to read FS#270, visit http://bugs.povray.org/270.
5- # To view a referenced newsgroup posting (<
[email protected] >), prefix
6- # the message ID with the URL http://news.povray.org/.
7- # For example, to read <
[email protected] >, visit:
8- # http://news.povray.org/<
[email protected] >.
9- # The '<' and '>' are optional (if using a shell you may want to omit them).
10- #----------------------------------------------------------------------------
11-
12- ----------------------------------------------------------------------------
13- Changelog information is available in the file revision.txt, which should be
14- located in the same directory as this file is.
15- ----------------------------------------------------------------------------
16-
17- -------------------------------
18- Changes between 3.7.0 and 3.7.1
19- -------------------------------
20-
21- TODO
1+ ------------------------------------------------------------------------------
2+ POV-Ray Changelog Digest
3+ ------------------------------------------------------------------------------
4+ Notes:
225
23- Windows Crash Reports:
24- ----------------------
6+ - To view a referenced GitHub issue (#xxx), replace the leading # of the
7+ issue ID with the URL https://github.com/POV-Ray/povray/issues/.
8+ For example, to read GitHub issue #58, visit:
9+ https://github.com/POV-Ray/povray/issues/58
10+
11+ - To view a referenced flyspray bug report (FS#xxx), replace the leading
12+ FS# of the flyspray bug ID with the URL http://bugs.povray.org/.
13+ For example, to read FS#270, visit:
14+ http://bugs.povray.org/270
15+
16+ - To view a referenced newsgroup posting (<
[email protected] >), prefix
17+ the message ID with the URL http://news.povray.org/.
18+ The '<' and '>' are optional (if using a shell you may want to omit them).
19+ For example, to read <
[email protected] >, visit:
20+ http://news.povray.org/
[email protected] 21+ ------------------------------------------------------------------------------
22+ Detailed changelog information is available in the file `revision.txt`, which
23+ should be located in the same directory as this file is.
24+ ------------------------------------------------------------------------------
25+
26+ Changes between 3.7.0 and 3.7.1-TBD
27+ ===================================
28+
29+ This version is still under active development, and not finalized yet.
30+
31+ The primary focus of this version has been on code refactoring in order to
32+ modularize the underlying architecture, but various new features as well as
33+ bugfixes have also been included.
34+
35+ Work on our own Macintosh graphical user interface has been put on hold, and
36+ it may eventually end up on the scrapyard; our current hope for our Mac users
37+ rests on a 3rd party OS X front-end that we strive to adopt.
38+
39+ To Do
40+ -----
41+
42+ Prior to the release of 3.7.1, the following items still need urgent attention:
43+
44+ - The new features need to be properly documented.
45+
46+ - The Windows version's inbuilt help index needs to be fixed.
47+
48+ New Features and Improvements
49+ -----------------------------
50+
51+ - A new inbuilt constant, `tau`, has been added as shorthand for `2*pi`, in
52+ support of the world-wide initiative to obsolete pi in favour of the new,
53+ more intuitive constant.
54+
55+ - Native support for repetition has been added to the `crackle` pattern to
56+ avoid the discontinuities in the pattern caused by repeat warps.
57+
58+ - A new function-based user-defined camera type, `user_defined`, has been
59+ added.
2560
26- - Fix for crashes related to missing closing parentheses in `#if` and other
27- conditionals and loops, crash report #???, dump file #988
61+ - The torus syntax has been extended to give more control over the spindle in
62+ a self-intersecting torus.
63+
64+ - The `#declare` and `#local` syntax has been extended to support tuple-style
65+ assignments. The main purpose is to allow macros to return a set of values
66+ rather than just a single one.
67+
68+ - The macro syntax has been extended to allow for optional parameters.
69+
70+ - POV-Ray for Windows now reports file names and line numbers of warnings.
71+
72+ - Light sources' distance-based fading can now be set to obey an inverse-power
73+ law at all distances.
74+
75+ - Colour and pigment maps now support non-linear interpolation to achieve more
76+ pleasing gradients.
77+
78+ - CIE L*a*b* conversion macros have been added to `colors.inc`.
79+
80+ - A new include file, `colors_ral.inc`, has been added, containing predefined
81+ colours according to the RAL Classic standard.
82+
83+ - Radiosity can now honor the `brilliance` setting of a surface.
84+
85+ - The `brilliance` effect can now be applied not only to incoming light, but
86+ also to outgoing light, making the effect phyiscally more realistic.
87+
88+ - Fresnel angle-dependent attenuation can now also be applied to highlights
89+ and the diffuse component for more physical realism.
90+
91+ - Colour maps, pigment maps and the like are no longer limited to 256 entries.
92+
93+ - The creation of a log for the `+C` render abort-continue feature can now be
94+ suppressed using `-CC` to save disk space.
95+
96+ - The number of components ber blob is no longer artificially limited.
97+
98+ For more details on the new features, see the documentation.
99+
100+ Changed Behaviour
101+ -----------------
102+
103+ - The `version` pseudo-variable will now evaluate to the effective language
104+ version at the time the expression is parsed, _except_ when used in a
105+ `#version` directive, in which case the behaviour remains unchanged.
106+
107+ - The requirement to start each scene with a `#version` statement is now more
108+ strongly enforced for POV-Ray 3.7 scenes, by reporting a parse error if the
109+ scene file does not begin with a `#version` directive but does have a
110+ `#version 3.7` (or later) directive anywhere in the main scene file.
111+
112+ - Using `ambient` with a suspiciously high value in a non-legacy scene will
113+ now prompt a warning, unless an `emission` is also specified.
114+
115+ - POV-Ray will now try to auto-detect whether an input TIFF file with alpha
116+ channel uses premultiplied or non-premultiplied alpha mode, rather than
117+ blindly presuming premultiplied alpha.
118+
119+ - The interaction of `transmit all` and `filter all` with an image's alpha
120+ channel has been changed to be more intuitive: rather than adding the
121+ image's transparency to the user-specified transparency, the image's opacity
122+ is now effectively multiplied with the user-specified opacity. (requires
123+ `#version 3.71` or later)
124+
125+ - The image file format previously referred to as "IFF" (now more precisely
126+ referred to as "IFF-ILBM") is now associated with the `.lbm` file extension,
127+ in addition to the `.iff` extension.
128+
129+ - A long-standing undocumented inconsistency in the treatment of backslashes
130+ in string literals, in which backslashes were essentially _not_ interpreted
131+ as escape characters _if_ the parser expected a filename, has been cleaned
132+ up, so that backslashes are now treated as escape characters in all string
133+ literals. (requires `#version 3.71` or later)
134+
135+ - Boost version 1.38 or later is now required.
136+
137+ Compatibility Improvements
138+ --------------------------
139+
140+ - Compatibility with modern compilers in general has been greatly improved.
141+ Rather than trying to disable the compiler's C++11 support and work around
142+ any resulting fallout, the code has been overhauled to eliminate any
143+ conflicts with the C++11 standard in the first place, and should now compile
144+ fine on any compiler conforming to either C++03, C++03 TR1, or C++11
145+ (notwithstanding platform-specific issues).
146+
147+ - Compatibility of the Unix build process with modern versions of the boost
148+ libraries and automake tools has been improved, avoiding the need for
149+ additional configure parameters or extra build steps on modern Linux
150+ systems.
151+
152+ - Compatibility with Visual Studio 2015 has been improved by streamlining the
153+ Visual Studio 2010 project files and a few pieces of source, packing new
154+ versions of the boost and openEXR libraries, and sorting out the generic
155+ C++11-related issues. As a result, the Visual Studio 2010 projects now build
156+ "out of the box" on Visual Studio 2015.
157+
158+ - Thread stack size has been increased to avoid problems on some platforms.
159+ (requires boost 1.50 or later)
160+
161+ Fixed or Mitigated Bugs Reported by Static Code Analysis
162+ --------------------------------------------------------
163+
164+ (none at present)
165+
166+ Fixed or Mitigated Bugs
167+ -----------------------
168+
169+ (Note: This list includes some bugs introduced after POV-Ray 3.7.0.)
170+
171+ Reported via GitHub:
172+
173+ - #5 ("prebuild.sh chmod errors: No such file or directory")
174+ - #6 ("Makefile.in does not get created")
175+ - #7 ("stat: illegal option -- c")
176+ - #8 ("reference to 'shared_ptr' is ambiguous")
177+ - #9 ("lseek64 is not present on all platforms")
178+ - #10 ("Possibly missng sys/types.h include?")
179+ - #21 ("configure attempts to link boost_system library even with boost 1.49 or earlier")
180+ - #24 ("Compile on debian jessie")
181+ - #29 ("master branch, failing to compile on linux on 28th June 2014")
182+ - #30 ("gcc-compiled povray of current master (2014-07-02) produces wrong output for benchmark")
183+ - #31 ("unknown type name 'shared_ptr'")
184+ - #32 ("need to include <sys/wait.h>")
185+ - #43 ("cannot build latest trunk")
186+ - #44 ("master branch has problem to compile with boost 1.55+")
187+ - #49 ("Latest version from Git won't build with MS Visual Studio 2015")
188+ - #50 ("Make error in Ubuntu 14.04")
189+ - #53 ("Standard include files may mess up the language version")
190+
191+ Reported via FlySpray:
192+
193+ - FS#254 ("Mesh_camera type 0 output seems to be incorrect")
194+ - FS#261 ("mesh_camera distribution type 3 output image is placed 0.5 pixels to wrong")
195+ - FS#270 ("render abort-continue (+C) sometimes skips blocks")
196+ - FS#313 ("radiosity.cpp pov::RadiosityFunction::BeforeTile assertion failed")
197+ - FS#314 ("reading Gif is bugged in 3.7")
198+ - FS#315 ("inverse keyword does not work properly with quadrics")
199+ - FS#316 ("inverse keyword does not work properly with fractals")
200+ - FS#317 ("problem with +D option at specific output file dimensions")
201+ - FS#318 ("method 3 (default) scattering media is too bright & causes artifacts when nested")
202+
203+ Reported via the Newsgroups:
204+
205+ 206+ (2014-08-12, povray.binaries.images, "unexplained")
207+ Precision issue led to `<1,1,1>.grey` not evaluating to 1 on sone systems.
208+
209+ 210+ (2015-04-03, povray.binaries.images, "An artifact when rendering torus(negative major_r)")
211+ Spindle torus shading issues resulting from bogus surface normal
212+ computations for points on the spindle.
213+
214+ 215+ (2015-07-18, povray.binaries.scene-files, "Where my background? Help me, please!")
216+ Bug in meshmaker.inc that would scramble the SDL language version to use for
217+ a scene.
218+
219+ 220+ (2016-02-23, povray.beta-test, "double free or corruption")
221+ Bug in the copying of multi-textured blobs.
222+
223+ 224+ (2016-02-24, povray.beta-test.binaries, "optics.pov 3.7.0 vs 3.7.1")
225+ Bug in media photons.
226+
227+ 228+ (2016-02-27, povray.beta-test, "splinefollow")
229+ Bug in splines.
230+
231+ 232+ (2016-02-27, povray.beta-test.binaries, "reflection.ini")
233+ Bug in `animations/reflection` sample scene INI file.
234+
235+ 236+ (2016-02-28, povray.bugreports, "#write")
237+ Under certain circumstances, a missing closing parenthesis in the condition
238+ of an `#if`, `#while` or similar statement would lead to a crash instead of
239+ a parse error.
240+
241+ 242+ (2016-02-29, povray.beta-test, "cliche.pov")
243+ Missing input image filename extension in `advanced/cliche`.
244+
245+ 246+ (2016-03-01, povray.beta-test, "whiltile.pov")
247+ Enabling a commented-out statement in the `advanced/whiltile.pov` scene
248+ would result in the `#version` directive not being the first statement.
249+
250+ Reported via Windows Crash Reports:
251+
252+ - crash report #???, dump file #988
253+ Under certain circumstances, a missing closing parenthesis in the condition
254+ of an `#if`, `#while` or similar statement would lead to a crash instead of
255+ a parse error.
256+
257+ Miscellaneous:
258+
259+ - Fixed mesh_camera-related flaws in the parser.
260+ - Fixed a family of bugs that could cause problems when using focal blur with
261+ some camera types if the camera is very close to the surface of a media
262+ container.
263+ - Fixed bug that could cause strange parse errors when including a file from
264+ within macro.
265+ - Added a sanity check to the maximum interations parameter in fractals.
266+ - Fixed a hard crash when sum() was called with only three parameters.
267+ - Fixed bezier patch not honouring clipped_by statement.
268+ - Fixed crash when using turbulence parameters (lambda, omega etc.) without
269+ specifying a pattern type.
270+ - Fixed bug in parser causing an error when no file type is specified and the
271+ file name is specified using a variable.
272+ - Fixed unwarranted "Rainbow's up and direction vector are co-linear"
273+ error message.
274+ - Fixed another bug in mesh_camera with distribution 3.
275+ - Fixed wrong rotation in `Round_Pyramid_N_in` in shapes3.inc.
276+ - Fixed some more bogosities related to media sampling method 3.
277+ - Minor robustness improvement in IFF image reading code.
278+ - Iridescence did not properly honor full area diffuse lighting.
279+ - Subsurface scattering did not play nice with non-default brilliance values.
280+
281+ Other Noteworthy
282+ ----------------
283+
284+ - The Visual Studio 2010 project for a console-only Windows version has been
285+ revived.
28286
29287---------------------------------
30288Changes between 3.7.RC7 and 3.7.0
@@ -208,9 +466,9 @@ Other Noteworthy:
208466 - Added Append_File +GP option, which allows users to append streamed
209467 console to existing console stream output file(s).
210468
211- ----------------------------------------
212- Changes between 3.7.beta. RC5 and 3.7.RC6
213- ----------------------------------------
469+ -----------------------------------
470+ Changes between 3.7.RC5 and 3.7.RC6
471+ -----------------------------------
214472
215473 - This release candidate features continued refinements to the Windows
216474 installer, VS10 code (and other) cleanup and a few bug fixes.
@@ -254,9 +512,9 @@ Other Noteworthy
254512 - A minor fix for radiosity adc_bailout handling.
255513 - Corrected a formatting issue with radiosity statistics reporting.
256514
257- ----------------------------------------
258- Changes between 3.7.beta. RC4 and 3.7.RC5
259- ----------------------------------------
515+ -----------------------------------
516+ Changes between 3.7.RC4 and 3.7.RC5
517+ -----------------------------------
260518
261519 - This release candidate primarily addresses the crash dump report #357
262520 triggered by non-closed SSLT-enabled mesh inside CSG. This fix also
@@ -276,9 +534,9 @@ http://bugs.povray.org/task/12 FS#12 (facets pattern in normal map)
276534http://bugs.povray.org/task/196 FS#196 (More SSLT Caveats)
277535http://bugs.povray.org/task/46 FS#239 (improper uid/gid handling)
278536
279- ----------------------------------------
280- Changes between 3.7.beta. RC3 and 3.7.RC4
281- ----------------------------------------
537+ -----------------------------------
538+ Changes between 3.7.RC3 and 3.7.RC4
539+ -----------------------------------
282540
283541 - This release candidate primarily improves upon the SSLT code, but there
284542 are also some other noteworthy enhancements and/or additions.
@@ -493,9 +751,9 @@ Removed an obsolete directive that aborted the render:
493751
494752Removed obsolete comments (Library_Path limitation) from povray.ini
495753
496- ----------------------------------------
497- Changes between 3.7.beta. RC2 and 3.7.RC3
498- ----------------------------------------
754+ -----------------------------------
755+ Changes between 3.7.RC2 and 3.7.RC3
756+ -----------------------------------
499757
500758This release candidate is primarily to correct a bug in media that was causing
501759crashes. It also improves a performance issue related to output file caching.
0 commit comments