mirror of
https://github.com/lcn2/calc.git
synced 2025-08-16 01:03:29 +03:00
Release v2.14.0.13
We apologize for the calc v2.14.0.12 source tarball that was missing critical files. While the executable was well tested, our release process was deficient. We are improved our release process and added tests during the release procedure to help verify that we are not regressing in to the "v2.14.0.12 source tarball" issue, among other things. Depending on how things do, you might is several releases come out over a short period of time. The core of calc isn't changing, so the calc executable will be the same as we focus on the Makefiles, our release procedure, and related documentation / help files. Removed constructed help file that incorrectly added as a src file. =-= The following are the changes in this release: Minor tweak to seed() builtin. Updated help/srand and help/srandom. Moved Makefile.ship into Makefile. Removed custom/Makefile.head and custom/Makefile.tail. The custom/Makefile is now part of source and includes Makefile. In particular, custom/Makefile makes use of the 'middle' of the new top level Makefile where calc's top level Makefile variables are defined. Makefile.simple and custom/Makefile.simple are now part of the source and are constructed from Makefile and custom/Makefile respectively. The Makefile.simple and custom/Makefile.simple avoid using GNU conditionals. They may be used with older/classic make commands. Makefile.local will include comments about how to better use it. Between releases, Makefile.local at the top of the master branch will contain how we typically build calc and test calc (FYI: we normally enable things such as -Werror -Wextra -pedantic). When we push out a release, Makefile.local will be stripped of non-comment lines. Thus, releases of calc, and, released "calc*.src.rpm" files and the source tarballs, will have a Makefile.local with only comments. The "README.*" files and "HOWTO.INSTALL" file have been updated. By default, compiler warnings have been turned up. The Makefile variable ${CCWARN} now defaults to: CCWARN= -Wall -Wextra -pedantic The previous level of compiler warnings can be easily restored by adding to Makefile.local: CCWARN:= -Wall The readline, history and ncurses libraries are now default. The Makefile variables ${USE_READLINE}, ${READLINE_LIB}, and ${READLINE_EXTRAS} now default to: USE_READLINE= -DUSE_READLINE READLINE_LIB= -lreadline READLINE_EXTRAS= -lhistory -lncurses The previous mode where readline, history and ncurses libraries were not compiled in by default can be easily restored by adding to Makefile.local: USE_READLINE:= READLINE_LIB:= READLINE_EXTRAS:= We have renamed "stable" as "production". We have renamed "unstable" as "tested". On the web site: http://www.isthe.com/chongo/src/calc/ these files has been renamed: 2.x.y.z_IS_LATEST_STABLE ==> 2.x.y.z_IS_LATEST_PRODUCTION 2.x.y.z_IS_LATEST_UNSTABLE ==> 2.x.y.z_IS_LATEST_TESTED The terms 'stable' and 'unstable' were both misleading and inaccurate. For details see the new documention file: README.RELEASE See also the help command: ; help release Fixed bug impacting how have_ustat.h was formed. Updated help/archive to reflect GitHub use.
This commit is contained in:
117
help/releases
117
help/releases
@@ -1,117 +0,0 @@
|
||||
On calc versions and releases
|
||||
|
||||
Calc version numbers have 4 levels. For example:
|
||||
|
||||
++=== top 2 levels: calc builtin functions compatibility
|
||||
||
|
||||
vvvv
|
||||
|
||||
2.14.0.8
|
||||
\\\\\\
|
||||
^ \\\\----> top 3 levels: calc important code base change
|
||||
|
|
||||
+--- top version level: internal representation compatibility
|
||||
|
||||
The top version level (e.g., 2) refers to the internal representation
|
||||
of values. Any library or hardware linked/built for calc 2 will be able
|
||||
to use values from other 2.x.y.z versions.
|
||||
|
||||
The top 2 levels (e.g., 2.14) refers to a specific compatible set of
|
||||
builtin functions. Calc interpreted code (such as calc resource files)
|
||||
written for, say calc 2.14, will be able to use the same set of builtin
|
||||
functions for any other 2.14.y.z version. Any new builtin functions or
|
||||
significant changes to existing builtin functions would be introduced in
|
||||
a later release such as version 2.15.y.z. While calc scripts written for
|
||||
2.14.y.z will highly likely be able to run under version 2.15.y.z, any
|
||||
new builtin functions added in calc 2.15 may collide with an identically
|
||||
named used defined function.
|
||||
|
||||
The top 3 levels (e.g., 2.14.0) change to reflect an important change to
|
||||
the code base such as a bug fix or performance improvement. There was
|
||||
neither a change to the internal representation format (a top level
|
||||
version change), nor were there new calc builtins introduced in such
|
||||
a top 3 level release.
|
||||
|
||||
There are 3 classes of changes to the calc source tree:
|
||||
|
||||
alpha => untagged GitHub commit
|
||||
|
||||
Any untagged commit to the GitHub master branch should be
|
||||
considered as alpha code that may make calc unstable.
|
||||
|
||||
While we try to avoid breaking the calc code with commits,
|
||||
there is a risk that picking up such a change could
|
||||
negatively impact the code.
|
||||
|
||||
tested => tagged GitHub pre-release commit
|
||||
|
||||
A new version of calc has been released and has recently passed
|
||||
regression testing on at least to different platforms and chip
|
||||
architectures.
|
||||
|
||||
The "tested" class was historically called "untested",
|
||||
however this term was misleading as such releases ARE tested.
|
||||
Since 2.14.0.13 we have used the term "tested".
|
||||
|
||||
All tested releases are tagged with a new version number.
|
||||
Such releases have GitHub assets such as a source tarball,
|
||||
zip file, source rpm, development rpm and binary rpm. See the
|
||||
orange "Pre-release" GitHub releases under:
|
||||
|
||||
https://github.com/lcn2/calc/releases
|
||||
|
||||
At the bottom of a given release is a "> Assets" that may
|
||||
be opened to reveal down-loadable files.
|
||||
|
||||
production => tagged GitHub release commit
|
||||
|
||||
A new version of calc has been released and has undergone
|
||||
extensive testing over time over a number of platforms.
|
||||
Sometimes a "tested" release that is found work well over
|
||||
a period of time will be re-released with a new version
|
||||
number as a "production" release.
|
||||
|
||||
The latest production GitHub release is marked with green
|
||||
"Latest" label under:
|
||||
|
||||
https://github.com/lcn2/calc/releases
|
||||
|
||||
A release that has neither an orange "Pre-release" nor
|
||||
a green "Latest" label is a prior production class release.
|
||||
|
||||
At the bottom of a given release is a "> Assets" that may
|
||||
be opened to reveal down-loadable files.
|
||||
|
||||
Production class code where stability is critical should use a
|
||||
"production" release.
|
||||
|
||||
A historical note and apology:
|
||||
|
||||
In the past, some version number changes were made that did not fully
|
||||
reflect the above version number or change class. Moreover older terms
|
||||
such as "stable" and "unstable" were misleading and did not properly
|
||||
reflect the nature of the change. Sorry! The purpose of this document
|
||||
is to try and bring a better level of conformity to source code updates,
|
||||
tagged releases and version numbers.
|
||||
|
||||
## Copyright (C) 2021 Landon Curt Noll
|
||||
##
|
||||
## Calc is open software; you can redistribute it and/or modify it under
|
||||
## the terms of the version 2.1 of the GNU Lesser General Public License
|
||||
## as published by the Free Software Foundation.
|
||||
##
|
||||
## Calc is distributed in the hope that it will be useful, but WITHOUT
|
||||
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
|
||||
## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
|
||||
## Public License for more details.
|
||||
##
|
||||
## A copy of version 2.1 of the GNU Lesser General Public License is
|
||||
## distributed with calc under the filename COPYING-LGPL. You should have
|
||||
## received a copy with calc; if not, write to Free Software Foundation, Inc.
|
||||
## 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
##
|
||||
## Under source code control: 2021/12/12 19:36:26
|
||||
## File existed as early as: 2021
|
||||
##
|
||||
## chongo <was here> /\oo/\ http://www.isthe.com/chongo/
|
||||
## Share and enjoy! :-) http://www.isthe.com/chongo/tech/comp/calc/
|
Reference in New Issue
Block a user