NEWS
author Alpar Juttner <alpar@cs.elte.hu>
Sun, 11 Aug 2013 15:30:30 +0200
branch1.2
changeset 1286 76284e152f69
parent 1275 e38c9a70375c
permissions -rw-r--r--
Merge headmerge to branch 1.2
     1 2013-08-10 Version 1.2.4 released
     2 
     3         Bugfix release.
     4 
     5         #432: Add missing doc/template.h and doc/references.bib to release
     6               tarball
     7         #433: Support shared library build
     8         ----: Update CPLEX lookup
     9         ----: Make CBC interface compatible with latest CBC releases
    10         ----: Intel C++ compatibility fixes
    11         #441: Fix buggy reinitialization in _solver_bits::VarIndex::clear()
    12         #444: Bugfix in path copy constructors and assignment operators
    13         #447: Bugfix in AllArcLookUp<>
    14         #448: Bugfix in adaptor_test.cc
    15         #449: Fix clang compilation warnings and errors
    16         #440: Fix a bug + remove redundant typedefs in dimacs-solver
    17         #453: Avoid GCC 4.7 compiler warnings
    18         #445: Fix missing initialization in CplexEnv::CplexEnv()
    19         #461: Bugfix in assert.h
    20         #470: Fix compilation issues related to various gcc versions
    21         #439: Bugfix in biNodeConnected()
    22         #469: Bugfix in test/maps_test.cc
    23 
    24 2011-11-09 Version 1.2.3 released
    25 
    26         Bugfix release.
    27 
    28         #428: Add missing lemon/lemon.pc.cmake to the release tarball
    29         #429: Fix VS warnings
    30         #430: Fix LpBase::Constr two-side limit bug
    31 
    32 2011-08-08 Version 1.2.2 released
    33 
    34         Bugfix release.
    35 
    36         #392: Bug fix in Dfs::start(s,t)
    37         #414: Fix wrong initialization in Preflow
    38         #404: Update Doxygen configuration
    39         #416: Support tests with valgrind
    40         #418: Better Win CodeBlock/MinGW support
    41         #419: Backport build environment improvements from the main branch
    42               - Build of mip_test and lp_test precede the running of the tests
    43               - Also search for coin libs under ${COIN_ROOT_DIR}/lib/coin
    44               - Do not look for COIN_VOL libraries
    45         #382: Allow lgf file without Arc maps
    46         #417: Bug fix in CostScaling
    47 
    48 2010-10-21 Version 1.2.1 released
    49 
    50         Bugfix release.
    51 
    52         #366: Fix Pred[Matrix]MapPath::empty()
    53         #371: Bug fix in (di)graphCopy()
    54               The target graph is cleared before adding nodes and arcs/edges.
    55 
    56         #364: Add missing UndirectedTags
    57         #368: Fix the usage of std::numeric_limits<>::min() in Network Simplex
    58         #372: Fix a critical bug in preflow
    59 
    60 2010-03-19 Version 1.2 released
    61 
    62         This is major feature release
    63 
    64         * New algorithms
    65           * Bellman-Ford algorithm (#51)
    66           * Minimum mean cycle algorithms (#179)
    67             * Karp, Hartman-Orlin and Howard algorithms
    68           * New minimum cost flow algorithms (#180)
    69             * Cost Scaling algorithms
    70             * Capacity Scaling algorithm
    71             * Cycle-Canceling algorithms
    72           * Planarity related algorithms (#62)
    73             * Planarity checking algorithm
    74             * Planar embedding algorithm
    75             * Schnyder's planar drawing algorithm
    76             * Coloring planar graphs with five or six colors
    77           * Fractional matching algorithms (#314)
    78         * New data structures
    79           * StaticDigraph structure (#68)
    80           * Several new priority queue structures (#50, #301)
    81             * Fibonacci, Radix, Bucket, Pairing, Binomial
    82               D-ary and fourary heaps (#301)
    83           * Iterable map structures (#73)
    84         * Other new tools and functionality
    85           * Map utility functions (#320)
    86           * Reserve functions are added to ListGraph and SmartGraph (#311)
    87           * A resize() function is added to HypercubeGraph (#311)
    88           * A count() function is added to CrossRefMap (#302)
    89           * Support for multiple targets in Suurballe using fullInit() (#181)
    90           * Traits class and named parameters for Suurballe (#323)
    91           * Separate reset() and resetParams() functions in NetworkSimplex
    92             to handle graph changes (#327)
    93           * tolerance() functions are added to HaoOrlin (#306)
    94         * Implementation improvements
    95           * Improvements in weighted matching algorithms (#314)
    96             * Jumpstart initialization
    97           * ArcIt iteration is based on out-arc lists instead of in-arc lists
    98             in ListDigraph (#311)
    99           * Faster add row operation in CbcMip (#203)
   100           * Better implementation for split() in ListDigraph (#311)
   101           * ArgParser can also throw exception instead of exit(1) (#332)
   102         * Miscellaneous
   103           * A simple interactive bootstrap script
   104           * Doc improvements (#62,#180,#299,#302,#303,#304,#307,#311,#331,#315,
   105                 #316,#319)
   106             * BibTeX references in the doc (#184)
   107           * Optionally use valgrind when running tests
   108           * Also check ReferenceMapTag in concept checks (#312)
   109           * dimacs-solver uses long long type by default.
   110         * Several bugfixes (compared to release 1.1):
   111           #295: Suppress MSVC warnings using pragmas
   112           ----: Various CMAKE related improvements
   113                 * Remove duplications from doc/CMakeLists.txt
   114                 * Rename documentation install folder from 'docs' to 'html'
   115                 * Add tools/CMakeLists.txt to the tarball
   116                 * Generate and install LEMONConfig.cmake
   117                 * Change the label of the html project in Visual Studio
   118                 * Fix the check for the 'long long' type
   119                 * Put the version string into config.h
   120                 * Minor CMake improvements
   121                 * Set the version to 'hg-tip' if everything fails
   122           #311: Add missing 'explicit' keywords
   123           #302: Fix the implementation and doc of CrossRefMap
   124           #308: Remove duplicate list_graph.h entry from source list
   125           #307: Bugfix in Preflow and Circulation
   126           #305: Bugfix and extension in the rename script
   127           #312: Also check ReferenceMapTag in concept checks
   128           #250: Bugfix in pathSource() and pathTarget()
   129           #321: Use pathCopy(from,to) instead of copyPath(to,from)
   130           #322: Distribure LEMONConfig.cmake.in
   131           #330: Bug fix in map_extender.h
   132           #336: Fix the date field comment of graphToEps() output
   133           #323: Bug fix in Suurballe
   134           #335: Fix clear() function in ExtendFindEnum
   135           #337: Use void* as the LPX object pointer
   136           #317: Fix (and improve) error message in mip_test.cc
   137                 Remove unnecessary OsiCbc dependency
   138           #356: Allow multiple executions of weighted matching algorithms (#356)
   139 
   140 2009-05-13 Version 1.1 released
   141 
   142         This is the second stable release of the 1.x series. It
   143         features a better coverage of the tools available in the 0.x
   144         series, a thoroughly reworked LP/MIP interface plus various
   145         improvements in the existing tools.
   146 
   147         * Much improved M$ Windows support
   148           * Various improvements in the CMAKE build system
   149           * Compilation warnings are fixed/suppressed
   150         * Support IBM xlC compiler
   151         * New algorithms
   152           * Connectivity related algorithms (#61)
   153           * Euler walks (#65)
   154           * Preflow push-relabel max. flow algorithm (#176)
   155           * Circulation algorithm (push-relabel based) (#175)
   156           * Suurballe algorithm (#47)
   157           * Gomory-Hu algorithm (#66)
   158           * Hao-Orlin algorithm (#58)
   159           * Edmond's maximum cardinality and weighted matching algorithms
   160             in general graphs (#48,#265)
   161           * Minimum cost arborescence/branching (#60)
   162           * Network Simplex min. cost flow algorithm (#234)
   163         * New data structures
   164           * Full graph structure (#57)
   165           * Grid graph structure (#57)
   166           * Hypercube graph structure (#57)
   167           * Graph adaptors (#67)
   168           * ArcSet and EdgeSet classes (#67)
   169           * Elevator class (#174)
   170         * Other new tools
   171           * LP/MIP interface (#44)
   172             * Support for GLPK, CPLEX, Soplex, COIN-OR CLP and CBC
   173           * Reader for the Nauty file format (#55)
   174           * DIMACS readers (#167)
   175           * Radix sort algorithms (#72)
   176           * RangeIdMap and CrossRefMap (#160)
   177         * New command line tools
   178           * DIMACS to LGF converter (#182)
   179           * lgf-gen - a graph generator (#45)
   180           * DIMACS solver utility (#226)
   181         * Other code improvements
   182           * Lognormal distribution added to Random (#102)
   183           * Better (i.e. O(1) time) item counting in SmartGraph (#3)
   184           * The standard maps of graphs are guaranteed to be
   185             reference maps (#190)
   186         * Miscellaneous
   187           * Various doc improvements
   188           * Improved 0.x -> 1.x converter script
   189 
   190         * Several bugfixes (compared to release 1.0):
   191           #170: Bugfix SmartDigraph::split()
   192           #171: Bugfix in SmartGraph::restoreSnapshot()
   193           #172: Extended test cases for graphs and digraphs
   194           #173: Bugfix in Random
   195                 * operator()s always return a double now
   196                 * the faulty real<Num>(Num) and real<Num>(Num,Num)
   197                   have been removed
   198           #187: Remove DijkstraWidestPathOperationTraits
   199           #61:  Bugfix in DfsVisit
   200           #193: Bugfix in GraphReader::skipSection()
   201           #195: Bugfix in ConEdgeIt()
   202           #197: Bugfix in heap unionfind
   203                 * This bug affects Edmond's general matching algorithms
   204           #207: Fix 'make install' without 'make html' using CMAKE
   205           #208: Suppress or fix VS2008 compilation warnings
   206           ----: Update the LEMON icon
   207           ----: Enable the component-based installer
   208                 (in installers made by CPACK)
   209           ----: Set the proper version for CMAKE in the tarballs
   210                 (made by autotools)
   211           ----: Minor clarification in the LICENSE file
   212           ----: Add missing unistd.h include to time_measure.h
   213           #204: Compilation bug fixed in graph_to_eps.h with VS2005
   214           #214,#215: windows.h should never be included by LEMON headers
   215           #230: Build systems check the availability of 'long long' type
   216           #229: Default implementation of Tolerance<> is used for integer types
   217           #211,#212: Various fixes for compiling on AIX
   218           ----: Improvements in CMAKE config
   219                 - docs is installed in share/doc/
   220                 - detects newer versions of Ghostscript
   221           #239: Fix missing 'inline' specifier in time_measure.h
   222           #274,#280: Install lemon/config.h
   223           #275: Prefix macro names with LEMON_ in lemon/config.h
   224           ----: Small script for making the release tarballs added
   225           ----: Minor improvement in unify-sources.sh (a76f55d7d397)
   226 
   227 2009-03-27 LEMON joins to the COIN-OR initiative
   228 
   229         COIN-OR (Computational Infrastructure for Operations Research,
   230         http://www.coin-or.org) project is an initiative to spur the
   231         development of open-source software for the operations research
   232         community.
   233 
   234 2008-10-13 Version 1.0 released
   235 
   236         This is the first stable release of LEMON. Compared to the 0.x
   237         release series, it features a considerably smaller but more
   238         matured set of tools. The API has also completely revised and
   239         changed in several places.
   240 
   241         * The major name changes compared to the 0.x series (see the
   242           Migration Guide in the doc for more details)
   243           * Graph -> Digraph, UGraph -> Graph
   244           * Edge -> Arc, UEdge -> Edge
   245           * source(UEdge)/target(UEdge) -> u(Edge)/v(Edge)
   246         * Other improvements
   247           * Better documentation
   248           * Reviewed and cleaned up codebase
   249           * CMake based build system (along with the autotools based one)
   250         * Contents of the library (ported from 0.x)
   251           * Algorithms
   252             * breadth-first search (bfs.h)
   253             * depth-first search (dfs.h)
   254             * Dijkstra's algorithm (dijkstra.h)
   255             * Kruskal's algorithm (kruskal.h)
   256           * Data structures
   257             * graph data structures (list_graph.h, smart_graph.h)
   258             * path data structures (path.h)
   259             * binary heap data structure (bin_heap.h)
   260             * union-find data structures (unionfind.h)
   261             * miscellaneous property maps (maps.h)
   262             * two dimensional vector and bounding box (dim2.h)
   263           * Concepts
   264             * graph structure concepts (concepts/digraph.h, concepts/graph.h,
   265               concepts/graph_components.h)
   266             * concepts for other structures (concepts/heap.h, concepts/maps.h,
   267               concepts/path.h)
   268           * Tools
   269             * Mersenne twister random number generator (random.h)
   270             * tools for measuring cpu and wall clock time (time_measure.h)
   271             * tools for counting steps and events (counter.h)
   272             * tool for parsing command line arguments (arg_parser.h)
   273             * tool for visualizing graphs (graph_to_eps.h)
   274             * tools for reading and writing data in LEMON Graph Format
   275               (lgf_reader.h, lgf_writer.h)
   276             * tools to handle the anomalies of calculations with
   277               floating point numbers (tolerance.h)
   278             * tools to manage RGB colors (color.h)
   279           * Infrastructure
   280             * extended assertion handling (assert.h)
   281             * exception classes and error handling (error.h)
   282             * concept checking (concept_check.h)
   283             * commonly used mathematical constants (math.h)