]>
granicus.if.org Git - graphviz/log
Matthew Fernandez [Thu, 17 Jun 2021 00:54:19 +0000 (17:54 -0700)]
remove unused flag parameter to conjugate_gradient
Matthew Fernandez [Thu, 17 Jun 2021 00:54:15 +0000 (17:54 -0700)]
remove another pow micro-optimization in spring_electrical.c
A slightly different variant of the instances dealt with in the prior commit.
Matthew Fernandez [Thu, 17 Jun 2021 00:54:10 +0000 (17:54 -0700)]
remove pow micro-optimizations in spring_electrical.c
This code was attempting to optimize the case when the second argument to pow()
was 2. However, modern compilers are able to understand such nuances. In fact,
at -O3 recent Clang *undoes* this branching code into an unconditional call to
pow(). In other words, it considers this branch to multiplication to be a
de-optimization.
This change also incidentally removes 14 -Wfloat-equal warnings.
Matthew Fernandez [Thu, 17 Jun 2021 00:54:06 +0000 (17:54 -0700)]
remove unused jd argument to dmean_get
Matthew Fernandez [Thu, 17 Jun 2021 00:54:02 +0000 (17:54 -0700)]
use a C99 bool array for checked in beautify_leaves
This change not only reduces the heap usage for this function (sizeof(bool) is
typically less than sizeof(int)), but also makes both allocation and
initialization more efficient.
Matthew Fernandez [Thu, 17 Jun 2021 00:53:58 +0000 (17:53 -0700)]
remove sfdp_cleanup_graph no-op function
Squashes a -Wunused-parameter warning.
Matthew Fernandez [Thu, 17 Jun 2021 00:53:55 +0000 (17:53 -0700)]
remove unused parameter from getPos
Matthew Fernandez [Thu, 17 Jun 2021 00:53:47 +0000 (17:53 -0700)]
remove commented out code in lib/sfdpgen
Magnus Jacobsson [Tue, 22 Jun 2021 17:34:40 +0000 (17:34 +0000)]
Merge branch 're-enable-asan-alloc_dealloc_mismatch' into 'main'
Re-enable ASan alloc_dealloc_mismatch
See merge request graphviz/graphviz!2013
Magnus Jacobsson [Tue, 22 Jun 2021 05:36:20 +0000 (07:36 +0200)]
re-enable ASan alloc_dealloc_mismatch
Matthew Fernandez [Sat, 19 Jun 2021 21:15:44 +0000 (21:15 +0000)]
Merge branch 'smattr/
eb82eda7 -a6c0-4c30-ab36-
0ff65dfe02ae ' into 'main'
clean up and math abbreviation in lib/fdpgen
See merge request graphviz/graphviz!2001
Matthew Fernandez [Fri, 18 Jun 2021 01:19:03 +0000 (18:19 -0700)]
abbreviate an open coded fmax in doRep
Matthew Fernandez [Fri, 18 Jun 2021 01:18:21 +0000 (18:18 -0700)]
abbreviate open coded fabs in overlap
Matthew Fernandez [Fri, 18 Jun 2021 01:17:47 +0000 (18:17 -0700)]
abbreviate an open coded fmin in genPorts
Matthew Fernandez [Fri, 18 Jun 2021 01:17:21 +0000 (18:17 -0700)]
abbreviate an open coded fmin in getEdgeList
Matthew Fernandez [Fri, 18 Jun 2021 01:16:35 +0000 (18:16 -0700)]
abbreviate open coded fmax and fmin operations in pswrite
Matthew Fernandez [Fri, 18 Jun 2021 00:45:56 +0000 (17:45 -0700)]
remove some commented out code in lib/fdpgen
Matthew Fernandez [Fri, 18 Jun 2021 01:19:29 +0000 (18:19 -0700)]
replace some open coded hypotenuse calculations in applyAttr with calls to hypot
Similar to the previous commits.
Matthew Fernandez [Fri, 18 Jun 2021 00:56:42 +0000 (17:56 -0700)]
replace an open coded hypotenuse calculation in dist with a call to hypot
Similar to the previous commit.
Matthew Fernandez [Fri, 18 Jun 2021 00:31:55 +0000 (17:31 -0700)]
replace an open coded hypotenuse calculation in RAD with call to hypot
The libc function hypot does the same work, with the potential to be more
accurate and efficient.
Matthew Fernandez [Fri, 18 Jun 2021 00:26:28 +0000 (17:26 -0700)]
remove unused temp argument to cool()
Matthew Fernandez [Fri, 18 Jun 2021 00:18:32 +0000 (17:18 -0700)]
squash -Wunused-parameter warning in newCell
Matthew Fernandez [Sat, 19 Jun 2021 20:09:38 +0000 (20:09 +0000)]
Merge branch 'smattr/
00ec825c -43d9-4855-acac-
066edec7b291 ' into 'main'
more clean up in lib/vpsc
See merge request graphviz/graphviz!1998
Matthew Fernandez [Sat, 12 Jun 2021 20:44:40 +0000 (13:44 -0700)]
replace some manual iterations in Block with range-based for loops
This C++11 syntax does the same thing.
Matthew Fernandez [Sat, 12 Jun 2021 20:34:29 +0000 (13:34 -0700)]
avoid manual memory management of PairingHeap pointers in Block
Not only does this free us from having to think about allocation tracking and
memory leaks, because Block does not participate in any inheritance hierarchy we
can also remove its explicit destructor.
Matthew Fernandez [Sat, 12 Jun 2021 20:28:47 +0000 (13:28 -0700)]
replace forward declaration of PairingHeap with include of its header
There is no need to play these forward declaration tricks in this scenario.
Circular dependencies are not involved.
Matthew Fernandez [Sat, 12 Jun 2021 20:14:01 +0000 (13:14 -0700)]
mark Block as an uncopyable object
Objects of type Block were already unsafe to copy (or move). The class contains
raw pointers that are deleted in the destructor. So any attempt to copy an
object of this type would have eventually caused a use-after-free and/or a
double free. This change makes the situation more explicit by teaching the
compiler it is unsafe to copy or move objects of this type. If there is code that
implicitly does this, it will now be rejected at compile time.
Matthew Fernandez [Sat, 12 Jun 2021 20:09:26 +0000 (13:09 -0700)]
make Block::vars a value, not a pointer
This is simpler for both humans and the compiler, and we do not need to worry
about tracking memory allocation.
Matthew Fernandez [Sat, 12 Jun 2021 20:01:07 +0000 (13:01 -0700)]
replace manual iterations over Block::vars with range-based for loops
This syntax from C++11 is equivalent to the old style iterations it is replacing
here.
Matthew Fernandez [Sat, 12 Jun 2021 19:49:18 +0000 (12:49 -0700)]
remove unnecessary temporary vector in Blocks::cleanup
This code was taking a copy of every element in a set in order to iterate
through them while removing elements from the underlying set. However, this is
not necessary. This change replaces this code with the standard pattern for
deleting elements while iterating over a set.
Matthew Fernandez [Sat, 12 Jun 2021 19:36:31 +0000 (12:36 -0700)]
return a value instead of pointer from Blocks::totalOrder
This function dynamically allocated a list and returned a pointer to this,
presumably under the assumption that copying this kind of object during return
is expensive. However, Named Return Value Optimization (NRVO) applies to this
function. So the compiler can elide the copy during return, making a value
cheaper than a heap pointer here.
Matthew Fernandez [Sat, 12 Jun 2021 19:32:11 +0000 (12:32 -0700)]
replace manual iteration in Blocks::dfsVisit with range-based for loop
This C++11 syntax does the same thing.
Matthew Fernandez [Sat, 12 Jun 2021 19:29:13 +0000 (12:29 -0700)]
take a reference instead of a pointer in Blocks::dfsVisit
This function has no ability to deal with being passed null, so it is cleaner to
accept a reference.
Matthew Fernandez [Sat, 12 Jun 2021 19:21:25 +0000 (12:21 -0700)]
manage node pointers within VPSC Event type as smart pointers
This removes the need to track these allocations and removes some raw delete.
Matthew Fernandez [Sat, 19 Jun 2021 19:22:14 +0000 (19:22 +0000)]
Merge branch 'smattr/
63e46ecc -f5d0-4201-8ce6-
300e51b9ff29 ' into 'main'
more clean up in lib/sparse
See merge request graphviz/graphviz!1995
Matthew Fernandez [Wed, 9 Jun 2021 02:47:39 +0000 (19:47 -0700)]
remove unused SparseMatrix_complement
Matthew Fernandez [Wed, 9 Jun 2021 02:47:01 +0000 (19:47 -0700)]
remove unused SparseMatrix_k_centers
Matthew Fernandez [Wed, 9 Jun 2021 02:45:50 +0000 (19:45 -0700)]
remove unused SparseMatrix_k_centers_user
Matthew Fernandez [Wed, 9 Jun 2021 02:44:03 +0000 (19:44 -0700)]
remove unused SparseMatrix_distance_matrix_k_centers
Matthew Fernandez [Wed, 9 Jun 2021 02:42:04 +0000 (19:42 -0700)]
remove duplicate SparseMatrix_distance_matrix_k_centers prototype
508f7e82873289b7d1614dfbdad521111f0809dc mistakenly added two duplicates of the
same prototype.
Matthew Fernandez [Wed, 9 Jun 2021 02:41:07 +0000 (19:41 -0700)]
remove prototype for non-existent SparseMatrix_kcoreness
This function was removed in
30905ab26d62c4b126df261ad235a0fa28af5e8a but its
prototype was mistakenly left behind.
Matthew Fernandez [Wed, 9 Jun 2021 02:40:20 +0000 (19:40 -0700)]
remove prototype for non-existent SparseMatrix_kcore_decomposition
This function was removed in
30905ab26d62c4b126df261ad235a0fa28af5e8a but its
prototype was mistakenly left behind.
Matthew Fernandez [Wed, 9 Jun 2021 02:39:28 +0000 (19:39 -0700)]
remove prototype for non-existent SparseMatrix_khairness
This function was removed in
30905ab26d62c4b126df261ad235a0fa28af5e8a but its
prototype was mistakenly left behind.
Matthew Fernandez [Wed, 9 Jun 2021 02:38:33 +0000 (19:38 -0700)]
remove prototype for non-existent SparseMatrix_khair_decomposition
This function was removed in
30905ab26d62c4b126df261ad235a0fa28af5e8a but its
prototype was mistakenly left behind.
Matthew Fernandez [Wed, 9 Jun 2021 02:36:52 +0000 (19:36 -0700)]
remove unused SparseMatrix_page_rank
Matthew Fernandez [Sat, 19 Jun 2021 18:03:13 +0000 (18:03 +0000)]
Merge branch 'smattr/
a1218a82 -9220-4f73-bcd4-
04ddaab2e226 ' into 'main'
more clean up in cmd/gvmap
See merge request graphviz/graphviz!1996
Matthew Fernandez [Sat, 12 Jun 2021 04:40:34 +0000 (21:40 -0700)]
inline matvec_sparse
Following the previous commits, this function was adding nothing except a cast
which, in itself, was unnecessary.
Matthew Fernandez [Sat, 12 Jun 2021 04:36:03 +0000 (21:36 -0700)]
remove useless 'flag' parameter passed around in power.c
Matthew Fernandez [Sat, 12 Jun 2021 04:28:20 +0000 (21:28 -0700)]
make matvec_sparse static
This function is now no longer used outside of power.c.
Matthew Fernandez [Sat, 12 Jun 2021 04:24:23 +0000 (21:24 -0700)]
remove function pointer argument to power_method
This function is only ever called with matvec_sparse, so we can simplify it by
just calling this function directly. This is also a minor optimization.
Matthew Fernandez [Sat, 12 Jun 2021 04:19:22 +0000 (21:19 -0700)]
remove unused 'n' parameter to matvec_sparse
Matthew Fernandez [Sat, 12 Jun 2021 04:15:39 +0000 (21:15 -0700)]
remove unused 'm' parameter from matvec_sparse
Matthew Fernandez [Sat, 12 Jun 2021 04:05:41 +0000 (21:05 -0700)]
remove commented out code in power.c
Matthew Fernandez [Sat, 12 Jun 2021 04:05:29 +0000 (21:05 -0700)]
remove a useless return statement
Matthew Fernandez [Sat, 12 Jun 2021 04:01:58 +0000 (21:01 -0700)]
remove unused mat_print_dense
Matthew Fernandez [Sat, 12 Jun 2021 04:01:18 +0000 (21:01 -0700)]
remove unused matvec_dense
Matthew Fernandez [Sat, 19 Jun 2021 17:00:57 +0000 (17:00 +0000)]
Merge branch 'smattr/
D1F3CA0D -DD6D-4BF9-A1BD-
E66C7465104D ' into 'main'
remove inline no-op on C++ methods
See merge request graphviz/graphviz!1997
Matthew Fernandez [Sat, 12 Jun 2021 17:01:56 +0000 (10:01 -0700)]
remove inline no-op on C++ methods
Methods defined within a class definition are implied inline. Adding the inline
keyword does nothing.
Matthew Fernandez [Sat, 19 Jun 2021 16:12:49 +0000 (16:12 +0000)]
Merge branch 'smattr/
BFD57F7A -9859-46BF-BD5F-
B23085DE8BC6 ' into 'main'
Move back to 2.47 development series
See merge request graphviz/graphviz!2003
Matthew Fernandez [Sat, 19 Jun 2021 15:22:16 +0000 (08:22 -0700)]
Move back to 2.47 development series
Matthew Fernandez [Sat, 19 Jun 2021 15:20:05 +0000 (15:20 +0000)]
Merge branch 'smattr/
F549024C -A6AE-47C1-9904-
5537F0045FB7 ' into 'main'
Stable Release 2.47.3
See merge request graphviz/graphviz!1999
Matthew Fernandez [Tue, 15 Jun 2021 01:39:18 +0000 (18:39 -0700)]
Stable Release 2.47.3
Matthew Fernandez [Tue, 15 Jun 2021 01:33:47 +0000 (18:33 -0700)]
Merge branch 'smattr/
BBA63EF1 -DE69-4C8D-8A81-
4043808B41FE ' into smattr/
854F458D -3FCD-4F3E-802C-
1CE96AFFF00A
Matthew Fernandez [Tue, 15 Jun 2021 00:14:41 +0000 (17:14 -0700)]
add a changelog note about the prior Makefile update
Matthew Fernandez [Tue, 15 Jun 2021 00:13:08 +0000 (17:13 -0700)]
add an explanation of the semi-colon on Makefile rule
Jaroslav Škarvada [Tue, 8 Jun 2021 20:43:53 +0000 (22:43 +0200)]
gv: fixed possible races during docs build
In tclpkg/gv, the gv_doc_writer.tcl is run multiple times during
the build. It is ineffective, but it shouldn't cause any troubles
with the serial build. Unfortunately, this is not the case with
the parallel builds where multiple parallel runs of the
gv_doc_writer.tcl can cause races leading to empty corresponding
ps and pdf files.
The correct solution would be to use the Rules with Grouped Targets [1],
unfortunately this GNU make feature has been introduced quite
recently which would break backward compatibility.
The proposed hack should cause the gv_doc_writer.tcl to be run
only once during the build process and it should work also with
the older 'make'. It is inspired by [2].
[1] https://www.gnu.org/software/make/manual/html_node/Multiple-Targets.html#Multiple-Targets
[2] https://stackoverflow.com/questions/
2973445 /gnu-makefile-rule-generating-a-few-targets-from-a-single-source-file
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
Matthew Fernandez [Mon, 14 Jun 2021 15:43:56 +0000 (15:43 +0000)]
Merge branch 'smattr/
BDC885F3 -67C3-44D9-B4FD-
1ECA13DF98B9 ' into 'main'
remove Python 2 support from shapes regression test
See merge request graphviz/graphviz!1993
Matthew Fernandez [Tue, 8 Jun 2021 15:04:54 +0000 (08:04 -0700)]
remove Python 2 support from shapes regression test
Python 2 was EOLed in 2020. This change removes the ability to use Python 2 when
running the shapes test.
This is somewhat moot as the Makefile.am targets for this are not really usable
right now (see the commits merged in
7d0bd41a7ccac1d0d992e8c19ce08f62b85b16ad
that improved the situation but still did not make `make check-recursive`
runnable). Nevertheless this at least removes one legacy code path that does not
need to be worked on in future.
Related to #1992.
Matthew Fernandez [Sat, 12 Jun 2021 20:07:42 +0000 (20:07 +0000)]
Merge branch 'smattr/
DEC89243 -695D-40DE-8C4D-
4E6E0B86F3BB ' into 'main'
add an out-of-source build to CI
Closes #2073
See merge request graphviz/graphviz!1992
Matthew Fernandez [Sun, 6 Jun 2021 18:18:56 +0000 (11:18 -0700)]
add an out-of-source build to CI
The existing CI tasks run an uncommon work flow: building distributable packages
on each operating system. A more common work flow end users will be following
with the portable source tarball is simply building and installing it. This
change adds a job that does this, to provide a safeguard against breaking this
work flow in future.
The added job runs on Ubuntu 21.04. The intent is to bump this job to the latest
each time there is a new Ubuntu release. There is no companion test job for the
build job because we assume the existing test jobs are providing sufficient
coverage.
Closes #2073.
Matthew Fernandez [Wed, 9 Jun 2021 16:11:22 +0000 (16:11 +0000)]
Merge branch 'smattr/
10F9E4B2 -C90F-40AB-882E-
D6539E12425A ' into 'main'
remove some legacy Python 2 pieces
See merge request graphviz/graphviz!1985
Matthew Fernandez [Thu, 3 Jun 2021 03:18:31 +0000 (20:18 -0700)]
remove useless --disable-python2* options in Debian rules
These options were removed in
3caeb0ae2a38fdefb9f302f41407f5038e374010 but were
not removed from this file. Related to #1992.
Matthew Fernandez [Thu, 3 Jun 2021 03:15:36 +0000 (20:15 -0700)]
remove some commented out Python 2 related lines
Related to #1992.
Matthew Fernandez [Thu, 3 Jun 2021 00:14:32 +0000 (17:14 -0700)]
remove clean up steps of legacy Python bindings
The rules that generated these bindings were all removed in
3caeb0ae2a38fdefb9f302f41407f5038e374010 but the clean up steps were incorrectly
not removed at the same time. Related to #1992.
Matthew Fernandez [Wed, 9 Jun 2021 15:23:32 +0000 (15:23 +0000)]
Merge branch 'smattr/
BFC39166 -455E-4565-A0D3-
7C3204CB7227 ' into 'main'
clean up of casts surrounding allocation functions
See merge request graphviz/graphviz!1986
Matthew Fernandez [Fri, 4 Jun 2021 00:26:07 +0000 (17:26 -0700)]
remove an unnecessary NULL guard on a call to free
Calling free on NULL is a well-defined no-op.
Matthew Fernandez [Fri, 4 Jun 2021 00:25:37 +0000 (17:25 -0700)]
remove char* casts of results of the agstrdup functions
These functions already return a char*.
Matthew Fernandez [Fri, 4 Jun 2021 00:24:33 +0000 (17:24 -0700)]
remove unnecessary allocation function result casts in scan.l
This input is only used to create a lexer in C. In C, void pointers (as is the
result of realloc) implicitly coerce to all other pointer types.
Matthew Fernandez [Fri, 4 Jun 2021 00:23:30 +0000 (17:23 -0700)]
remove unnecessary casts of allocation function results in grammar.y
This input is only used to generate a parser in C. In C, void pointers (as are
the results of all the allocation functions) implicitly coerce to all other
pointer types.
Matthew Fernandez [Fri, 4 Jun 2021 00:23:12 +0000 (17:23 -0700)]
rephrase an open coded NULL in pathpath
Matthew Fernandez [Fri, 4 Jun 2021 00:22:20 +0000 (17:22 -0700)]
remove unnecessary casts of allocation results in mklang.y
This input is only used to generate a C file. In C, void pointers (as are the
results of all the allocation functions) implicitly coerce to all other pointer
types.
Matthew Fernandez [Fri, 4 Jun 2021 00:21:07 +0000 (17:21 -0700)]
remove unnecessary realloc result cast in gmlscan.l
This input is only used to generate a lexer in C. In C, void pointers (as is the
result of realloc) implicitly coerce to all other pointer types.
Matthew Fernandez [Fri, 4 Jun 2021 00:19:55 +0000 (17:19 -0700)]
remove unnecessary casts of allocation results in gmlparse.y
These functions all return void pointers and this input is only used for
generating a parser in C. In C, void pointers implicitly coerce to all other
pointers.
Matthew Fernandez [Fri, 4 Jun 2021 00:19:13 +0000 (17:19 -0700)]
remove unnecessary strdup casts in Lefty’s yylex
strdup already returns a char*.
Matthew Fernandez [Wed, 9 Jun 2021 04:51:20 +0000 (04:51 +0000)]
Merge branch 'smattr/
8b1de17e -74b1-4c8e-bbe9-
3129d1be5c05 ' into 'main'
more clean up in lib/common
See merge request graphviz/graphviz!1989
Matthew Fernandez [Sat, 5 Jun 2021 02:29:04 +0000 (19:29 -0700)]
remove unused boxf_intersect
Matthew Fernandez [Sat, 5 Jun 2021 02:28:46 +0000 (19:28 -0700)]
remove unused box_intersect
Matthew Fernandez [Sat, 5 Jun 2021 02:28:04 +0000 (19:28 -0700)]
remove unused boxf_bb
Matthew Fernandez [Sat, 5 Jun 2021 02:27:41 +0000 (19:27 -0700)]
remove unused box_bb
Matthew Fernandez [Sat, 5 Jun 2021 02:26:55 +0000 (19:26 -0700)]
remove unused mid_point
Matthew Fernandez [Sat, 5 Jun 2021 02:25:39 +0000 (19:25 -0700)]
remove unused pointof
Matthew Fernandez [Sat, 5 Jun 2021 02:21:37 +0000 (19:21 -0700)]
remove unused mkboxf
Matthew Fernandez [Sat, 5 Jun 2021 02:21:13 +0000 (19:21 -0700)]
remove unused mkbox
Matthew Fernandez [Sat, 5 Jun 2021 02:18:59 +0000 (19:18 -0700)]
remove commented out code in utils.c
Matthew Fernandez [Sat, 5 Jun 2021 02:15:30 +0000 (19:15 -0700)]
remove unused ninf
Matthew Fernandez [Sat, 5 Jun 2021 02:14:56 +0000 (19:14 -0700)]
remove unused ginf
Matthew Fernandez [Sat, 5 Jun 2021 02:14:24 +0000 (19:14 -0700)]
remove unused einf
Matthew Fernandez [Wed, 9 Jun 2021 03:59:00 +0000 (03:59 +0000)]
Merge branch 'smattr/
620cd9c7 -3460-4a55-9a95-
9d5459bef712 ' into 'main'
more clean up in lib/glcomp
See merge request graphviz/graphviz!1990
Matthew Fernandez [Sun, 6 Jun 2021 00:01:38 +0000 (17:01 -0700)]
remove unused glCompImageMouseUp
Matthew Fernandez [Sun, 6 Jun 2021 00:01:13 +0000 (17:01 -0700)]
remove unused glCompImageMouseOver