automake-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.13.2-139


From: Stefano Lattarini
Subject: [Automake-commit] [SCM] GNU Automake branch, maint, updated. v1.13.2-139-g52a7601
Date: Wed, 15 May 2013 21:43:49 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".

http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=52a760136d216ab867f02fd295d0b3d77d1ad438

The branch, maint has been updated
       via  52a760136d216ab867f02fd295d0b3d77d1ad438 (commit)
       via  e89b9083e11432affd2307a5d51b99bceedebf85 (commit)
       via  21824fbc407f12131727b259b7e07a575d27716e (commit)
       via  4348577bc8beda1443f137e82ce088c300404916 (commit)
       via  3a4c7cf9abecea754012c3ad7e13b2b01fd3ef16 (commit)
       via  1a05e9259f6bde1bf1200f82cc9c3bb84bc7a0d3 (commit)
      from  563ecade28bb4ec0f285019959267015af5725b3 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
-----------------------------------------------------------------------

Summary of changes:
 HACKING             |  103 ++++++++++++++++++++++++++-------------------------
 NEWS                |    8 ++--
 t/ax/am-test-lib.sh |   13 ++++++
 3 files changed, 69 insertions(+), 55 deletions(-)

diff --git a/HACKING b/HACKING
index b526600..435eb77 100644
--- a/HACKING
+++ b/HACKING
@@ -12,16 +12,16 @@
   and check everything in.
 
 * If you incorporate a change from somebody on the net:
-  First, if it is a large change, you must make sure they have signed the
-  appropriate paperwork.
-  Second, be sure to add their name and email address to THANKS.
+  - First, if it is a large change, you must make sure they have
+    signed the appropriate paperwork.
+  - Second, be sure to add their name and email address to THANKS.
 
 * If a change fixes a test, mention the test in the commit message.
   If a change fixes a bug registered in the Automake debbugs tracker,
   mention the bug number in the commit message.
 
 * If somebody reports a new bug, mention his name in the commit message
-  and in the test case you write.  Put him into THANKS.
+  that fixes or exposes the bug, and put him into THANKS.
 
 * When documenting a non-trivial idiom or example in the manual, be
   sure to add a test case for it, and to reference such test case from
