]> granicus.if.org Git - graphviz/log
graphviz
2 years agoneatogen: represent 'nsites' as a 'size_t'
Matthew Fernandez [Sat, 19 Nov 2022 23:42:27 +0000 (15:42 -0800)]
neatogen: represent 'nsites' as a 'size_t'

This squashes 3 -Wsign-conversion warnings. Note that this required also
converting `nvertices` and `Site.sitenbr` to `size_t` too.

2 years agoneatogen: mark 'adjustMode' const
Matthew Fernandez [Sat, 19 Nov 2022 23:18:26 +0000 (15:18 -0800)]
neatogen: mark 'adjustMode' const

This makes it more obvious to the compiler it can e.g. unroll and inline loops
involving this array.

2 years agoneatogen parseFactor: replace 'MIN' and 'MAX' with stdlib equivalents
Matthew Fernandez [Sat, 19 Nov 2022 23:11:35 +0000 (15:11 -0800)]
neatogen parseFactor: replace 'MIN' and 'MAX' with stdlib equivalents

2 years agoneatogen ISZERO: remove some unnecessary parens
Matthew Fernandez [Sat, 19 Nov 2022 23:11:21 +0000 (15:11 -0800)]
neatogen ISZERO: remove some unnecessary parens

2 years agoneatogen vpscAdjust: use cgraph wrappers for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen vpscAdjust: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen fdpAdjust: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen fdpAdjust: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen makeMatrix: use cgraph wrappers for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen makeMatrix: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen getSizes: use cgraph wrappers for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen getSizes: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen sortSites: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen sortSites: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen makeInfo: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen makeInfo: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoMerge branch 'smattr/288533e0-d82f-4b7a-babc-57908bcb1700' into 'main'
Matthew Fernandez [Thu, 24 Nov 2022 23:36:44 +0000 (23:36 +0000)]
Merge branch 'smattr/288533e0-d82f-4b7a-babc-57908bcb1700' into 'main'

circogen: use cgraph wrappers for allocation

See merge request graphviz/graphviz!2969

2 years agocircogen cmpDegree: abbreviate into early return style
Matthew Fernandez [Sun, 20 Nov 2022 20:18:10 +0000 (12:18 -0800)]
circogen cmpDegree: abbreviate into early return style

2 years agocircogen mkNodelist: use cgraph wrapper for allocation
Matthew Fernandez [Sun, 20 Nov 2022 20:02:53 +0000 (12:02 -0800)]
circogen mkNodelist: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agocircogen init_nodelistitem: use cgraph wrapper for allocation
Matthew Fernandez [Sun, 20 Nov 2022 20:02:53 +0000 (12:02 -0800)]
circogen init_nodelistitem: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agocircogen makeDerivedNode: use cgraph wrappers for allocation
Matthew Fernandez [Sun, 20 Nov 2022 20:02:53 +0000 (12:02 -0800)]
circogen makeDerivedNode: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agocircogen circular_init_node_edge: use cgraph wrappers for allocation
Matthew Fernandez [Sun, 20 Nov 2022 20:02:53 +0000 (12:02 -0800)]
circogen circular_init_node_edge: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agocircogen cmpItem: abbreviate into early return style
Matthew Fernandez [Sun, 20 Nov 2022 20:13:03 +0000 (12:13 -0800)]
circogen cmpItem: abbreviate into early return style

2 years agocircogen mkItem: use cgraph wrapper for allocation
Matthew Fernandez [Sun, 20 Nov 2022 20:02:53 +0000 (12:02 -0800)]
circogen mkItem: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agocircogen setInfo: abbreviate some open coded 'fmax'
Matthew Fernandez [Sun, 20 Nov 2022 20:11:31 +0000 (12:11 -0800)]
circogen setInfo: abbreviate some open coded 'fmax'

