$Id: VERSIONS,v 1.388 2007-07-13 14:12:07 geuzaine Exp $

2.0.8 (Jul 13, 2007): unused vertices are not saved in mesh files
anymore; new plugin GUI; automatic GUI font size selection; renamed
Plugin(DecomposeInSimplex) into Plugin(MakeSimplex); reintroduced
enhanced Plugin(SphericalRaise); clarified meshing algo names; new
option to save groups of nodes in UNV meshes; new background mesh
infrastructure; many small improvements and small bug fixes.

2.0.7 (Apr 3, 2007): volumes can now be defined from external CAD
surfaces; Delaunay/Tetgen algorithm is now used by default when
available; re-added support for Plot3D structured mesh format; added
ability to export external CAD models as GEO files (this only works
for the limited set of geometrical primitives available in the GEO
language, of course--so trying to convert e.g. a trimmed NURBS from a
STEP file into a GEO file will fail); "lateral" entities are now added
at the end of the list returned by extrusion commands; fixed various
bugs.

2.0 (Feb 5, 2007): new geometry and mesh databases, with support for
STEP and IGES import via OpenCascade; complete rewrite of geometry and
mesh drawing code; complete rewrite of mesh I/O layer (with new native
binary MSH format and support for import/export of I-deas UNV, Nastran
BDF, STL, Medit MESH and VRML 1.0 files); added support for incomplete
second order elements; new 2D and 3D meshing algorithms; improved
integration of Netgen and TetGen algorithms; removed anisotropic
meshing algorithm (as well as attractors); removed explicit region
number specification in extrusions; option changes in the graphical
interface are now applied instantaneously; added support for offscreen
rendering using OSMesa; added support for SVG output; added string
labels for Physical entities; lots of other improvements all over the
place.

1.65 (May 15, 2006): new Plugin(ExtractEdges); fixed compilation
errors with gcc4.1; replaced Plugin(DisplacementRaise) and
Plugin(SphericalRaise) with the more flexible Plugin(Warp); better
handling of discrete curves; new Status command in parser; added
option to renumber nodes in .msh files (to avoid holes in the
numbering sequence); fixed 2 special cases in quad->prism extrusion;
fixed saving of 2nd order hexas with negative volume; small bug fixes
and cleanups.

1.64 (Mar 18, 2006): Windows versions do no depend on Cygwin anymore;
various bug fixes and cleanups.

1.63 (Feb 01, 2006): post-processing views can now be exported as
meshes; improved background mesh handling (a lot faster, and more
accurate); improved support for input images; new
Plugin(ExtractElements); small bug fixes and enhancements.

1.62 (Jan 15, 2006): new option to draw color gradients in the
background; enhanced perspective projection mode; new "lasso"
selection mode (same as "lasso" zoom, but in selection mode); new
"invert selection" button in the visibility browser; new snapping grid
when adding points in the GUI; nicer normal smoothing; new extrude
syntax (old syntax still available, but deprecated); various small bug
fixes and enhancements.

1.61 (Nov 29, 2005): added support for second order (curved) elements
in post-processor; new version (1.4) of post-processing file formats;
new stippling options for 2D plots; removed limit on allowed number of
files on command line; all "Combine" operations are now available in
the parser; changed View.ArrowLocation into View.GlyphLocation;
optimized memory usage when loading many (>1000) views; optimized
loading and drawing of line meshes and 2D iso views; optimized
handling of meshes with large number of physical entities; optimized
vertex array creation for large post-processing views on
Windows/Cygwin; removed Discrete Line and Discrete Surface commands
(the same functionality can now be obtained by simply loading a mesh
in .msh format); fixed coloring by mesh partition; added option to
light wireframe meshes and views; new "mesh statistics" export format;
new full-quad recombine option; new Plugin(ModulusPhase); hexas and
prisms are now always saved with positive volume; improved interactive
entity selection; new experimental Tetgen integration; new
experimental STL remeshing algorithm; various small bug fixes and
improvements.

