emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Rainer M Krug <Rainer@krugs.de>
To: Rainer M Krug <r.m.krug@gmail.com>
Cc: "emacs-orgmode@gnu.org" <emacs-orgmode@gnu.org>
Subject: Re: org version numbers in file - WAS: Tangling takes long - profiling and calling R
Date: Tue, 23 Jun 2015 11:04:11 +0200	[thread overview]
Message-ID: <m2ioaex0c4.fsf@krugs.de> (raw)
In-Reply-To: <877fr16s8k.fsf@selenimh.access.network> (Nicolas Goaziou's message of "Thu, 18 Jun 2015 15:50:03 +0200")

[-- Attachment #1: Type: text/plain, Size: 4899 bytes --]

Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:

> Rainer M Krug <Rainer@krugs.de> writes:
>
>> Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:
>>
>>> Rainer M Krug <Rainer@krugs.de> writes:
>>>
>>>> Yes - that's true. But who of the longer org users reads the manual of
>>>> features they use regularly?
>>>
>>> Ah well. I turned 3 `mapcar' calls into a single one. It should,
>>> hopefully improve speed in your case (could you confirm it).
>>
>> Hm - it takes actually longer (as far as I can see), but the mapcar
>> calls in the function now take 24% each (compared to 20 before).
>
> Considering the basic change I made, I fail to see how it could take
> longer. In the worst case, it should be equivalent.

I was surprised as well, but it could be other changes as well.

>
> Could you provide another report, with an uncompiled Org?

Thanks - I'll try to remember - for the moment I am quite busy but will come back
to your question.

>
>>> Also, I suggest to signal the deprecation in ORG-NEWS (old timers read
>>> it, right?) and remove this part of code during 8.4 development.
>>
>> I guess they might skim over it...
>
> Then, it's their responsibility.

The question is really if one can become more user friendly without to
much effort - that's why I suggested to put this check into
the linter and to run linter automatically if the file version is older
than the org version.

I can live with how it is at the moment.

>
>> What about putting a warning in the function in tangling (and other
>> places where this construct is evaluated) that this construct will not
>> be be allowed in the next major release?
>
> This is not the usual way to deprecate features. Breaking changes are
> written in ORG-NEWS, I don't see why this one would make an exception.

I know from R, that when a function is deprecated and about to be
removed from R, it will display a warning message whenever it is used.
This is quite user friendly and helps making the changes in the
code. This obviously does not work in org in the same way - which is why
I suggested to put into the tangling routine.

Would it be possible to display the changes / new features / breaking
change in a new version official release version upon starting this
version the first time, so that nobody can say "I did not read this"?

>
>> I know - unfortunately. But as far as I understand, it will be in the
>> next major release?
>
> Hopefully, yes.

Great.

>
>> True - but as far as deprecation of org constructs concerned, checks
>> could be explicitly put into the org-lint library - for some features
>> there are even conversion functions available - and linting could be
>> more robust in regards to deprecation checks?
>
> Not really.
>
> For example, even if we want to check for deprecated Babel header
> properties, there's no way to tell if ":cache: yes" is an obsolete way
> to use them or user's own properties.

OK - haven't considered the user defined properties.

>
>> In the spirit of reproducibility, I would at least suggest to introduce
>> a function which inserts an argument
>>
>> #+ORG_FILE_VERSION: TheActualOrgVersionProbablyWithGitHash
>>
>> if it does not exist, and if it exist, updates it to the actual
>> version?
>
> I see no objection to this. 
>
> We could extend `org-version' to do this, e.g., change its signature to
> (org-version &optional full medium) where MEDIUM can be `insert',
> `message' or `keyword'. In the latter case, it would create or update
> any such keyword in the current document.
>

I like this suggestion and that one possibly can specify the medium as a
prefix? That way, it would be possible to add it easily.

> Of course, we can provide a brand new function, instead.
>
> Do you want to provide a patch for that?

Sorry - I don't think that my elisp skills are sufficient for this.

>
>> This should be incorporated into the default header sets.
>
> What are the default header sets? You mean export template? I don't
> think this is needed as long as we don't use this keyword.

Yes - export templates.

I see it as an useful information to debug old non-working org files
manually - when you know the org version under which it *was* working,
you can look for significant changes since than and fix these.

In addition, if it is included, it will be easier to use it later
on.

Thanks,

Rainer

>
>
> Regards,

-- 
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)

Centre of Excellence for Invasion Biology
Stellenbosch University
South Africa

Tel :       +33 - (0)9 53 10 27 44
Cell:       +33 - (0)6 85 62 59 98
Fax :       +33 - (0)9 58 10 27 44

Fax (D):    +49 - (0)3 21 21 25 22 44

email:      Rainer@krugs.de

Skype:      RMkrug

PGP: 0x0F52F982

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 480 bytes --]

  reply	other threads:[~2015-06-23  9:04 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-15  8:39 Tangling takes long - profiling and calling R Rainer M Krug
2015-06-15  8:42 ` Rainer M Krug
2015-06-15 18:52 ` Charles C. Berry
2015-06-16 10:29   ` Rainer M Krug
2015-06-15 19:49 ` Nicolas Goaziou
2015-06-16 10:34   ` Rainer M Krug
2015-06-16 11:46     ` Nicolas Goaziou
2015-06-16 12:45       ` Sebastien Vauban
2015-06-16 13:04         ` Nicolas Goaziou
2015-06-16 14:47         ` Rainer M Krug
2015-07-01 14:03           ` Aaron Ecay
2015-07-02 11:51             ` Nicolas Goaziou
2015-07-02 12:52               ` Rainer M Krug
2015-07-02 16:35                 ` Aaron Ecay
2015-07-02 18:21                   ` Sebastien Vauban
2015-07-02 18:44                     ` Rainer M Krug
2015-07-02 18:43                   ` Rainer M Krug
2015-07-02 16:11               ` Aaron Ecay
2015-07-03 13:43                 ` Nicolas Goaziou
2015-07-02 18:51               ` Rainer M Krug
2015-06-16 14:42       ` Rainer M Krug
2015-06-16 21:45         ` Nicolas Goaziou
2015-06-17  7:16           ` org version numbers in file - WAS: " Rainer M Krug
2015-06-18  8:13             ` Nicolas Goaziou
2015-06-18 13:25               ` Rainer M Krug
2015-06-18 13:50                 ` Nicolas Goaziou
2015-06-23  9:04                   ` Rainer M Krug [this message]
2015-06-18 14:23                 ` Detlef Steuer
2015-06-23  8:45                   ` Rainer M Krug
2015-06-23  9:32                     ` Detlef Steuer
2015-06-23 10:57                       ` Rainer M Krug

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m2ioaex0c4.fsf@krugs.de \
    --to=rainer@krugs.de \
    --cc=emacs-orgmode@gnu.org \
    --cc=r.m.krug@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).