2 years agocircogen position: use cgraph wrapper for allocation
Matthew Fernandez [Sun, 20 Nov 2022 20:02:53 +0000 (12:02 -0800)]
circogen position: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agocircogen mkBlock: use cgraph wrapper for allocation
Matthew Fernandez [Sun, 20 Nov 2022 20:02:53 +0000 (12:02 -0800)]
circogen mkBlock: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agocircogen find_pair_edges: use cgraph wrappers for allocation
Matthew Fernandez [Sun, 20 Nov 2022 20:02:53 +0000 (12:02 -0800)]
circogen find_pair_edges: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agocircogen mkItem: use cgraph wrapper for allocation
Matthew Fernandez [Sun, 20 Nov 2022 20:02:53 +0000 (12:02 -0800)]
circogen mkItem: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoMerge branch 'smattr/0e00870b-cec1-4427-b81e-e0ba90ff3a32' into 'main'
Matthew Fernandez [Thu, 24 Nov 2022 22:42:27 +0000 (22:42 +0000)]
Merge branch 'smattr/0e00870b-cec1-4427-b81e-e0ba90ff3a32' into 'main'

CI: add Fedora 37 jobs

See merge request graphviz/graphviz!2972

2 years agoCI: add Fedora 37 jobs
Matthew Fernandez [Wed, 23 Nov 2022 04:59:00 +0000 (20:59 -0800)]
CI: add Fedora 37 jobs

These replicate the previous Fedora 36 jobs.

2 years agoMerge branch 'smattr/3cfdaf01-30ee-4728-a806-665a4945c89d' into 'main'
Matthew Fernandez [Thu, 24 Nov 2022 20:33:47 +0000 (20:33 +0000)]
Merge branch 'smattr/3cfdaf01-30ee-4728-a806-665a4945c89d' into 'main'

remove 'GRAPHVIZ_VERSION_BUILD', 'GRAPHVIZ_VERSION_REVISION' from build system

See merge request graphviz/graphviz!2964

2 years agoremove 'GRAPHVIZ_VERSION_BUILD', 'GRAPHVIZ_VERSION_REVISION' from build system
Matthew Fernandez [Sat, 19 Nov 2022 17:50:28 +0000 (09:50 -0800)]
remove 'GRAPHVIZ_VERSION_BUILD', 'GRAPHVIZ_VERSION_REVISION' from build system

These are only used in legacy Windows files that are no longer built.

Gitlab: #2317

2 years agoMerge branch 'smattr/046699df-f55e-4c24-9e03-4a9c0489fd61' into 'main'
Matthew Fernandez [Thu, 24 Nov 2022 19:39:59 +0000 (19:39 +0000)]
Merge branch 'smattr/046699df-f55e-4c24-9e03-4a9c0489fd61' into 'main'

push some build system logic into Python

See merge request graphviz/graphviz!2962

2 years agoremove redundant datetime computation in version script
Matthew Fernandez [Sat, 19 Nov 2022 17:39:00 +0000 (09:39 -0800)]
remove redundant datetime computation in version script

Instead of parsing the date Git gives us and then reformatting it into a new
form, we can just ask Git to give it to us in the format we want.

2 years agopush build system version computation into Python
Matthew Fernandez [Sat, 19 Nov 2022 17:31:19 +0000 (09:31 -0800)]
push build system version computation into Python

The Autotools build system was doing quite a bit of work to try and find a
`date` syntax that worked on the current platform and still failing (this logic
does not work on NetBSD). We can side step all of this by just doing date
manipulation in Python which we were calling anyway.

Gitlab: #2317

2 years agoremove 'GRAPHVIZ_VERSION_COMMIT' in the build system
Matthew Fernandez [Sat, 19 Nov 2022 17:13:13 +0000 (09:13 -0800)]
remove 'GRAPHVIZ_VERSION_COMMIT' in the build system

This is not used.

2 years agoMerge branch 'smattr/1fbc0bcb-4881-46b0-b5c2-1bcc4fd57266' into 'main'
Matthew Fernandez [Wed, 23 Nov 2022 17:44:10 +0000 (17:44 +0000)]
Merge branch 'smattr/1fbc0bcb-4881-46b0-b5c2-1bcc4fd57266' into 'main'

build sytem cleanup

See merge request graphviz/graphviz!2970

2 years agoAutotools: remove checking for the '_IO_read_end' member of 'FILE'
Matthew Fernandez [Thu, 8 Sep 2022 00:27:49 +0000 (17:27 -0700)]
Autotools: remove checking for the '_IO_read_end' member of 'FILE'