1.60 (Mar 15, 2005): added support for discrete curves; new Window
menu on Mac OS X; generalized all octree-based plugins (CutGrid,
StreamLines, Probe, etc.) to handle all element types (and not only
scalar and vector triangles+tetrahedra); generalized Plugin(Evaluate),
Plugin(Extract) and Plugin(Annotate); enhanced clipping plane
interface; new grid/axes/rulers for 3D post-processing views (renamed
the AbscissaName, NbAbscissa and AbscissaFormat options to more
general names in the process); better automatic positioning of 2D
graphs; new manipulator dialog to specify rotations, translations and
scalings "by hand"; various small enhancements and bug fixes.

1.59 (Feb 06, 2005): added support for discrete (triangulated)
surfaces, either in STL format or with the new "Discrete Surface"
command; added STL and Text output format for post-processing views
and STL output format for surface meshes; all levelset-based plugins
can now also compute isovolumes; generalized Plugin(Evaluate) to
handle external view data (based on the same or on a different mesh);
generalized Plugin(CutGrid); new plugins (Eigenvalues, Gradient, Curl,
Divergence); changed default colormap to match Matlab's "Jet"
colormap; new transformation matrix option for views (for
non-destructive rotations, symmetries, etc.); improved solver
interface to keep the GUI responsive during solver calls; new C++ and
Python solver examples; simplified Tools->Visibility GUI; transfinite
lines with "Progression" now allow negative line numbers to reverse
the progression; added ability to retrieve Gmsh's version number in
the parser (to help write backward compatible scripts); fixed white
space in unv mesh output; fixed various small bugs.

1.58 (Jan 01, 2005): fixed UNIX socket interface on Windows (broken by
the TCP solver patch in 1.57); bumped version number of default
post-processing file formats to 1.3 (the only small modification is
the handling of the end-of-string character for text2d and text3d
objects in the ASCII format); new File->Rename menu; new
colormaps+improved colormap handling; new color+min/max options in
views; new GetValue() function to ask for values interactively in
scripts; generalized For/EndFor loops in parser; new plugins
(Annotate, Remove, Probe); new text attributes in views; renamed some
shortcuts; fixed TeX output for large scenes; new option dialogs for
various output formats; fixed many small memory leaks in parser; many
small enhancements to polish the graphics and the user interface.

1.57 (Dec 23, 2004): generalized displacement maps to display
arbitrary view types; the arrows representing a vector field can now
also be colored by the values from other scalar, vector or tensor
fields; new adaptive high order visualization mode; new options
(Solver.SocketCommand, Solver.NameCommand, View.ArrowSizeProportional,
View.Normals, View.Tangents and General.ClipFactor); fixed display of
undesired solver plugin popups; enhanced interactive plugin behavior;
new plugins (HarmonicToTime, Integrate, Eigenvectors); tetrahedral
mesh file reading speedup (50% faster on large meshes); large memory
footprint reduction (up to 50%) for the visualization of
triangular/tetrahedral meshes; the solver interface now supports
TCP/IP connections; new generalized raise mode (allows to use complex
expressions to offset post-processing maps); upgraded Netgen kernel to
version 4.4; new optional TIME list in parsed views to specify the
values of the time steps; several bug fixes in the Elliptic mesh
algorithm; various other small bug fixes and enhancements.

1.56 (Oct 17, 2004): new post-processing option to draw a scalar view
raised by a displacement view without using Plugin(DisplacementRaise)
(makes drawing arbitrary scalar fields on deformed meshes much
easier); better post-processing menu (arbitrary number of
views+scrollable+show view number); improved view->combine; new
horizontal post-processing scales; new option to draw the mesh nodes
per element; views can now also be saved in "parsed" format; fixed
various path problems on Windows; small bug fixes.

1.55 (Aug 21, 2004): added background mesh support for Triangle;
meshes can now be displayed using "smoothed" normals (like
post-processing views); added GUI for clipping planes; new interactive
clipping/cutting plane definition; reorganized the Options GUI;
enhanced 3D iso computation; enhanced lighting; many small bug fixes.

1.54 (Jul 03, 2004): integrated Netgen (3D mesh quality optimization +
alternative 3D algorithm); Extrude Surface now always automatically
creates a new volume (in the same way Extrude Point or Extrude Line
create new lines and surfaces, respectively); fixed UNV output; made
the "Layers" region numbering consistent between lines, surfaces and
volumes; fixed home directory problem on Win98; new
Plugin(CutParametric); the default project file is now created in the
home directory if no current directory is defined (e.g., when
double-clicking on the icon on Windows/Mac); fixed the discrepancy
between the orientation of geometrical surfaces and the associated
surface meshes; added automatic orientation of surfaces in surface
loops; generalized Plugin(Triangulate) to handle vector and tensor
views; much nicer display of discrete iso-surfaces and custom ranges
using smooth normals; small bug fixes and cleanups.

