The release tarballs contain prebuilt files (specifically documentation).
If using the tagged snapshots, the documentation needs to be built which
requires tcl as a build tool. If built with option -tcl, the package fails
to build.
2.50.0
Added
hard-coded lookup tables for fallback font metrics for more fonts and font
variants
a new gvputs_nonascii API function has been implemented for GVC I/O with C
escaping
Changed
Check for existence of dl_iterate_phdr(3) and if it is available, prefer
using it instead of iterating over /proc/self/maps for computing libdir.
A limit on GVC config files of 100000 bytes has been removed.
MD5 checksums of release artifacts are no longer provided. SHA256 checksums
are still provided and these should be used instead.
when cross-compiling, the dot -c is no longer run during installation
$CMAKE_INCLUDE_PATH is no longer manually configured in the CMake build
system
Fixed
remove Bashism from gvmap.sh
Lefty artifacts are no longer installed when Lefty is disabled
Smyrna artifacts are no longer installed when Smyrna is disabled
calling convention mismatches in delaunay.c’s GTS code
impure assertion in jacobi
undefined behavior in libgvc’s reading of little endian numbers
boldness of agnxtsubg in cgraph man page
parameter name in gvusershape_find prototype corrected to a const pointer,
to match the implementation
xdot JSON output is not valid JSON
fix uninitialized read of pid in _sfpopen on Windows
claimed minimum CMake version supported has been corrected to 3.9
with -lgomp and thereby avoid overflowing the static thread local
storage allocated in ld.elf_so when libgomp.so is dlopen()ed
indirectly via libgvplugin_gd.so.
Bump PKGREVISION.
2.49.3
Fixed
- gvpr "split", "tokens", and "index" functions produce incorrect results 2138.
This was a regression that occurred between 2.47.1 and 2.47.2.
## [2.49.2] – 2021-10-16
### Changed
- Lefty is disabled by default in the Autotools build system. To re-enable it,
pass `--enable-lefty` to `./configure`. In a future release, Lefty will be
removed.
- remove PHP5 support in SWIG bindings
### Fixed
- Msys experimental packages are included in release artifacts #2130
- CMake build system incorrectly aliases gv2gml to gml2gv #2131
- Gv2gml Doesn't escape quotes in attributes #1276
- GVPR incorrectly understands color schemes #1956
## [2.49.1] – 2021-09-22
### Changed
- the CMake build system installs gzipped man pages if `gzip` is available #1883
- CMake projects using Graphviz as a subproject (`add_subdirectory`) can now
link against and use `gvc`.
### Fixed
- various problems in the generation of Javascript bindings
- 2.48.0: test suite is failing #2112
- Ensure correct file-level dependency for generated file in cmake generated
projects #2119
- compile failures with a C++20-compatible toolchain #2122
- compile errors on macOS when using Bison 3.8 #2127
- Make Graphviz buildable as a cmake subproject/subdirectory #1477
- Header not found in Cmake project #2109
## [2.49.0] – 2021-08-28
### Added
- a very basic C++ API for a subset of the functions in lib/cgraph and
lib/gvc, allowing a graph to be rendered from DOT source to a
specified format. The new API is available through two new
libraries: lib/cgraph++ and lib/gvc++. It is experimental, meaning
that it might have breaking changes also in upcoming patch or minor
releases (towards #2001)
- CMake builds now support an `with_expat` option that allows the support for
using HTML-like labels through the optional expat library to be explicitly
enabled (default) or disabled
- CMake builds now support an with_zlib option that allows the support for
raster image compression through the optional zlib library to be explicitly
enabled (default) or disabled
### Changed
- the CMake build system now enables `-Wextra` when building C++
- some Cgraph functions that take `char*` arguments that they do not modify have
been updated to take `const char*` arguments #634
- incorrectly using the `layout` attribute on anything other than a graph now
results in a warning about this being invalid #2078
- `edgepaint` accepts more standard `--` prefixed command line arguments and
rejects invalid options #1971
- improved detection of Lefty dependencies in the Autotools build system
- libexpr rejects printing the time (`%t`) if no format is provided
- `-DDATE=…` option in the CMake build system has been removed
- the Autotools build system no longer writes the DATE file and the portable
source tarball no longer includes this
### Fixed
- The attached dot file causes a segfault when processed #2095
- fix typos and update URLs in `edgepaint` usage text and man page
- Fix clang's undefined behavior warning in dotLayout
- gvpr doesn't build on macOS but MKDEFS_EXECUTABLE points to wrong
directory #2101
- the generated gdefs.h header is no longer installed
- `ccomps` out-of-memory message no longer incorrectly refers to `gc`
- do not abort when `calloc(0, x)` or `calloc(x, 0)` in `gcalloc` return `NULL`
- failed Exshort_t type discrimination #1799
- dot manpage is in wrong directory on Windows #1936
- CMake builds fail when when the ltdl library is not available even if the
`enable_ltdl` option is `ON`
- CMake builds fail when when the optional `zlib` library is not available
- fix graph rotation in quartz plugin
## [2.48.0] - 2021-07-17
### Added
- a new C++ test infrastructure based on ctest and Catch2 towards #2002
- support for test coverage analysis with
[lcov](http://ltp.sourceforge.net/coverage/lcov.php) and
[test coverage visualization in GitLab MRs](https://docs.gitlab.com/ee/user/project/merge_requests/test_coverage_visualization.html)
### Changed
- updated Graphviz bug report URL in the Autotools build system
- Fix `WIN32` path of `gvc.def` specified in `libgvc_la_LDFLAGS`
- the CMake build system now not only checks for Bison, but also ensures the
found version is recent enough #1916
### Fixed
- ortho's eqEndSeg incorrectly modifies its arguments #2047
- Autotools enables -Wtrampolines and -Wlogical-op for Clang #2066
- node_distinct_coloring failure due to out-of-memory now reported correctly
instead of referring to a failure to open lab_gamut
- Fix a typo `GD_LIBS` to `GDLIB_LIBS` in `tclpkg/tcldot/Makefile.am` !2022
- Autotools build system sets libgd variables now instead of incorrectly setting
GTK variables
- HTML strings used as labels are distinguishable in GXL output by
`kind="HTML-like string"`
- a Bashism removed from the Autotools build system
- when Criterion is available, the `command_line` test binary is no longer built
and installed by default, but rather during `make check`
- round-tripping a file through ``gv2gxl`` and then ``gxl2gv`` no longer causes
HTML-like labels to become non-HTML like labels #517
- fix ODR violation by including the ortho object files in the gvc lib also for
CMake and MSbuild #2096
## [2.47.3] - 2021-06-19
### Changed
- marginally more accurate computations in Smyrna sphere projection
- Perl is no longer required to build Graphviz #2067
- nop more reliably returns success and failure exit statuses
- implicit 63 character limit on plugin names is removed in GVC
- the packaging work flow on CentOS 7 now selects the Python 3 bindings, instead
of Python 2 bindings
- remove Python 2 bindings #1992
- improved thread-safety in Graphviz bindings Makefile
### Fixed
- no longer pass libcommon to the linker twice in mm2gv when building with CMake
- Quartz plugin is now compiled with explicit `--tag=CC` to libtool #2065
- out of bounds read when attempting to load a plugin whose name is ≥63
characters
- out of bounds read when examining a registered plugin whose name is ≥63
characters
- do not `fclose(NULL)` in gvmap
- Assertion error when using `dot` in `ortho.c` in `convertSPtoRoute` in
graphviz 2.47.2 #2082. This was a regression introduced in 2.47.2.
## [2.47.2] - 2021-05-26
### Added
- CMake option `use_sanitizers` which enables building with address and
undefined behavior sanitizer
### Changed
- $PATH is no longer assumed to be "/bin:/usr/bin:/usr/local/bin" if unset
- test suite no longer assumes `python3` exists #2049
- CMake build system locates Python 3 before calling it
- diff and grep are no longer required to build Graphviz on Windows
### Fixed
- Uninitialized variable read in delaunay_tri
- potentially mismatched format string in tclpkg
- `gvToolTred` is now exported from gvc.dll on Windows mirroring the behavior on
Unix platforms.
## [2.47.1] - 2021-04-17
### Changed
- More detailed error messages when opening input file fails
### Fixed
- Windows build thinks xdg-open can be used to open a web browser #1954
- lab_gamut_data misses a value #1974
- xdot man page does not document some functions #1957
- Superfluous empty `@param` in documentation #1977
- PIC renderer does not work and probably never has #131
- dot conversion to dia format #689
- memory leak of reference-counted HTML strings
- Align rank from bottom in dot graph #1339
- Fix for TBbalance attribute code #1980
- HTML parser error with single closing square bracket in table row #1893
- reference counted strings put the HTML bit in the middle of the reference
count #1984
- & escape disappearing #797
- miscalculation of minimum rank on large graphs
- AddressSanitizer: strcpy-param-overlap in gvconfig_libdir when
running dot -c #1994
- fix reuse of va_list in pov rendering
## [2.47.0] - 2021-03-15
### Changed
- The edges in JSON output are ordered now !1728
- remove regex usage #1919
- RxSpencer is no longer a dependency on Windows
- gvmap.sh is compatible with POSIX shells in addition to ksh
- sed is no longer a build dependency on Windows
- SHA256 checksum generation? #1955
### Fixed
- Fix gvpr -? to actually print usage and exit non-zero
- gvpr is not built by CMake #1878
- typos in gpcanvas.c #1927
- memory leak in libmingle
- private inheritance in IncVPSC #1874
- broken sorting in nearest_neighbor_graph_ann.cpp #1938
- memory leak in ANN bridge
- gvpr on Windows does not support absolute paths #1780
- buffer overflow in unflatten
- agxbputc macro does not bracket its arguments #1814
## [2.46.1] - 2021-02-13
### Added
- Support for building against Guile 2.2
- Portable source is now also offered as a .tar.xz
### Changed
- CentOS/RHEL 6 is no longer supported
- Vestiges of Qt4 support have been removed
- C++11 support is now required of the C++ compiler used to build Graphviz
- C99 support is now required of the C compiler used to build Graphviz
- Question about userout() function in agerror.c #1924
- The minimum version of Python required to run the test suite is 3.6
### Fixed
- memory leak in label construction
- gvedit compilation errors out, but works if manually compiled with qt5 #1862
- incorrect HTML BR attribute parsing code #1913
- broken overflow checks in RectArea #1906
- various memory leaks !1699
- Fix bad free in lefty !1709
- typo in pathcross #1926
- Out-of-bounds write caused by incorrect error handling of malloc in genUserdata #1928
- Offer .tar.xz files too #454
- Header file graphviz_version.h has no include guards #1929
- regression: newlines embedded in quoted labels / node names are not preserved in 2.46.0 #1931
- Properly fill graphviz_version.h !1706
## [2.46.0] - 2021-01-18
### Added
- Cgraph's agxbuf API gained a new function agxbdisown(), for dissociating
backing memory from the managed buffer
- Build system support for the Elbrus 2000 CPU, thanks to Michael Shigorin
### Changed
- Cgraph's agheap() API has been removed
- Autotools build system support for eFence has been removed
- Building Graphviz with ICC defaults to -O2 instead of -O0
- Build system work arounds for GCC 3 have been removed
- Incomplete support for running the test suite under CMake has been removed
- Portable source tarballs now use the “ustar” POSIX format
- Minimum version of Flex required to build Graphviz is now 2.5.2
- Minimum version of Bison required to build Graphviz is now 3.0
- Minimum version of CMake required to build Graphviz using CMake is now 3.1
### Fixed
- gvpr: line numbers in gvpr errors/warnings are incorrect #1594
- URL typo in patchwork man page
- Escaped backslashes are not correctly handled when producing xdot with dot #165
- heap-over-flow(off-by-null) in lib/common/shapes.c #1700
- Windows MSBuild executables have the wrong version #1745
- Cast Overflow at pango_textlayout #1314
- x11 back end segfaults if display is unavailable #1776
- typo in cmd/gvpr/lib/clustg #1781
- Segfault in dot #1783
- Incorrect 'Arrow type "s" unknown' error #1444
- segfault on reading 0x10 #1724
- Null-dereference READ (144736912) #1676
- "Warning! PATH too long installer unable to modify PATH!" using CMake Windows installer and PATH length > 1024 #1770
- gvedit -? gives "option - unrecognized - ignored" instead of showing usage #1813
- lefty is not built for Windows (fixed for MSBuild builds only) #1818
- a failure to detect OpenGL glGenTextures() errors has been corrected
- sfio does compile time benchmarknig #1422
- iffe "lib" check always succeeds when compiler optimises #1521
- syntax error near text who is not present #1411
- Explicitly links with libstdc++; should allow libc++ if appropriate #163
- A macOS file that was erroneously excluded from portable source tarballs has
been restored
- Add option -? for usage to diffimg
- Add option -? for usage to dotty
- Add option -? for usage to lneato
- Add option -? for usage to vimdot
- Fix smyrna -? to actually print usage instead of error
- Fix edgepaint -? to actually print usage instead of error
- Remove '"' from usage text in non-Windows version of dotty
- Correct misspelled 'smyrna' in usage
- Fix edgepaint -o option
- Correct shebang of gvmap.sh to use ksh
- Fix gvmap.sh -? option to exit with zero exit status
- Graphviz doesn't build on MacOS with the latest libc++ #1785
- make fails if ps2pdf is not installed (using autotools) #1763
- multiple graphs to file output causes a segfault #1845
- lefty PTY functionality relies on file descriptor implementation details #1823
- buffer overflow in fdpgen
- Crashes by VRML output when current directory is not writable #793
- Segmentation fault when newrank=true #1221
- sfdp craches #236
- fdp segmentation fault with GK=0 #1290
- fdp crash #1865
- Graphviz always crash with this simple dot file #167
- Seg fault in dot #1771
- gml2gv doesn't handle some attributes correctly #1869
- Add missing circo, fdp, neato, osage, patchwork, sfdp & twopi tools to Windows builds (copies of dot)
- Add gv2gml tool to CMake (copy of gml2gv on Windows, symlink to gml2gv otherwise)
- Regression: fdp generates internal names in the output #1876
- Regression: fdp assertion error on cluster in edge #1877
- Regression in id / <title> in svg for twopi #1907
pkgsrc changes:
---------------
* The fix comes from the FreeBSD port. It does not seem to be necessary
to report the problem upstream because the incriminated file
(sfclrlock.c) no longer exists in their master branch.
This package doesn't seem to need PRIVILEGED_STAGES elevation to run
its "clean" target. (The original commit from eleven years ago doesn't
note why it was needed, and this causes spurious errors with some pbulk
setups.)
BSD make does not know the $< variable in explicit rules, it only knows
it for inference rules like ".c.o". This resulted in $< expanding to an
empty string, which in turn got the build stuck because it tried to read
from stdin. But not in parallel mode, where stdin was redirected to an
empty file, resulting in an empty PostScript file being installed.
Fixes PR pkg/55539.
2.44.1
Added
applied RH patches (from graphviz-2.42.2-8.fc32.src.rpm)
graphviz-2.42.2-coverity-scan-fixes.patch
graphviz-2.42.2-dotty-menu-fix.patch
graphviz-2.42.2-ocaml-allow-const-cast.patch
some allocation failures that could previously allow memory corruption now exit
lab_gamut.3.pdf is no longer included in release archives
Changed
Windows binaries available at https://www2.graphviz.org/Packages/ instead of
https://ci.appveyor.com/project/ellson/graphviz-pl238
Retarget Windows builds to Visual Studio 2019 and toolset v142
Fixed
Released Ubuntu packages does not contain language bindings for Python3
Neato's hier mode is broken since v2.44.0
Segmentation fault (core dumped)
2.44.0
Added
New SGD mode in neato
Add pkg-config files
tred: add feature to output removed edges to stderr upon request
Workaround: avoid creating a virtual edge loop.
Add riscv64 to host_cpu configure.ac
lib/cgraph: include empty malloc.h from subdir include
lib/gvpr: compile mkdefs with $(HOSTCC) rather than $(CC)
lib/vpsc: rename bcopy->b_copy
Fixed
MSB4018 The NativeCodeAnalysis task failed unexpectedly.
pkglint -r --network --only "migrate"
As a side-effect of migrating the homepages, pkglint also fixed a few
indentations in unrelated lines. These and the new homepages have been
checked manually.