The last use of the result variable of this check, `HAVE_FILE_IO_READ_END`, was
removed in b2f287ca315dd5bf689d9ce2ca71dbfe63fb8a61.

2 years agoAutotools: remove checking for the '_next' member of 'FILE'
Matthew Fernandez [Thu, 8 Sep 2022 00:27:49 +0000 (17:27 -0700)]
Autotools: remove checking for the '_next' member of 'FILE'

The last use of the result variable of this check, `HAVE_FILE_NEXT`, was removed
in b2f287ca315dd5bf689d9ce2ca71dbfe63fb8a61.

2 years agoAutotools: remove checking for the '_r' member of 'FILE'
Matthew Fernandez [Thu, 8 Sep 2022 00:27:49 +0000 (17:27 -0700)]
Autotools: remove checking for the '_r' member of 'FILE'

The last use of the result variable of this check, `HAVE_FILE_R`, was removed
in b2f287ca315dd5bf689d9ce2ca71dbfe63fb8a61.

2 years agoAutotools: remove checking for the '_cnt' member of 'FILE'
Matthew Fernandez [Thu, 8 Sep 2022 00:27:49 +0000 (17:27 -0700)]
Autotools: remove checking for the '_cnt' member of 'FILE'

The last use of the result variable of this check, `HAVE_FILE_CNT`, was removed
in b2f287ca315dd5bf689d9ce2ca71dbfe63fb8a61.

2 years agoCMake: remove checking and fallback for 'ssize_t'
Matthew Fernandez [Thu, 8 Sep 2022 00:27:49 +0000 (17:27 -0700)]
CMake: remove checking and fallback for 'ssize_t'

It seems all contemporary supported platforms except Windows have `ssize_t`.
Furthermore, `int` is not a suitable fallback for a platform that does not have
`ssize_t`.

2 years agoMerge branch 'smattr/286d5d12-d610-4f58-b5c2-c9c36d4bfbf8' into 'main'
Matthew Fernandez [Wed, 23 Nov 2022 15:00:21 +0000 (15:00 +0000)]
Merge branch 'smattr/286d5d12-d610-4f58-b5c2-c9c36d4bfbf8' into 'main'

fdpgen: use cgraph wrappers for allocation

See merge request graphviz/graphviz!2971

2 years agofdpgen: squash -Wdebug warning when building without 'DEBUG' defined
Matthew Fernandez [Wed, 23 Nov 2022 04:38:39 +0000 (20:38 -0800)]
fdpgen: squash -Wdebug warning when building without 'DEBUG' defined

2 years agofdpgen: use 'size_t' types for object list counts
Matthew Fernandez [Wed, 23 Nov 2022 04:32:19 +0000 (20:32 -0800)]
fdpgen: use 'size_t' types for object list counts

Squashes some -Wsign-conversion warnings.

2 years agofdpgen objectList: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen objectList: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen makeClustObs: use cgraph wrappers for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen makeClustObs: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen addObj: use cgraph wrappers for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen addObj: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen compoundEdges: remove unused 'P' local
Matthew Fernandez [Wed, 23 Nov 2022 04:25:48 +0000 (20:25 -0800)]
fdpgen compoundEdges: remove unused 'P' local

2 years agofdpgen fdp_init_node_edge: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen fdp_init_node_edge: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen init_node: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen init_node: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen findCComp: use cgraph wrappers for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen findCComp: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen adjustGrid: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen adjustGrid: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen newBlock: use cgraph wrappers for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen newBlock: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen: allocate '_grid' as a global
Matthew Fernandez [Wed, 23 Nov 2022 03:53:35 +0000 (19:53 -0800)]
fdpgen: allocate '_grid' as a global

There is no need to heap-allocate this singleton.

2 years agofdpgen layout: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen layout: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen expandCluster: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen expandCluster: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen getEdgeList: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen getEdgeList: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen deriveGraph: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen deriveGraph: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen addEdge: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen addEdge: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen addCluster: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen addCluster: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen mkDeriveNode: use cgraph wrappers for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
fdpgen mkDeriveNode: use cgraph wrappers for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agofdpgen: remove 'SHOW_GRID' guarded code
Matthew Fernandez [Wed, 23 Nov 2022 02:53:36 +0000 (18:53 -0800)]
fdpgen: remove 'SHOW_GRID' guarded code

