Wed Jun 7 10:09:48 2023 UTC ()
graphics/graphviz: Update to 8.0.5

## [8.0.5] - 2023-04-30

### Changed

- Support for versions of Pango prior to 1.22.0 has been removed.
- On Windows, the Pango plugin now uses the newer `pango_layout_get_baseline`
  API.
- `dot` no longer installs a signal handler for `SIGINT`. This means typing
  Ctrl+C while `dot` is running will no longer attempt a partial render and exit
  with 0 status. Ctrl+C will have the standard behavior, typically aborting
  `dot`.

### Fixed

- A minor inaccuracy for some cases of clipping an edge to a polygon node
  boundary has been fixed.
- A minor inaccuracy in node width and height for some cases of rendering
  polygon nodes has been fixed.
- A minor inaccuracy for some cases of calculating text height from `fontsize`
  in the GD plugin has been fixed.
- A minor vertical misalignment of text in the GD plugin has been fixed.
- Instead of using the actual font height as given by the font metrics, an
  approximation based on font size was used in the Pango plugin.
- A minor inaccuracy for some cases of calculating text width and height in the
  Pango plugin has been fixed.
- A minor vertical misalignment of text in the Pango plugin has been fixed.
- Ensure `HAVE_PANGOCAIRO` is set when using CMake and the library is available.
- A minor inaccuracy in node width and height for some cases of defining
  polygon-based nodes has been fixed.
- A minor inaccuracy for some cases of calculating margin for record-based nodes
  has been fixed.
- A minor inaccuracy in node width and height for some cases of defining
  record-based nodes has been fixed.
- On all known supported platforms except 32-bit MinGW, graphs involving small
  distance constraints no longer cause a crash during majorization. #1554

## [8.0.3] - 2023-04-16

### Added

- A pre-processor script for resolving external image references
  (`image="http-"`) is now available. This enables graphs to reference images
  from intranet or internet locations. #1664

### Changed

- The accuracy of box overlapping checks during routing has been improved.

### Fixed

- makeCompoundEdge: Assertion `bez->sflag` failed. #1879
- Graphviz.app-s export functionality has been restored. This was a regression
  in Graphviz 5.0.0. #2375

## [8.0.2] - 2023-04-10

### Changed

- The Autotools build system can now detect a MacPorts-installed libANN. #1854
- Support for versions of Cairo prior to 1.10 has been removed.
- Graphs that generate rectangles with areas in the range [2--, 2-- - 1]
  are now supported. Previously areas greater than 2-- - 1 would be
  rejected. #2371

### Fixed

- Head and tail of `digraph` edges with `dir = both` were inverted if
  `splines = ortho` was used. The bug was only exposed on straight edges.
  Edges with at least one corner were unaffected. #144
- `_Gdtclft_Init` link errors when builting libtcldot_builtin using the
  Autotools build system have been resolved. #2365
- Incorrect string construction in the `pov` output formatter has been fixed.

## [8.0.1] - 2023-03-27

### Added

- When specifying a color in HSV format, it is now possible to give an
  additional fourth component for the alpha channel (opacity). #510

### Changed

- Graphviz will now exit when encountering a syntactically invalid HTML label
  instead of attempting to recover and continue. #1311
- **Breaking**: the `url_map_n` field in the `obj_state_t` struct is now a
  `size_t`.
- The limit of 5 unique `samehead` or `sametail` values per node has been
  removed. The maximum number of unique `samehead` or `sametail` values is now
  limited only by available memory. #452
- **Breaking**: The `size` field of the `elist` struct is now a `size_t`.
- **Breaking**: The `size` field of the `nlist` struct is now a `size_t`.
- **Breaking**: The `n_nodes` field of the `Agraphinfo_t` struct is now a
  `size_t`.
- **Breaking**: The `nspans` field of `textlabel_t.u.txt` is now a `size_t`.
- **Breaking**: The `sflag` and `eflag` fields of the `bezier` struct are now
  `uint32_t`s.
- **Breaking**: The `nvertices` field of the `stroke_t` struct is now a
  `size_t`.
