* Deprecated SCM_RWSTRINGP and SCM_VALIDATE_RWSTRING.
[bpt/guile.git] / RELEASE
diff --git a/RELEASE b/RELEASE
index d909caa..8ba4961 100644 (file)
--- a/RELEASE
+++ b/RELEASE
@@ -7,13 +7,11 @@ absinthe, etc.  However, the first release containing the module
 system should be called Godot: "This is the one you've been waiting
 for."
 
-In release 1.4:
-- remove names evalext.c: serial-map,
-               ramap.c:   serial-array-copy!, serial-array-map!
-- remove module (ice-9 getopt-gnu-style)
-- remove kw.h, scm_tc16_kw
-- remove genio.h
-- remove deprecated function scm_newsmob.
+* Deprecate `read-only-string?'.
+
+After signal handling and threading have been fixed:
+- remove the code corresponding to GUILE_OLD_ASYNC_CLICK and the corresponding
+  GUILE_OLD_ASYNC_CLICK macro.
 
 In release 1.5:
 - remove deprecated macros: SCM_INPORTP, SCM_OUTPORTP, SCM_CRDY, SCM_ICHRP,
@@ -26,8 +24,43 @@ In release 1.5:
 - remove scm_tag
 - remove code related to the name property of hooks.  Also, check init.c,
   since the dependency between hooks and objprop will then be eliminated.
-Dirk:FIXME:: look into deprecated things in numbers.h and tags.h, don't forget
-to update NEWS accordingly.
+- remove deprecated function scm_list_star/list*  (use SRFI-1 compliant
+  scm_cons_star/cons* instead.)
+- remove scm_tc16_flo, scm_tc_flo (guile always uses doubles to represent
+  inexact real numbers) 
+- remove scm_tc_dblr (replaced by scm_tc16_real)
+- remove scm_tc_dblc (replaced by scm_tc16_complex)
+- remove deprecated types, functions and macros from numbers.h:  scm_dblproc,
+  SCM_UNEGFIXABLE, SCM_FLOBUFLEN, SCM_INEXP, SCM_CPLXP, SCM_REAL, SCM_IMAG,
+  SCM_REALPART, scm_makdbl, SCM_SINGP, SCM_NUM2DBL, SCM_NO_BIGDIG
+
+In release 1.6:
+- remove deprecated variables:
+    scm_top_level_lookup_closure_var
+- remove deprecated functions:
+    eval.c: scm_eval2, scm_eval_3
+    load.c: scm_read_and_eval_x
+- remove deprecated procedures:
+    boot-9.scm:eval-in-module
+- remove deprecated macros: SCM_OUTOFRANGE, SCM_NALLOC, SCM_HUP_SIGNAL, 
+  SCM_INT_SIGNAL, SCM_FPE_SIGNAL, SCM_BUS_SIGNAL, SCM_SEGV_SIGNAL, 
+  SCM_ALRM_SIGNAL, SCM_GC_SIGNAL, SCM_TICK_SIGNAL, SCM_SIG_ORD, 
+  SCM_ORD_SIG, SCM_NUM_SIGS, SCM_SLOPPY_STRINGP, SCM_VALIDATE_STRINGORSUBSTR,
+  SCM_FREEP, SCM_NFREEP, SCM_CHARS, SCM_UCHARS, SCM_VALIDATE_ROSTRING,
+  SCM_VALIDATE_ROSTRING_COPY, SCM_VALIDATE_NULLORROSTRING_COPY, SCM_ROLENGTH,
+  SCM_LENGTH, SCM_HUGE_LENGTH, SCM_SUBSTRP, SCM_SUBSTR_STR, SCM_SUBSTR_OFFSET,
+  SCM_COERCE_SUBSTR, SCM_ROSTRINGP, SCM_RWSTRINGP, SCM_VALIDATE_RWSTRING
+- remove scm_vector_set_length_x
+- remove function scm_call_catching_errors
+  (replaced by catch functions from throw.[ch])
+- remove support for "#&" reader syntax in (ice-9 optargs).
+- remove scm_make_shared_substring
+- remove scm_read_only_string_p
+- remove scm_strhash
+- remove scm_tc7_ssymbol
+- remove scm_tc7_msymbol
+- remove scm_tcs_symbols
+- remove scm_sloppy_memq, scm_sloppy_memv, scm_sloppy_member
 
 Modules sort.c and random.c should be factored out into separate
 modules (but still be distributed with guile-core) when we get a new
@@ -88,7 +121,7 @@ Spiffing checklist:
   directory.
 * Check for files that have changed a lot, but do not have up-to-date
   copyright notices.  This can be as simple as doing:
-       grep 'Copyright' * | grep -v 1999
+       grep 'Copyright' * | grep -v 1999
   and looking for files you know you've worked on a lot.
 * Make sure NEWS, INSTALL and the docs are up to date:
   + Scan the ChangeLogs for user-visible changes, marked with an asterisk
@@ -101,7 +134,7 @@ Spiffing checklist:
 * Make sure the downloading addresses and filenames in README are
   current.  (But don't bump the version number yet.  We do that below.)
 * Check that the versions of aclocal, automake, autoconf, and autoheader
-  in your PATH match those given in README.  Note that the `make
+  in your PATH match those given in HACKING.  Note that the `make
   dist' process always invokes these tools, even when all the
   generated files are up to date.
 * Rebuild all generated files in the source tree:
@@ -111,16 +144,21 @@ Spiffing checklist:
   + Run autoheader.
   + Run automake.
 * Verify that Guile builds and runs in your working directory.
-* Run the test suite, in guile-modules/test-suite.
+* Run the test suite, in guile-core/test-suite.
 * Commit all changes to the CVS repository.
 * Build a test distribution.
   + BEFORE doing 'make dist', configure the source tree for build
-    in the same tree with configuration option --with-threads.
+    in the same tree with configuration options
+    --enable-maintainer-mode --enable-debug-malloc --with-threads.
   + Make sure that readline was enabled correctly.
   + Build the tree.
     (If the above steps are not done, the dependencies won't be properly
     included in the generated Makefile.in files.)
   + Then do 'make dist'.
+  + Check that the dependencies in guile-readline/Makefile look OK.
+    (We currently use a kludge which edits the dependencies generated
+    by automake so that Guile can be built in a directory separate
+    from the source tree also with non-GNU make programs.)
 * Give the test disty to various people to try.  Here's what you should do:
   + Unset GUILE_LOAD_PATH.
   + Remove automake and autoconf from your path, or turn off their
@@ -169,5 +207,3 @@ Punting checklist:
   version numbers of the form "N.M.L", where L is odd.
 * Start a new section of the NEWS file.
 * Start a new THANKS file.
-* Send mail to majordomo-owner@cygnus.com updating the message you
-  get when you ask majordomo for "info guile".