@@ -37,13 +37,6 @@ This version is still under active development, and not finalized yet.
3737NOTE: This release cycle has been redesignated v3.8.0. There will not be a
3838v3.7.1 release proper.
3939
40- Performance Improvements
41- ------------------------
42-
43- - Significantly improved parsing speed of skipped conditional blocks (e.g. in
44- `#if(false) ... #end`), especially for blocks containing few directives
45- (stuff that begins with `#`).
46-
4740Changed Behaviour
4841-----------------
4942
@@ -61,6 +54,30 @@ Changed Behaviour
6154 - Token counting in conditional blocks (e.g. in `#if ... #end`) has changed.
6255 Whenever such a block is skipped, the token count is now incremented only
6356 by directives (stuff that begins with `#`).
57+ - UV mapping of cylinder, cone and lemon primitives has been disabled again
58+ for now, due to their orientation being poorly defined.
59+ - An age-old bug in the inbuilt `f_enneper` isosurface function has been
60+ fixed; the function now results in the originally intended shape.
61+
62+ New Features
63+ ------------
64+
65+ - The `ovus` primitive has been extended in multiple ways. See the
66+ documentation (currently being maintained on <http://wiki.povray.org>) for
67+ details.
68+ - Anti-aliasing now supports a new mode 3, which can actually serve as a
69+ generic oversampling mechanism not only suited to perform edge
70+ anti-aliasing, but also to successtully suppress moire patterns as well as
71+ reduce image noise from stochastic mechanisms (e.g. jittered area lights,
72+ subsurface light transport or micronormals). The mathematical background
73+ and parameterization is similar to that of adaptive focal blur.
74+
75+ Performance Improvements
76+ ------------------------
77+
78+ - Significantly improved parsing speed of skipped conditional blocks (e.g. in
79+ `#if(false) ... #end`), especially for blocks containing few directives
80+ (stuff that begins with `#`).
6481
6582Fixed or Mitigated Bugs
6683-----------------------
@@ -79,37 +96,68 @@ Reported via GitHub:
7996
8097Reported via the Newsgroups:
8198
82- 83- (2018-08-27, povray.advanced-users, "Re: It gets even weirder.")
84- Trying to `#declare Foo[A][B]=...` with `Foo` being an array of arrays and
85- `Foo[A]` not yet initialized causes a hard crash instead of a parse error.
869987100 (2017-11-05, povray.newusers, "orthographic camera and conic_sweep object")
88101 Sides of a `conic_sweep` prism become invisible when viewed head-on using
89102 an orthographic camera.
9010391104 (2018-01-05, povray.beta-test, "3.8.0 block pattern, density list parsing issue.")
105+ 106+ (2018-08-27, povray.advanced-users, "Re: It gets even weirder.")
107+ Trying to `#declare Foo[A][B]=...` with `Foo` being an array of arrays and
108+ `Foo[A]` not yet initialized causes a hard crash instead of a parse error.
109+
110+ Reported by Coverity static code analysis:
111+
112+ - CID 986462,986463 (Wrapper object use after free)
113+ - CID 967358-967362 (Uninitialized scalar variable)
114+ - CID 1372542-1372544 (Result is not floating-point)
115+ - CID 1372618 (Uninitialized scalar variable)
116+ - CID 1372629 (Uninitialized pointer read)
117+ - CID 1372630-1372632 (Uninitialized scalar variable)
92118
93119Miscellaneous:
94120
95121 - Fix `interior_texture` for text objects (as mentioned in GitHub issue #65)
96122 - Eliminated use of deprecated C++ `register` keyword (except in 3rd party
97123 libraries bundled with the POV-Ray source code).
124+ - Fix long-standing bug in Julia fractal primitive using hypercomplex numbers.
125+
126+ Development Related
127+ -------------------
128+
129+ - When compiled in debug mode, a new directive `#breakpoint` is now available,
130+ intended for triggering an unconditional breakpoint from the scene file, or
131+ priming a conditional breakpoint. See `Parser::Parse_Breakpoint()` in
132+ `source/parser/parser_tokenizer.cpp` for more details.
133+ - When compiled in debug mode, POV-Ray for Windows will now make do with
134+ the release version of the editor DLLs if it can't find the debug version.
135+ - A new version of the Git pre-commit hook is available; please, copy
136+ `pre-commit` from `tools/git/hooks/` to `.git/hooks/` in your local
137+ repository.
138+ - To simplify version number housekeeping, the file `unix/VERSION` is now
139+ created on the fly by the `unix/prebuild.sh` script, and has been dropped
140+ from the repository. To retrieve version information from the source
141+ package, use one of the new `get-source-version.*` scripts provided in
142+ `tools/unix/` and `tools/windows/`, respectively.
143+ - To simplify creating reproducible builds, the Unix build process has been
144+ amended to compile and link source files in a well-defined order.
98145
99146Other Noteworthy
100147----------------
101148
149+ - During alpha development phase, POV-Ray v3.8.0-alpha for Windows will
150+ piggypack on an existing v3.7 installation to allow for raw binary
151+ distribution.
102152 - The source code now requires a C++11-compliant compiler.
103153 - The Unix build process now officially requires Autoconf 2.68 or later.
104154 - Added `--generation` command-line switch to POV-Ray for Unix, which will
105155 cause POV-Ray to print its abbreviated version number to standard output.
106- - To simplify version number housekeeping, the file `unix/VERSION` is now
107- created on the fly by the `unix/prebuild.sh` script, and has been dropped
108- from the repository. To retrieve version information from the source
109- package, use one of the new `get-source-version.*` scripts provided in
110- `tools/unix/` and `tools/windows/`, respectively.
111156 - The `unix/prebuild.sh` script can now be run from the main directory; it is
112157 no longer necessary to change to the unix directory first.
158+ - The `./configure` script can now be run without the `COMPILED_BY=...`
159+ option. In this case it defaults to `$USER <no contact address>`, where
160+ `$USER` is your login name.
113161
114162
115163Changes between 3.7.1-beta.9 and 3.7.1-rc.1
0 commit comments