Difference between revisions of "EAPI 6"

From Funtoo
Jump to navigation Jump to search
Line 12: Line 12:
<tr><td>0,1,2,3,4,5</td><td>3.2</td></tr>
<tr><td>0,1,2,3,4,5</td><td>3.2</td></tr>
<tr><td>6</td><td>4.2</td></tr>
<tr><td>6</td><td>4.2</td></tr>
{{TableEnd}}
===Bash's failglob option===
The <code>failglob</code> option of Bash is set in global scope, so that unintentional pattern expansion will be caught as an error.
For EAPIs listed table the failglob option of bash is set in the global scope of ebuilds. FAILGLOB
If set, failed pattern matches during filename expansion result in an error when the ebuild is being
sourced
{{TableStart}}
<tr class="info"><th>EAPI</th><th> GNU find? </th><th>failglob in global scope?</th></tr>
<tr><td>0,1,2,3,4</td><td>Undefined</td><td>No</td></tr>
<tr><td>5</td><td>Yes</td><td>No</td></tr>
<tr><td>6</td><td>Yes</td><td>Yes</td></tr>
{{TableEnd}}
{{TableEnd}}

Revision as of 06:34, January 24, 2016

A new EAPI=6 has been released as of 2015-11-13. A noticeable changes and explanation of new features are given below.

bash version

Bash version Ebuilds can use features of Bash version 4.2 (was 3.2 before).

The ebuild file format is in its basic form a subset of the format of a bash script. The interpreter is BASH-VERSION assumed to be GNU bash, version as listed in table below, or any later version. If possible, the package manager should set the shell’s compatibility level to the exact version specified. It must ensure that any such compatibility settings (e.g. the BASH_COMPAT variable) are not exported to external programs.

EAPIBash version
0,1,2,3,4,53.2
64.2

Bash's failglob option

The failglob option of Bash is set in global scope, so that unintentional pattern expansion will be caught as an error. For EAPIs listed table the failglob option of bash is set in the global scope of ebuilds. FAILGLOB If set, failed pattern matches during filename expansion result in an error when the ebuild is being sourced

EAPI GNU find? failglob in global scope?
0,1,2,3,4UndefinedNo
5YesNo
6YesYes