1.53 (Jun 04, 2004): completed support for second order elements in
the mesh module (line, triangles, quadrangles, tetrahedra, hexahedra,
prisms and pyramids); various background mesh fixes and enhancements;
major performance improvements in mesh and post-processing drawing
routines (OpenGL vertex arrays for tri/quads); new Plugin(Evaluate) to
evaluate arbitrary expressions on post-processing views; generalized
Plugin(Extract) to handle any combination of components; generalized
"Coherence" to handle transfinite surface/volume attributes; plugin
options can now be set in the option file (like all other options);
added "undo" capability during geometry creation; rewrote the contour
guessing routines so that entities can be selected in an arbitrary
order; Mac users can now double click on geo/msh/pos files in the
Finder to launch Gmsh; removed support for FLTK 1.0; rewrote most of
the code related to quadrangles; fixed 2d elliptic algorithm; removed
all OpenGL display list code and options; fixed light positioning; new
BoundingBox command to set the bounding box explicitly; added support
for inexpensive "fake" transparency mode; many code cleanups.

1.52 (May 06, 2004): new raster ("bitmap") PostScript/EPS/PDF output
formats; new Plugin(Extract) to extract a given component from a
post-processing view; new Plugin(CutGrid) and Plugin(StreamLines);
improved mesh projection on non-planar surfaces; added support for
second order tetrahedral elements; added interactive control of
element order; refined mesh entity drawing selection (and renamed most
of the corresponding options); enhanced log scale in post-processing;
better font selection; simplified View.Raise{X,Y,Z} by removing the
scaling; various bug fixes (default postscript printing mode, drawing
of 3D arrows/cylinders on Linux, default home directory on Windows,
default initial file browser directory, extrusion of points with
non-normalized axes of rotation, computation of the scene bounding box
in scripts, + the usual documentation updates).

1.51 (Feb 29, 2004): initial support for visualizing mesh partitions;
integrated version 2.0 of the MSH mesh file format; new option to
compute post-processing ranges (min/max) per time step; Multiple views
can now be combined into multi time step ones (e.g. for programs that
generate data one time step at a time); new syntax: #var[] returns the
size of the list var[]; enhanced "gmsh -convert"; temporary and error
files are now created in the home directory to avoid file permission
issues; new 3D arrows; better lighting support; STL facets can now be
converted into individual geometrical surfaces; many other small
improvements and bug fixes (multi timestep tensors, color by physical
entity, parser cleanup, etc.).

1.50 (Dec 06, 2003): small changes to the visibility browser + made
visibility scriptable (new Show/Hide commands); fixed (rare) crash
when deleting views; split File->Open into File->Open and File->New to
behave like most other programs; Mac versions now use the system menu
bar by default (if possible); fixed bug leading to degenerate and/or
duplicate tetrahedra in extruded meshes; fixed crash when reloading
sms meshes.

1.49 (Nov 30, 2003): made Merge, Save and Print behave like Include
(i.e., open files in the same directory as the main project file if
the path is relative); new Plugin(DecomposeInSimplex); new option
View.AlphaChannel to set the transparency factor globally for a
post-processing view; new "Combine Views" command; various bug fixes
and cleanups.

1.48 (Nov 23, 2003): new DisplacementRaise plugin to plot arbitrary
fields on deformed meshes; generalized CutMap, CutPlane, CutSphere and
Skin plugins to handle all kinds of elements and fields; new "Save
View[n]" command to save views from a script; many small bug fixes
(configure tests for libpng, handling of erroneous options, multi time
step scalar prism drawings, copy of surface mesh attributes, etc.).

1.47 (Nov 12, 2003): fixed extrusion of surfaces defined by only two
curves; new syntax to retrieve point coordinates and indices of
entities created through geometrical transformations; new PDF and
compressed PostScript output formats; fixed numbering of elements
created with "Extrude Point/Line"; use $GMSH_HOME as home directory if
defined.

