summaryrefslogtreecommitdiff
path: root/TODO
AgeCommit message (Collapse)AuthorFilesLines
2009-05-03[TODO] Add new itemsRoger Leigh1-0/+8
2008-04-27[schroot] Read additional configuration from /etc/schroot/chroot.d.Roger Leigh1-0/+2
2008-01-26* TODO: Add logging items.Roger Leigh1-0/+13
2008-01-20* TODO: Remove completed item.Roger Leigh1-8/+1
2008-01-20* TODO: Add extra chroot checks.Roger Leigh1-0/+4
2008-01-19* bin/schroot/schroot-setup.5.in: Replace 20network and 30passwdRoger Leigh1-4/+0
with 20copyfiles. * bin/schroot/setup/Makefile.am (setup_SCRIPTS): Remove 20network and 30passwd, and add 20copyfiles. * bin/schroot/setup/30passwd: Remove. * bin/schroot/setup/20copyfiles: Move from 20network. Read COPYFILES file, and copy files into chroot. * bin/schroot/script-defaults: Add COPYFILES. * bin/schroot/copyfiles-defaults: New file. Files to copy into the chroot. * debian/schroot.preinst: Add rm_conffile function to remove /etc/schroot/setup.d/20network and /etc/schroot/setup.d/30passwd for versions prior to this. These are replaced by /etc/schroot/setup.d/20copyfiles.
2008-01-18* TODO: Add script merge item.Roger Leigh1-0/+5
2008-01-17* TODO: Remove completed item.Roger Leigh1-2/+0
* bin/schroot-mount/schroot-mount-main.cc: Ensure fstab fs_dir has a leading /.
2008-01-16* TODO: Remove mntstream porting; add mount checking.Roger Leigh1-3/+2
2008-01-15* TODO: Document string_list issue in basic-keyfile.Roger Leigh1-0/+2
2008-01-12* TODO: Add script item.Roger Leigh1-0/+1
2008-01-09* TODO: Add new items.Roger Leigh1-0/+5
2007-07-08* TODO: Add permissions check items.Roger Leigh1-0/+11
2007-05-02* Version 1.1.1.release/schroot-1.1.1Roger Leigh1-7/+0
* debian/changelog: Update for 1.1.1. * NEWS: Document new environment variables set inside the chroot. * TODO: Remove completed SCHROOT_USER item.
2007-04-25* NEWS: Document the environment-filter key.Roger Leigh1-0/+3
* bin/schroot/schroot.conf.5.in: Document the environment-filter key. * bin/schroot/schroot.1.in (list): Document environment variables being set, and configuration of environment filtering. * sbuild/sbuild-session.cc (run_child): Set SCHROOT_COMMAND, SCHROOT_USER, SCHROOT_GROUP, SCHROOT_UID and SCHROOT_GID environment variables, equivalent to SUDO_* variables of the same name (except for SUDO_GROUP, which does not exist). * sbuild/sbuild-auth.cc (auth): Initialise rgid and rgroup members from group database. (get_rgid): New member function to get rgid. * sbuild/sbuild-auth.h: Add GROUP error_code and rgid and rgroup class members.
2006-08-25* Version 1.1.0release/schroot-1.1.0Roger Leigh1-6/+1
* debian/changelog: Update for 1.1.0 * TODO: Remove completed item.
2006-07-29* TODO: Add future items.Roger Leigh1-0/+9
* All catch blocks catch const references. * sbuild/sbuild-run-parts.cc (run_child): Handle exceptions thrown in child. * sbuild/sbuild-session.cc (setup_chroot): Handle exceptions thrown in child. * Replace all uses std::locale("C") with std::locale::classic(). * Replace all uses of NULL with 0. * sbuild/sbuild-auth.cc (auth): Remove redundant auth_conv_tty dynamic_cast. (~auth): Log an error if an exception is caught. (set_user): Default uid and gid to current uid and gid, rather than 0, for extra safety when an error occurs. (run, start): Use reinterpret_cast instead of static_cast when casting void *. (authenticate): Don't leak hostname array if an exception is thrown.
2006-07-20* TODO: Remove completed item (duplictes in conffiles should be anRoger Leigh1-5/+0
error).
2006-07-20* TODO: Remove completed item.Roger Leigh1-4/+0
* Added a number of debugging messages to important codepaths.
2006-07-17* TODO: Remove completed item.Roger Leigh1-5/+0
* po/en_GB.po: Update translation.
2006-07-17* sbuild/sbuild-lock.cc: Rename _RELEASE error codes to _UNLOCKRoger Leigh1-0/+12
and reword error messages to be uniform with chroot error messages. * sbuild/sbuild-chroot-config.cc: Rename CHROOT error to CHROOT_NOTFOUND, to reduce ambiguity.
2006-07-17* TODO: Remove completed item.Roger Leigh1-2/+0
* sbuild/sbuild-chroot.cc (set_persona): Remove method overloaded for a string. (get_keyfile): Use keyfile::set_object_value for the personality. (set_keyfile): Use keyfile::get_object_value for the personality. * sbuild/sbuild-personality.cc: Add a BAD error code for when the personality name is invalid. (get_personalities): Renamed from print_personalities. Create a string, rather than printing to an ostream. * sbuild/sbuild-personality.h: Add stream input operator, to set the personality from a stream. * sbuild/sbuild-keyfile.h: Move all logic in get_object_value into the try block, to catch and report parse errors in T parsing.
2006-07-16* TODO: Remove completed items.Roger Leigh1-9/+0
* All code logging exceptions with log_error() and e.what() use log_exception. * sbuild/sbuild-auth.cc (auth_conv_hook): In the PAM conversation hook, catch and handle any exception thrown by a conversation handler. * sbuild/sbuild-auth-conv-tty.cc (conversation): Rather than returning false on error, throw an exception. Remove exception catching logic; it's now handled in sbuild::auth. * sbuild/sbuild-auth-conv.h (conversation): Rather than returning false on error, throw an exception. * sbuild/sbuild-log.(cc|h) (log_exception): New function. This helper function outputs an exception using log_error(), and exception reasons using log_info(). * sbuild/sbuild-parse-error.h: All constructors add a call for format_reason in addition to format_detail. All detail arguments are templated rather than strings (to allow use of exceptions as detail). * sbuild/sbuild-custom-error.h: All constructors add a call for format_reason in addition to format_detail. * sbuild/sbuild-error.h, sbuild/sbuild-error.tcc: Add error_base class. This contains a reason string with a why() method in addition to the what() method provided by std::exception. error<> derives from error_base, and provides a format_reason helper with similar behaviour to format_detail. Both format_detail and format_reason contain templated helper classes to allow conversion of exceptions of any type, and the transfer of their reason (if any). * configure.ac: Add check for boost/type_traits.hpp.
2006-07-14* TODO: Add remaining items for 1.0.Roger Leigh1-0/+20
2006-07-14* TODO: Remove completed item.Roger Leigh1-2/+0
* schroot/schroot.conf.5.in: Add undocumented features. * schroot/schroot.conf: Add undocumented features.
2006-07-14* TODO: Remove completed item.Roger Leigh1-6/+0
* THANKS: Add Simon Richter. * sbuild/sbuild-session.cc (run_impl): Move session opening and closing here. The session is opened and closed outside the chroot as root.
2006-07-14* TODO: Remove completed item.Roger Leigh1-6/+0
* Update doxygen API reference.
2006-07-14* schroot/schroot.conf.5.in: Minor whitespace cleanup.Roger Leigh1-6/+0
* TODO: Remove completed item. * Updated British English translation. * Apply quoting style to all sources. * HACKING: Document quoting style for format strings.
2006-07-13* TODO: Remove completed error string markup item.Roger Leigh1-6/+0
* Add boost::format markup to error strings. * sbuild/sbuild-custom-error.h: All constructor detail arguments are now templated. Add additional constructors for multiple detail arguments.
2006-07-03* README: Document new Boost build dependency.Roger Leigh1-5/+0
* TODO: Remove completed item. * sbuild/sbuild-session.cc (setup_chroot): Use sbuild::run_parts in place of run-parts(8). * configure.ac: Remove run-parts(8) checks.
2006-06-29* TODO: Remove completed item.Roger Leigh1-6/+0
* sbuild/sbuild-chroot-config.cc (parse_data): Remove exception wrapper, now that sbuild::keyfile throws exceptions containing more detailed information. * sbuild/sbuild-chroot-file.cc (get_file_repack, set_file_repack): New methods to get and set file repack status. * All chroot get_keyfile and set_keyfile methods are implemented in terms of the new keyfile::[gs]et_object_(list_)value methods. * sbuild/sbuild-keyfile.h: Add templated static methods for getting and setting key values and list values using pointers to methods of other objects.
2006-06-28* TODO: Remove completed item.Roger Leigh1-9/+0
* sbuild/sbuild-util.cc (narrow_string, widen_string): Throw a runtime_error on conversion failure.
2006-06-28* TODO: Remove completed items.Roger Leigh1-10/+0
* schroot/schroot-base-main.cc (run): This method takes argc and argv arguments, and calls the option class parse method. It also catches and handles parse exceptions. * schroot/schroot-base-option.cc (parse): Renamed from parse_options, this method now takes argc and argv as arguments and calls all the other class virtual methods to set up and process the options. (add_option_group): New virtual method. The addition of option groups is split out from the parse method. * All option parsing classes have removed the argc and argv arguments from their constructors. The constructors now no longer call any of the virtual methods.
2006-06-26* sbuild/sbuild-session.cc (is_group_member): Rather than exitingRoger Leigh1-5/+0
with failure status, warn and return false, or throw an exception.
2006-06-26* TODO: Add TODO items for 1.0.Roger Leigh1-0/+63
* test/sbuild-keyfile.cc: Update testcases. * test/sbuild-parse-value.cc: Update testcases. * sbuild/sbuild-environment.h: Use new parse_value syntax. * sbuild/sbuild-keyfile.h: Use new parse_value syntax. get_list_value now correctly reports parse errors in list values. * sbuild/sbuild-parse-value.(cc|h): Convert from a class back into separate functions. This gets rid of annoying uninitialised value errors.
2006-06-15* TODO: Remove completed items (translatable strings removed fromRoger Leigh1-9/+5
headers, and root no longer needs to be in groups or root groups). * schroot/Makefile.am: Add sbuild-format-detail.cc. * schroot/sbuild-format-detail.h: Remove ostream operator << format_detail<bool> specialisation. * schroot/sbuild-format-detail.cc: New file. Move ostream operator << format_detail<bool> specialisation from the headers, so translatable strings are not used in the header.
2006-04-30* Version 0.2.9.release/schroot-0.2.9Roger Leigh1-1/+2
* debian/changelog: Update for 0.2.9. * po/en_GB.po: Updated British English translation. * README: Document new compiler requirements.
2006-04-29* test/sbuild-chroot-file.cc (chroot_file>): Check forRoger Leigh1-5/+0
CHROOT_FILE_REPACK in the environment.
2006-03-18Update.Roger Leigh1-0/+2
2006-03-06* TODO: Update.Roger Leigh1-6/+1
* schroot/schroot.conf.5.in: Document required ownership and permissions for file archives. * schroot/sbuild-chroot-file.cc (setup_lock): Check ownership and permissions of file archive. * schroot/sbuild-chroot-config.cc (check_security): Tidy error message formatting. * schroot/setup/10mount: (do_umount): Only umount if the mountpoint exists. * schroot/setup/05file: (repack_file): Preserve ownership and permissions of the original archive file.
2006-02-28* schroot/setup/05file:Roger Leigh1-0/+6
(unpack_file): Use a temporary file to prevent data loss, and use trap to clean up on failure.
2006-02-28* debian/changelog: Update.Roger Leigh1-3/+0
* debian/postinst: Move /etc/schroot/run.d/00check to /etc/schroot/exec.d/00check if modified locally. * debian/preinst: Remove /etc/schroot/run.d/00check if not modified locally. * Update tests. * schroot/schroot.conf: Rename run-session-scripts to run-exec-scripts. * schroot/schroot.conf.5.in: Document new configuration parameters, and deprecated parameters. * schroot/schroot.1.in: Document new setup script locations. * schroot/schroot-setup.5.in: Document new setup script locations and parameters. * schroot/Makefile.am (SUBDIRS): Rename run to exec. * configure.ac: Rename SCHROOT_CONF_RUN_D to SCHROOT_CONF_EXEC_D. Rename schroot/run/Makefile to schroot/exec/Makefile. Tidy comments. * schroot/sbuild-session.cc: Use new chroot functions and enums. Also use SCHROOT_CONF_EXEC_D rather than SCHROOT_CONF_RUN_D. Execution scripts are called with "exec-start" and "exec-stop", rather than "run-start: and "run-stop", respectively. * Use new functions and enums in all derived chroot types. * schroot/sbuild-chroot.cc (get_run_exec_scripts): Rename from get_run_session_scripts. (set_run_exec_scripts): Rename from set_run_session_scripts. (print_details): Print "Run Execution Scripts" rather than "Run Session Scripts". (get_keyfile): Set "run-exec-scripts" in the keyfile. (set_keyfile): Get "run-exec-scripts" in the keyfile. Also get "run-session-scripts" (now deprecated) for backward compatibility. * schroot/sbuild-chroot.h (setup_type): Rename RUN_START and RUN_STOP to EXEC_START and EXEC_STOP. (run_exec_scripts): Rename member from run_session_scripts. * Rename schroot/run to schroot/exec.
2006-02-25* Version 0.2.4.release/schroot-0.2.4Roger Leigh1-4/+2
* debian/changelog: Update for 0.2.4. * TODO: Update.
2006-02-21* Version 0.2.3.Roger Leigh1-0/+2
* debian/changelog: Update for 0.2.3. * NEWS: Document changed "--info" output. * TODO: Update.
2006-02-21* NEWS: Document automatic block-device creation for lvm-snapshotRoger Leigh1-5/+0
chroots. * TODO: Remove completed item. * schroot/schroot.conf.5.in: Document automatic block-device creation for lvm-snapshot chroots. * schroot/sbuild-chroot-config.cc (parse_data): Create a corresponding block-device chroot for each lvm-snapshot chroot. "-source" is appended to the chroot name and its aliases.
2006-02-02* Update TODO list.Roger Leigh1-9/+8
* Update testcases. * schroot/sbuild-config.cc (load): Use the new Chroot keyfile streaming functionality to initialise chroots. * Implement all new virtual functions in Chroot in derived classes. * Remove all functions removed from Chroot in derived classes. * schroot/sbuild-chroot.(cc|h) (Chroot): Remove overloaded construction to initialise with a keyfile. (create): Remove overloaded method for creating from a keyfile. (print_config): Remove. (get_keyfile): New protected virtual method to serialise a chroot to a keyfile. (set_keyfile): New protected virtual method to initialise a chroot from a keyfile. (operator >>): New friend function to stream from a keyfile. (operator <<): New friend function to stream to a keyfile.
2006-01-26* schroot/sbuild-keyfile.ccRoger Leigh1-3/+17
(check_priority): Add support for PRIORITY_DISALLOWED. * schroot/sbuild-config.cc: Convert to throw exception instead of immediately terminating with an error. This makes unit testing possible, and errors are all caught correctly at the top-level. * schroot/sbuild-chroot-lvm-snapshot.cc: When reading a keyfile, only allow reading "lvm-snapshot-device" when restoring an active chroot. * configure.ac (AM_INIT_AUTOMAKE): Quote argument. * test/sbuild-config.cc: New file. Test for sbuild::Config.
2006-01-11* Remove completed and obsolete TODO items.Roger Leigh1-4/+5
* test/sbuild-util.cc: Update testcase with fixed path. * schroot/sbuild-session.cc (run_child): Use new find_program_in_path syntax. * schroot/sbuild-util.cc (find_program_in_path): Add path argument, to allow use of paths other than $PATH.
2005-12-31* Change all instances of "const T&" to "T const&" forRoger Leigh1-2/+0
consistency.
2005-12-30* schroot/sbuild-chroot-lvm-snapshot.cc (setup_session_info):Roger Leigh1-7/+0
Imbue ostream with "C" locale. * schroot/sbuild-config.cc (load): Imbue istream with "C" locale. * schroot/sbuild-keyfile.cc (keyfile): Imbue ifstream with "C" locale. * schroot/sbuild-chroot.h (setup_env_var): Imbue stringstream with "C" locale. * schroot/sbuild-keyfile.h: All stringstreams are imbued with the "C" locale for locale-independent formatting. * schroot/schroot-releaselock.cc (main): Use C++ locale setup. * schroot/schroot.cc (main): Use C++ locale setup.