Message-ID: <3b9a41ac-144d-0b78-7bf2-d346334f88af@gmail.com>
Date: 2016-07-12T20:18:30Z
From: Duncan Murdoch
Subject: Is .packageName part of the official API?
In-Reply-To: <CAFDcVCQ+SopjJf7EfTvNyZTUtrteZ8J8BKdf9oDmBiBzb8y8ug@mail.gmail.com>
On 12/07/2016 2:55 PM, Henrik Bengtsson wrote:
> Hi, I've seen that some packages use .packageName internally to infer
> their own name. Is that officially supported? I could not find it
> documented anywhere.
>
> There's utils::packageName(), which internally looks for .packageName.
> However, if the latter is not found, it may return NULL whereas an
> error would be more appropriate if a package name is expected. Using
> .packageName would give an error if it does not exist. Also, which is
> minor, using packageName() would add explicit dependency on the utils
> package whereas .packageName doesn't.
>
> So, should I use .packageName or utils::packageName() for this?
You should use utils::packageName. It is documented; .packageName is not.
Duncan Murdoch