1.46 (Aug 23, 2003): fixed crash for very long command lines; new
options for setting the displacement factor and Triangle's parameters
+ renamed a couple of options to more sensible names (View.VectorType,
View.ArrowSize); various small bug fixes; documentation update.

1.45 (Jun 14, 2003): small bug fixes (min/max computation for tensor
views, missing physical points in read mesh, "jumping" geometry during
interactive manipulation of large models, etc.); variable definition
speedup; restored support for second order elements in one- and
two-dimensional meshes; documentation updates.

1.44 (Apr 21, 2003): new reference manual; added support for PNG
output; fixed small configure script bugs.

1.43 (Mar 28, 2003): fixed solver interface problem on Mac OS X; new
option to specify the interactive rotation center (default is now the
pseudo "center of gravity" of the object, instead of (0,0,0)).

1.42 (Mar 19, 2003): suppressed the automatic addition of a ".geo" extension
if the file given on the command line is not recognized; added missing
Layer option for Extrude Point; fixed various small bugs.

1.41 (Mar 04, 2003): Gmsh is now licensed under the GNU General Public
License; general code cleanup (indent).

1.40 (Feb 26, 2003): various small bug fixes (mainly GSL-related).

1.39 (Feb 23, 2003): removed all non-free routines; more build system
work; implemented Von-Mises tensor display for all element types;
fixed small GUI bugs.

1.38 (Feb 17, 2003): fixed custom range selection for 3D iso graphs;
new build system based on autoconf; new image reading code to import
bitmaps as post-processing views.

1.37 (Jan 25, 2003): generalized smoothing and cuts of post-processing
views; better Windows integration (solvers, external editors, etc.);
small bug fixes.

1.36 (Nov 20, 2002): enhanced view duplication (one can now use
"Duplicata View[num]" in the input file); merged all option dialogs in
a new general option window; enhanced discoverability of the view
option menus; new 3D point and line display; many small bug fixes and
enhancements ("Print" format in parser, post-processing statistics,
smooth normals, save window positions, restore default options, etc.).

1.35 (Sep 11, 2002): graphical user interface upgraded to FLTK 1.1
(tooltips, new file chooser with multiple selection, full keyboard
navigation, cut/paste of messages, etc.); colors can be now be
directly assigned to mesh entities; initial tensor visualization; new
keyboard animation (right/left arrow for time steps; up/down arrow for
view cycling); new VRML output format for surface meshes; new plugin
for spherical elevation plots; new post-processing file format
(version 1.2) supporting quadrangles, hexahedra, prisms and pyramids;
transparency is now enabled by default for post-processing plots; many
small bug fixes (read mesh, ...).

1.34 (Feb 18, 2002): improved surface mesh of non-plane surfaces;
fixed orientation of elements in 2D anisotropic algorithm; minor user
interface polish and additions (mostly in post-processing options);
various small bug fixes.

1.33 (Jan 24, 2002): new parameterizable solver interface (allowing up
to 5 user-defined solvers); enhanced 2D aniso algorithm; 3D initial
mesh speedup.

1.32 (Oct 04, 2001): new visibility browser; better floating point
exception checks; fixed infinite looping when merging meshes in
project files; various small clean ups (degenerate 2D extrusion,
view->reload, ...).

1.31 (Nov 30, 2001): corrected ellipses; PostScript output update
(better shading, new combined PS/LaTeX output format); more interface
polish; fixed extra memory allocation in 2D meshes; Physical Volume
handling in unv format; various small fixes.

1.30 (Nov 16, 2001): interface polish; fix crash when extruding
quadrangles.

1.29 (Nov 12, 2001): translations and rotations can now be combined in
extrusions; fixed coherence bug in Extrude Line; various small bug
fixes and additions.

1.28 (Oct 30, 2001): corrected the 'Using Progression' attribute for
tranfinite meshes to actually match a real geometric progression; new
Triangulate plugin; new 2D graphs (space+time charts); better
performance of geometrical transformations (warning: the numbering of
some automatically created entities has changed); new text primitives
in post-processing views (file format updated to version 1.1); more
robust mean plane computation and error checks; various other small
additions and clean-ups.