As far as I can tell, this code has never been compilable. It relies on `CellW`
and `CellH`, neither of which have ever been defined in Graphviz’ history.

2 years agoMerge branch 'smattr/6a68aa2c-f300-4e65-b38c-7dbd09efbb1b' into 'main'
Matthew Fernandez [Tue, 22 Nov 2022 16:51:43 +0000 (16:51 +0000)]
Merge branch 'smattr/6a68aa2c-f300-4e65-b38c-7dbd09efbb1b' into 'main'

drop special build system cases for ICC

Closes #2298

See merge request graphviz/graphviz!2968

2 years agoremove 'intptr_t' existence checks
Matthew Fernandez [Sun, 20 Nov 2022 19:29:55 +0000 (11:29 -0800)]
remove 'intptr_t' existence checks

The majority of Graphviz code was using the types `intptr_t` and `uintptr_t`
unconditionally. So it seems safe to assume that any compliant C99 environment
has both of these.

2 years agoremove setting of 'RC_IS_RC' variable in Autotools
Matthew Fernandez [Sun, 20 Nov 2022 19:19:27 +0000 (11:19 -0800)]
remove setting of 'RC_IS_RC' variable in Autotools

The last use of this was removed in 6faa34010f947510ec129af2d998614de8a513ed.

2 years agoremove unused 'RC_IS_WINDRES' variable in Autotools
Matthew Fernandez [Sun, 20 Nov 2022 19:18:26 +0000 (11:18 -0800)]
remove unused 'RC_IS_WINDRES' variable in Autotools

The last use of this was removed in 520da9cd8b8d23007f325e84fdbda733d7e6d57c.

2 years agodrop special build system cases for ICC
Matthew Fernandez [Sun, 20 Nov 2022 19:15:48 +0000 (11:15 -0800)]
drop special build system cases for ICC

The Intel C Compiler is now based on LLVM. We think this means it has a Clang
compatible front end, though we do not have access to it to check. If this is
accurate, it means the build system no longer needs any specialized ICC support.

Gitlab: closes #2298

2 years agoMerge branch 'gshklover_perf' into 'main'
Matthew Fernandez [Mon, 21 Nov 2022 01:15:32 +0000 (01:15 +0000)]
Merge branch 'gshklover_perf' into 'main'

Small performance improvement to simplex

See merge request graphviz/graphviz!2851

2 years agoSmall performance improvement to simplex
Gregory Shklover [Thu, 22 Sep 2022 07:27:48 +0000 (07:27 +0000)]
Small performance improvement to simplex

2 years agoMerge branch 'smattr/618319b7-f821-49c5-be38-5d715a6ee95d' into 'main'
Matthew Fernandez [Sat, 19 Nov 2022 22:49:51 +0000 (22:49 +0000)]
Merge branch 'smattr/618319b7-f821-49c5-be38-5d715a6ee95d' into 'main'

remove 'GRAPHVIZ_SOURCES' from the build system

See merge request graphviz/graphviz!2963

2 years agoremove 'GRAPHVIZ_SOURCES' from the build system
Matthew Fernandez [Sat, 19 Nov 2022 17:46:53 +0000 (09:46 -0800)]
remove 'GRAPHVIZ_SOURCES' from the build system

This URL is out of date and is only used in artifacts that have also bit rotted.

2 years agoMerge branch 'smattr/dd095df0-ddfa-490d-a073-4e0e81e759fe' into 'main'
Matthew Fernandez [Sat, 19 Nov 2022 06:15:39 +0000 (06:15 +0000)]
Merge branch 'smattr/dd095df0-ddfa-490d-a073-4e0e81e759fe' into 'main'

neatogen: migration to cgraph allocation wrappers, clean up

See merge request graphviz/graphviz!2960

2 years agoneatogen bbox: abbreviate some open coded 'fmax', 'fmin'
Matthew Fernandez [Fri, 18 Nov 2022 02:11:33 +0000 (18:11 -0800)]
neatogen bbox: abbreviate some open coded 'fmax', 'fmin'