@@ -35,8 +35,7 @@
   which should be updated by hand whenever the GPL gets updated (which
   shouldn't happen that often anyway :-)
 
-* Changes other than bug fixes must be mentioned in NEWS.  Important
-  bug fixes should be mentioned in NEWS, too.
+* Changes other than *trivial* bug fixes must be mentioned in NEWS.
 
 * Changes which are potentially controversial, require a non-trivial
   plan, or must be implemented gradually with a roadmap spanning several
@@ -51,13 +50,13 @@
 ============================================================================
 = Naming
 
-* We've adopted the convention that internal AC_SUBSTs should be
-  named with a leading 'am__', and internally generated targets
-  should be named with a leading 'am--'.  This convention, although
-  in place from at least February 2001, isn't yet universally used.
+* We've adopted the convention that internal AC_SUBSTs and make variables
+  should be named with a leading 'am__', and internally generated targets
+  should be named with a leading 'am--'.  This convention, although in
+  place from at least February 2001, isn't yet universally used.
   But all new code should use it.
 
-  We used to use '_am_' as the prefix for an internal AC_SUBST.
+  We used to use '_am_' as the prefix for an internal AC_SUBSTs.
   However, it turns out that NEWS-OS 4.2R complains if a Makefile
   variable begins with the underscore character.  Yay for them.
   I changed the target naming convention just to be safe.
@@ -67,12 +66,11 @@
 
 * Always use $(...) and not ${...}
 
-* Use ':', not 'true'.  Use 'exit 1', not 'false'.
+* Prefer ':' over 'true', mostly for consistency with existing code.
 
-* Use '##' comments liberally.  Comment anything even remotely
-  unusual.
+* Use '##' comments liberally.  Comment anything even remotely unusual.
 
-* Never use basename or dirname.  Instead use sed.
+* Never use basename or dirname.  Instead, use sed.
 
 * Do not use 'cd' within back-quotes, use '$(am__cd)' instead.
   Otherwise the directory name may be printed, depending on CDPATH.
@@ -81,9 +79,9 @@
   computed with CDPATH.
 
 * For install and uninstall rules, if a loop is required, it should be
-  silent.  Then the body of the loop itself should print each
-  "important" command it runs.  The printed commands should be preceded
-  by a single space.
+  silent.  Then the body of the loop itself should print each "important"
+  command it runs.  The printed commands should be preceded by a single
+  space.
 
 * Ensure install rules do not create any installation directory where
   nothing is to be actually installed.  See automake bug#11030.
@@ -125,18 +123,21 @@
   should be added, and ideally, only trivial bugs, recent regressions,
   or documentation issues should be addressed by them.
 
-* Minor releases can introduce new "safe" features, do non-trivial
-  but mostly safe code clean-ups, and even add new runtime warnings
-  (rigorously non-fatal); but they shouldn't include any backward
-  incompatible change, nor contain any potentially destabilizing
-  refactoring or sweeping change, nor introduce new features whose
-  implementation might be liable to cause bugs or regressions in
-  existing code.
-
-* Major releases can introduce backward-incompatibilities (albeit
-  such incompatibilities should be announced well in advance, and
-  a smooth transition plan prepared for them), and try more risking
-  and daring refactorings and code cleanups.
+* Minor releases can introduce new "safe" features, do non-trivial but
+  mostly safe code clean-ups, and even add new runtime warnings (rigorously
+  non-fatal).  But they shouldn't include any backward incompatible change,
+  nor contain any potentially destabilizing refactoring or sweeping change,
+  nor introduce new features whose implementation might be liable to cause
+  bugs or regressions in existing code.  However, it might be acceptable to
+  introduce very limited and localized backward-incompatibilities, *only*
+  if that is necessary to fix non-trivial bugs, address serious performance
+  issues, or greatly enhance usability.  But please, do this sparsely and
+  rarely!
+
+* Major releases can introduce backward-incompatibilities (albeit such
+  incompatibilities should be announced well in advance, and a smooth
+  transition plan prepared for them), and try more risking and daring
+  refactorings and code cleanups.
 
 * For more information, refer to the extensive discussion associated
   with automake bug#13578.
@@ -152,30 +153,30 @@
   latest stable version of Autoconf installed and available early
   in your PATH.
 
-* The Automake git tree currently carries three basic branches: 'maint',
-  'master' and 'next'.
+* The Automake git tree currently carries three basic branches: 'micro',
+  'maint' and 'master'.
 
-* The 'maint' branch, reserved to changes that should go into the next
+* The 'micro' branch, reserved to changes that should go into the next
   micro release; so it will just see fixes for regressions, trivial
   bugs, or documentation issues, and no "active" development whatsoever.
   Since emergency regression-fixing or security releases could be cut
   from this branch at any time, it should always be kept in a releasable
   state.
 
-* The 'master' branch is where the development of the next minor release
+* The 'maint' branch is where the development of the next minor release
   takes place.  It should be kept in a stable, almost-releasable state,
   to simplify testing and deploying of new minor version.  Note that
   this is not a hard rule, and such "stability" is not expected to be
-  absolute (emergency releases are cut from maint anyway).
+  absolute (emergency releases are cut from the 'micro' branch anyway).
 
-* The 'next' branch is reserved for the development of the next major
-  release.  Experimenting a little here is OK, but don't let the branch
-  grow too unstable; if you need to do exploratory programming
-  or over-arching change, you should use a dedicated topic branch, and
+* The 'master' branch is reserved for the development of the next major
+  release.  Experimenting a little is OK here, but don't let the branch
+  grow too unstable; if you need to do exploratory programming or
+  over-arching change, you should use a dedicated topic branch, and
   only merge that back once it is reasonably stable.
 
-* The 'maint' branch should be kept regularly merged into the 'master'
-  branch, and the 'master' branch into the 'next' branch.  It is advisable
+* The 'micro' branch should be kept regularly merged into the 'maint'
+  branch, and the 'maint' branch into the 'master' branch.  It is advisable
   to merge only after a set of related commits have been applied, to avoid
   introducing too much noise in the history.
 
@@ -183,12 +184,12 @@
   developments.  They should be based off of a common ancestor of all
   active branches to which the feature should or might be merged later.
 
-* After a new minor release is done, the 'master' branch is to be merged
-  into the 'maint' branch, and then a "new" 'master' branch created
+* After a new minor release is done, the 'maint' branch is to be merged
+  into the 'micro' branch, and then a "new" 'maint' branch created
   stemming from the resulting commit.
-  Similarly, after a new major release is done, the 'next' branch is to
-  be merged into both the 'master' and 'maint' branch, and then "new"
-  'master' and 'next' branches created stemming from the resulting commit.
+  Similarly, after a new major release is done, the 'master' branch is to
+  be merged into both the 'micro' and 'maint' branches, and then "new"
+  'master' branch created stemming from the resulting commit.
 
 * When fixing a bug (especially a long-standing one), it may be useful
   to commit the fix to a new temporary branch based off the commit that
@@ -200,11 +201,11 @@
   a later 'git log' gives an indication of which actual patches were
   merged even when they don't appear early in the list.
 
-* The 'master' and 'maint' branches should not be rewound, i.e., should
-  always fast-forward, except maybe for privacy issues.  For 'next'
-  (if that will ever be implemented), and for feature branches, the
-  announcement for the branch should document rewinding policy.  If a
-  topic branch is expected to be rewound, it is good practice to put
+* The 'master', 'maint' and 'micro' branches should not be rewound, i.e.,
+  should always fast-forward, except maybe for privacy issues.  For
+  feature branches, the announcement for the branch should document
+  the rewinding policy.
+  If a topic branch is expected to be rewound, it is good practice to put
   it in the 'experimental/*' namespace; for example, a rewindable branch
   dealing with Vala support could be named like "experimental/vala-work".
 
diff --git a/NEWS b/NEWS
index 7f9f6fc..e53c3f8 100644
--- a/NEWS
+++ b/NEWS
@@ -16,8 +16,8 @@
       in such a release are new *non-fatal* deprecations and warnings,
       and possibly fixes for old or non-trivial bugs (or even inefficient
       behaviours) that could unfortunately have been seen, and used, by
-      some developers as "corner case features".  This kind of fixes
-      should hopefully be quite rare.
+      some developers as "corner case features".  Possible disruptions
+      caused by this kind of fixes should hopefully be quite rare.
 
     + Major versions (now expected to be released every 18 or 24 months,
       and not more often) can introduce new big features (possibly with
@@ -31,8 +31,8 @@
   - According to this new scheme, the next major version of Automake
     (the one that has until now been labelled as '1.14') will actually
     become "Automake 2.0".  Automake 1.14 will be the next minor version,
-    which will introduce new features and deprecation, but no backward
-    incompatibility.
+    which will introduce new features, deprecations and bug fixes, but
+    no real backward incompatibility.
 
   - See discussion about automake bug#13578 for more details and
     background: <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13578>
diff --git a/t/ax/am-test-lib.sh b/t/ax/am-test-lib.sh
index 1662d38..91a18cc 100644
--- a/t/ax/am-test-lib.sh
+++ b/t/ax/am-test-lib.sh
@@ -765,6 +765,19 @@ require_tool ()
       echo "$me: running bison --version"
       bison --version || skip_all_ "required program 'bison' not available"
       ;;
+    valac)
+      echo "$me: running valac --version"
+      if ! valac --version; then
+        skip_all_ "required program 'valac' not available"
+      elif cross_compiling; then
+        skip_all_ "cross-compiling valac-generated C files is brittle"
+      fi
+      # TODO: We also know we need GNU make, the C compiler, and pkg-config
+      # here, but there is no easy way to express this with the current
+      # code organization.  We should improve the situation, sooner or
+      # later.  At which point the tests requiring 'valac' can drop the
+      # explicit requirements for those tools.
+      ;;
     *)
       # Generic case: the tool must support --version.
       echo "$me: running $1 --version"


hooks/post-receive
-- 
GNU Automake



reply via email to

[Prev in Thread] Current Thread [Next in Thread]