1.27 (Oct 05, 2001): added ability to extrude curves with
Layers/Recombine attributes; new PointSize/LineWidth options; fixed
For/EndFor loops in included files; fixed error messages (line
numbers+file names) in loops and functions; made the automatic removal
of duplicate geometrical entities optional (Geometry.AutoCoherence=0);
various other small bug fixes and clean-ups.

1.26 (Sep 06, 2001): enhanced 2D anisotropic mesh generator (metric
intersections); fixed small bug in 3D initial mesh; added alternative
syntax for built-in functions (for GetDP compatibility); added line
element display; Gmsh now saves all the elements in the mesh if no
physical groups are defined (or if Mesh.SaveAll=1).

1.25 (Sep 01, 2001): fixed bug with mixed recombined/non-recombined
extruded meshes; Linux versions are now build with no optimization,
due to bugs in gcc 2.95.X.

1.24 (Aug 30, 2001): fixed characteristic length interpolation for
Splines; fixed edge swapping bug in 3D initial mesh; fixed degenerated
case in geometrical extrusion (ruled surface with 3 borders); fixed
generation of degenerated hexahedra and prisms for recombined+extruded
meshes; added BSplines creation in the GUI; integrated Jonathan
Shewchuk's Triangle as an alternative isotropic 2D mesh generator;
added AngleSmoothNormals to control sharp edge display with smoothed
normals; fixed random crash for lighted 3D iso surfaces.

1.23: fixed duplicate elements generation + non-matching tetrahedra
faces in 3D extruded meshes; better display of displacement maps;
fixed interactive ellipsis construction; generalized boundary
operator; added new explode option for post-processing views; enhanced
link view behavior (to update only the changed items); added new
default plugins: Skin, Transform, Smooth; fixed various other small
bugs (mostly in the post-processing module and for extruded meshes).

1.22 (Aug 03, 2001): fixed (yet another) bug for 2D mesh in the mean
plane; fixed surface coherence bug in extruded meshes; new double
logarithmic scale, saturate value and smoothed normals option for
post-processing views; plugins are now enabled by default; three new
experimental statically linked plugins: CutMap (extracts a given iso
surface from a 3D scalar map), CutPlane (cuts a 3D scalar map with a
plane section), CutSphere (cuts a 3D scalar map with a sphere);
various other bug fixes, additions and clean-ups.

1.21 (Jul 25, 2001): fixed more memory leaks; added -opt command line
option to parse definitions directly from the command line; fixed
missing screen refreshes during contour/surface/volume selection;
enhanced string manipulation functions (Sprintf, StrCat, StrPrefix);
many other small fixes and clean-ups.

1.20 (Jun 14, 2001): fixed various bugs (memory leaks, functions in
included files, solver command selection, ColorTable option, duplicate
nodes in extruded meshes (not finished yet), infinite loop on empty
views, orientation of recombined quadrangles, ...); reorganized the
interface menus; added constrained background mesh and mesh visibility
options; added mesh quality histograms; changed default mesh colors;
reintegrated the old command-line extrusion mesh generator.

1.19 (May 07, 2001): fixed seg. fault for scalar simplex
post-processing; new Solver menu; interface for GetDP solver through
sockets; fixed multiple scale alignment; added some options + full
option descriptions.

1.18 (Apr 26, 2001): fixed many small bugs and incoherences in
post-processing; fixed broken background mesh in 1D mesh generation.

1.17 (Apr 17, 2001): corrected physical points saving; fixed parsing
of DOS files (carriage return problems); easier geometrical selections
(cursor change); plugin manager; enhanced variable arrays (sublist
selection and affectation); line loop check; New arrow display;
reduced number of 'fatal' errors + better handling in interactive
mode; fixed bug when opening meshes; enhanced File->Open behavior for
meshes and post-processing views.

1.16 (Feb 26, 2001): added single/double buffer selection (only useful
for Unix versions of Gmsh run from remote hosts without GLX); fixed a
bug for recent versions of the opengl32.dll on Windows, which caused
OpenGL fonts not to show up.

1.15 (Feb 23, 2001): added automatic visibility setting during entity
selection; corrected geometrical extrusion bug.