2 years agoneatogen: remove some unnecessary parens
Matthew Fernandez [Fri, 18 Nov 2022 02:11:17 +0000 (18:11 -0800)]
neatogen: remove some unnecessary parens

2 years agoneatogen cmpItem: abbreviate and use early return style
Matthew Fernandez [Fri, 18 Nov 2022 02:01:46 +0000 (18:01 -0800)]
neatogen cmpItem: abbreviate and use early return style

2 years agoneatogen makeMultiSpline: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen makeMultiSpline: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen triPath: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen triPath: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen mkPoly: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen mkPoly: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen genroute: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen genroute: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen finishEdge: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen finishEdge: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen mkRouter: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen mkRouter: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen mkTriGraph: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen mkTriGraph: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

Note that in this change we can drop some explicit initialization because the
cgraph wrappers zero-initialize.

2 years agoneatogen: use a more appropriate type for counting edges
Matthew Fernandez [Fri, 18 Nov 2022 01:37:08 +0000 (17:37 -0800)]
neatogen: use a more appropriate type for counting edges

Squashes some -Wsign-conversion warnings.

2 years agoneatogen: remove upfront allocation of trigraph edges
Matthew Fernandez [Fri, 18 Nov 2022 01:27:12 +0000 (17:27 -0800)]
neatogen: remove upfront allocation of trigraph edges

Following on from fc465488e1e62fe5ef879b379a07ef272431f400, this removes
assumptions about how many total edges will be generated by this algorithm. New
edges are now allocated on demand when appending.

2 years agoneatogen mkTriIndices: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen mkTriIndices: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen mkCtrlPts: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen mkCtrlPts: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen addTri: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:41 +0000 (17:14 -0800)]
neatogen addTri: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen newIpair: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:14:02 +0000 (17:14 -0800)]
neatogen newIpair: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoneatogen newItem: use cgraph wrapper for allocation
Matthew Fernandez [Fri, 18 Nov 2022 01:12:52 +0000 (17:12 -0800)]
neatogen newItem: use cgraph wrapper for allocation

The lib/cgraph/alloc.h wrappers are similar to the older lib/common/memory.h
wrappers except (1) they are header-only and (2) they live in a directory
(cgraph) that is at the root of the dependency tree. The long term plan is to
replace all use of lib/common/memory.h with lib/cgraph/alloc.h.

2 years agoMerge branch 'smattr/gitlab-1838' into 'main'
Matthew Fernandez [Sat, 19 Nov 2022 03:57:43 +0000 (03:57 +0000)]
Merge branch 'smattr/gitlab-1838' into 'main'

CMake: fix: teach 'gvpack' how to find plugins at run time

Closes #1838

See merge request graphviz/graphviz!2947

2 years agoCMake: fix: teach 'gvpack' how to find plugins at run time
Matthew Fernandez [Sat, 12 Nov 2022 18:50:53 +0000 (10:50 -0800)]
CMake: fix: teach 'gvpack' how to find plugins at run time

Because `gvpack` links against the plugins as libraries rather than loading them
on demand, the dynamic linker needs to be able to locate the plugin libraries at
run time.

CC: Jaroslav Škarvada <jskarvad@redhat.com>
Gitlab: fixes #1838
Red Hat: fixes https://bugzilla.redhat.com/show_bug.cgi?id=1838679

2 years agoCMake: fix: stop disabling demand loading in tools
Matthew Fernandez [Fri, 11 Nov 2022 16:04:47 +0000 (08:04 -0800)]
CMake: fix: stop disabling demand loading in tools

The Autotools build system only disables demand loading in `gvpack` among the
tools, but the CMake build system was disabling it for all tools.

2 years agoMerge branch 'smattr/5af11577-90f4-461d-b097-b4931494e660' into 'main'
Matthew Fernandez [Sat, 19 Nov 2022 02:52:25 +0000 (02:52 +0000)]
Merge branch 'smattr/5af11577-90f4-461d-b097-b4931494e660' into 'main'

Start 7.0.3 development

See merge request graphviz/graphviz!2961

2 years agoStart 7.0.3 development
Matthew Fernandez [Sat, 19 Nov 2022 01:12:09 +0000 (17:12 -0800)]
Start 7.0.3 development

