GNU bug report logs - #13355
Deprecating and removing the 'mkinstalldir' script

Previous Next

Package: automake;

Reported by: Stefano Lattarini <stefano.lattarini <at> gmail.com>

Date: Fri, 4 Jan 2013 10:16:01 UTC

Severity: wishlist

To reply to this bug, email your comments to 13355 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-automake <at> gnu.org:
bug#13355; Package automake. (Fri, 04 Jan 2013 10:16:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Stefano Lattarini <stefano.lattarini <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-automake <at> gnu.org. (Fri, 04 Jan 2013 10:16:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Stefano Lattarini <stefano.lattarini <at> gmail.com>
To: bug-automake <at> gnu.org
Subject: Deprecating and removing the 'mkinstalldir' script
Date: Fri, 04 Jan 2013 11:15:29 +0100
Severity: wishlist

The 'mksintalldirs' script has been by long superseded by "install-sh -d",
has  already deprecated in the documentation, and already removed in
AUtomake-NG.  I'd like to remove it in future Automake versions.

However, we must first find a viable way to non-fatally deprecate it
with some form of runtime warning.  I haven't yet thought in any detail
about how that; I'm just opening this report to ensure the question
won't slip through the cracks.

Regards,
  Stefano




Information forwarded to bug-automake <at> gnu.org:
bug#13355; Package automake. (Sat, 12 Jan 2013 20:37:02 GMT) Full text and rfc822 format available.

Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Stefano Lattarini <stefano.lattarini <at> gmail.com>
To: bug-automake <at> gnu.org
Subject: Re: Deprecating and removing the 'mkinstalldir' script
Date: Sat, 12 Jan 2013 21:35:30 +0100
On 01/04/2013 11:15 AM, Stefano Lattarini wrote:
> Severity: wishlist
> 
> The 'mksintalldirs' script has been by long superseded by "install-sh -d",
> has  already deprecated in the documentation, and already removed in
> Automake-NG.  I'd like to remove it in future Automake versions.
> 
> However, we must first find a viable way to non-fatally deprecate it
> with some form of runtime warning.
>
Here is a tentative roadmap:

For Automake 1.13.x:

  - edit 'mkinstalldirs' print a non-fatal warning when invoked (keeping
    its behaviour unchanged in every other aspect); this warning should
    reference the use of "install-sh -d".

  - have automake print a warning in the 'obsolete' category when it
    decides to distribute the 'mkinstalldirs' script only because it
    is found in the AC_CONFIG_AUX_DIR directory (but *not* if the user
    distributes it explicitly, by listing it in EXTRA_DIST).

For Automake 1.14, or even 1.15:

  - turn both the warnings above into fatal errors.

For the next major version after that:

  - remove the mkinstalldir script from our Git repository altogether,
    and drop any special handling of it from the automake script.

This will allow anyone using older Automake versions to still be compatible
with 1.13.2, 1.14 and 1.15 by simply:

  - committing a copy of 'mkinstalldirs' in his repository;
  - explicitly distributing it by having it listed in EXTRA_DIST.

This is quite low priority, so it might be some time before any actual
patches materializes.

Regards,
  Stefano




Information forwarded to bug-automake <at> gnu.org:
bug#13355; Package automake. (Sun, 13 Jan 2013 20:53:02 GMT) Full text and rfc822 format available.

Message #11 received at 13355 <at> debbugs.gnu.org (full text, mbox):

From: Stefano Lattarini <stefano.lattarini <at> gmail.com>
To: 13355 <at> debbugs.gnu.org
Subject: Re: bug#13355: Deprecating and removing the 'mkinstalldir' script
Date: Sun, 13 Jan 2013 21:51:39 +0100
On 01/12/2013 09:35 PM, Stefano Lattarini wrote:
> On 01/04/2013 11:15 AM, Stefano Lattarini wrote:
>> Severity: wishlist
>>
>> The 'mksintalldirs' script has been by long superseded by "install-sh -d",
>> has  already deprecated in the documentation, and already removed in
>> Automake-NG.  I'd like to remove it in future Automake versions.
>>
>> However, we must first find a viable way to non-fatally deprecate it
>> with some form of runtime warning.
>>
> Here is a tentative roadmap:
> 
> For Automake 1.13.x:
> 
>   - edit 'mkinstalldirs' print a non-fatal warning when invoked (keeping
>     its behaviour unchanged in every other aspect); this warning should
>     reference the use of "install-sh -d".
>
Actually, I'm no longer sure there is a point in mangling a working script
with warnings of dubious usefulness.  A warning at Automake runtime should
be good enough.  Speaking of which ...

>   - have automake print a warning in the 'obsolete' category when it
>     decides to distribute the 'mkinstalldirs' script only because it
>     is found in the AC_CONFIG_AUX_DIR directory (but *not* if the user
>     distributes it explicitly, by listing it in EXTRA_DIST).
>
... this is isn't the truly correct path to deprecation.  A better and
simpler one would be to warn only if 'mkinstalldirs' is *not* listen in
an explicit AC_REQUIRE_AUX_FILE call (which is *the* correct and documented
interface to require auxiliary scripts in Autotools-based projects).

I'll try to cook up a patch along that line (it should be really easy and
minimal at this point).

> For Automake 1.14, or even 1.15:
> 
>   - turn both the warnings above into fatal errors.
>
Now, s/both the warnings/the warning/ of course.

> For the next major version after that:
> 
>   - remove the mkinstalldir script from our Git repository altogether,
>     and drop any special handling of it from the automake script.
>
This stands.

> This will allow anyone using older Automake versions to still be compatible
> with 1.13.2, 1.14 and 1.15 by simply:
> 
>   - committing a copy of 'mkinstalldirs' in his repository;
>
This stands too.

>   - explicitly distributing it by having it listed in EXTRA_DIST.
>
Rather, 'mkinstalldirs' should just be given in a AC_REQUIRE_AUX_FILE
invocation.  This sounds more natural, and is the correct use of APIs.

Regards,
  Stefano




This bug report was last modified 12 years and 201 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.