William Denton writes: > Up until recently, width cookies were ignored when reading a table into an R code block as data. For example, take this test table: > > #+name: test_table > | Date | Weather | > | <10> | <50> | > |------------+----------------------| > | 2024-11-01 | Warm | > | 2024-11-02 | Warm | > | 2024-11-03 | Still strangely warm | > > This code block turns it into a basic data table: > > #+begin_src R :var t=test_table :colnames yes > t > #+end_src > > #+RESULTS: > | Date | Weather | > |------------+----------------------| > | <10> | <50> | > | 2024-11-01 | Warm | > | 2024-11-02 | Warm | > | 2024-11-03 | Still strangely warm | > > That first row, with "<10>", shouldn't be there. It wasn't until > recently, but I can't see anything in ORG-NEWS or git commits about > why it might have started. (I'm running from the development tree, > updated just now.) > > Is this a bug or am I missing something? It is indeed a breaking change. Among various ob-* backends, we do not have consistency in handling table width specifiers and other metadata. For example, ob-python takes the table literally when assigning variables. ob-R, in the past, removed the width specifications. Not anymore. I believe that the end result is more consistency, but, clearly, we got a regression. Not just in ob-R, but in a number of other babel backends. I can force the previous behavior in ob-R and similar backends, but I am not sure if it is the right thing to do. Pros: - We will retain historic behavior Cons: - We will retain historic behavior with different backends behaving differently Here is a list of backends that filtered out special rows from tables in variable assignments: ob-julia, ob-R, ob-sql, ob-shell, ob-awk, ob-gnuplot&org-plot 6 in total. Here is a list of backends that did not filter out special rows from tables: ob-ruby, ob-python, ob-processing, ob-perl, ob-octave, ob-ocaml, ob-lua, ob-js, ob-java, ob-haskell, ob-eshell 11 in total. I am not really sure about the best approach here. Tentatively, I am leaning towards restoring the old behavior for the time being, until we can come up with something better. Patch attached. -- Ihor Radchenko // yantar92, Org mode maintainer, Learn more about Org mode at . Support Org development at , or support my work at