2 years agoMerge branch 'smattr/1361001b-6b80-47e2-b616-d78399cbb2ec' into 'main' 7.0.2
Matthew Fernandez [Sat, 19 Nov 2022 01:10:29 +0000 (01:10 +0000)]
Merge branch 'smattr/1361001b-6b80-47e2-b616-d78399cbb2ec' into 'main'

Stable Release 7.0.2

See merge request graphviz/graphviz!2959

2 years agoStable Release 7.0.2
Matthew Fernandez [Fri, 18 Nov 2022 01:03:45 +0000 (17:03 -0800)]
Stable Release 7.0.2

2 years agoMerge branch 'smattr/gitlab-265' into 'main'
Matthew Fernandez [Fri, 18 Nov 2022 01:01:39 +0000 (01:01 +0000)]
Merge branch 'smattr/gitlab-265' into 'main'

core plugin: stop emitting an empty 'alt' tag in cmap output

Closes #265

See merge request graphviz/graphviz!2958

2 years agocore plugin: stop emitting an empty 'alt' tag in cmap output
Matthew Fernandez [Thu, 17 Nov 2022 15:56:29 +0000 (07:56 -0800)]
core plugin: stop emitting an empty 'alt' tag in cmap output

This was working around a behavior on an old version of Microsoft Internet
Explorer that is no longer supported. Tooltips should show consistently on
modern browsers and the `alt` tag is once again available to be set dynamically
by Javascript or inherited.

Gitlab: closes #265
Reporte-by: ib
2 years agoMerge branch 'smattr/e1d8b50e-417f-46d2-9ae7-19dc5bceddf9' into 'main'
Matthew Fernandez [Thu, 17 Nov 2022 05:57:09 +0000 (05:57 +0000)]
Merge branch 'smattr/e1d8b50e-417f-46d2-9ae7-19dc5bceddf9' into 'main'

add 'gvedit' to the CMake build system

Closes #1836 and #1753

See merge request graphviz/graphviz!2953

2 years agoadd 'gvedit' to the CMake build system
Matthew Fernandez [Mon, 14 Nov 2022 03:37:35 +0000 (19:37 -0800)]
add 'gvedit' to the CMake build system

Note that we need to disable building GVEdit on Windows in CI because we do not
currently have Qt installed there.¹

Gitlab: closes #1753, closes #1836

¹ See https://gitlab.com/graphviz/graphviz/-/merge_requests/1569 for further
  discussion.

2 years agoCI: add Qt generated sources to files excluded from coverage analysis
Matthew Fernandez [Wed, 16 Nov 2022 04:20:34 +0000 (20:20 -0800)]
CI: add Qt generated sources to files excluded from coverage analysis

These will be generated by an upcoming commit adding GVEdit to the CMake build
system. The cryptic EWIEGA46WW directory in this path is a checksum generated by
`AUTOMOC`. But it is based on relative path and appears to be stable as long as
we do not rename any cmd/gvedit subdirectories.

Gitlab: #1836

2 years agoCI: modernize coverage script to use 'pathlib'
Matthew Fernandez [Wed, 16 Nov 2022 04:09:40 +0000 (20:09 -0800)]
CI: modernize coverage script to use 'pathlib'

2 years agoCI: abbreviate passing options to CMake in the windows build
Matthew Fernandez [Mon, 14 Nov 2022 05:05:08 +0000 (21:05 -0800)]
CI: abbreviate passing options to CMake in the windows build

2 years agogvedit: modernize 'QLabel::pixmap' calls
Matthew Fernandez [Mon, 14 Nov 2022 03:52:37 +0000 (19:52 -0800)]
gvedit: modernize 'QLabel::pixmap' calls

Qt 5.15 deprecated the version of this function that returns a pointer and
throws compiler warnings when calls to it are seen. This modernization is
necessary to avoid the upcoming integration of Gvedit into the CMake build
system failing in CI where `-Werror` is applied.

Unfortunately we need to do this conditionally while retaining the old code for,
e.g., CentOS 7 which has a version of Qt 5.15 that does not have the new API.

Gitlab: #1836