1.14 (Feb 17, 2001): corrected a few bugs in the GUI (most of them
were introduced in 1.13); added interactive color selection; made the
option database bidirectional (i.e. scripts now correctly update the
GUI); default options can now be saved and automatically reloaded at
startup; made some changes to the scripting syntax
(PostProcessing.View[n] becomes View[n]; Offset0 becomes OffsetX,
etc.); corrected the handling of simple triangular surfaces with large
characteristic lengths in the 2D isotropic algorithm; added an ASCII
to binary post-processing view converter.

1.13 (Feb 09, 2001): added support for JPEG output on Windows.

1.12: corrected vector lines in the post-processing parsed
format; corrected animation on Windows; corrected file creation in
scripts on Windows; direct affectation of variable arrays.

1.11 (Feb 07, 2001): corrected included file loading problem.

1.10 (Feb 04, 2001): switched from Motif to FLTK for the GUI. Many
small tweaks.

1.00 (Jan 15, 2001): added PPM and YUV output; corrected nested
If/Endif; Corrected several bugs for pixel output and enhanced GIF
output (dithering, transparency); slightly changed the post-processing
file format to allow both single and double precision numbers.

0.999 (Dec 20, 2000): added JPEG output and easy MPEG generation (see
t8.geo in the tutorial); clean up of export functions; small fixes;
Linux versions are now compiled with gcc 2.95.2, which should fix the
problems encountered with Mandrake 7.2.

0.998 (Dec 19, 2000): corrected bug introduced in 0.997 in the
generation of the initial 3D mesh.

0.997 (Dec 14, 2000): corrected bug in interactive surface/volume
selection; Added interactive symmetry; corrected geometrical extrusion
with rotation in degenerated or partially degenerated cases; corrected
bug in 2D mesh when meshing in the mean plane.

0.996: arrays of variables; enhanced Printf and Sprintf; Simplified
options (suppression of option arrays).

0.995 (Dec 11, 2000): totally rewritten geometrical database
(performance has been drastically improved for all geometrical
transformations, and most notably for extrusion). As a consequence,
the internal numbering of geometrical entities has changed: this will
cause incompatibilities with old .geo files, and will require a
partial rewrite of your old .geo files if these files made use of
geometrical transformations. The syntax of the .geo file has also been
clarified. Many additions for scripting purposes. New extrusion mesh
generator. Preliminary version of the coupling between extruded and
Delaunay meshes. New option and procedural database. All interactive
operations can be scripted in the input files. See the last example in
the tutorial for an example. Many stability enhancements in the 2D and
3D mesh algorithms. Performance boost of the 3D algorithm. Gmsh is
still slow, but the performance becomes acceptable. An average 1000
tetrahedra/second is obtained on a 600Mhz computer for a mesh of one
million tetrahedra. New anisotropic 2D mesh algorithm. New (ASCII and
binary) post-processing file format and clarified mesh file
format. New handling for interactive rotations (trackball mode). New
didactic interactive mesh construction (watch the Delaunay algorithm
in real time on complex geometries: that's exciting ;-). And many,
many bug fixes and cleanups.

0.992 (Nov 13, 2000): corrected recombined extrusion; corrected
ellipses; added simple automatic animation of post-processing maps;
fixed various bugs.

0.991 (Oct 24, 2000): fixed a serious allocation bug in 2D algorithm,
which caused random crashes. All users should upgrade to 0.991.

0.990: bug fix in non-recombined 3D transfinite meshes.

0.989 (Sep 01, 2000): added ability to reload previously saved meshes;
some new command line options; reorganization of the scale menu; GIF
output.

0.987: fixed bug with smoothing (leading to the possible generation of
erroneous 3d meshes); corrected bug for mixed 3D meshes; moved the
'toggle view link' option to Opt->Postprocessing_Options.

0.986: fixed overlay problems; SGI version should now also run on 32
bits machines; fixed small 3d mesh bug.

0.985: corrected colormap bug on HP, SUN, SGI and IBM versions;
corrected small initialization bug in postscript output.

0.984: corrected bug in display lists; added some options in
Opt->General.

0.983: corrected some seg. faults in interactive mode; corrected bug
in rotations; changed default window sizes for better match with
1024x768 screens (default X resources can be changed: see ex03.geo).

0.982: lighting for mesh and post-processing; corrected 2nd order mesh
on non plane surfaces; added example 13.