- -no hard-coded metrics- warnings are now only printed once per font.
- The Autotools build system now discovers Python paths using `sysconfig`
  instead of `distutils.sysconfig`, making it compatible with Python 3.12. This
  alters the installation path of the Python Graphviz module to something more
  correct. #2332

### Fixed

- The `pic` output renderer uses PIC or troff comments where appropriate, fixing
  a problem that resulted in comments being misinterpreted by `groff` and being
  visible in the final output. #2341
- `gv2gxl` and `gxl2gv` correctly detect their mode (gv-gxl or gxl-gv) on
  Windows when called via an absolute or relative path. #2344
- Using C pre-processor line directives (`^\s*#(line )?\d+`) claiming a line
  number greater than `INT_MAX` no longer causes an integer overflow. #1318
- fdp cluster-cluster edges were correct but now drawn incorrectly. This was a
  regression in Graphviz 7.0.0. #2345
- Failure of arrowhead and arrowtail to respect penwidth #372 \
  Fixed also for the `cylinder`
  [node shape](https://graphviz.org/doc/info/shapes.html#polygon).
- Second periphery of a cylinder shaped node is not correct. #2297
- Graphs with more than 127 layers no longer cause out of bound writes. #2355
- htmltable.c assertions are no longer triggered by using HTML table cells too
  small to fit their content. #1622
- `dot2gxl -d` no longer crashes when receiving a closing `node` tag following a
  closing `graph` tag. #2094
- A buffer overflow in Smyrna when loading GVPR scripts has been corrected.
- A buffer overflow when loading a plugin with a long type string has been
  corrected.
- Graphs that involve more than 2000 stroke points during tapering calculations
  no longer cause out of bounds writes.
- Using `arrowsize=0.0` no longer triggers an assertion failure or crash during
  miter calculations. This was a regression in Graphviz 7.0.0. #2342
- When using the `beautify=true` attribute, beautification no longer confuses
  leaves and dimensions. This previously could have led to skipping calculations
  or infinite loops.
- When using the `beautify=true` attribute, the first and last nodes around a
  circular layout are no longer placed on top of each other. #2283
- Applying `concentrate=true` to duplicate edges no longer results in errors due
  to non-normal edges being found. #2087
- `splines=ortho` and `concentrate=true` when used in combination no longer
  causes crashes during spline construction. #2361
- Externally referenced SVG files with their opening `<svg` tag on the same line
  as their XML declaration are no longer ignored. #2352

### Removed

- The VML output renderer has been removed. This format has been superseded by
  SVG. #799
- Legacy man page references to `dotty` have been removed. `dotty` was removed
  in Graphviz 4.0.0.
- **Breaking**: The definition of the `elist_fastapp` macro has been removed.
- Versions of Librsvg prior to 2.36.0 are no longer supported.
- Versions of GDK prior to 2.0.0 are no longer supported.
- Versions of Glib prior to 2.36.0 are no longer supported.
- **Breaking**: The `Agnodeinfo_t.inleaf` field and its `ND_inleaf` accessor
  have been removed.
- **Breaking**: The `Agnodeinfo_t.outleaf` field and its `ND_outleaf` and
  `GD_outleaf` accessors have been removed.
- **Breaking**: The `Agraphinfo_t.has_sourcerank` field and its
  `GD_has_sourcerank` accessor has been removed.
- **Breaking**: The `Agraphinfo_t.has_sinkrank` field and its
  `GD_has_sinkrank` accessor has been removed.
- Support for the legacy Microsoft Visio VDX format has been removed.
- **Breaking**: The `arrow_at_start` and `arrow_at_end` parameters from the
  `gvrender_engine_t.beziercurve` callback have been removed.
- **Breaking**: The `GVRENDER_DOES_ARROWS` constant has been removed.
- The extra cmpnd.c code is no longer shipped in the Graphviz distribution
  tarball.
- **Breaking**: The `STROKE_CLOSED`, `STROKE_FILLED`, `STROKE_PENDOWN`, and
  `STROKE_VERTICES_ALLOCATED` constants have been removed.
- **Breaking**: The `stoke_t.flags` field has been removed.


(micha)
diff -r1.269 -r1.270 pkgsrc/graphics/graphviz/Makefile
diff -r1.58 -r1.59 pkgsrc/graphics/graphviz/PLIST
diff -r1.34 -r1.35 pkgsrc/graphics/graphviz/buildlink3.mk
diff -r1.80 -r1.81 pkgsrc/graphics/graphviz/distinfo

cvs diff -r1.269 -r1.270 pkgsrc/graphics/graphviz/Makefile (expand / switch to unified diff)

--- pkgsrc/graphics/graphviz/Makefile 2023/05/22 11:39:01 1.269
+++ pkgsrc/graphics/graphviz/Makefile 2023/06/07 10:09:48 1.270
@@ -1,17 +1,16 @@ @@ -1,17 +1,16 @@
1# $NetBSD: Makefile,v 1.269 2023/05/22 11:39:01 wiz Exp $ 1# $NetBSD: Makefile,v 1.270 2023/06/07 10:09:48 micha Exp $
2 2
3DISTNAME= graphviz-7.1.0 3DISTNAME= graphviz-8.0.5
4PKGREVISION= 4 
5CATEGORIES= graphics 4CATEGORIES= graphics
6MASTER_SITES= ${MASTER_SITE_GITLAB:=api/v4/projects/4207231/packages/generic/graphviz-releases/${PKGVERSION_NOREV}/} 5MASTER_SITES= ${MASTER_SITE_GITLAB:=api/v4/projects/4207231/packages/generic/graphviz-releases/${PKGVERSION_NOREV}/}
7EXTRACT_SUFX= .tar.xz 6EXTRACT_SUFX= .tar.xz
8 7
9MAINTAINER= micha@NetBSD.org 8MAINTAINER= micha@NetBSD.org
10HOMEPAGE= https://www.graphviz.org/ 9HOMEPAGE= https://www.graphviz.org/
11COMMENT= Graph Drawing Programs from AT&T Research and Lucent Bell Labs 10COMMENT= Graph Drawing Programs from AT&T Research and Lucent Bell Labs
12LICENSE= epl-v1.0 11LICENSE= epl-v1.0
13 12
14CHECK_FILES_SKIP+= ${PREFIX}/lib/graphviz/config6 13CHECK_FILES_SKIP+= ${PREFIX}/lib/graphviz/config6
15CHECK_PORTABILITY_SKIP+= windows/* 14CHECK_PORTABILITY_SKIP+= windows/*
16 15
17USE_LANGUAGES= c99 c++11 16USE_LANGUAGES= c99 c++11
@@ -62,26 +61,27 @@ CONFIGURE_ARGS+= --with-webp @@ -62,26 +61,27 @@ CONFIGURE_ARGS+= --with-webp
62# build fails when PHP and/or Ruby are also installed 61# build fails when PHP and/or Ruby are also installed
63CONFIGURE_ENV+= ac_cv_prog_PHP= 62CONFIGURE_ENV+= ac_cv_prog_PHP=
64CONFIGURE_ENV+= ac_cv_prog_RUBY= 63CONFIGURE_ENV+= ac_cv_prog_RUBY=
65 64
66CPPFLAGS+= -DNO_POSTSCRIPT_ALIAS=1 65CPPFLAGS+= -DNO_POSTSCRIPT_ALIAS=1
67LDFLAGS.SunOS+= -lsocket -lnsl 66LDFLAGS.SunOS+= -lsocket -lnsl
68 67
69PKGCONFIG_OVERRIDE+= lib/cdt/libcdt.pc.in 68PKGCONFIG_OVERRIDE+= lib/cdt/libcdt.pc.in
70PKGCONFIG_OVERRIDE+= lib/cgraph/libcgraph.pc.in 69PKGCONFIG_OVERRIDE+= lib/cgraph/libcgraph.pc.in
71PKGCONFIG_OVERRIDE+= lib/edgepaint/liblab_gamut.pc.in 70PKGCONFIG_OVERRIDE+= lib/edgepaint/liblab_gamut.pc.in
72PKGCONFIG_OVERRIDE+= lib/expr/libexpr.pc.in 71PKGCONFIG_OVERRIDE+= lib/expr/libexpr.pc.in
73PKGCONFIG_OVERRIDE+= lib/gvc/libgvc.pc.in 72PKGCONFIG_OVERRIDE+= lib/gvc/libgvc.pc.in
74PKGCONFIG_OVERRIDE+= lib/gvpr/libgvpr.pc.in 73PKGCONFIG_OVERRIDE+= lib/gvpr/libgvpr.pc.in
 74PKGCONFIG_OVERRIDE+= lib/pack/libpack.pc.in
75PKGCONFIG_OVERRIDE+= lib/pathplan/libpathplan.pc.in 75PKGCONFIG_OVERRIDE+= lib/pathplan/libpathplan.pc.in
76PKGCONFIG_OVERRIDE+= lib/sfdpgen/libsfdp.pc.in 76PKGCONFIG_OVERRIDE+= lib/sfdpgen/libsfdp.pc.in
77PKGCONFIG_OVERRIDE+= lib/xdot/libxdot.pc.in 77PKGCONFIG_OVERRIDE+= lib/xdot/libxdot.pc.in
78 78
79# With lua51 there's a PLIST divergence and it isn't obvious whether 79# With lua51 there's a PLIST divergence and it isn't obvious whether
80# it's serious or not, or what causes it. 80# it's serious or not, or what causes it.
81LUA_VERSIONS_INCOMPATIBLE= 51 81LUA_VERSIONS_INCOMPATIBLE= 51
82 82
83REPLACE_LUA+= tclpkg/gv/demo/modgraph.lua 83REPLACE_LUA+= tclpkg/gv/demo/modgraph.lua
84 84
85REPLACE_INTERPRETER+= tclsh 85REPLACE_INTERPRETER+= tclsh
86REPLACE.tclsh.old= .*tclsh 86REPLACE.tclsh.old= .*tclsh
87REPLACE.tclsh.new= ${PREFIX}/bin/tclsh 87REPLACE.tclsh.new= ${PREFIX}/bin/tclsh

cvs diff -r1.58 -r1.59 pkgsrc/graphics/graphviz/PLIST (expand / switch to unified diff)

--- pkgsrc/graphics/graphviz/PLIST 2022/10/17 09:12:53 1.58
+++ pkgsrc/graphics/graphviz/PLIST 2023/06/07 10:09:48 1.59
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1@comment $NetBSD: PLIST,v 1.58 2022/10/17 09:12:53 adam Exp $ 1@comment $NetBSD: PLIST,v 1.59 2023/06/07 10:09:48 micha Exp $
2bin/acyclic 2bin/acyclic
3bin/bcomps 3bin/bcomps
4bin/ccomps 4bin/ccomps
5bin/circo 5bin/circo
6bin/cluster 6bin/cluster
7${PLIST.gd}bin/diffimg 7${PLIST.gd}bin/diffimg
8bin/dijkstra 8bin/dijkstra
9bin/dot 9bin/dot
10bin/dot2gxl 10bin/dot2gxl
11bin/dot_builtins 11bin/dot_builtins
12bin/edgepaint 12bin/edgepaint
13bin/fdp 13bin/fdp
14bin/gc 14bin/gc
@@ -64,27 +64,26 @@ include/graphviz/types.h @@ -64,27 +64,26 @@ include/graphviz/types.h
64include/graphviz/usershape.h 64include/graphviz/usershape.h
65include/graphviz/xdot.h 65include/graphviz/xdot.h
66lib/graphviz/libgvplugin_core.la 66lib/graphviz/libgvplugin_core.la
67lib/graphviz/libgvplugin_dot_layout.la 67lib/graphviz/libgvplugin_dot_layout.la
68${PLIST.gd}lib/graphviz/libgvplugin_gd.la 68${PLIST.gd}lib/graphviz/libgvplugin_gd.la
69${PLIST.gtk}lib/graphviz/libgvplugin_gdk.la 69${PLIST.gtk}lib/graphviz/libgvplugin_gdk.la
70${PLIST.ghostscript}${PLIST.x11}lib/graphviz/libgvplugin_gs.la 70${PLIST.ghostscript}${PLIST.x11}lib/graphviz/libgvplugin_gs.la
71${PLIST.gtk}lib/graphviz/libgvplugin_gtk.la 71${PLIST.gtk}lib/graphviz/libgvplugin_gtk.la
72lib/graphviz/libgvplugin_neato_layout.la 72lib/graphviz/libgvplugin_neato_layout.la
73lib/graphviz/libgvplugin_pango.la 73lib/graphviz/libgvplugin_pango.la
74${PLIST.poppler}lib/graphviz/libgvplugin_poppler.la 74${PLIST.poppler}lib/graphviz/libgvplugin_poppler.la
75${PLIST.quartz}lib/graphviz/libgvplugin_quartz.la 75${PLIST.quartz}lib/graphviz/libgvplugin_quartz.la
76${PLIST.svg}lib/graphviz/libgvplugin_rsvg.la 76${PLIST.svg}lib/graphviz/libgvplugin_rsvg.la
77lib/graphviz/libgvplugin_visio.la 
78lib/graphviz/libgvplugin_webp.la 77lib/graphviz/libgvplugin_webp.la
79${PLIST.x11}lib/graphviz/libgvplugin_xlib.la 78${PLIST.x11}lib/graphviz/libgvplugin_xlib.la
80${PLIST.lua}lib/graphviz/lua/libgv_lua.la 79${PLIST.lua}lib/graphviz/lua/libgv_lua.la
81${PLIST.perl}lib/graphviz/perl/gv.pm 80${PLIST.perl}lib/graphviz/perl/gv.pm
82${PLIST.perl}lib/graphviz/perl/gv.so 81${PLIST.perl}lib/graphviz/perl/gv.so
83${PLIST.perl}lib/graphviz/perl/libgv_perl.la 82${PLIST.perl}lib/graphviz/perl/libgv_perl.la
84${PLIST.tcl}${PLIST.x11}lib/graphviz/tcl/libgdtclft.la 83${PLIST.tcl}${PLIST.x11}lib/graphviz/tcl/libgdtclft.la
85${PLIST.tcl}lib/graphviz/tcl/libgv_tcl.la 84${PLIST.tcl}lib/graphviz/tcl/libgv_tcl.la
86${PLIST.tcl}lib/graphviz/tcl/libtcldot.la 85${PLIST.tcl}lib/graphviz/tcl/libtcldot.la
87${PLIST.tcl}lib/graphviz/tcl/libtcldot_builtin.la 86${PLIST.tcl}lib/graphviz/tcl/libtcldot_builtin.la
88${PLIST.tcl}lib/graphviz/tcl/libtclplan.la 87${PLIST.tcl}lib/graphviz/tcl/libtclplan.la
89${PLIST.tcl}lib/graphviz/tcl/pkgIndex.tcl 88${PLIST.tcl}lib/graphviz/tcl/pkgIndex.tcl
90lib/libcdt.la 89lib/libcdt.la

cvs diff -r1.34 -r1.35 pkgsrc/graphics/graphviz/buildlink3.mk (expand / switch to unified diff)

--- pkgsrc/graphics/graphviz/buildlink3.mk 2023/01/29 21:14:40 1.34
+++ pkgsrc/graphics/graphviz/buildlink3.mk 2023/06/07 10:09:48 1.35
@@ -1,17 +1,17 @@ @@ -1,17 +1,17 @@
1# $NetBSD: buildlink3.mk,v 1.34 2023/01/29 21:14:40 ryoon Exp $ 1# $NetBSD: buildlink3.mk,v 1.35 2023/06/07 10:09:48 micha Exp $
2 2
3BUILDLINK_TREE+= graphviz 3BUILDLINK_TREE+= graphviz
4 4
5.if !defined(GRAPHVIZ_BUILDLINK3_MK) 5.if !defined(GRAPHVIZ_BUILDLINK3_MK)
6GRAPHVIZ_BUILDLINK3_MK:= 6GRAPHVIZ_BUILDLINK3_MK:=
7 7
8BUILDLINK_API_DEPENDS.graphviz+= graphviz>=2.26.3 8BUILDLINK_API_DEPENDS.graphviz+= graphviz>=2.26.3
9BUILDLINK_ABI_DEPENDS.graphviz+= graphviz>=7.1.0nb1 9BUILDLINK_ABI_DEPENDS.graphviz+= graphviz>=8.0.5
10BUILDLINK_PKGSRCDIR.graphviz?= ../../graphics/graphviz 10BUILDLINK_PKGSRCDIR.graphviz?= ../../graphics/graphviz
11 11
12.include "../../converters/libiconv/buildlink3.mk" 12.include "../../converters/libiconv/buildlink3.mk"
13.include "../../fonts/fontconfig/buildlink3.mk" 13.include "../../fonts/fontconfig/buildlink3.mk"
14.include "../../textproc/expat/buildlink3.mk" 14.include "../../textproc/expat/buildlink3.mk"
15.endif # GRAPHVIZ_BUILDLINK3_MK 15.endif # GRAPHVIZ_BUILDLINK3_MK
16 16
17BUILDLINK_TREE+= -graphviz 17BUILDLINK_TREE+= -graphviz

cvs diff -r1.80 -r1.81 pkgsrc/graphics/graphviz/distinfo (expand / switch to unified diff)

--- pkgsrc/graphics/graphviz/distinfo 2023/01/23 13:44:01 1.80
+++ pkgsrc/graphics/graphviz/distinfo 2023/06/07 10:09:48 1.81
@@ -1,10 +1,10 @@ @@ -1,10 +1,10 @@
1$NetBSD: distinfo,v 1.80 2023/01/23 13:44:01 micha Exp $ 1$NetBSD: distinfo,v 1.81 2023/06/07 10:09:48 micha Exp $
2 2
3BLAKE2s (graphviz-7.1.0.tar.xz) = 860ec5031566314d7508084bcf6580205c8cdc5dd0f53d47715047d90be06c12 3BLAKE2s (graphviz-8.0.5.tar.xz) = 1a56e9242aad2712bd5299248839e92e90533ea51b541ba38a529e80f6987d0e
4SHA512 (graphviz-7.1.0.tar.xz) = 9ff5facadd923300f47f569c568620371e75b7518661bb0f375ada9b0b82189033cec6c124d5691c875e292cef28c51230c6d6c44365c6e4a9e3dcf5b4dd1ee9 4SHA512 (graphviz-8.0.5.tar.xz) = 1bcde81cd8bb370e6b843b02eecc96459d7567ff982a2fc4a97b50b43dad45ac2d4d5fb5f5f629562585600256878dd81c7b4c51ab1691cb3b6f4dcc054c7443
5Size (graphviz-7.1.0.tar.xz) = 21477976 bytes 5Size (graphviz-8.0.5.tar.xz) = 21426200 bytes
6SHA1 (patch-config_config__perl.pl) = 430acb7d7ee3e149de0af9832c5a29602884f83e 6SHA1 (patch-config_config__perl.pl) = 430acb7d7ee3e149de0af9832c5a29602884f83e
7SHA1 (patch-configure.ac) = 80e303d6a9b95c5bb732677a0f1f63d209b39856 7SHA1 (patch-configure.ac) = 80e303d6a9b95c5bb732677a0f1f63d209b39856
8SHA1 (patch-lib_gvc_Makefile.am) = 180b45f810e5bb3948509d50b5be3b159b38a78f 8SHA1 (patch-lib_gvc_Makefile.am) = 180b45f810e5bb3948509d50b5be3b159b38a78f
9SHA1 (patch-plugin_gs_gvloadimage__gs.c) = 982ac1db252e3224633069db956c5dc803cd5ea9 9SHA1 (patch-plugin_gs_gvloadimage__gs.c) = 982ac1db252e3224633069db956c5dc803cd5ea9
10SHA1 (patch-plugin_xlib_gvdevice__xlib.c) = 05d1549db3b9221f5bcb947173034775b0df7c6c 10SHA1 (patch-plugin_xlib_gvdevice__xlib.c) = 05d1549db3b9221f5bcb947173034775b0df7c6c