Bugs
Known bugs
FreeFem++-server should run FreeFem++-lang as user nobody
Border keyword highlight problem in ffcs editor (eg with svg2edp)
There is still a problem with autosave when the default directory is readonly
Run native FreeFem++ regression tests for ffvtk
Closed TCP server connections stay indefinitely in CLOSE_WAIT state after completion
check autosave feature again (problem when initial directory is not writable)
FreeFem++-cs crashes when resizing graphical windows (reported by JR)
ff/upstream/download: scotch has problems compiling on Ubuntu (-lm library order problem), pastix and hips depend on scotch
ff/upstream/download: hypre/Makefile explicitely refuses to work on Win32
ff/upstream/download: mmg3d does not patch correctly any more (missing file build/mmg3d.c ???)
ff/upstream/download: yams download is broken
Improvements for graphical windows (request from MK)
- add user-defined messages to the
FreeFem++-cs "cin" input window
- enable setting 2D mesh borders to black
- colorize the inside of meshes (to visualize distinct regions)
- blinking effect when resizing graphical windows under MacOS
- numerical values are too small (and there are not enough of them)
- force all pictures to use the same scale
- options for comments: location, character size, line returns
- because of shadows, colors do not correspond to the reference any more when the light source moves
- make interpolated colors (eg when drawing isosurface triangles) crispier
1D (x,y) plots (request from ID)
ability to run regression test suite from read-only directory (necessary e.g. on Debian or on Windows)
convert FreeFem++ doc as wiki pages for [http://webs.um.es/eliseo/ff++]
list all command-line options in the doc
undo does not always work in the editor
Choose starting points for streamlines
explain the fact that the graphical window pauses when the mouse is over it
unstable color scale in examples++-chapt3/convects.edp
examples++-main/wafer-heating-laser-axi.edp pictures are blank
it looks like VTK is clipping objects of size 1000 or over.
ctrl-z does not remove modified flag for an edited file
export to HTML for color printing of syntax colors
dgeev syntax error not detected by regression tests?
remove examples that do not work from precompiled packages
add a typing test in the regression tests
mmg3d is automatically downloaded and compiled now?
tests should be able to run from a read-only directory (eg for Debian and Windows setups)
check FAQ questions about FreeFem++-cs batch mode
FreeFem++-cs should complain with a clear explanation when MPI is not installed
avoid escaping basic quote characters in FreeFem++-cs comments
[file:~/LeHyaric/ffcs/comments.php::All_quotes_are_escaped_by_default]
Platform-specific bugs
Linux: precompiled version for Ubuntu 10.04 LTS (request from Shyam)
Linux: there have been reports that "install_on_gnome_desktop" bugs on the latest Ubuntu
MacOS: some trouble with MPI?
regression tests need to be run again
MacOS: "pointer being freed was not allocated" in dist version
only when compiling with optimisation options -O{1,2,3}
this happens since the last automatic Xcode update (mid-december 2010)
keep compilation option -D_GLIBCXX_FULLY_DYNAMIC_STRING' to solve it?
even VTK crashes: problem in VTK/Utilities/kwsys/SystemTools.cxx
and Utilities/MaterialProperties/ProcessShader.cxx
just wait until the next Xcode update?
distribute an unoptimized MacOS version for now?
MacOS: FreeFem++-cs does not work with Lion (OP)
Message:
dyld: Library not loaded: /usr/X11/lib/libX11.6.dylib
Referenced from: /usr/X11/lib/libXrender.1.dylib
Reason: Incompatible library version: libXrender.1.dylib requires version
10.0.0 or later, but libX11.6.dylib provides version 9.0.0
MacOS: Changing the size of the graphical output window (FH)
makes it blink when adding new pictures
MacOS: some users still use MacOS 10.5
Windows: heuristic virus scanners
These virus scanners produce positive reports on FreeFem++-cs without seeing any actual virus signature
One could try and find the FreeFem++-cs (clean) code area that activates the heuristic via dichotomy and the virustotal.com website
Windows: problem with make MPICG.dll and many other DLL
version 12.5
Complete regression tests for all platforms
version 12.4 (10/5/12)
DONE load "tetgen" now works again
Configuration option "--enable-debian" is now automatically activated on Debian systems
Developed a new permanent server architecture named FreeFem++-server
The previous non-permanent server process has been renamed as FreeFem++-lang. This is transparent to the user.
A text-based client named FreeFem++-cli has been developed as a testing procedure for FreeFem++-server. It can also
be used as a command-line version of FreeFem++-cs,
All the functions of the previous ssh-based server architecture have been replaced.
Access to this permanent server should always be restricted to identified users (via the password file provided in
FreeFem++-cs/passwd for instance).
DONE renamed source archives as ffcs-...-src.tgz to simplify automatic web scans (request for Debian)
Only displays a message about saving files in verbose mode
Upgraded to FreeFem++ version 3.19
Added configuration options to specifically disable any FreeFem++ extra tool that fails to download or compile
version 12.3 (7/3/12)
Re-added "--disable-mpi" as a configure option on user request
DONE problem with links during make in doc subdirectory solved
mainly used for the FreeFem++ reference card on the web
Compiled successfully on Windows 7 (32 and 64 bits)
version 12.2 (14/2/12)
DONE Regression test suite for FreeFem++-vtk (script located in tests/checkffg) reactivated
Rebuilt on MacOS 10.7
version 12.1 (1/2/12)
DONE bug: when pictures were saved in quick succession, some of the recorded files were corrupt
This was due to the fact that VTK (rightly) requires the screen representation of a scene to be complete before
saving it to a file. But FLTK does not draw windows (and the scene that they contain) on the screen if they are
covered by other ones quickly before the FLTK idle loop gains control. The fix was to wait for any picture be saved
before creating new VTK scenes.
All FreeFem++-cs command-line options are documented
To see the full description of all options, just call FreeFem++-cs from the command line with option "-h" ("--h", "-help"
and "--help" also work)
Included patches by CTrophime to use the default FLTK package under Linux Debian
Upgraded to FreeFem++ version 3.18
version 11.14 (5/12/11)
Upgraded to FreeFem++ version 3.17
DONE ARGV can now be set from the FreeFem++-cs command line with the option -FreeFemArguments "___"
The "-Batch" option allows calling FreeFem++-cs from the command line, run a script and return to the command line
version 11.13 (22/11/11)
DONE Compiled with MPI on Ubuntu 10.04 LTS, Windows 7 and MacOS Lion
Some MPI-enabled shared libraries are still not available in the precompiled Windows version because of unsolved "undefined
reference" linking problems.
Upgraded to FreeFem++ version 3.16
DONE The autosave file (default name autosave.edp) is now saved only when new changes occur in the editor
Compiled with the Goto BLAS on Windows (http://www.tacc.utexas.edu/tacc-projects/gotoblas2)
DONE Solved freeze problem when typing macros
DONE Enabled C comments inside macro definitions
DONE The color-coded editor now recognises the new FreeFem++ macro syntax ("NewMacro/EndMacro")
DONE ARGV now available in FreeFem++-cs
The ARGV array now contains arguments specified as strings in "Options/Other Options.../FreeFem++ arguments"
This version has been validated on Linux Debian Testing and Ubuntu 10.04 64 LTS
Windows and MacOS versions are scheduled
DONE On Debian Linux, the Debian VTK library is used when specifying "--enable-debian" in the FreeFem++-cs configuration step
Upgraded FreeFem++ to version Pi
FreeFem++ 3.14 picks up the latest version of mshmet (the old version of mshmet is not available anymore so mshmet is not compiled
by FreeFem++ 3.12). Examples++-3d/Laplace-Adapt-3d.edp works again.
Compiled with gcc/g++ version 4.6
Some internal executable names have been changed to avoid ambiguïties with other packages
The python-ffc Debian package already contains a file named "ffc". Therefore, our ffc has be renamed to FreeFem++-client, and
for coherency ffs -> FreeFem++-server, ffsmpi -> FreeFem++-mpiserver. This has no impact on FreeFem++-cs users.
NB: Compiling VTK is problematic with this version
so it should only be used on Debian-compatible Linux versions (eg Ubuntu), where a precompiled VTK lib can be used with the
"--enable-debian" configuration option.
DONE works on 32-bit Linux Ubuntu 11.04
the problem with Ubuntu was that X11 libraries are not located in /usr/lib anymore but in
/usr/lib/{i386,x86_64}-linux-gnu from Ubuntu version 11.04
DONE removed executable bit from non-executable files in source files.
DONE Created two very basic man pages for use in Linux packages
they are doc/FreeFem++-cs.1 and doc/ffg.1
Menu option "Graphics/Save Image As..." renamed to "Save Scene As..."
because some file formats (vtk, vtu, povray) do not save an image
but the whole 3D scene.
Cut planes are now deactivated by default
This is to avoid cluttering the picture, but it can always be
re-activated by hand (in "Graphics/Options...") or by an option
in plot(...,CutPlane=true,...)
The preferences file freefem++.pref has been renamed to freefem++-cs.pref
this is to make sure that FreeFem++ and FreeFem++-cs can coexist without any
interference on the same machine.
New configure option "--enable-debian"
to use Debian-provided VTK and cmake packages instead of
downloading them when creating a Debian package (request from
C. Trophime)
Some patches for Debian packaging provided by C. Trophime
DONE accented utf-8 characters do not crash FreeFem++-cs anymore
this long-standing problem has been solved by calling yyrestart()
when a highlighting scan ends in an error because of an utf-8
escape character.
The FreeFem++-cs window is now reduced when used on smaller screens
because some window managers may accept a big window but make it
difficult to move such a window if its control points are out of
the display area
DONE Windows: tetgen.dll loading problem solved
the visible error message was a _gxx_personality_v0 problem in
libstdc++-6.dll
The window where a plot appears can now be chosen
thanks to a new plot() parameter: WindowIndex=n, where n goes
from -1 (use current window), 0 (use main window), 1 or more
(create a detached window of that label)
All VTK plot() parameters have a textual description
obtained by clicking on "Graphics/Parameters for plot()"
DONE A race condition has been resolved at the end of each FreeFem++ run
the freeze happened randomly. The locks involved were the FLTK
lock and 'runserverend'.
DONE Windows bug: Saving a file could fail but say "completed successfully"
this was a bug in the error checking mechanism!
DONE Windows bug: Remote processes are now properly killed
sometimes, killing a remote process did not work because of an
internal memory allocation problem
Default for "Help/Show Debug Messages" is now off
New "Graphics" menu summarising all commands for the graphical window
3D surfaces are now scaled to the size of the graphical window
this can be changed with "Adjust Z scale" on the graphical
options window
plot(ps="") can now save pictures in multiple formats
depending on the file name extension: .eps (pixel-based), .png,
.jpg, .pov, .vtk, .vtu
the FreeFem++ 2D vector-based postcript output can still be obtained by
choosing the extension .ps
plot() now accepts VTK options
to get the list of available options, click "Graphics/Show Plot
Parameters". All these options can be copied back into the
original .edp script.
DONE bug: python not called anymore during Linux installation
calling python is a MacOS-only replacement for "readlink -f",
which is missing on this platform, during the "install_as_root"
procedure. Python should never get called on any Linux version.
New FreeFem++-cs configuration option "--enable-tools-failure"
By default, FreeFem++-cs does not compile without all the FreeFem++ tools, to
make sure that the FreeFem++-cs environment is coherent on all
platforms. This options allows some tools downloaded by FreeFem++ not to
compile to let users run FreeFem++-cs even on platforms where some of the
tools do not work.
DONE .vtu and .vtk files numbers are now placed before the extension
DONE autosave message now specifies the autosave file name
before it wrongly specified the original name as saved when only
the autosave copy was updated.
DONE cut plane now cuts through all 3D vector fields
DONE MacOS bug: ffg now works again with FreeFem++
DONE bug: solved some indexing errors in the reference card
DONE bug: disabling editor highlighting now removes all colors right away
DONE bug: "Edit/Hide Editor Panel" works again
DONE bug: "Edit/Show All Panels" sometimes moved the outside window borders
DONE (development only) "make tags" creates a project-wide TAGS file
DONE bug: typing special characters does not crash FreeFem++-cs anymore
although I have not solved this bug explicitely, I am not able to
reproduce it now. It looks like this bug disappeared when the
program was changed for a different reason. If anyone is able to
crash FreeFem++-cs again by typing random characters into the editor
window, please let me know how to do it myself.
DONE Ubuntu bug: load "metis" now works again
New button for setting default plot parameters
DONE bug: MPI is now activated by default on MacOS
DONE bug: Remote Server option with ssh works again on MacOS
The remote ffs loader needs the Carbon API on Mac
The Carbon API is required to call
_NSGetExecutablePath(). Unfortunately, this causes a useless
warning message: ": kCGErrorFailure: Set a breakpoint @
CGErrorBreakpoint() to catch errors as they are logged.
_RegisterApplication(), FAILED TO establish the default
connection to the WindowServer, _CGSDefaultConnection() is NULL."
DONE bug: on MacOS, the ffs loader now exits properly when the server ends
New light indicator showing when the mouse is over a picture
All new pictures are paused while this light is on, to let the
user interact with the current picture before it is replaced with
the next one.
Much improved stability thanks to the new regression tests suite
It is not possible to use a different version of FLTK or VTK anymore
because there are too many differences between versions and too
many different locations on different systems. The configuration
script has become too complex to keep all the possible options
in a stable state.
The default for plotting 3D meshes has changed
Plotting a 3D mesh with 'plot(mesh)' now displays only its 2D
contour by default for clarity. The 3D body of the mesh is quite
often too complex to be of use, but click on "Graphical
Options/Show Meshes" to see it nevertheless.
Cut planes now cut through 3D meshes and 3D surfaces as well
DONE bug: borders were sometimes colored in white (ie invisible)
this happened when the number of colors on the color bar was
lower thant the highest label number. When this happens now, high
label numbers are all colored with the top color instead of white.
Cut planes through 3D data are now optional (and on by default)
The graphical options window now always points at the current graphical tab
Cut planes also cut through isovalues and arrows
DONE bug: Graphical options now work properly on detached windows
DONE bug: 2d surfaces are now located in the middle of 3D scenes
previously, such data could happen to be far from the center of
the scene if it contained values far from zero, because the
initial position of some other objects (eg the cutplane) would
still be zero.
DONE bug: SuperLu now compiles on Win32
SuperLu.edp needs the BLAS, and requests them through the WHERE
mechanism (with header comments in
examples++-load/SuperLu.cpp). But when the BLAS were downloaded
(which is the case on Windows), the WHERE-library file was not
updated.
DONE bug: unnecessary warning messages during regression tests (Windows)
ffs generated segfaults on purpose (to check for the stability of
ffc) but Windows produced message boxes every time. So the
segfaults have been replaced by regular exits with code 0.
Configuration options for Slackware 13.1 32 bits and 13.0 64 bits
Contributed by fred 01/10/10 13:28
./configure --prefix=/opt/ffcs --localstatedir=/var
--sysconfdir=/etc --libdir=/usr/lib64
--with-freefem-options="--enable-download --enable-optim
--enable-opengl --with-flib=/usr/lib64/libgfortran.so.3.0.0
--with-mpi=yes"
added to the INSTALL notes
DONE bug: clipping problem when resetting a 3D view
3D objects very close to the camera or very far from it used to
vanish when clicking on the "Reset view" button because the
camera clipping plane was not properly reset. This is fixed.
DONE bug: FreeFem++ reference card links have been updated
Domain boundaries can now be displayed as meshes or as transparent surfaces
DONE bug: graphical splash screen stayed on top on 64-bit Unbuntu 10.10
This version of FreeFem++-cs has been checked on the same system (but
maybe not the same video card). It runs fine.
Displays several different graphical windows
FreeFem++-cs is now able to redirect FreeFem++ graphical output to detached
graphical windows, as soon as FreeFem++ adds a corresponding parameter
(eg the index of the window to use for display) to plot().
More options added to visualize complex scalars and vectors
real part, imaginary part, modulus and phase are available for display.
DONE bug: auto-reload option (for files modified externally) works again
Some of FreeFem++ graphical window keybindings have been reimplemented in FreeFem++-cs
the ones that have not been reimplemented do not correspond well
the the FreeFem++-cs environment. They will be added on request.
DONE bug: new pictures sometimes appear in separate windows
There is still no definitive explanation to this. Probably VTK
keeps some resources locked between timer calls, which prevents
these resources from being used if another timer call happens in
between the first two. And VTK is able to create new
"RenderWindows" when existing ones are not usable.
The workaround has been to introduce an automatic pause: no new
window will appear while the user interacts with an existing
one. The good side of this is that FreeFem++-cs does not hide a picture
that is being worked on anymore.
Upgrading FreeFem++ has become necessary because tetgen examples from
the FreeFem++ documentation do not work without it. Backporting the
tetgen DLL alone is not enough because of incompatibilities
between C++ classes in FreeFem++ 3.10 and 3.11.
MPI programming on Linux
Activated by clicking on "Options/Parallel Server".
The number of processes can be changed in "Options/Other
Options.../Number of MPI Processes".
Only the output from process 0 is displayed in the
FreeFem++-cs output window. The output from other processes can be seen
in the terminal window if FreeFem++-cs was started from the command line.
DONE bug: the FreeFem++-cs icon now appears correctly under Gnome
DONE bug: MinGW FreeFem++ BLACS compilation now works
symbolic links in ff/local/download/blacs/BLACS/SRC/MPI/INTERNAL
have been replaced with real files
DONE bug: the FreeFem++ load examples are now shipped in the FreeFem++-cs archive
because of a typing error, the load examples were missing from
previous versions
Regression tests now run most of the existing FreeFem++ examples
All the numerical results of these examples are checked to be
identical to the values computed by FreeFem++ itself.
It also means that if the value given by FreeFem++ is wrong, the value
given by FreeFem++-cs is wrong as well.
Improved display rate for quick sequences of images
DONE bug: re-added a missing tetgen DLL in the Windows version
DONE bug: re-activated the stop button on Windows
the stop button sometimes did not respond to user requests
because the socket flag SO_RCVTIMEO does not apply to the
accept() call under Win32. This has been solved by adding a call
to select() before accept().
DONE bug: the file dialog window sometimes opened a wrong default directory
DONE bug: solved a random crash at start-up under MacOS 10.6
Some labels in "Options/Other Options..." have been shortened
All FreeFem++-cs web comments are now included in the FreeFem++-cs RSS feed
at
http://www.ljll.math.upmc.fr/lehyaric/ffcs/newsrss.xml
DONE bug: the "install_as_root" script failed
it did not create the necessary scripts when the default shell
was sh and not bash (because of a difference in the way functions
are defined between the two shells). This is now solved.
DONE bug: potential security risk on Ubuntu 10.4
Gnome considered the FreeFem++-cs desktop icon as a potential security
risk and refused to run it.
The corresponding ".desktop" file has been made
"executable". This removes the security message and renders the
icon usable.
DONE bug: yet another change in the FreeFem++-cs loader
Sometimes command-line arguments (e.g. the first EDP file to
open) were not taken into account yet. This is solved. Sorry for
the repeated problem.
Ported to 64-bit Windows
DONE bug: VTK messages in a separate text window now removed
DONE bug: "Failed to initialize drm buffer pools - possibly out of graphics memory"
This happened for scripts that generated many complex VTK
pictures, even when the pictures history was limited, as if
previous VTK pictures did not free the graphics memory
completely.
VTK data structures have been more thoroughly cleaned up. Tests
show that small machines (even small laptops) can now handle
complex graphics.
DONE bug: FreeFem++-cs could not load some files via drag'n'drop
This was because the corresponding file names were not converted
to the right set of characters. All occurrences of '^M' are now
deleted. And all occurrences of '%hex' are replaced with the
corresponding character.
DONE bug: default VTK arrows are too big for most cases
Quite often, VTK arrows are too big both visually and in terms
of computing resources. 'hedgehog' (the VTK name for arrows
made of a thin line and without tip) is now the default arrow
option.
DONE Automatic compiling of CMake and VTK under Cygwin
Up until now, compiling FreeFem++-cs under Cygwin required VTK to be
preinstalled. Now the compilation process is able to compile
VTK as well.
The Cygwin version of CMake (and any version of CMake compiled
under Cygwin) always defines the keyword "UNIX" (right from the
beginning in "bootstrap"), which forces VTK to use Unix-style
process control. To avoid this, the FreeFem++-cs compilation process
downloads a precompiled version of CMake from the official CMake
website.
DONE Help/Documentation/Tutorial now points to the right web link
DONE Function parameters are properly colorized
DONE File sizes and md5sums are now listed on the download page
DONE Commands summary page does not display properly
all dots that appeared as question marks when this web page was
displayed with the FLTK internal browser on MacOS have been
removed
Improving stability thanks to a new testing procedure in src/regression.cpp
This procedure is activated at development time with the option
"-runregtests" from the command line
There are now two testing procedures: tests/regress checks that
FreeFem++-cs gives the same numerical answers as FreeFem++ on an extensive list
of examples. src/regression.cpp checks the behaviour of the
graphical interface of FreeFem++-cs.
"src/regression.cpp" is still very basic at the moment: it will
continue to grow as more FreeFem++-cs features are checked.
The default FreeFem++-cs behaviour is now to avoid doing any pauses.
This can be changed by unchecking the "Compute/Dot Not Pause"
menu item. The reason for the change is that new users may not
know that the pause button needs to be clicked for the
computation to resume after a wait. And FreeFem++ scripts very often
containt "wait=1" in plots because FreeFem++ graphics cannot be called
back through tabs (although they can be called back with
keystrokes).
This change only will affect new installations of FreeFem++-cs. Existing
installations already have a preferences file (".ffcsrc") which
overrides any default options.
DONE bug: the client got stuck waiting for the server
This was due to an unprotected access to FLTK data structures (in
the call to serverended()) from two different threads.
DONE bug: .edp file names specified the command line
They were not loaded into the editor. This is now checked as part
of the regression tests in the tests subdirectory.
Removed Options/Remote port tunneling
because it is still unclear how best to use it. The remote server
functionality is still in the development stage. The main problem
still to solve is how to use ssh under Windows.
DONE bug: <2010-09-02 jeu.> unnecessary warning "zero-sized chunk"
This is a perfectly valid internal message between the FreeFem++-cs
client and server and it is not displayed as a warning to the
user anymore.
VTK picture labels can now be longer (up to 30-ish caracters)
Stopping a remote server process
At the moment, the client does not use "kill". It only closes
the socket to force the server to produce an error. If this is
not enough, a new option will be added to FreeFem++-cs to describe how to
run "kill" (or an equivalent) remotely (e.g. through ssh).
Real-time update of all graphical options widgets
Added default extension (e.g. .ps or .png) to saved images
Editor: added "select all" (Control+A) and "undo" (Control+Z)
Pressing ESC does not close the application anymore (use Ctrl+Q instead)
DONE bug: linking error messages back to the corresponding source line
this did not work for periodic conditions errors
solved by adding "current line = NN" to the list of scanned error
messages
DONE Precompiled 32-bit FreeFem++-cs tested on:
Linux Ubuntu 10.10 beta
Linux Slackware 13.0
DONE FreeFem++ scripts stopped without a proper explanation if verbosity was set
the visible error is "ffc: error: readpipe(vector
&v,const int mult): vector size = -708581302"
this was due to STDOUT et FreeFem++-vtk streams mixing up. The solution was
to create a separate buffer to split the CMD_FFG flux from
CMD_STDOUT
DONE problem with ffct and regression tests
only the VTK-enabled socket code knows how much graphical data is
read from the pipe. But now that the CMD_FFG flux is separated
from the other fluxes, it can be safely discarded in ffct.
DONE The file name is now displayed when there is an error reading the file
Added a "save" button on the editor window
DONE Choosing the values of isosurfaces
when specific values for isosurfaces are provided in the .edp
file, they are used only when the number of isovalues is not
changed manually through the GUI.
During installation, create a link to ffs in the default bin directory
this is useful to have a remote server path without spaces
DONE removed message "EXEC of the plot : ffglut"
this message is not relevant when FreeFem++-cs is used because it
replaces ffglut with its own graphical primitives
DONE iceweasel did not work as an html viewer for FreeFem++-cs under Linux?
the error message is "/usr/lib/iceweasel/firefox-bin: symbol
lookup error: /usr/lib/libXi.so.6: undefined symbol:
XESetWireToEventCookie"
this bug has not been corrected, but somehow it does not show up
any more. Please let me know if it appears again in the future.
DONE "Recent files" menu items are shortened if filenames are too long
DONE "Options/Reset Panel Sizes" sometimes did not show the output window
There is some kind of heuristics involved to grab the Fl_Tile
intersection properly. Implemented in
ffcs.cpp/requestresetpanelsizes()
The menu option is now called "Edit/Show All Panels"
DONE crashed without warning during a script run
this was due to an uncaught standard C++ library exception
provoked by a bad integer value sent from the server.
Replaced vtkCubeAxesActor with vtkCubeAxesActor2D
because vtkCubeAxesActor2D is always visible by design (it draws
both white and black shadows).
DONE "Received unknown command from server: "v"
removed useless message
DONE Removed Tex ligatures from the HTML version of the FreeFem++ documentation
Tex translated character sequences "ff", "fl", "fi", ... into
ligatures which were unreadable in HTML.
New option to show axes in 2D and 3D plots
DONE The output window sometimes disappeared without trace
this happened when the window size became null. Now that this is
fixed, the output window still goes out of sight, but its size is
never smaller than 1. It can always be widened again with the
mouse.
DONE The stop button did not stop a paused FreeFem++ program
now the stop button also kills any current pause.
DONE crashed when closing a detached graphical panel
(problem with a NULL pointer in quitdetached())
DONE crashed when resetting the view in a detached graphical panel
("Plot::firstcam" pointer was NULL)
DONE in plot(), the option "viso=" now sets min and max color values.
Ability to run a remote server through an ssh tunnel
Ability to run a FreeFem++ server on a remote machine
External commands from the Options menu can have parameters like "%1"
Vector scaling widget is now logarithmic
DONE mingwm10.dll problem solved in Windows package
Added file index before .vtk or .vtu extension when saving file
FreeFem++-cs now displays all internal errors
For a better understanding of what causes the errors, even in the
distributed version.
DONE the server process sometimes crashed without any warning
This was due to a mismatch in data types between the server and
the client. A C++ template has been modified to detect all such
type mismatches at compile time.
DONE 2D pictures not always centered by default
An error in camera coordinates has been corrected
DONE plot(mesh) did not show the mesh unless "show meshes" was on
Now plot(mesh) always displays the mesh, even if the "show meshes"
option is off.
DONE EDP files saved without the ".edp" extension
DONE In the list of recent files, names with relative paths are not reliable
The default path changes everytime a new program is opened or
run, and names with relative paths cannot be opened any more.
The recent files list now only contains files with a full path
(and an explicit drive letter under Windows)
DONE saving a file when exiting FreeFem++-cs does not work
DONE Clicking on a edp-file icon did not work on Mac
This is a tricky one. Clicking on an icon on Mac does not produce
a usable command line. It only produces an event that needs to be
caught with Carbon or Cocoa. But FreeFem++-cs does not use Carbon or
Cocoa because of other reasons (related to FLTK and
VTK).
The chosen solution is to link the "loader" process to Carbon and
to spawn X11 FreeFem++-cs processes when an event arrives.
DONE bug: MacOS application icon not working
pack/info.plist.m4 corrected
Start tcp port search from 10000
to avoid collision with some well-known user-space services that
use fixed ports in the range 1024-9999 (e.g. VNC)
Install script checked
Found generic compilation platform for Linux
One should compile with the oldest possible glibc, to avoid
problems with version checking (a compiled program checks for a
minimum version of the glibc before starting)
Try and compile with a Debian Stable (and avoid any automatic
upgrade because at the time of the upgrade the version is
current)?
Debian Stable (Lenny) is too recent for CentOS 5.4 (GLIBCXX
version problem)
Ubuntu LTS 8.04 is too recent for CentOS 5.4 (GLIBCXX
version problem)
Compilation platform chosen to be CentOS 5.4
DONE MacOS problem with VTK+FLTK
vtkFlRWI example does not work
VTK takes the whole FTLK main window space instead of its own
vtkFlRenderWindowInteractor subwindow
tested MacPorts vtk5/-x11: vtkFlRWI problem
tested MacPorts vtk5/+x11: Mesa library problem
tested MacPorts vtk-devel/default: vtkFlRWI problem
tested MacPorts vtk-devel/+x11:Mesa library problem
tested MacPorts vtk-devel/+cocoa: vtkFlRWI problem
tested MacPorts with build_arch=i386 (instead of x86_64):
MacPorts g++ does not compile (!)
probable explanation for the vtkFlRWI problem:
RenderWindow::SetWindowId(NSWindow) and
RenderWindow::SetDisplayId(NSView) need to be called early on,
but the NSView object created by FLTK is not valid for VTK,
which uses its own subclass of NSView. FLTK and VTK have
different sub-classes for NSView (FLView and vtkCocoaGLView), so
I don't know what to pass to SetDisplayId(). A set of potentially
useful patches is in the fltk dir.
MacPorts vtk/+x11 needs MacPorts Mesa. Mesa crashes in two
different ways: "xp_import_surface: assertion failed: s == ((void
*)0) error: xp_import_surface returned: 2" and "_gll_noop symbol
not found" in libGL.so. Probably a Mesa bug.
workaround: compile VTK for MacOS X11 with MacOS OpenGL headers,
_without_ MacPorts Mesa.
DONE bug: MacOS application icon not working
bug corrected in pack/info.plist.m4
Checked all VTK keys in the Howto
Checked default options for "configure"
the basic compilation process is configure/make/make install.
It should work by default without any other option.
DONE bug: icons are bigger than buttons on MacOS
New tag for all potentially distinct binary builds
add "--with-ostag" option to ./configure
DONE bug: FreeFem++-cs does not run and does not compile on CentOS 5.4
problem with versions of system libraries (glibc and stdc++)
ax_mpi.m4 not found
autoreconf problem: AC_COMPUTE_INT not found
autoreconf has to be reapplied after patching the FreeFem++ source
the chosen solution is to rebuild FreeFem++/configure before
building the source package.
DONE bug: ffmedit not compiled when Glut is not present
configure now checks that GL/glut.h is installed
Visualizing 3D vectors works
Access to an external editor (e.g. emacs) works:
"Edit/External Editor" calls an external editor on the current
file
"Options/Other Options/External editor command" selects which
command to use to call an external editor
"File/Auto Reload" automatically reloads a file that has been
modified externally
"Run/Auto Run" automatically runs a file that has been modified
externally
"Edit/Hide Editor Panel" moves the internal editor window out of
the way (and "Edit/Show Editor Panel" or "Options/Reset Panel
Sizes" recover the editor window after it was hidden)
DONE bug: The maximum number of VTK tabs was not properly limited
Error corrected in Visucontrol::limitopentabs() calling
children() instead of tabs->children()
User input (FreeFem++ "cin" keyword) is implemented.
Plotting curves and borders is implemented.
Compiled on Linux and Windows.
DONE bug: FreeFem++ PATH environment poses problems to FreeFem++-cs under Windows
OK (checked with FreeFem++ 3.7-1)
DONE bug: plot(...,wait=1) sometimes stops too early (before plot is shown)
OK now works even with big meshes that take time to plot
DONE bug: FreeFem++-vtk VTK windows not displayed properly
The same windows work in FreeFem++-cs!
OK after replacing Fl::awake() with Fl::add_timeout(0,...) in ffg.cpp
make sourcecheck OK.
DONE bug: How to run FreeFem++-vtk with FreeFem++ from a path containing spaces?
One can use an escape character ("^" under Windows)
New 3D visualization interface for FreeFem++-cs, based on VTK.
Same 3D visualisation interface as FreeFem++-cs. FreeFem++-vtk acts as a drop-in
replacement to FreeFem++'s ffglut.
Compiled and tested on Linux.
Other planned improvements
Editor
Automatic indents with TAB in the editor window
Improve print command : there is one planned in FLTK?
MacOS: add a Carbon menu option for opening new files?
Add line numbers in editor (request from JR) : this is planned in FLTK 1.4
Graphics
use vtkBoxWidget to isolate a 3D region to display
visualization from parallel programs
Use vtkRenderLargeImage to get larger image files
FreeFem++ seems to define a separate plot() parameter for arrow colors
but would these colors be used to define a separate look-up table
just for arrows?
FreeFem++-vtk is slow for 3d scalars on big meshes
because it also displays internal triangles, which is not
necessary.
Increase size of axes values and color bar values
choose view angles for remaining 3d FreeFem++ examples
FreeFem++ computational server
color coding in output window
remove --enable-generic_blas from FreeFem++ configuration
copy files (meshes, includes, ...) alongside script on remote server
Other
add code coverage check in regression tests
Keep subwindow proportions when resizing the main window
Ability to recall previous option values in Options menu
Add code coverage check in regression tests
MacOS: make FreeFem++-cs X11 windows appear when clicking on the Carbon icon
Known issues that cannot be corrected at the moment
MacOS: the default control key should be "Cmd" instead of "Control"
By default, FLTK uses the "Cmd" key on MacOS. But we are not
using the FLTK MacOS stuff because of an incompatibility between
FLTK and VTK on Cocoa. Moreover, using the "Cmd" key causes some
keybinding conflicts with the MacOS X11 app that FreeFem++-cs relies on.
MacOS: using the Cmd+Tab hotkey
Since FreeFem++-cs is built upon X11 and not Carbon, FreeFem++-cs windows are
raised only when selecting the X11 icon, and not the FreeFem++-cs
icon. The FreeFem++-cs icon is the visible part of the FreeFem++-cs Carbon-based
loader, which does not have a window. So it does not receive
kEventWindowFocusAcquired events.
But one can still drag'n'drop EDP files onto the FreeFem++-cs icon.
Testing policy
The FreeFem++-cs testing procedure checks that FreeFem++-cs gives the same result as
FreeFem++ on my development machine for all the example EDP scripts that I
can run. It also means that if FreeFem++ fails to run a test, FreeFem++-cs fails in
the same way.
Unfortunately, even if the testing procedure contains many
different test cases, it cannot guaranty that FreeFem++-cs will perform as
expected. Even test cases that pass here may fail elsewhere because
machines are never identical. So I rely on all users to keep me
informed about the bugs that they find. You can use the comment form
below or contact me.
| Previous comments (newest first) |
|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|