+Thu May 4 21:47:48 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming procedure execution. In this phase, move
+ procedure.c and procedure.h from src to src/data. Update
+ makefiles and #includes accordingly.
+
+ * automake.mk: Remove special rule for src/procedure.o.
+
+ * procedure.c: Moved to src/data.
+
+ * procedure.h: Moved to src/data.
+
+Wed May 3 22:24:34 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming procedure execution. In this phase, get rid of
+ many global variables, consolidating procedure execution in
+ procedure.c. Encapsulate transformations in new "struct
+ trns_chain". Also, change implementation of N OF CASES, FILTER,
+ and PROCESS IF from special cases to transformations.
+
+ * procedure.c: (global var vfm_source) Make static. Changed
+ external references to use in_input_program(), proc_set_source(),
+ or proc_capture_output() instead.
+ (global var vfm_sink) Make static. Changed external references to
+ use proc_set_sink() instead.
+ (global var default_dict) Move here from data/dictionary.c.
+ (static var permanent_trns_chain) New var.
+ (static var temp_dict) Renamed permanent_dict, updated references.
+ (static var temporary_trns_chain) New var.
+ (static var cur_trns_chain) New var.
+ (static var in_procedure) Removed.
+ (global var t_trns) Removed.
+ (global var n_trns) Removed.
+ (global var m_trns) Removed.
+ (global var f_trns) Removed.
+ (procedure) Even if there's "nothing to do" we need to clear
+ PROCESS IF, N OF CASES, vector state. (This should be
+ abstracted.)
+ (multipass_callback) New function.
+ (multipass_procedure) New function.
+ (open_active_file) Add N OF CASES, FILTER, PROCESS IF
+ transformations. Finalize transformations. No need to call
+ ctl_stack_clear() anymore because finalizers will do that.
+ (write_case) Simplify and rewrite.
+ (execute_transformations) Removed.
+ (filter_case) Removed.
+ (close_active_file) Use proc_cancel_temporary_transformations().
+ No need to clear PROCESS IF, N OF CASES here anymore because
+ helpers do that.
+ (multipass_procedure_with_splits) Keep track of success.
+ (multipass_split_callback) Ditto.
+ (multipass_split_output) Ditto.
+ (discard_variables) No need to call ctl_stack_clear() anymore
+ because finalizers will do that.
+ (proc_capture_transformations) New function.
+ (add_transformation) Rewrite in terms of trns_chain_append().
+ (add_transformation_with_finalizer) New function.
+ (next_transformation) Rewrite in terms of trns_chain_next().
+ (proc_in_temporary_transformations) New function.
+ (proc_start_temporary_transformations) New function.
+ (proc_make_temporary_transformations_permanent) New function.
+ (proc_cancel_temporary_transformations) New function.
+ (cancel_transformations) Rename proc_cancel_all_transformations(),
+ rewrite in terms of trns_chain_destroy().
+ (proc_init) New function.
+ (proc_done) New function.
+ (proc_set_sink) New function.
+ (proc_set_source) New function.
+ (proc_has_source) New function.
+ (proc_capture_output) New function.
+ (add_case_limit_trns) New function.
+ (case_limit_trns_proc) New function.
+ (case_limit_trns_free) New function.
+ (add_filter_trns) New function.
+ (filter_trns_proc) New function.
+ (add_process_if_trns) New function.
+ (process_if_trns_proc) New function.
+ (process_if_trns_free) New function.
+
+Wed Apr 26 20:00:00 2006 Ben Pfaff <blp@gnu.org>
+
+ * procedure.c (create_trns_case): Fix inverted decision on whether
+ numeric values should be initialized to 0 or SYSMIS.
+
+Wed Apr 26 19:48:52 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming procedure execution. In this phase, assert
+ that add_transformation() is not called during procedure
+ execution. Thanks to John Darrington for the suggestion.
+
+ * procedure.c: (static var in_procedure) New var.
+ (internal_procedure) Get rid of recursive_call local var and
+ logic.
+ (open_active_file) Set in_procedure and make sure it wasn't
+ already set.
+ (close_active_file) Reset in_procedure and make sure it was
+ already set.
+ (add_transformation) Make sure we're not in a procedure.
+
+Wed Apr 26 19:33:52 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming procedure execution. In this phase, break
+ procedure.c into multiple files.
+
+ * procedure.c (vfm_last_invocation): Rename
+ time_of_last_procedure(). Update all references.
+ (struct storage_stream_info) Move to data/storage-stream.c.
+ (storage_sink_open) Ditto.
+ (destroy_storage_stream_info) Ditto.
+ (storage_sink_write) Ditto.
+ (storage_sink_destroy) Ditto.
+ (storage_sink_make_source) Ditto.
+ (var storage_sink_class) Ditto.
+ (storage_source_count) Ditto.
+ (storage_source_read) Ditto.
+ (storage_source_destroy) Ditto.
+ (storage_source_class) Ditto.
+ (storage_source_get_casefile) Ditto.
+ (storage_source_create) Ditto.
+ (null_sink_class) Move to data/case-sink.c.
+ (create_case_source) Move to data/case-source.c.
+ (free_case_source) Ditto.
+ (case_source_is_class) Ditto.
+ (create_case_sink) Move to data/case-sink.c.
+ (free_case_sink) Ditto.
+
+ * procedure.h: (struct case_source) Move to data/case-source.h.
+ (struct case_source_class) Ditto.
+ (struct case_sink) Move to data/case-sink.h.
+ (struct case_sink_class) Ditto.
+
+Thu Apr 27 09:28:25 WST 2006 John Darrington <john@darrington.wattle.id.au>
+
+ * automake.mk: Removed explicit dependencies for message.o, since
+ that module no longer exists.
+
+Wed Apr 26 15:29:45 2006 Ben Pfaff <blp@gnu.org>
+
+ Start reforming procedure execution. In this phase, get rid of
+ function prototypes for never-defined functions.
+
+ * procedure.h: Get rid of function prototypes for never-defined
+ functions.
+
+Wed Apr 26 12:58:46 2006 Ben Pfaff <blp@gnu.org>
+
+ Improve the way we handle the various parsing "states". Until now
+ we've hard-coded the state transitions in the command definition
+ file, but that's error-prone and, worse, it's redundant--we can
+ figure out what state we're in anyhow. We can cleanly handle
+ INPUT PROGRAM and FILE TYPE with a nested command-processing loop.
+
+ * procedure.c (case_source_is_complex): Removed.
+ (discard_variables) No need to set pgm_state anymore.
+
+Tue Apr 25 11:06:49 2006 Ben Pfaff <blp@gnu.org>
+
+ Finish reforming error message support. In this phase, move
+ message.c into libpspp.
+
+ * message.c: Move to libpspp.
+
+Tue Apr 25 10:47:37 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming error message support. In this phase, drop
+ actual message printing from core code, substituting a callback,
+ and add the callback to each UI. Also, move verbose_msg() into
+ its own module.
+
+ * message.c: (var err_error_count) Renamed error_count and moved
+ to ui/terminal/msg-ui.c.
+ (var err_warning_count) Renamed warning_count and moved to
+ ui/terminal/msg-ui.c.
+ (err_check_count) Renamed check_msg_count() and moved to
+ ui/terminal/msg-ui.c.
+ (dump_message) Rewrote to take stream instead of function pointer
+ and moved to ui/terminal/msg-ui.c.
+ (msg_emit) Moved its guts to ui/terminal/msg-ui.c as handle_msg()
+ and rewrote to just pass message to callback.
+
+ (var err_verbosity) Renamed "verbosity" and moved to
+ libpspp/verbose-msg.c.
+ (verbose_msg) Moved to libpspp/verbose-msg.c.
+
+ (var err_already_flagged) Removed.
+ (puts_stdout) Removed.
+
+ (var msg_handler) New static variable.
+ (msg_init) New function.
+ (msg_get_command_name) New function.
+
+Mon Apr 24 17:40:08 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming error message support. In this phase, rename
+ all the message functions and types to start with "msg", except
+ for the ones that will be moving to other modules anyway.
+
+ All references to the identifiers below were updated likewise.
+
+ * message.c: (err_done) Renamed msg_done().
+ (err_push_file_locator) Renamed msg_push_msg_locator().
+ (err_pop_file_locator) Renamed msg_pop_msg_locator().
+ (err_location) Renamed msg_location().
+ (err_set_command_name) Renamed msg_set_command_name().
+
+Mon Apr 24 14:11:33 2006 Ben Pfaff <blp@gnu.org>
+
+ * message.c: Use exit.h from gnulib instead of checking for and
+ defining EXIT_SUCCESS and EXIT_FAILURE by hand.
+
+Sun Apr 23 22:00:23 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming error message support. In this phase, get rid
+ of message "titles" and put the message text in `struct error'.
+ Now `struct error' encapsulates a message more properly.
+
+ * message.c: (tmsg) Removed.
+ (msg) Use err_msg() instead of err_vmsg(). Format message
+ ourselves.
+ (err_vmsg) Renamed err_msg(). Changed interface, dropping message
+ and va_list args which are now in the error struct.
+
+Sun Apr 23 20:35:28 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming error message support.
+
+ * message.c: Use linebreak module from gnulib instead of home-brew
+ line breaking.
+ (puts_stdout) Rewrote.
+ (dump_message) Rewrote. Changed interface and updated all callers.
+ (compulsory_break) Removed.
+ (char_is_break) Removed.
+ (break_before) Removed.
+ (break_after) Removed.
+ (macro BREAK_LONG_WORD) Removed.
+
+Sun Apr 16 20:41:10 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming error message support. In this phase, we
+ divide the classification of messages along "category" and
+ "severity" axes.
+
+ * message.c: (err_vmsg) Rewrite to deal with categories and
+ severities in a straightforward manner instead of mixing them into
+ classes.
+ [0] (puts_stderr) Removed (dead code).
+ (msg) Changed first argument from `int' to `enum msg_class'.
+ (tmsg) Ditto.
+
+Sun Apr 16 18:53:12 2006 Ben Pfaff <blp@gnu.org>
+
+ GNU standards require "file name" instead of "filename" in
+ documentation. It's nice for our code to follow the convention
+ too.
+
+ Basically did search and replace in the whole source tree. Major
+ changes in function names or struct member names have their own
+ change log entries.
+
+Sun Apr 16 15:58:56 2006 Ben Pfaff <blp@gnu.org>
+
+ Continue reforming error message support. In this phase, we get
+ rid of VM() and the other msg() support for "verbosity", replacing
+ it by a new function verbose_msg().
+
+ * message.c: (verbose_msg) New function.
+ (err_vmsg) Remove support for verbosity levels.
+
Sun Apr 16 11:46:51 2006 Ben Pfaff <blp@gnu.org>
Start reforming error message support. In this phase, we get rid