X-Git-Url: http://git.hcoop.net/bpt/guile.git/blobdiff_plain/3f686b10a27219ce8fc1f0cb71004a029640fead..e200c20fa0f6d1514256c6ccdca5fe452dc030e5:/RELEASE diff --git a/RELEASE b/RELEASE index a8d701609..8ed8be4e5 100644 --- a/RELEASE +++ b/RELEASE @@ -7,17 +7,79 @@ 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.3.4: -- remove hook support from boot-9.scm - (only provided for backward compatibility) - -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. +=== Eventually: + +* 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.6.0: + +- Q: Was SCM_FLOBUFLEN only deprecated publically, or was it supposed + to be removed from numbers.c as well? + +- remove code related to the name property of hooks. Also, check init.c, + since the dependency between hooks and objprop will then be eliminated. + +=== In release 1.8.0: + +- remove compatability module (ice-9 and-let*). It + has been replaced by (ice-9 and-let-star) and/or (srfi srfi-2). + +- remove support for autoloading compiled-code modules: + try-module-linked + try-module-dynamic-link + init-dynamic-module + scm_register_module_xxx + etc. +- 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 + smob.c: scm_make_smob_type_mfpe, scm_set_smob_mfpe + gc.c: scm_remember + string.c: scm_makstr +- remove deprecated procedures: + boot-9.scm: eval-in-module, id +- 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, + SCM_ROCHARS, SCM_ROUCHARS, SCM_SETLENGTH, SCM_SETCHARS, SCM_LENGTH_MAX, + SCM_GC8MARKP, SCM_SETGC8MARK, SCM_CLRGC8MARK, SCM_GCTYP16, SCM_GCCDR, + SCM_SUBR_DOC, SCM_OPDIRP, SCM_VALIDATE_OPDIR, SCM_WTA, RETURN_SCM_WTA, + SCM_WNA, SCM_FUNC_NAME, SCM_VALIDATE_NUMBER_COPY, + SCM_VALIDATE_NUMBER_DEF_COPY, SCM_SLOPPY_CONSP, SCM_SLOPPY_NCONSP, + SCM_SETAND_CDR, SCM_SETOR_CDR, SCM_SETAND_CAR, SCM_SETOR_CAR, + SCM_ARRAY_CONTIGUOUS +- 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 +- consider removing the automatic loading of (ice-9 rdelim) when guile + starts up. This would be a brave move, since a lot of code will + assume that read-line is available by default. However it would make + it easier to use alternative implementations of this module, e.g., a + strictly scsh-compatible version which uses multiple values. For + interactive use it would be easy to load the module in ~/.guile. +- remove scm_close_all_ports_except +- remove scm_strprint_obj +- remove SCM_CONST_LONG +- remove scm_wta 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 @@ -52,6 +114,10 @@ Julian Satchell : dec-mips-ultrix +Perry Metzger + + NetBSD + Release Checklists =================================================== @@ -73,7 +139,9 @@ Spiffing checklist: * Do a `cvs update -A', to get rid of any sticky tags in your working directory. * Check for files that have changed a lot, but do not have up-to-date - copyright notices. (It would be nice to have a script to do this...) + copyright notices. This can be as simple as doing: + 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 at the left margin. @@ -82,28 +150,34 @@ Spiffing checklist: documented. + Check for any [[incomplete]] sections of NEWS. + Fact-check INSTALL. -* Make sure the downloading addressess and filenames in README are - current. +* 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: + Install the .m4 files where aclocal will find them. + Run aclocal. - + Run automake. + Run autoconf. + 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. - Make sure that readline was enabled correctly. - If this is not done, there will be missing dependencies in two - Makefile.in. + 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 @@ -134,6 +208,7 @@ Punting checklist: * Add "Guile N.M released." entry to the top-level ChangeLog, and commit it. * Tag the entire source tree with a tag of the form "release_N_M" or "release_N_M_L". +* Do a 'make dist'. * Put the distribution up for FTP somewhere, and send mail to ftp-upload@gnu.org, asking them to put it on prep. * Send an announcement message to gnu-announce@gnu.org. Put a brief @@ -151,5 +226,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".