-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
graphviz: Update to 14.0.4 #29964
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
graphviz: Update to 14.0.4 #29964
Conversation
|
Notifying maintainers: |
|
Upstream discussion of the |
|
Thanks for pushing this through! I use Graphviz directly, for mathematics work, not merely as a dependency of some documentation build pipeline or similar. I appreciate having up-to-date versions. |
|
@ryandesign @mascguy any comments on this PR? It seems that the concern regarding building on 10.5 has been resolved upstream and thus that shouldn't prohibit updating the |
|
Graphviz is what I call a "foundational" port, with about 200 dependent ports. Also, the upstream change log shows many breaking changes after the current MacPorts version, graphviz 12.2.1. Therefore I think we need a migration strategy before merging this update. I can think of several strategies, all problematical. I am willing to work on this if someone can suggest an optimal strategy. Any advice, please? I will switch to draft until we have something worked out. |
|
@Dave-Allured in the future please work something out first before submitting a PR. The queue is supposed to be stuff that is ready-to-go... |
|
@reneeotten Will do. This time I did not notice the dependencies problem until after I filed the PR. |
Aren't most of these using Graphviz in a trivial way, simply calling the executable (and not linking to the library)? If so, these breaking changes are not relevant for most dependencies. This is a classic conflict between end-user use (direct use of Graphviz, usually scientific) and developer use (dependencies, but typically trivial uses for things such as diagrams included in auto-generated documentation). I'd hope to see better support for end-user usage, which is often ignored in the context of package managers like MacPorts. Unlike dependencies, end-users are unfortunately invisible, so are often ignored. |
@szhorvat Good question! According to the ports website, there are only 45 library dependents. The other 140 are build or run dependents. Assume all of the latter are simply calling the command line. 27 of these 45 library dependents are subports or other weird cases that should be ignored. This leaves 18 unique ports at risk for build breakage. This is a more manageable number than my 200 initial guess. So should we update now, and fix possible breakage later? Related, I intend to rev bump the library dependencies after merging this update. That will find build breakage. Also, were there any relevant command line changes in Graphviz 13 or 14? How do we assess whether some of those 140 build or run dependents are also at risk for runtime breakage due to command line changes? |
I can help test these if you can post a list of these 18.
Based on the changelog and fairly limited graphviz experience (I don't fiddle much with command line parameters) I'd say the risk of issues is low.
How about testing those 18, and if all is fine update and deal with further issues later? |
Thank you for the help and discussion. Lame of me to not test myself. But my real job is getting in the way this week. Here are the 18 unique dependents.
Seems like a good plan. Go for it. Thanks again. |
Description
Type(s)
Tested on
Mac OS 15.5
Xcode 16.2
Command Line Tools 16.2.0
Tested "install graphviz" and "install gvedit".
Also tested on CI; OS 14, 15, 26.
Verification
Have you
port lint?sudo port test?sudo port -vst installport -s install?