Jarmo Hurri <jarmo.hu...@iki.fi> writes: >> We generally do not rename variables irreversibly. Please leave an >> obsolete alias for `org-babel-ditaa-java-cmd' pointing to the new >> variable name. Otherwise, the existing configs that were using the old >> variable name will be broken. > > Done. The variable is now set to become obsolete, tentatively in 9.7.34.
Should be 9.8. We do not make breaking changes in bugfix releases. See https://orgmode.org/worg/org-maintenance.html#branches >> So, I view these :ext options that are still used by several babel >> backends as candidates for deprecation. Certainly, I do not want to make >> them proliferate in the new features. > > Ok. > > I changed the patch so that it should now conform to the manual: > 1. :file is the primary determinant of output file > 2. `org-babel-graphical-output-file' is used secondarily; note that > :file-ext is ignored quietly if :file is set Nope. `org-babel-graphical-output-file' relies on the fact that ob-core pre-process :file argument in `org-babel-generate-file-param'. So, you should simply call `org-babel-graphical-output-file' without checking :file. Maybe it is also a good idea to add :results graphics to the default header arguments. > 3. output file type is determined solely from file extension. > > This is a breaking change, since :png etc. parameters are now > deprecated. Only :eps parameter is present in the current version of ob-ditaa. We _should not_ remove it from the code to preserve backwards-compatibility. Just remove it from the documentation and mark as backwards-compatibility in code comments. What I mean in my earlier comment is that we should not add new arguments like :png and similar. > There is no default output file type anymore (used to be png). Why not? You can simply modify `org-babel-default-header-args:ditaa' to have :file-ext "png" by default. >>> And, finally, should I add myself as the maintainer? >> >> That would be great. Thanks! > > Done. Please do it in a separate commit, so that different changes are not intermixed. >> I assume that you already have access to savannah as you are listed as >> the maintainer of ob-processing. > > Well, I do have - in my records - a username and a password, but those > no longer work, and password recovery does not work either. I can > reapply, or just send patches here, either one is fine by me. I just checked FSF records, and it does not look like you have an active copyright assignment. Could you please check? > From 690c4370c63d375fb4dbeb67063611b222fda39b Mon Sep 17 00:00:00 2001 > From: Jarmo Hurri <jarmo.hu...@iki.fi> > Date: Fri, 1 Aug 2025 14:21:03 +0300 > Subject: [PATCH] * lisp/ob-ditaa.el (org-babel-default-header-args:ditaa) > Include new header arg `:encoding`. (org-ditaa-default-exec-mode): Define new > customizable variable for controlling ditaa execution via jar or executable. > (org-ditaa-exec): Define new customizable variable for controlling path to > ditaa executable. (org-ditaa-java-exec): Rename old customizable variable to > conform to ditaa variable naming (not containing word `babel`). Provide old > variable as an obsolete alias. (org-ditaa-ensure-jar-file): Write a small > helper function checking existence of jar file. (org-babel-execute:ditaa): > Determine output file type correctly from header arguments. Add support for > ditaa executable. Add support for SVG output. * doc/org-manual.org (List of > contributors): Remove reference to non-existing location of ditaa.jar in org > contrib, refer to ditaa github page instead. * etc/ORG-NEWS (=ob-ditaa=: > output type control, ditaa executable, SVG output, and chararacter encoding): > Document breaking change and new features. The newlines are completely off in the commit message. Also, the commit mesage does not have a short patch description on the first line and does not conform to https://orgmode.org/worg/org-contribute.html#commit-messages > -;; 2) we are generally only going to return results of type "file" > +;; - there is no "output", so source code blocks always export "results" This is not true. If the user tries to set :exports output explicitly, nothing will be exported. Just say that :exports results is the default. > +;; - the following header arguments are added: > +;; "cmdline" : command line parameters passed to ditaa You do not need to document standard header arguments in the babel library headers. Just say that :cmdline is supported. > +;; "encoding" : character encoding (default UTF-8) > +;; "java" : additional parameters passed to java if ditaa run via a jar There two are really unique to ob-ditaa. > +(defun ob-ditaa--ensure-jar-file (file) > + "Small internal helper function returning file if it exists and signalling > error otherwise." Please shorten the first line of the docstring below 60 characters. See D.6 Tips for Documentation Strings section of Eliso manual. -- Ihor Radchenko // yantar92, Org mode maintainer, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>