Reinhard  2 Jan 2007
    -  fixed build of clientgui [in consultation with the Author, Frank Weiler] 
    * corrected unicode-string handling with wxString() in
        ViewTransfersGrid.cpp and ViewWorkGrid.cpp
    * corrected wxString handling in BOINCGridCtrl.cpp
    * add missing files BOINCGridCtrl.[cpp|h] to Makefile.am

    clientgui/
        Makefile.am
        BOINCGridCtrl.cpp
        ViewTransfersGrid.cpp
        ViewWorkGrid.cpp

Rom    2 Jan 2007
    - Win SETUP: Incorporate a custom action to migrate CPDNBBC data files to the
        destination BOINC directory.
        
    win_build/installerv2/
        BOINC.ism
    win_build/installerv2/redist/Windows/src/boinccas/
        CADetectOldInstaller.cpp, .h (Removed)
        CAMigrateCPDNBBC.cpp, .h (Added)
        boinccas.rc
        boinccas95.def
        boinccas95.vcproj
    win_build/installerv2/redist/Windows/x86/
        boinccas.dll
        boinccas95.dll

David  2 Jan 2007
    - make disk pie charts work on Linux
        (from Frank Weiler)

    clientgui/
        wxPieCtrl.cpp


Reinhard 2 Jan 2007
    - install lib/common_defs.h

    lib/
        Makefile.am

Charlie 2 Jan 2007
    - MGR: Fix 2 compiler warnings caused by actual coding errors.
    - Mac: Add new files BOINCGridCtrl.cpp,.h, ViewTransfersGrid.cpp,.h, 
        ViewWorkGrid.cpp,.h to XCode project.

    clientgui/
        cs_account.C
        ViewTransfersGrid.cpp
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Rytis   3 Jan 2007
    - User web:
        - Add optional 3rd element to project news file (title)
        - Certificate now shows DEFINEd project name
        - Front page now styled with CSS
        
    html/
        user/
            cert.php
            sample_index.php
            sample_rss_main.php
            white.css
        inc/
            news.inc
            util.inc
        project.sample/
            project_news.inc

Matt 3 Jan 2007
    - added separate UOTD_ADMIN_EMAIL address in project.inc
      so user of the day running low messages don't go to moderators

    html
        inc/
             uotd.inc
        project.sample/
             project.inc

Reinhard 4 Jan 2007
    - applied Bernd's patch:
    * restore extern "C" protection to graphics_api.h, for ANSI-C projects
    * include boinc_api.h in graphics_impl.C to declare worker_thread_handle()
    * remove garbage from graphics_lib.C to allow compilation under _WIN32 and __APPLE__

    api/
        graphics_api.h
        graphics_impl.C
        graphics_lib.C

David  4 Jan 2007
    - change "Preempted" to "Waiting" in GUI ("preempted" is geek-speak)

    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp
    html/inc/
        user.inc

David  4 Jan 2007
    - removed PICFLAGS from AM_CPP_FLAGS.
        Compiling everything position-independent slows it down.

    Makefile.incl

Rom    4 Jan 2007
    - DIAG: Don't check for the BOINC symstore if it is a science application that
        has crashed.
        
    lib/
        stackwalker_win.cpp
    
Kevin  4 Jan 2007
    - Changed the way the buttons on the simple gui preferences and messages screens are sized

    clientgui/sg_DlgMessages.cpp
    clientgui/sg_DlgPreferences.cpp
    
David   4 Jan 2007
    - core client: if an app fails to start,
        it could be that the executable has been munged.
        So verify the files; this will find the bad file
        and download it again.
    - Manager: in Attach to Account Manager wizard, add some text saying
        if they want to just attach to a single project,
        use the Attach to Project wizard instead.
        Some users tried to attach SETI@home using the acct mgr wizard
        and got all bent outta shape when it didn't work.

    client/
        app_start.C
    clientgui/
        WelcomePage.cpp

Rom    5 Jan 2007
    - Win SETUP: Add custom actions for saving and restoring user preferences
        to the registry
    - Win SETUP: MoveFileEx isn't spported on the Win9x platform, so dynamically
        load and execute it on Windows 2000 or better.
    - Win SETUP: Remove some dead code from the custom action list.
    - Win SETUP: On Windows XP systems or better, we no longer require the
       service account to have a password, Microsoft has taken care of the
       problem by not allowing incomming network connections for accounts with
       no passwords.

    win_build/installerv2/redist/Windows/src/boinccas/
        CAMigrateCPDNBBC.cpp
        CARestoreSetupState.cpp, .h
        CASaveSetupState.cpp, .h
        CASoftwareNeedsUpgrade.cpp, .h (Removed)
        CAVerifyServicePassword.cpp
        boinccas.cpp, .h
        boinccas.rc
        boinccas95.def
    win_build/installerv2/redist/Windows/x86/
        boinccas.dll
        boinccas95.dll

Rom    5 Jan 2007
    - Win SETUP: Fix an issue when restoring saved properties where junk was
        being introduced into properties where no value was defined.
    - Win SETUP: Don't attemp to restore any properties until we have actually
        stored some from a previous iteration of setup, otherwise our defaults
        don't kick in.
    - Win SETUP: Saving and Restoring properties is now only enabled for those
        using the UI deployment method, we don't want to throw anything
        in the registry when the MSI package is being deployed through AD or
        some other deployment mechinism.

    win_build/installerv2/redist/Windows/src/boinccas/
        CARestoreSetupState.cpp
        CASaveSetupState.cpp
        boinccas.cpp
    win_build/installerv2/redist/Windows/x86/
        boinccas.dll
        boinccas95.dll

Rom    5 Jan 2007
    - Update localization template.
    
    locale/en_US/
        BOINC Manager.mo, .po

Rom    5 Jan 2007
    - MGR: Replace the context sensitive help button on the main simple gui window
        with a standard bitmap button and use the bitmaps WCG gave us.
        
    clientgui/
        Events.h
        sg_DlgMessages.cpp
        sg_DlgPreferences.cpp
        sg_ProjectsComponent.cpp, .h
        SkinManager.cpp, .h

David  5 Jan 2007
    - manager: improved grid views from Frank Weiler;
        improved message when detach from project mgr

    clientgui/
        BOINCGridCtrl.cpp,h
        WelcomPage.cpp

Rom    5 Jan 2007
    - MGR: Fix the help handling code for the Mac UI conventions.
    
    clientgui/
        sg_DlgMessages.cpp, .h
        sg_DlgPreferences.cpp, .h

Charlie 5 Jan 2007
    - MGR: Fix build breaks.
    
    clientgui/
        sg_DlgMessages.cpp
        sg_DlgPreferences.cpp

Charlie 5 Jan 2007
    - MGR: Fix cosmetic bugs on Mac.
        NOTE: I believe my changes will work on Windows, but I couldn't test 
        this because of crashes on Windows.  So my changes are temporarily 
        guarded by #ifdef __WXMAC__ #else #endif.

    clientgui/
        ViewTransfersGrid.cpp
        ViewWorkGrid.cpp

Walt   6 Jan 2007
    - MGR: Fix segfault in simple gui when message button is clicked.
        SetBackgroundStyle() needs to be called after the window
        is created.
    
    clientgui/
        sg_DlgMessages.cpp

David  7 Jan 2007
    - manager: fixes for new task/transfer tabs
        (from Frank Weiler)

    clientgui/
        BOINCGridCtrl.cpp,h
        MainDocument.cpp,h
        ViewTransfersGrid.cpp,h
        ViewWorkGrid.cpp,h
        res/
            sortascending.xpm
            sortdescending.xpm

David  7 Jan 2007
    - core client: if swap space is zero, it must not have been
        measured on this host; don't use it in process scheduling
    - user web: don't use font colors this way

    client/
        cpu_sched.C
    html/user/
        forum_forum.php

David  7 Jan 2007
    - user web: don't show news dates as <h3>.  Use a style instead.

    html/
        inc/
            news.inc
        user/
            white.css

Rom    7 Jan 2007
    - DIAG: Clean up some warnings and add a new exception type to the list
        of known exceptions.
    
    lib/
        diagnostics.C
        diagnostics_win.C

Charlie 8 Jan 2007
    - MGR: Fix 2 compiler warnings, 1 caused by an actual coding error.
        NOTE: to printf a "%", you need to use "%%" in the format; for 
        example: ("%.2f%%").

    clientgui/
        BOINCGridCtrl.cpp
        ViewTransfersGrid.cpp

David  8 Jan 2007
    - manager: performance enhancement to grid views
        (from Frank Weiler)

    clientgui/
        AdvancedFrame.cpp
        BOINCGridCtrl.cpp,h
        Events.h
        MainDocument.cpp,h
        ViewMessagesGrid.cpp, h (new)
        ViewProjectsGrid.cpp,h
        ViewTransfersGrid.pp
        ViewWOrkGrid.cpp

Rom    8 Jan 2007
    - Win SETUP: Make Windows XP or better require passwords for the
        service accounts again.
    - Win SETUP: Fix a spelling mistake that JM7 found.
    
    boinc/win_build/installerv2/redist/Windows/src/boinccas
        CAGrantServiceExecutionRight.cpp
        CAVerifyServicePassword.cpp

David  8 Jan 2007
    - user web: say RAM limits enforced in 5.8+;
        use "class=note" instead of "font size=-2"

    html/inc/
        prefs.inc

David  8 Jan 2007
    - core client: fixed crashing bug that happens when attaching
        to a project with wrong URL (e.g. setiathome.ssl.berkeley.edu).
        The fix allows the project to attach but prints a warning.
        It would be better to not allow the attach;
        I'll get back to this later

    client/
        client_types.h
        cs_scheduler.C
        scheduler_op.C

Charlie 8 Jan 2007
    - Mac: update XCode project for new ViewMessagesGrid, ViewProjectsGrid 
        source files.

    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Rom    9 Jan 2007
    - MGR: Fix crashing issue do to invalid type casts, wxWidgets implements
        its own form of type casts for C++ objects which probably uses
        the basic RTTI of the compiler at some level, but it also has a few
        checks and balences as well. So if you get a hankering of using
        dynamic_cast or static_cast use wxDynamicCast and wxStaticCast
        instead.
    - MGR: Remove the ifdefs for SIMPLE GUI, it is now enabled by default
        on all supported platforms.
        
    clientgui/
        AdvancedFrame.cpp
        BOINCGridCtrl.cpp
        BOINCGUIApp.cpp

Rom    9 Jan 2007
    - Win BUILD: Remember, when adding .C files to VS project files, you need
        to change the compiler type to C++ for ALL build configurations.
        
    win_build/
        boinc_dll.vcproj
        boinc_ss.vcproj
        boincmgr_curl.vcproj

Walt   9 Jan 2007
    - core client: Change function that calculates RAM and SWAP used
        by a science project to return the max used by a process
        instead of totaling the process/child processes. Fixes the
        problem where the same RAM and SWAP used gets counted multiple
        times for some science apps.
    
    lib/
        procinfo_unix.cpp

David  9 Jan 2007
    - Manager: get rid of "CPU throttled" messages
    - Manager: enhancements to Statistics tab
        (can click on project name in multi-project view)
        from Mifistor_x

    clientgui/
        ViewStatistics.cpp,h
        ViewWork.cpp
        ViewWorkGrid.cpp
        stdwx.h

David  9 Jan 2007
    - user web: "old news" was broken
        Note to Rytis: when possible, use "foo $var blah",
        not 'foo '.$var.' blah'


    html/inc/
        news.inc

David  9 Jan 2007
    - core: if we're preempting an app and leave it in memory
        because no checkpoint yet, say so in message

    client/
        app_control.C

Charlie 9 Jan 2007
    - MGR: Updates to disk usage pie charts from Frank Weiler.
    
    clientgui/
        ViewResources.cp
        common/
            wxPieCtrl.cpp,h

David  10 Jan 2007
    - core client: fix problems when user aborts result
        (mark it as CPU_SCHED_PREEMPTED so scheduler doesn't
        try to preempt it; that confuses things)
    - changed format of Deferring Comm messages

    client/
        app_control.C
        cs_scheduler.C

David  10 Jan 2007
    - core client: backwards > in PROJECT::some_download_stalled().
        This caused the client to keep fetching work
        from a project with stalled downloads.

    client/
        client_types.C

David  10 Jan 2007
    - manager: fix Unicode build problems
        (from Frank Weiler)

    clientgui/
        ViewStatistics.cpp

David  10 Jan 2007
    - manager: various fixes
        (from Frank Weiler)

    clientgui/
        BOINCGridCtrl.cpp,h
        ViewMessagesGrid.cpp
        ViewProjectsGrid.cpp
        ViewResourcesGrid.cpp
        ViewStatistics.cpp
        ViewTransfersGrid.cpp
        ViewWorkGrid.cpp

David  10 Jan 2007
    - core client: sort daily stats records in case they get
        out of order somehow

    client/
        client_types.h
        cs_account.C

David  10 Jan 2007
    - manager: use user-friendly app names

    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp

Rom    10 Jan 2007
    - SCR: Disable the diagnostic support for release builds of the
        Windows screensaver. A smarter thing to do in the future is
        to write the log files to the 'temp' directory.
        
    client/win/
        win_screensaver.cpp

David  11 Jan 2007
    - Add script to clean up web cache.
        Sometimes the cache gets so full that it takes 30 secs
        just to compute free and used disk space,
        so that normal cleanup times out before it does anything.

    html/ops/
        clean_cache.php (new)

David  11 Jan 2007
    - user web: call set_time_limit(0) in cache_check_diskspace().
        This will hopefully avoid the situation described above.

    html/
        inc/
            cache.inc
        project.sample/
            cache_parameters.inc

David  11 Jan 2007
    - manager: use user-friendly app names (fix to work w/ 5.4.11)

    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp

Rom    11 Jan 2007
    - MGR: Fix build break for Unicode support.

      NOTE: The only place in the manager where it is safe to use 'char'
      variable types for use within a string is in the gui_rpc_* files.
      
      Every where else needs to use wxString, otherwise the manager
      won't build in a unicode based environment.
      
    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp

Rom    11 Jan 2007
    - MGR: Possble fix for the Simple GUI messages dialog?
    
    clientgui/
        sg_DlgMessages.cpp

David  12 Jan 2007
    - Server: change the usage of host.credit_per_cpu_sec
        so that it is the recent average of granted credit per CPU sec,
        as computed by Bruce's update_credit_per_cpu_sec() function
        (finally, a use for hyperbolic trig functions in BOINC).
        Prior to this it was the most recent value of
        claimed credit per CPU sec, which is not as useful.
        Add a new non-DB member to HOST, claimed_credit_per_cpu_sec,
        for this purpose.
    - db_dump.C: export host.credit_per_cpu_sec
    - move update_credit_per_cpu_sec() from lib/util.C to sched/validate_util.C

    Once a few projects pick up this change, it will be useful
    for comparing credit-granting policies between projects
    (for hosts that participate in multiple projects,
    the credit per CPU second should be about the same).

    db/
        boinc_db.C,h
    lib/
        util.C,h
    sched/
        db_dump.C
        handle_request.C
        validate_util.C,h
        validator.C

David  12 Jan 2007
    - manager: don't prepend "(Activities suspended by user)"
        to result status.
        There is no longer a notion of "activities"

    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp

Rom    13 Jan 2007
    - MGR: Streamline the message dialog sync operation a little bit.
    - MGR: Fix crashing issue do to invalid type casts, wxWidgets implements
        its own form of type casts for C++ objects which probably uses
        the basic RTTI of the compiler at some level, but it also has a few
        checks and balences as well. So if you get a hankering of using
        dynamic_cast or static_cast use wxDynamicCast and wxStaticCast
        instead.

    clientgui/
        sg_DlgMessages.cpp
        BOINCGridCtrl.cpp

Reinhard 14 Jan 2007
    - install validate_util.h for external building of validators
    - make dir_hier_move and dir_hier_path output help/usage strings 
    - add help/usage string to validator.C

    sched/
    Makefile.am

    tools/
    dir_hier_move.C
    dir_hier_path.C

    sched/
    validator.C

David  15 Jan 2007
    - core client: lots of debugging messages for cpu_sched (may remove later)
    - Manager: check for ERR_DB_NOT_UNIQUE, not ERR_NONUNIQUE_EMAIL
    - add boinc_UnzipToMemory() (from Reinhard Prix)

    client/
        cpu_sched.C
    clientgui/
        ProjectProcessingPage.cpp
    html/ops/
        sample_server_status.php
    lib/
        common_defs.h
        error_numbers.h
        gui_rpc_client_print.C
        util.C
    zip/
        Makefile.am
        boinc_zip.cpp,h
        unzip/
            api.C

Reinhard 15 Jan 2007
    - add explicit build-rule for client/switcher [required to fix 'make tags']
    - fix boinc_UnzipToMemory() 
    - correctly build unzip-DLL [for use in boinc_UnzipToMemory()]

    client/
        Makefile.am

    zip/
        boinc_zip.cpp
        unzip/
            unzip.c
            api.c


David  15 Jan 2007
    - fix Manager text (see above)

    clientgui/
        ProjectProcessingPage.cpp
    lib/
        error_numbers.h

Rom    15 Jan 2007
    - Update libCurl to 7.16.0 and use sync name resolves instead of async name
        resolves.
        
    curl/
        <numerious files>

David  15 Jan 2007
    - core client: fix a bug that could cause computation to stop.
        The problem: if we suspended a task by sending it a <quit/> message,
        we were changing its scheduler state to CPU_SCHED_PREEMPTED
        but not changing its task state (PROCESS_EXECUTING).
        If, for some reason, the process didn't exit right away,
        the scheduler would treat it as still running,
        since it builds its "currently running" list based on task_state.
        Solution: the scheduler shouldn't be looking at task_state.
        Use scheduler_state instead.
        It's still a mystery why the app wasn't quitting.

    - db_dump: don't write team.nusers; it's meaningless

    client/
        app.C,h
        app_control.C
        cpu_sched.C
    html/user/
        create_account.php
    sched/
        db_dump.C

Walt   15 Jan 2007
    - manager: update makefile for ViewMessagesGrid and 
      ViewProjectsGrid source files.

    clientgui/
        Makefile.am

Rom    16 Jan 2007
    - MGR: Add the help button to the list of images to update when the
        user selects a different skin.
        
    clientgui/
        sg_ProjectsComponent.cpp

David  16 Jan 2007
    - core client: don't try to schedule a task whose state is
        PROCESS_ABORT_PENDING.

    client/
        app.h
        cpu_sched.C

Charlie 16 Jan 2007
    Mac: Fix build script for Curl 7.15.5 (should have been done 
        3 months ago.)
        
    mac_build/
        setupForBOINC.sh

David  17 Jan 2007
    - manager: show correct app name when connected to 5.4.11 client

    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp
        sg_ViewTabPage.cpp

David  17 Jan 2007
    - core client: reset 5-minute timer for network activity
        is user explicitly changes network mode
    - Manager: initial checkin of Advanced Prefs dialog
        (from Frank Weiler)

    client/
        gui_rpc_server_ops.C
    clientgui/
        Makefile.am
        AdvancedFrame.cpp,h
        DlgAdvPreferences.cpp,h
        DlgAdvPreferencesBase.cpp,h
        Events.h
        sg_ViewTabPage.cpp
    win_build/
        boincmgr_curl.vcproj

David  17 Jan 2007
    - fix news formatting

    html/inc/
        news.inc

David  17 Jan 2007
    - don't start benchmarks if they're already running
    - Manager: "Defect from X" -> "Stop using X"

    client/
        cs_benchmark.C
    clientgui/
        AdvancedFrame.cpp
        WelcomePage.cpp

David  17 Jan 2007
    - core client: if starting a file xfer, and file
        is already as large or larger than it should be,
        start transfer from the beginning.
        This fixes some pathological cases found by Rattledagger.

    client/
        file_xfer.C

Charlie 17 Jan 2007
    Mac: add DlgAdvPreferences.cpp,h, DlgAdvPreferencesBase.cpp,h to XCode 
        project.
    Mac Mgr: Fix crash bug when quitting if advanced prefs dialog open.
      Change dialog ID to 10000 (ID_ANYDIALOG).
      
    NOTE: All BOINC dialogs MUST have ID 10000 (ID_ANYDIALOG) or they will 
      cause a crash bug!
      
    clientgui/
        DlgAdvPreferencesBase.h
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Charlie 18 Jan 2007
    MGR: Begin changes for wxWidgets 2.8.0.  For now, compatibility with 
        wxWidgets 2.6.3 is provided by using "#if wxCHECK_VERSION(2,8,0)" 
        where needed.  These conditional compilations should be removed 
        when the transition to 2.8.0 is complete.
    MAC: remove XCode project's target to build non-SimpleGUI manager.

    clientgui/
        BOINCGUIApp.cpp
        BOINCTaskBar.cpp
        MacSysMenu.cpp,h
        sg_BoincSimpleGUI.cpp
        sg_ImageButton.cpp
        sg_ViewTabPage.cpp
        wizardex.cpp
        common/
            wxPieCtrl.h
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

David  18 Jan 2007
    - core client: don't garbage-collect a RESULT if an ACTIVE_TASK for it
        still exists.  In principle this shouldn't happen, but maybe it is.
    - limit duration correction factor to the range 0.01 .. 100

    client/
        client_state.C
        client_types.C
        cs_scheduler.C

Eric K 18 Jan 2007
    - mem_usage.C Bug fix:  procfs access cannot use 64 bit files under solaris
    - Added solaris application working set calculation
    - Fixed problem on solaris when _FILE_OFFSET_BITS was set before testing
      for procfs.h
    - Removed assumption of 4k pages in procinfo_unix.C

    lib/
      procinfo_unix.C
      mem_usage.C
    configure.ac

David  18 Jan 2007
    - Manager: tweaks to advanced prefs dialog and Disks tab
        (from Frank Weiler)

    clientgui/
        DlgAdvPreferences.cpp,.fbp,.h
        DlgAdvPreferencesBase.cpp,.h
        ViewResources.cpp
        common/
            wxPieCtrl.cpp,h
        res/
            warning.xpm (new)

Charlie 19 Jan 2007
    MGR: Complete my changes for wxWidgets 2.8.0.  
    NOTE: I am aware of 3 bugs with wxWidgets 2.8.0 on the Mac:
        - New pie chart tooltips work with wxMac-2.6.3 but not wxMac-2.8.0.
        - Main SimpleGUI window tasks area has problems with alignment, so  
           task tabs are obscured.
        - Column width settings are not saved / restored.

    clientgui/
        BOINCBaseFrame.cpp
        BOINCGUIApp.cpp
        BOINCTaskBar.cpp
        sg_DlgPreferences.cpp
        stdwx.h
        mac/
            MacSysMenu.cpp
        common/
            wxPieCtrl.cpp,h
    mac_build/
        buildWxMac.sh
        setupForBoinc.sh
        HowToBuildBOINC_XCode.rtf
        wxMac-BOINC.xcodeproj/
            project.pbxproj
        boinc.xcodeproj/
            project.pbxproj

Walt   19 Jan 2007
    MGR: Fix compiler error: GetTaskBarIcon isn't used in Linux

    clientgui/
        BOINCBaseFrame.cpp

Rom    19 Jan 2007
    - MGR: Make sure the result records have been updated before
        displaying the taskbar balloon.
        
    clientgui/
        BOINCTaskBar.cpp

Rytis   19 Jan 2007
    - user web: correct RSS feed link type to make IE7 and Safari recognise the
        feed.
        
    html/
        inc/
            util.inc
        user/
            sample_index.php

David  19 Jan 2007
    - lib: change retry logic for file system ops
        so that it does does at least 5 retries
        AND takes at least 5 seconds.

    lib/
        filesys.C

David  19 Jan 2007
    - core client: if resuming a persistent file xfer,
        don't print error messages if file has wrong
        size/checksum/signature.
        That's a normal condition is a file xfer was interrupted.

    client/
        client_types.C,h
        cs_apps.C
        cs_files.C
        pers_file_xfer.C

David  19 Jan 2007
    - core client: print more info if MFILE vsnprintf() is too big for buffer

    lib/
        mfile.C

Rom    19 Jan 2007
    - MGR: If the manager detects that the CC has crashed, and it was the one
        who started the CC to begin with, restart the CC after 30 seconds.
    - MGR: Cleanup some of the taskbar interactions where both the tooltip and
        balloon were being displayed on Windows. Only one should be shown.
    - MGR: Allow arguments to be passed to the CC from the manager's parameter
        list. /b "..." or /boincargs "..." should work.
        
    clientgui/
        AdvancedFrame.cpp
        BOINCBaseFrame.cpp
        BOINCGUIApp.cpp, .h
        BOINCTaskBar.cpp
        MainDocument.cpp
        ViewResources.cpp

Rom    21 Jan 2007
    - CC: Add <p_identifier> to HOST_INFO which contains the family, model, and
        stepping of the processor for Windows.
        
        Example: <p_identifier>x86 Family 15 Model 2 Stepping 7</p_identifier>
    - DIAG: Fix an uninitialized string issue that cropped up after removing the
        forground window information from the diagnostic output.
    
    client/win/
        hostinfo_win.cpp
    lib/
        diagnostics_win.C
        hostinfo.C, .h

Walt   19 Jan 2007
    - MGR: take Close() function call out of #if/#endif block so the manager
       exits when the 'exit' menu item is selected.
        
    clientgui/
        BOINCBaseFrame.cpp

Charlie 22 Jan 2007
    MGR: wxPieCtrl changes from Frank Wieler.  
    MAC: Set up XCode project so Development builds can  optionally use wxMac-2.8.8 
         Debug build.  Add "#define USE_DEBUG_WXMAC 0" to precompiled header file.
         See comments at top of MacGUI.pch for instructions to enable or disable this.
    MAC: Work around bugs in wxMac-2.8.0 implementation of wxListCtrl::SetColumn() 
         which failed to restore proper column widths from saved info.  The default 
         wxListCtrl in wxMac-2.8.0 uses DataBrowser, but allows us to select the 
         traditional generic implementation with a wxSystemOptions::SetOption() call.

    clientgui/
        BOINCGUIApp.cpp
        common/
            wxPieCtrl.cpp
        mac/
            MacGUI.pch
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Rom    22 Jan 2007
    - CC: Merge CPU capability, generation, and model information into the p_model
        field of HOST_INFO per David's instructions.
        
        NOTE: The finished product should look like this:
        "Intel(R) Xeon(TM) CPU 3.06GHz [x86 Family 15 Model 2 Stepping 7] [fpu tsc "
        "sse sse2 mmx]"
        
    client/win/
        hostinfo_win.cpp
    lib/
        hostinfo.C,.h

Matt    22 Jan 2007
    - initial db changes for special "developer blog" pages
      (adding "is_dev_blog" to forum table)

    db/
        schema.sql
    html/ops
        db_update.php

Matt    22 Jan 2007
    - remaining development of dev blog stuff

    html/
       inc/
          forum_forum.inc
       user/
          forum_post.inc

David  22 Jan 2007
    - API: use boinc_fopen() instead of fopen() in
        string variant of boinc_resolve_filename()

    lib/
        app_ipc.C

Charlie 23 Jan 2007
    - CC: Update the HOST_INFO for Intel and PowerPC Macs per David's 
        and Rom's instructions.

    client/
        hostinfo_unix.C

David  23 Jan 2007
    - core client: fix get_host_info() for Unix
    - core client: update APP::user_friendly_name from scheduler RPC reply
    - core client: print error msg if get negative CPU time
        or checkpoint CPU time from app
    - core client: ACTIVE_TASK::runnable(): not runnable if
        exited, aborted, signaled etc.
    - core client: fix "app exits for unknown reason" case (Unix)

    client/
        app.h
        app_control.C
        cs_scheduler.C
        hostinfo_unix.C

David  23 Jan 2007
    - manager: fix task status text

    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp

Rom    23 Jan 2007
    - MGR: When connecting to a remote machine, don't reset the computer name
        and password back to the local machine during the reconnect state.
        
    clientgui/
        MainDocument.cpp, .h

Rom    23 Jan 2007 (HEAD)
    - Tag for 5.9.1 release, all platforms
      boinc_core_release_5_9_1

David  23 Jan 2007
    - server: extend the "simple validator framework" to require
        an additional function, compute_granted_credit().
        Previously it always used median_mean_credit().
        Projects: if you don't have any special needs,
        define compute_granted_credit() to just return median_mean_credit().

    sched/
        sample_bitwise_validator.C
        sample_trivial_validator.C
        validate_util2.C,h
        validator_placeholder.C

David  23 Jan 2007
    - core client: allow
        <link rel="boinc_scheduler" href="http://a.b.c">
        in project master files, as an alternative way
        of denoting scheduler URLs.
        If at some point all clients upgrade to this version or later,
        we can get rid of the old syntax <scheduler>X</scheduler>

    client/
        scheduler_op.C
    lib/
        util.C,h

David  23 Jan 2007
    - core client: added <work_request_factor> configuration option.
        Multiplies work requests.
        Use values > 1 if your computer often runs out of work
        while disconnected.
        
    client/
        cs_scheduler.C
        log_flags.C,h

David  24 Jan 2007
    - core client: in error message for unexpected active task,
        include result name

    client/
        client_state.C

David  24 Jan 2007
    - manager: code cleanup (from Frank Weiler)

    clientgui/
        ViewResources.cpp
        common/
            xwPieCtrl.cpp,h

David  24 Jan 2007
    - core client: when preempt a task by quit,
        don't set task state to UNINITIALIZED;
        do that when the process exits.
        Other code cleanup.
    - create_project: put new-style scheduler tags in schedulers.txt

    api/
        windows_opengl.C
    client/
        app.C
        app_control.C
    py/Boinc/
        setup_project.py

David  24 Jan 2007
    - core client: tweak messages

    client/
        app_start.C
        cs_apps.C

Rom    24 Jan 2007
    - MGR: _("") causes poEdit to throw warnings, change them to wxT("").
    
    clientgui/
        DlgAdvPreferencesBase.cpp

David  24 Jan 2007
    - core client: the task_debug message flag now prints
        all transitions of ACTIVE_TASK::task_state and RESULT::state

    client/
        app.C,h
        app_control.C
        app_start.C
        client_state.C
        client_types.C,h
        cs_apps.C
        cs_scheduler.C

David  24 Jan 2007
    - core client: fix compile warnings, get rid of cs_data.C, message tweak

    client/
        Makefile.am
        app_control.C
        client_state.h
        cs_data.C
        scheduler_op.C

Rom    25 Jan 2007
    - MGR: Do not refresh the Simple GUI when the manager is hidden.
    
    clientgui/
        sg_BoincSimpleGUI.cpp

David  25 Jan 2007
    - Manager: use a scientifically chosen set of colors
        for disk pie charts

    clientgui/
        ViewResources.cpp
        common/
            wxPieCtrl.cpp
    win_build/
        boinc_dll.vcproj

David  25 Jan 2007
    - core client: there was logic that wouldn't start a result
        for a project if it had > 2 active uploads
        (intended to prevent an unbounded buildup of files
        for a project whose upload server is broken).
        This was never triggered since the default is 2 active
        transfers per project.
        Maybe I meant persistent file transfers.
        In any case, this is a bad policy because there may be
        a project with lots of output files per result, possibly large,
        and there's no reason to keep it from computing.
        So instead, I changed it to not start a result from a project
        if its number of results in FILES_UPLOADING state exceeds 2*ncpus.

    client/
        client_state.h
        client_types.h
        cpu_sched.C
        cs_scheduler.C
    clientgui/
        AdvancedFrame.cpp

David  25 Jan 2007
    - core client and manager: reorganize message priorities.
        There are now three priorities:
        MSG_USER_ERROR
            Conditions that require user intervention.
            These messages are written for non-tech users,
            and tell the user exactly what to do.
            GUI: red letters
        MSG_INTERNAL_ERROR
            Conditions that may indicate a problem or bug in BOINC itself,
            or with a BOINC project or account manager.
            The message is prepended with "[error]".
            GUI: black letters
        MSG_INFO
            All other messages.
            GUI: black letters

        Note: all messages that must be enabled by cc_config.xml
        use MSG_INFO priority

    client/
        *.C
    clientgui/
        ViewMessages.cpp
        ViewMessagesGrid.cpp
        sg_ProjectComponent.cpp
    lib/
        common_defs.h
    py/Boinc/
        setup_project.py

Rom    25 Jan 2007
    - MGR: Flip the sorting icons for the Grid Control.
    - WIN: Remove the Release (SIMPLEGUI) and Debug (SIMPLEGUI) configurations
        since we'll only be releasing future version with the Simple GUI included.
        
    clientgui/
        BOINCGridCtrl.cpp
    win_build/
        *.sln
        *.vcproj

Rom    26 Jan 2007
    - WIN: Fix build breaks since not all configurations in all components were
        kept in sync.
    - MGR: Remove legacy tabs.
    
    clientgui/
        AdvancedFrame.cpp
        ViewProjectsGrid.cpp
        ViewTransfersGrid.cpp
        ViewWorkGrid.cpp
    win_build/
        *.sln
        *.vcproj

Rom    26 Jan 2007
    - MGR: Fix the OnFrameRender function in the Simple GUI, some of the logic in it
        blows out of the function with a return which was leaving the static variable
        that was guarding against repeated executions to true. This in turn kept
        the GUI from updating.
        
    clientgui/
        sg_BoincSimpleGUI.cpp

Charlie 26 Jan 2007
    - MAC: Remove cs_data.C from XCode project.  Change MSG_ERROR to 
        MSG_INTERNAL_ERROR in Mac-specific source file.

    lib/
        procinfo_mac.C
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Rom    26 Jan 2007
    - Remove wxAnimate since it isn't used anywhere.
    - MGR: Add a new menu item that'll shutdown the core client that the manager is
        connected too. It'll prompt for a new computer afterwords.
    
    clientgui/common/
        wxAnimate.cpp, .h (Removed)
    clientgui/
        AdvancedFrame.cpp, .h
        Events.h
    win_build/
        boincmgr_curl.vcproj
        boincmgr_curl_2003.vcproj

David  26 Jan 2007
    - core client: another attempt at fixing the problem
        where a project is issuing work but not uploading files.
        New solution: don't fetch work from a project with
        more than 2*ncpus results in FILES_UPLOADING state.

        Note: this doesn't address John McLeod's point that
        we shouldn't increase LTD for projects in this state.
    - file upload handler: print more accurate message when
        fread() returns less than requested

    client/
        client_state.h
        cpu_sched.C
        cs_scheduler.C
    sched/
        file_upload_handler.C

David  26 Jan 2007
    - oops!  left out one line in the above

    client/
        cs_scheduler.C

David  26 Jan 2007
    - core client: if account manager reply doesn't specify resource share
        for a project, revert to the share from project server

    client/
        acct_mgr.C

Walt   28 Jan 2007
    - MGR: fixed bug in dialog options where it doesn't set the slider size 
        automatically.  This is a bug in wxGTK so for Linux set the size
        explicitly.
    
    clientgui/
        DlgOptions.cpp

Rom    28 Jan 2007
    - MGR: Performance Improvements for Projects tab.
        (from Frank Weiler)

    clientgui/
        BOINCGridCtrl.cpp, .h
        ViewProjectsGrid.cpp, .h

David  29 Jan 2007
    - core client: fix account-manager resource share logic
    - manager: Statistics tab fixes (from Mifistor)

    client/
        client_state.C
        client_types.C
    clientgui/
        ViewStatistics.cpp

David  29 Jan 2007
    - user web: prevent cross-site request forgeries
    - core client: make sure that RAM limits are not zero

    client/
        cs_prefs.C
    html/
        inc/
            host.inc
            prefs.inc
            user.inc
            util.inc
        user/
            add_venue.php
            host_delete.php
            logout.php
            prefs_edit.php
            prefs_remove.php
            show_host_detail.php
    lib/
        prefs.C

Rom    29 Jan 2007
    - MGR: Update default BOINC skin.
    
    clientgui/res/skins/default/graphic
        *.xpm
    clientgui/res/templates/skins
        *.png

David  29 Jan 2007
    - core client: on Unix, raise app stack size limit to max possible value
        before exec'ing the program.

    client/
        app_start.C
    html/inc/
        prefs.inc

David  29 Jan 2007
    - Manager: fix crash if select a project that doesn't have
        a name yet.  There were two separate problems:
        1) CMainDocument::project() was searching by name
            but not by master URL
            (BTW: all that at(), out-of-range exception stuff
            isn't needed, or the cut-and-pasted comment).
        2) CViewProjects::UpdateSelection() (and its grid counterpart)
            were checking for project == NULL
            some of the time, but not all the time

    clientgui/
        MainDocument.cpp
        ViewProjects.cpp
        ViewProjectsGrid.cpp

Rom    30 Jan 2007
    - MGR: Give the user a change to abort a core client shutdown when they
        select 'shutdown current client'.
    - MGR: Special case the authorization error dialog when it is attempting
        to use the default password, so that it also informs the user they
        need to run the manager from the same directory as the CC.
        
    clientgui/
        AdvancedFrame.cpp, .h
        BOINCBaseFrame.cpp, .h
        MainDocument.cpp, .h
        
David  30 Jan 2007
    - Support projects that want to specify credit per WU can do so by:
        1) add a <credit>x</credit> element to your WU template,
            or pass an 'additional_xml' argument containing
            <credit>x</credit> to create_work()
            (either the function or the program)
        2) change your validator so that compute_granted_credit()
            calls get_credit_from_wu().
            This parses the <credit> element in the workunit's XML,
            and grants that much credit.
    - Change the simple validator framework so that an
        additional WORKUNIT& is passed to compute_granted_credit().

    sched/
        handle_request.C
        sample_bitwise_validator.C
        sample_trivial_validator.C
        sched_config.C,h
        transitioner.C
        validate_util.C,h
        validate_util2.C,h
        validator_placeholder.C
    tools/
        backend_lib.C,h
        create_work.C

David  30 Jan 2007
    - Unix: when increasing stack size for apps, don't exceed 500 MB

    client/
        app_start.C

David  30 Jan 2007
    - manager: fix progress bars for project resource shares
        (from Frank Weiler)

    clientgui/
        ViewProjectsGrid.cpp,h

David  30 Jan 2007
    - core client: computation of duration_correction_factor was messed up.
        E.g. when the correct value is .5, it converges to sqrt(.5)

    client/
        client_types.C

David  31 Jan 2007
    - core client: tweak DCF update computation

    client/
        client_types.C

David  31 Jan 2007
    - core client (Unix): tweak stack-size logic,
        and don't bump stack size limit beyond 64K

    client/
        app_start.C

David  2 Feb 2007
    - core client: fix bug where client thinks an app is running but it isn't.
        Basic problem: there are two layers
        1) process control: start/stop/suspend/resume, handle exits.
            files: app_*.C
            It owns ACTIVE_TASK::task_state
        2) CPU scheduling: decide what should run
            files: cpu_sched.C
            It owns ACTIVE_TASK::scheduler_state.
        These layers weren't cleanly separated;
        e.g. the CPU sched layer relied on the process control layer
        to set scheduler_state in some cases,
        and this wasn't always being done.
        I fixed this; the layers are now separated.
        Also: added new task_state value, PROCESS_QUIT_PENDING
    - core client: small tweak to DCF calculation
    - core client: comment out stack-size stuff
        
    client/
        app.C,h
        app_control.C
        app_start.C
        client_types.C
        cpu_sched.C
    languages/translations/
        en.po

David  2 Feb 2007
    - DB schema: added some "default 0"s.
        Not worth putting in db_update.php
    - DB schema: removed core_version table
    - core client: print error messages if gethostbyname() fails
        for entries in remote_hosts.cfg
    - python code: updated DB table defs (not sure this matters)
    - python code: removed references to core_version table (doesn't exist)
    - Manager
        changed "defect" to "stop using"
        changed 2006 to 2007
    - core client (Unix): removed code for SIGTSTP and SIGCONT.
        never got it to work, don't need anyway;
        handle SIGPWR.

    client/
        gui_rpc_server.C
        main.C
    clientgui/
        AdvancedFrame.cpp
        DlgAbout.cpp
    db/
        schema.sql
    languages/translations/
        en.po
    lib/
        network.C
    py/Boinc/
        add_util.py
        database.py
        db_mid.py

Charlie 2 Feb 2007
    - MGR: Fix compiler warning.
    
    clientgui/
        ViewProjectsGrid.cpp

David  4 Feb 2007
    - core client: print message if task finishes and output file is missing

    client/
        cs_apps.C

David  4 Feb 2007
    - manager: compile fix

    clientgui/
        ViewWorkGrid.cpp

David  6 Feb 2007
    - core client: when new version runs for the first time,
        do a network access to reference site.
        This will trigger personal firewall alerts,
        that otherwise might happen later when user is not there.

    client/
        client_state.C

David  6 Feb 2007
    - core client: add messages to debug CPU benchmarks
    - changed name of debug flag from <measurement_debug> to <benchmark_debug>

    client/
        client_state.C
        cs_benchmark.C
        log_flags.C,h

David  6 Feb 2007
    - validator framework: the get_credit_from_wu() mechanism didn't work
        because the WU's xml_doc wasn't among the fields ready by
        DB_VALIDOR_ITEM_SET.  Read it separately.

    db/
        db_base.C,h
    sched/
        validate_util.C

Rom    7 Feb 2007
    - SS: Remove reference to the Climate Change Experiment when the client is
        being built for WCG.
        
    client/win/
        boinc_ss.rc

Rom    7 Feb 2007
    - *nix: Attempt to handle the various optimation flags better by default.
    
    client/
        Makefile.am

David  7 Feb 2007
    - fix PHP 4 problem

    html/inc
        forum_email.inc

David  8 Feb 2007
    - core client: fix bug where screensaver would turn on an off
        if CPU throttling being used

    client/
        ss_logic.C

Rytis  8 Feb 2007
    - Forum pages: fix a cross site scripting vulnerability.

    html/
        inc/
            forum.inc
            forum_moderators.inc
            user.inc
            util.inc
        user/
            forum_edit.php
            forum_moderate_post.php
            forum_moderate_post_action.php
            forum_moderate_thread.php
            forum_moderate_thread_action.php
            forum_post.php
            forum_reply.php
            forum_report_post.php
            forum_subscribe.php
            forum_thread.php

David  8 Feb 2007
    - core client: fix bug that causes tasks to hang
        (not running, but BOINC thinks it is) on Windows

    client/
        app.C
        app_control.C

Rom    8 Feb 2007
    - MGR: Add simple validation for the authenticator returned by
        InternetGetCookie.
        
    clientlib/win/
        AuthenticatorDetection.cpp
        stdafx.h

David  8 Feb 2007
    - core client: when a scheduler reply has a FILE_INFO for a
         file for which we already have a FILE_INFO record,
         overwrite the file_signature field only if the
         new record actually has one.

         This fixes a bug where a project used the same file in
         both an APP_VERSION and a WORKUNIT.
         The scheduler reply contained two <file_info> elements for the file;
         the first had a signature, the second didn't.
         The second one overwrote the first,
         and the app version was rejected because one its file wasn't signed.

    client/
        client_types.C

David  9 Feb 2007
    - core client: don't print misleading error messages when reference
        site access succeeds on initial startup.
    - core client: a few more messages for <benchmark_debug>

    client/
        client_state.C
        cpu_benchmark.h
        cs_benchmark.C
        dhrystone.C
        net_stats.C,h
    win_build
        boinc_cli_curl.vcproj

Rom    12 Feb 2007
    - WININSTALL: Force the termination of BOINC and BOINCMGR if we could
        not gracefully shut them down.
        
    win_build/installerv2/redist/Windows/src/boinccas/
        CAShutdownBOINC.cpp
        CAShutdownBOINCManager.cpp
        boinccas.def
        boinccas.rc
        boinccas.vcproj
        boinccas95.def
        boinccas95.vcproj
        stdafx.h
        terminate.cpp, .h (Added)
    win_build/installerv2/redist/Windows/x86
        boinccas.dll
        boinccas95.dll

David  12 Feb 2007
    - Win build fix (from Carl)

    win_build/
        boinc_zip.vcproj

David  12 Feb 2007
    - core client, Unix: add '[Family x Model x Stepping x]' in p_model string.
        This will enable better homogeneous redundancy resolution

    client/
        hostinfo_unix.C

David  13 Feb 2007
    - put zip project in the right place

    win_build/
        boinc_zip.vcproj (removed)
    zip/
        boinc_zip.vcproj

David  13 Feb 2007
    - Back end: change some of the daemons to use the "read uncommitted"
        transaction isolation mode.
        This means that their result sets are not locked,
        which (at least on SETI@home) greatly boosts the performance
        of the MySQL server.
        See:
        http://dev.mysql.com/doc/refman/5.1/en/innodb-transaction-isolation.html

    db
        db_base.C,h
    sched/
        db_dump.C
        feeder.C
        file_deleter.C
        update_stats.C
    tools/
        upgrade

Charlie 14 Feb 2007
    - MAC: If relaunching AppStats due to an error, close any open 
        file descriptors (we communicate with AppStats via a bidirectional 
        pipe.)

    lib/
        procinfo_mac.C

David  14 Feb 2007
    - make test_sanity.py work again

    test/
        testbase.py

Rom    14 Feb 2007
    - WININSTALL: Force the termination of BOINC.SCR if we could
        not gracefully shut it down.
        
    win_build/installerv2/redist/Windows/src/boinccas/
        CAShutdownBOINC.cpp
        CAShutdownBOINCManager.cpp
        CAShutdownBOINCScreensaver.cpp, .h
        boinccas.def
        boinccas.vcproj
    win_build/installerv2/redist/Windows/x86
        boinccas.dll
        boinccas95.dll

Rom    14 Feb 2007
    - Linux: Prevent crash by initializing the Taskbar pointer, even
        though the Linux Boincmgr currently doesn't support that feature.
        
        (from Pav Lucistnik)
        
    clientgui/
        BOINCGUIApp.cpp

David  15 Feb 2007
    - core client: don't print "finish file not found" message
        when app quits because of preemption
    - initial checkin for client simulator
    - add support for page-level translation

    client/
        app_control.C
        cpu_sched.C
        makefile_sim
        sim.C,h
    html/inc/
        page_translate.inc
    sched/
        sched_send.C

David  15 Feb 2007
    - core client: fix bug where if a task is aborted
        (e.g. because it exceeds CPU limit)
        it's restarted on the next enforce_schedule().
        The problem: we're deleting the ACTIVE_TASK,
        but the result is still in the ordered_scheduled_results list.
        The solution: call request_schedule_cpus() in
        handle_finished_apps() when an ACTIVE_TASK is deleted.

    client/
        cs_apps.C
        makefile_sim

Rom    17 Feb 2007
    - WININSTALL: Use the Unicode version of ShutdownBOINCManager on NT based
        platforms and use the ANSI version on 9X based platforms.
        
    win_build/installerv2/redist/Windows/src/boinccas/
        CAShutdownBOINCManager.cpp
        boinccas95.def
        boinccas95.vcproj
    win_build/installerv2/redist/Windows/x86
        boinccas.dll
        boinccas95.dll

Charlie 19 Feb 2007
    - MAC: Eliminate use of AppStats helper application, which needed to be 
        run setuid root.  We weren't using the extra items it returns, so 
        revert to older method of using popen(ps ...).
    - MAC Installer: Add debugging statements to postinstall, postupgrade 
        scripts
    
    client/
        check_security.C
        file_names.h
    clientgui/
        mac/
            SetupSecurity.cpp
    lib/
        procinfo_mac.C
    mac_build/
        boinc.xcodeproj/
            project.pbxproj
    mac_installer/
        postinstall
        postupgrade
        release_boinc.sh
        release_GridRepublic.sh

David  19 Feb 2007
    - core client: when resetting or detaching a project,
        if a file transfer was active for a project file,
        the file delete would fail because Curl still has the file open.
        This would cause the manager to freeze for N*5 seconds.
        Fix: in CLIENT_STATE::reset_project(),
        delete FILE_XFER and PERS_FILE_XFER objects.
    - core client: the limits on numbers of simultaneous file transfers
        (total and per-project)
        now apply to uploads and downloads separately.
        We don't want a situation where an upload is blocked
        because there are N downloads.

    client/
        client_state.C
        cs_files.C

Rom    20 Feb 2007
    - core client: When we go to kill a science applicaton, make sure
        all of the science applications child processes are killed
        too.
        
      NOTE: This was already implemented once, what happened to the
        previous implementation?
        
    client/
        app_control.C
    lib/
        win_util.C, .h

Rom    20 Feb 2007
    - core client: If a compound application's main applicaton gracefully
        exits but doesn't shutdown its child applications for some reason,
        forcefully terminate them. (Windows only)
        
    client/
        app.h
        app_control.C

Charlie 20 Feb 2007
    MAC: Better work-around for bugs in wxMac-2.8.0 wxListCtrl::SetColumn() 
         which failed to restore proper column widths from saved info than my 
         fix of 22 Jan.  Use the new DataBrowser implementation of wxListCtrl, 
         but add calls to SetColumnWidth() and GetColumnWidth().
    - Mac: Remove obsolete files ViewTransfers.cpp,.h, ViewWork.cpp,.h, 
        ViewProjects.cpp,.h from XCode project.

    clientgui/
        BOINCGUIApp.cpp
        BOINCListCtrl.cpp
        sg_DlgMessages.cpp
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Charlie 21 Feb 2007
    MAC: Manager writes wxWidgets version to stdout for debugging (before 
        redirecting stdout to stdoutgui.txt file.)

    clientgui/
        BOINCGUIApp.cpp

David  21 Feb 2007
    - split out string-related utility functions into a new file, str_util.C
    - more work on simulator
    - Add "Holy See" to country list

    api/
        gutil_text.C
    client/
        *.C
    db/
        *.C
    lib/
        *.C
    sched/
        *.C
    tools/
        backend_lib.C

David  21 Feb 2007
    - core client: if benchmark time is in the future (due to user tweak)
        always run benchmarks

    client/
        cs_benchmark.C

David  21 Feb 2007
    - core client: split out work-fetch code into a separate file

    client/
        work_fetch.C (new)

David  21 Feb 2007
    - windows compile fixes

    client/
        cs_statefile.C
        win/
            hostinfo_win.cpp
    clientgui/
        (several).cpp
    lib/
        diagnostics_win.C
    win_build/
        boinc_cli_curl.vcproj
        boinc_ss.vcproj
        boincmgr_cur.vcproj
        libboinc.vcproj

David  21 Feb 2007
    - code shuffling to get simulator to compile (it does now)

    client/
        app.C
        app_control.C
        client_types.C
        cpu_sched.C
        cs_apps.C
        cs_statefile.C
        makefile_sim
        net_stats.h
        sim.C,h

Bruce 22 Feb 2007
    - fix scan format bug in reading proc info (UNTESTED!)
      [David, Rom, should we add an ERR_SCANF to errnum.h ?]
    - insert shmem hack for E@H

    lib/
        procinfo_unix.C
        shmem.C

David  22 Feb 2007
    - add <checkpoint_debug> message flag; shows when apps checkpoint.

    client/
        app.h
        app_control.C
        log_flags.C,h
        sim.C

David  22 Feb 2007
    - core client, Win: set processor affinity mask for benchmark threads

    client/
        cs_benchmark.C

Charlie 22 Feb 2007
    Mac: add str_util.C,h, work_fetch.C to XCode project.

    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Charlie 23 Feb 2007
    Mac: Create new OSXIdleTime() function to replace deprecated NxIdleTime() API; 
    client/
        hostinf_unix.C
        main.C
    lib/
        hostinfo.h

David  23 Feb 2007
    - scheduler: remove <?xml> tag at the start of scheduler reply.
        This apparently breaks 4.19 clients

    client/
        client_state.h
        sim.C,h
    sched/
        server_types.C

David  23 Feb 2007
    - core client: disable connection caching in Curl.
        This may reduce cases where file uploads hang
        because a server process holds file lock.
    - manager: fix status text for file transfers

    client/
        http_curl.C
    clientgui/
        ViewTransfers.cpp
        ViewTransfersGrid.cpp

David  23 Feb 2007
    - core client: add bool detach_when_done to PROJECT.
        If set, detach from project when it has not results
        (i.e. when all work is finished and acknowledged).
        Save/restore in client state file.
    - core client: add optional <detach_when_done>
        and <dont_request_more_work> flags to account element
        in account manager reply messages.
        See acct_mgt.php

    client/
        acct_mgr.C,h
        client_state.C,h
        client_types.C,h
    sched/
        handle_request.C

David  23 Feb 2007
    - client simulator: wrote more code, added Windows project

    client/
        sim.C,h
        work_fetch.C
    win_build/
        boinc.sln
        sim.vcproj

David  24 Feb 2007
    - boinc_cmd: change --lookup_account and --create_account commands
        so that they poll until the operation is done,
        and then show a meaningful result (e.g. an account key).
        Remove --lookup_account_poll and --create_account_poll commands
    - more work on simulator

    client/
        client_types.C
        cpu_sched.C
        sim.C,h
        work_fetch.C
    lib/
        boinc_cmd.C
        gui_rpc_client.h
        gui_rpc_client_print.C
        parse.C
        str_util.C

David  24 Feb 2007
    - core client: when detach from a project, delete its
        sched_request, sched_reply, and master files

    client/
        client_state.C

Bruce 25 Feb 2007
    - scheduler: stop logging error messages about unrecognized
      <no_forum_rating> tag.
    - locality scheduler: when getting a working set file name
      using glob(3), do not glob multiple times, possibly getting
      back the same file name again.  Instead glob once and then
      randomly choose file names, crossing items off the list one
      at a time. Note: I wrote this code using STL vectors and
      strings, but now regret this: the necessary vector insertions
      are potentially inefficient..  Sometime next week I will 
      recode this using a C-style pointer arrays with guaranteed O(1)
      efficiency.  But I want to get this into CVS while it's
      working.
    - locality scheduler: fix is_host_slow() function following
      David's Jan 12 checkins to use claimed_credit_per_cpu_sec.

    sched/
        sched_config.C
        sched_locality.C

Charlie 25 Feb 2007
    Mac: Fix OS 10.3 bug in new OSXIdleTime() function. 
    Win: Fix check mark on Snooze taskbar menu item on Windows XP
    
    client/
        hostinf_unix.C
    clientgui/
        BOINCTaskBar.cpp

Charlie 26 Feb 2007
    Mac: Fix OS 10.3.x permissions problem when running debug build; 
        this problem caused shared memory communications to fail between 
        client and project applications. 

    client/
        check_security.C
    clientgui/
        mac/
            SetupSecurity.cpp

Charlie 27 Feb 2007
    Mac: Add an optional argument to HOST_INFO::users_idle() to allow 
        returning the actual idle time.  This change is __APPLE__ only.
    Mac: Fix serious bugs in Mac_SA_Insecure.sh and Mac_SA_Secure.sh 
        scripts when run under OS 10.3.x.  They sometimes created bad 
        users and groups with IDs that were duplicates of other users 
        and groups.  They ran correctly under OS 10.4.x.
        Users who ran an older version of either script under OS 10.3.x 
        should first run the current version of Mac_SA_Insecure.sh to 
        delete the bad entries and then run Mac_SA_Secure.sh to create 
        new good entries.
        
    client/
        hostinf_unix.C
    lib/
        hostinfo.h
    mac_build/
        Mac_SA_Insecure.sh
        Mac_SA_Secure.sh

Bruce 27 Feb 2007
    Scheduler: stop complaining about some unrecognized tags.

    sched/
        server_types.C

Charlie 28 Feb 2007
    SANDBOX: only the super-user can send signal to another user's process. 
        Core client runs as user boinc_master, but project applications run 
        as user boinc_project, so ACTIVE_TASK::kill_task() probably could not
        work as written.  I added code which uses switcher helper application 
        to kill the tasks, but also left in the direct kill call just to be 
        safe.
    Note: CBOINCGUIApp::ShutdownBOINCCore() probably has this same problem, 
        but this kill() is only used in extraordinary circumstances. 
     Mac: The Mac screensaver launches the core client if not already running.
        In this case, it used to kill the cc when screensaver was dismissed.
        But Mac OS X dismisses screensavers when energy saver puts displays 
        to sleep, so we want cc to then continue running.  New code launches 
        cc with -saver argument, lets cc run when saver quits.  New logic in 
        cc quits if (launched by screensaver) and (recent user activity) and 
        (parent [screensaver] has exited).  This takes into account that if 
        user invoked screensaver by moving mouse into "hot corner" there will 
        be recent user activity.  Added logic to screensaver to relaunch cc in 
        case of certain race conditions (e.g., screensaver started, dismissed, 
        restarted in rapid succession.)
    - Mac Manager: add -launched_by_manager arg when launching core client.
        
    client/
        app_control.C
        cs_prefs.C
    clientgui/
        BOINCGUIApp.cpp
        mac/
            mac_saver_module.cpp

David  3 Mar 2007
    - core client: add "get project list" RPC, called every 2 weeks
    - fix a few compiler warnings from gcc 4.1
    - more simulator work

    client/
        acct_mgr.C
        acct_setup.C,h
        app_control.C
        client_state.C,h
        client_types.C
        cpu_sched.C
        cs_cmdline.C
        cs_statefile.C
        file_names.h
        gui_rpc_server.C
        scheduler_op.C
        sim.C
    html/inc/
        stats_sites.inc

David  4 Mar 2007
    - API: use a mutex instead of a boolean variable for
        mutual exclusion during checkpoint.
        This should fix a race condition that can result in
        applications being suspended and not responding to resume messages

    api/
        boinc_api.C,h

David  4 Mar 2007
    - GUI RPC: add several scheduling-related items
        (not used by Manager, but possibly useful for 3rd-party GUIs)

        // tells you if a result is running in EDF mode
        bool RESULT::edf_scheduled

        // the following were already in the XML but not parsed
        // into the C structs
        double PROJECT::short_term_debt
        double PROJECT::long_term_debt
        double PROJECT::duration_correction_factor

    client/
        client_types.C,h
        cpu_sched.C
    lib/
        app_ipc.C
        gui_rpc_client.h
        gui_rpc_client_ops.C

David  5 Mar 2007
    - core client: if can't chdir to the dir specified by --dir, quit
    - show_shmem: show homogeneous redundancy class
    - file upload handler: say "out of space on server" instead of
        "out of space on device"; users get confused by the latter,
        think it refers to their disk

    client/
        cs_cmdline.C
        file_xfer.C
    sched/
        file_upload_handler.C
        show_shmem.C

Rom    5 Mar 2007
    - MGR: Rough draft for presenting an interface of known projects
        based on David's March 3rd "get project list" checkin.
        
    clietgui/
        AccountInfoPage.cpp
        AccountManagerInfoPage.cpp
        BOINCWizards.h
        ProjectInfoPage.cpp, .h
    lib/
        gui_rpc_client.h
        gui_rpc_client_ops.C

Rom    6 Mar 2007
    - MGR: Choosing from the project list now works, although the
        combo box is really busy right now.
        
    clientgui/
        ProjectInfoPage.cpp, .h
    lib/
        gui_rpc_client.h
        gui_rpc_client_ops.C

David  6 Mar 2007
    - User web: add "none" as an option for default host venue;
        display this as "---" or "--- (none)"

    html/
        inc/
            prefs.inc
        user/
            host_venue_action.php

Rom    6 Mar 2007
    - MGR: Use just the project name in the project list for now.
        
    clientgui/
        ProjectInfoPage.cpp

Rom    7 Mar 2007
    - Update OpenSSL modules for windows to OpenSSL 0.9.8e.
    
    openssl/
        <All Files>

Rom    7 Mar 2007
    - Update cURL modules for windows to cURL 7.16.1.
    
    curl/
        <All Files>

David  8 Mar 2007
    - API (Unix): there was still a race condition in the runtime library.
        Fix it (I hope) by having worker_signal_handler()
        acquire the mutex before suspending worker thread.
    - remove msg parameter of resolve_hostname()

    api/
        boinc_api.C
    client/
        gui_rpc_server.C
    lib/
        filesys.C
        network.C,h

Charlie 8 Mar 2007
    - Mac: Update build scripts, XCode project and build instructions 
        for cURL 7.16.1.
    - Mac: Delete unused target AppStats from XCode project.

    mac_build/
        buildcurl.sh
        HowToBuildBOINC_XCode.rtf
        setupForBOINC.sh
        boinc.xcodeproj/
            project.pbxproj
    doc/
        mac_build.php

Charlie 9 Mar 2007
    -Mac: update installation documentation: say to double-click on 
        "BOINC Installer" application, not on BOINC.pkg.
    doc/
        mac_advanced.php
        release_notes.php

Rom    9 Mar 2007
    - MGR: Fix the wizard classes so they are compatible with both
        wxWidgets 2.4 and 2.8.
        
    clientgui/
        AccountInfoPage.cpp
        AccountKeyPage.cpp
        AccountManagerInfoPage.cpp
        AccountManagerProcessingPage.cpp
        AccountManagerPropertiesPage.cpp
        AlreadyAttachedPage.cpp
        AlreadyExistsPage.cpp
        CompletionErrorPage.cpp
        CompletionPage.cpp
        NoInternetConnectionPage.cpp
        NotDetectedPage.cpp
        NotFoundPage.cpp
        ProjectInfoPage.cpp
        ProjectProcessingPage.cpp
        ProjectPropertiesPage.cpp
        ProxyInfoPage.cpp
        ProxyPage.cpp
        stdwx.cpp
        UnavailablePage.cpp
        WelcomePage.cpp, .h
        WizardAccountManager.cpp
        WizardAttachProject.cpp
        wizardex.cpp, .h

Rom    9 Mar 2007
    - MGR: Fix a segfault on Linux.
    
    clientgui/
        ProjectInfoPage.cpp, .h

David  10 Mar 2007
    - unix compile fix (from Frank Thomas)

    lib/
        boinc_cmd.C

David  10 Mar 2007
    - scheduler: use 1024-char buffer for parsing
        (handle large CPU model strings)

    sched/
        server_types.C

David  10 Mar 2007
    - scheduler: add one_result_per_host_per_wu option.
        This is useful if you use homogeneous redundancy
        and most hosts of a particular class belong to a single user.

    sched/
        sched_array.C
        sched_config.C,h

Charlie 12 Mar 2007
    - Mac: add str_util.C,h to libboinc target of XCode project.
    - CC: On Mac OS X, sysctl with selectors CTL_HW, HW_PHYSMEM returns only a 
        4-byte value, even if passed an 8-byte buffer, and limits the returned 
        value to 2GB when the actual RAM size is > 2GB.  So use Mac-specific
        API Gestalt(gestaltPhysicalRAMSizeInMegabytes, &mem_size) and add a 
        #error statement to the old method to alert any porters if their 
        platforms were using sysctl {CTL_HW, HW_PHYSMEM}.

    client/
        hostinfo_unix.C
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Rom    13 Mar 2007
    - WIN: Change the sse3 CPU feature detection flag from 'sse3' to 'pni'.
    - MGR: Commit Frank Weiler's lastest ViewProjectsGrid.
    
    client/win/
        hostinfo_win.cpp
    clientgui/
        sg_BoincSimpleGUI.cpp
        sg_ViewTabPage.cpp
        ViewProjectsGrid.cpp, .h

David  13 Mar 2007
    A bunch of security-related changes:
    - Most functions that return paths now take an additional
        "length" parameter to prevent buffer overrun if the
        project URL or filename is extremely long.
    - Use snprintf() and vsnprintf() in a bunch of places
        to avoid buffer overrun.
    - Core client: Add suppress_net_info config flag
        (don't send IP address and domain name to servers)
    - Core client: Add disallow_attach config file
        (don't allow attach to new projects)
    - Core client: Add os_random_only config flag.
        (exit if OS-level random string functions fail
        when generating GUI RPC password)
    - Core client: if a filename (in <FILE_INFO>s from server)
        contains directory traversal chars (..),
        or format conversion chars (%),
        or is empty,
        reject it.

    Other changes:
    - Core client: change size of path buffers from 256 to 1024.
        Should make this a #define at some point.
    - GUI RPC: rename PROJECTLISTENTRY -> PROJECT_LIST_ENTRY
        (let's stick with BOINC coding standards)
    - GUI RPC: rename PROJECTLIST -> ALL_PROJECTS_LIST
        (let's not confuse currently attached projects with all projects)
    - GUI RPC: make get_all_projects_list() into an actual RPC,
        not just reading a file (which won't exist in the RPC client's
        current dir, e.g. if it's remote).
    - GUI RPC: rename desc -> description and img -> image
        in project list XML exported by BOINC server.
        Let's NEVER have different spelling between
        XML tabs and structure fields!!
    - GUI RPC: Include rr_sim_deadlines_missed in PROJECT
    - core client: rename file project_list.xml -> all_projects_list.xml
    - core client, Linux: add improved code for
        parsing CPU info (from Thibaut Varene)
    - added test program for CPU info

    client/
        app.C
        app_start.C
        client_state.C,h
        client_types.C
        cs_account.C
        cs_apps.C
        cs_files.C
        cs_prefs.C
        cs_scheduler.C
        cs_statefile.C
        cs_trickle.C
        file_names.C,h
        file_xfer.C
        gui_rpc_server.C
        gui_rpc_server_ops.C
        hostinfo_unix.C
        hostinfo_unix_test.C (new)
        log_flags.C,h
        pers_file_xfer.C
        scheduler_op.C
    lib/
        app_ipc.C
        boinc_cmd.C
        error_numbers.h
        gui_rpc_client.C
        gui_rpc_client_ops.C
        hostinfo.C,h
        md5_file.C
        miofile.C,h
        str_util.C
    sched/
        sched_config.C

David  13 Mar 2007
    - compile fix

    clientgui/
        ProjectInfoPage.cpp,h

David  13 Mar 2007
    - work fetch fixes (from John McLeod)
        - implement work_fetch_factor correctly
        - ignore duration_correction_factor if it's out of bounds

    client/
        cpu_sched.C
        work_fetch.C

Charlie 13 Mar 2007
    - Fix compiler warnings, including one in CProjectInfo::makeHashKey() 
        which warned "call will abort at runtime."
    
    client/
        gui_rpc_server.C
        gui_rpc_server_ops.C
    clientgui/
        ViewProjectsGrid.cpp

Matt 14 Mar 2007
    - updated db_init and db_init_aux code in util.inc, db.inc to enable
      possible use of replica (i.e. read-only) database (for pages that
      lookup stats, print profiles, etc. but don't make any updates).
      Implemented in top_{users,teams,hosts}.php

    html/inc
        db.inc
        util.inc
    html/user
        top_users.php
        top_hosts.php
        top_teams.php

Charlie 14 Mar 2007
    - Mac: Fix Mac bugs in SimpleGUI under wxMac-2.8.2.
    - Mac: Update build scripts, XCode project and build instructions 
        for wxMac-2.8.2.

    clientgui/
        sg_ViewTabPage.cpp
    mac_build/
        buildWxMac.sh
        HowToBuildBOINC_XCode.rtf
        setupForBOINC.sh
        boinc.xcodeproj/
            project.pbxproj
    doc/
        mac_build.php
    
Charlie 15 Mar 2007
    - SG: On timer events, update only the panel for the currently selected 
        task tab.  Due to an apparent bug in wxMac-2.8.2, dc.DrawBitmap() 
        and dc.DrawText() actually draw to the screen even though the tab 
        panel should be hidden.  Also, updating hidden panels is inefficient 
        on all platforms.  
    - Added a new WorkunitNotebook::OnTabChanged() event handler to update 
        the panel when its tab is first selected, so stale data is not shown.
    - Fixed a logic error when deleting inactive tabs.

    clientgui/
        sg_ViewTabPage.cpp,h

Rom    15 Mar 2007
    - MGR: Do not allow multiple dial-up promtps to appear when the CC needs
        to connect, it is annoying and will eventually blow the stack.
    
    clientgui/
        BOINCDialupManager.cpp

David  15 Mar 2007
    - API: my checkin of Mar 8 was flawed and causes an app hang.
        Revert to the previous way (bool var, not mutex)
        but with an additional check in worker_signal_handler()
        that should fix the original race condition
        (from Jonathan Armstrong)
    - core client: fix bug where, if host is in "suspended to disk"
        state for a long time, its next debt adjustment
        assumes that apps were running the entire time.
        The fix: if more than 2xcpu_sched_period has elapsed
        since last debt adjustment, ignore the period.
    - Add data structures for day-of-week preferences
        (but don't actually implement much)

    api/
        boinc_api.C
    client/
        client_state.h
        cpu_sched.C
        cs_prefs.C
    html/user/
        edit_form_preferences_form.php
    lib/
        hostinfo.C
        prefs.C,h

David  15 Mar 2007
    - core client: change the way slot directories are assigned,
        and the way things are cleaned up.
        The new design ensures that apps always start running
        in an empty directory.
        Old:
            assign new ACTIVE_TASK the lowest slot number not in use.
            When the app starts, try to clean out the slot dir.
            If can't clean it out, rename it (to DELETE_ME_*)
            and create another dir.
            On startup, delete dirs named DELETE_ME_*
            The problem: if you can't clean out a dir (on Windows)
            you're not going to be able to rename it.
            So the app will start in a non-empty dir.
        New:
            assign new ACTIVE_TASK the lowest slot number not in use
            and for which an empty directory can be created.
            On start, delete dirs and files not in use by an active task.
    - core client: fix bug where clean_out_dir() could return zero
        even though the dir isn't emptied.
        
    client/
        app.C,h
        app_start.C
        file_names.C,h
    lib/
        filesys.C

David  15 Mar 2007
    - compile fixes

    client/
        sim.h
    clientgui/
        DlgAdvPreferences.cpp
        sg_DlgPreferences.cpp

Charlie 15 Mar 2007
    - Fix compiler warnings.
    
    client/
        app.C
        cpu_sched.C
    lib/
        filesys.C
        hostinfo.C

Rom    17 Mar 2007
    - MGR: Revamped project selection list. It is mostly done, I just have to
        figure out how to trap static text click events, right now you have
        to click on areas where there isn't any text.
        
    clientgui/
        ProjectInfoPage.cpp, .h
        ProjectListCtrl.cpp, .h (Added)
    win_build/
        boincmgr_curl_2003.vcproj

David  18 Mar 2007
    - user web: make an XML variant of apps.php
    - scheduler: parse uldl_pid etc. in config file
        to avoid XML parse warnings (from David Braun)

    html/user/
        apps.php
    sched/
        sched_config.C

Rom    19 Mar 2007
    - MGR: Fill in the missing piece with trapping static text control mouse
        movement and clicks.
        
    clientgui/
        ProjectListCtrl.cpp, .h

David  19 Mar 2007
    - core client: fetch all-projects list at startup if it's not there.
    - core client:  write rr_sim_missed_deadline only for GUI RPC, not statefile

    client/
        acct_setup.C
        client_state.C,h
        client_types.C
        cs_statefile.C
        scheduler_op.C

Rom    19 Mar 2007
    - MGR: Strip out all the extra fluff, and add a website link.
        
    clientgui/
        ProjectListCtrl.cpp, .h

David  19 Mar 2007
    - removed [features] from p_model;
        move it to a separate field, p_features,
        which is stored on the client and sent to server
        but not stored in server DB.
    - fix gcc 4.x warnings
    - user web: change of app version list XML

    client/
        hostinfo_unix.C
        hostinfo_win.C (new)
        main.C
        win/
            hostinfo_win.cpp (removed)
    html/user/
        apps.php
    lib/
        filesys.C
        hostinfo.C,h

David  19 Mar 2007
    - core client: added more support for day-of-week time preferences.
        They're now enforced,
        and times are expressed as doubles (hours, 0..24)

    client/
        cs_prefs.C
    lib/
        boinc_cmd.C
        prefs.C,h

David  19 Mar 2007
    - compile fixes

    client/
        hostinfo_win.C
    win_build/
        boinc_cli_curl.vcproj

Charlie 19 Mar 2007
    - Mac: fix compile errors (must cast double variable to int to use it 
        as array index.)
    - Fix compiler warnings. GCC on Linux and Mac have conflicting warnings:
        Mac complains about unused variables, Linux about ignoring returns 
        from functions like getcwd() which returns the result in 2 places.  
        Try to satisfy both compilers using __attribute__ ((unused)) construct.
        This may not work for Windows compiler, though.
    -- Mac: Add ProjectListCtrl.cpp to XCode project.
    
    client/
        hostinfo_unix.C
        http_curl.C
    clientgui/
        DlgAdvPreferences.cpp
        sg_DlgPreferences.cpp
    lib/
        boinc_cmd.C
        filesys.C
        hostinfo.C
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

David  19 Mar 2007
    - core client: bug fixes in prefs

    lib/
        prefs.C

Rom    19 Mar 2007
    - Add some more cross compiler tweaks to the precompiled header for Windows.
    
    clientgui/
        stdwx.h
    lib/
        boinc_win.h
        filesys.C

Rom    20 Mar 2007
    - MGR: Randomize the project selection list
    - MGR: Last few tweaks to the project selection list
    
    clientgui/
        ProjectInfoPage.cpp
        ProjectListCtrl.cpp, .h
    lib/
        gui_rpc_client.h
        gui_rpc_client_ops.C

David  20 Mar 2007
    - core client, Unix: run CPU benchmarks at low priority,
        same as applications.
        On some systems, the clock governor (powersaved)
        will slow the CPU clock if nothing's running at regular priority
        (but it ignores processes running at low priority).
        If benchmarks run at regular priority,
        this could result in a erroneous claimed-credit numbers.
        (from Evandro Menezes)

    client/
        app_start.C
        cs_benchmark.C
    lib/
        util.C,h

David  20 Mar 2007
    - API: boinc_checkpoint_completed(): don't call update_app_progress()
        unless options.send_status_msgs is set
        (fixes bug in wrappers that call this)
    - lib: add linux_cpu_time() function (get CPU time of another process)

    api/
        boinc_api.C
    lib/
        procinfo_unix.C
        util.C,h

David  20 Mar 2007
    - Manager: cosmetic tweaks to project select

    clientgui/
        ProjectListCtrl.cpp

David  20 Mar 2007
    - core client: if "no more work" or "detach when done" tag
        is missing from account manager reply, don't change value.
        Note: this is implemented using new
        OPTIONAL_BOOL and OPTIONAL_DOUBLE types
        that may be useful elsewere as well.

    client/
        acct_mgr.C,h

Jeff  21 Mar 2007
    - added :
        #define feof     FCGI_feof
        #define ferror   FCGI_ferror
      to the list of such defines at the bottom of file fcgi_stdio.h.
      This was needed to complile the fcgi version of the file upload
      handler.  Note that this list of defines is the only difference 
      between our fcgi_stdio.h and /usr/include/fcgi_stdio.h on the 
      linux box used for this build.

    sched/
        fcgi_stdio.h

David  21 Mar 2007
    - update sample web site front page

    html/user/
        sample_index.php

David  21 Mar 2007
    - core client: fixed bug where a <result_abort_if_unstarted>
        in scheduler reply would crash client.
        Also, change this tag to <result_abort_if_not_started>
        Note: the syntax is
            <result_abort_if_not_started>
                <name>xxx</name>
            </result_abort_if_not_started>
        where xxx is the result name.

    client/
        cs_scheduler.C
        scheduler_op.C,h

David  23 Mar 2007
    client/
        app.h
        sim.C
    languages/translations/
        en.po

David  23 Mar 2007
    - Manager: show "detach when done" if set

    clientgui/
        ViewProjects.cpp
        ViewProjectsGrid.cpp
    win_build/
        sim.vcproj

David  23 Mar 2007
    - manager build fix

    clientgui/
        Makefile.am

Rytis  24 Mar 2007
    - Forum: duration selection and optional message to the user.

    html/
        user/
            forum_moderate_post.php
            forum_moderate_post_action.php
        inc/
            forum_email.inc

David  24 Mar 2007
    - admin web: added script to banish user for various periods,
        independently of forum tools (from Eric Myers)

    html/ops/
        index.php
        manage_user.php

Rom    27 Mar 2007
    - MGR: Extend browser cookie detection framework so that additional
        browsers can be used.
    - MGR: Checkin Frank's latest changes to the Advanced Preferences
        dialog.
        
    clientgui/
        DlgAdvPreferences.cpp, .h
        Makefile.am
        stdwx.h
        WizardAttachProject.cpp
    clientlib/win/
        AuthenticatorDetection.cpp, .h (Removed)
    lib/
        boinc_win.h
        browser.C, .h (Added)
        browser_firefox.C (Added)
        browser_ie.C (Added - Windows Only)
    win_build/
        boinc_dll.vcproj
        boinc_dll_2003.vcproj
        boincmgr_curl.vcproj
        boincmgr_curl_2003.vcproj

David  27 Mar 2007
    - client: on startup, show how much RAM and disk are usable
        (taking prefs into account)

    client/
        cs_prefs.C
    lib/
        str_util.h

Walt   27 Mar 2007
    - MGR: Fix Makefile.am to remove whitespace after
        continuation character.
        
    clientgui/
        Makefile.am

David  27 Mar 2007
    - scheduler: fix bug that cause <p_model> parse error
        for Linux hosts with long strings
        (from Andre Kerstens)

    sched/
        server_types.C

Walt   27 Mar 2007
    - MGR: Fix compile errors
        
    clientgui/
        WizardAttachProject.cpp
    lib/
        browser_firefox.C

David  28 Mar 2007
    - core client: add work_buf_additional_days preference;
        track variability in completion times
        (from John McLeod VII)
    - add browser.C to lib/ makefile;
        do NOT use ../* in other makefiles

    client/
        client_state.C,h
        client_types.C,h
        cpu_sched.C
        cs_scheduler.C
        log_flags.C,h
        rrsim_test.C
        sim.h
    clientgui/
        Makefile.am
    lib/
        Makefile.am
        browser.C
        browser_firefox.C (removed)
        browser_ie.C (removed)
        prefs.c,h

David  28 Mar 2007
    - user web: support for work_buf_additional_days pref

    html/inc/
        prefs.inc

David  29 Mar 2007
    - core client: fix some debug messages
    - more code-shuffling for client simulator

    client/
        cpu_sched.C
        file_xfer.h
        log_flags.C,h
        sim.C,h
    win_build/
        boincmgr_curl.vcproj
        sim.vcproj

David  29 Mar 2007
    - Manager: add work_buf_additional_days to adv prefs dialog;
        add multi-selection to transfer tab
        (from Frank Weiler)

    clientgui/
        DlgAdvPreferences.cpp
        DlgAdvPreferences.fbp
        DlgAdvPreferencesBase.cpp,h
        ViewTransfersGrid.cpp

David  29 Mar 2007
    - API: don't report CPU time and fraction done while suspended
        (not needed, and wastes CPU time)

    api/
        boinc_api.C

David  29 Mar 2007
    - core client: include MD5 in file upload handler requests,
        so that the server can (if it wants) verify the MD5.
        NOTE: I don't think this should be necessary.

        Also include core client release # in all requests

    client/
        file_xfer.C

Rom    29 Mar 2007
    - MGR: Prevent crash in the projects tab by checking to see if there
        is really anything to display, if not delete all rows and then
        return.
        
    clientgui/
        ViewProjectsGrid.cpp

David  29 Mar 2007
    - Manager: text tweaks

    clientgui/
        AdvancedFrame.cpp
        DlgAbout.cpp

Charlie 30 Mar 2007
    - Mac: Major fixes and improvements to backtrace: correctly show 
        address of instruction which caused SIGSEGV or SIGBUS faults, 
        remove bogus NULL stack frame at end of trace; improve output 
        format, etc.
    - Mac: Add browser.C,h to XCode project.
    
    lib/
        mac_backtrace.C
        MoreBacktrace.C
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

David  2 Apr 2007
    - Manager: improvements to advanced Prefs dialog
        (from Frank Weiler)
    - Client simulator work

    client/
        sim.C,h
        work_fetch.C
    clientgui/
        DlgAdvPreferences*
    lib/
        prefs.C

Charlie 3 Apr 2007
    - Mac Installer: Change name of Postinstall.app to PostInstall.app to fix a 
        problem on some Macs where the postinstall or postupgrade script failed 
        to launch PostInstall.app due to the lower-case I.  I don't know why some 
        Macs would be case-sensitive here while others aren't, but user feedback 
        seems to confirm this problem.
    - Mac Installer: Add directions for removing users boinc_master and boinc_user 
        to uninstall instructions.
        
    mac_build/
        boinc.xcodeproj/
            project.pbxproj
    mac_installer/
        GR-ReadMe.rtf
        ReadMe.rtf
        release_boinc.sh
        release_GridRepublic.sh

Rom    3 Apr 2007
    - MGR: Check firefox cookies for a projects authenticator which might have
        been assigned during a web based registration scenario
    - MGR: Fix detech from project crashing condition
    - MGR: Fix variuos performance problems with the Grid based views. Best
        rule of thumb is to not set/change any value in a control unless it
        has really changed. Doing so causes the RECT to become invalidated
        which causes the OS to want to repaint it. Data processing is always
        faster than repainting.
    - MGR: Don't delete all the rows of a grid just to recreate them a few
        steps later, you really only need to add or delete the difference
        since the last update.
    - MGR: Avoid using 'wxString("Some static Text", wxConvUTF8)' to handle
        literal strings for Unicode, the wxT() macro allows the compiler to
        take care of it at compile time, instead of run-time.
    - MGR: Add a generic 'BOINC help' link that can be used to go to help.php.
    - MGR: All help menu items are now redirected using the manager_links.php
        page.
    - MGR: Add version information to the manager_links.php requests.
    - MGR: Remove the CProjectInfo cache from ViewProjectsGrid.
    - CC: Fix the display of the processor features. It is useful for those
        who want to run optimized clients but don't really know what processor
        features are supported by their processor/os combination.
    - DBG: Include all the 64-bit registers in the debug output on a 64-bit
        Windows machine.

    client/
        client_state.C
        hostinfo_win.C
    client/win/
        win_screensaver.cpp
    clientgui/
        AdvancedFrame.cpp, .h
        Events.h
        ViewMessagesGrid.cpp
        ViewProjectsGrid.cpp, .h
        ViewTransfersGrid.cpp
        ViewWorkGrid.cpp
        WizardAttachProject.cpp
        sg_BoincSimpleGUI.cpp
        stdwx.h
    lib/
        boinc_win.h
        browser.C
        stackwalker_win.cpp
    win_build/
        boincmgr_curl.vcproj

David  3 Apr 2007
    - core client: don't print "process not found" unless task_debug set
    - simulator stuff

    client/
        app_control.C
        cpu_sched.C
        cs_apps.C
        sim.C,h

David  3 Apr 2007
    - simulator

    client/
        app_control.C
        cpu_sched.C
        sim.C,h

David  3 Apr 2007
    - core client: fix parsing of <link rel="boinc_scheduler" ...
        in scheduler reply
    - simulator

    client/
        app.C
        client_types.C
        cpu_sched.C
        cs_apps.C
        makefile_sim
        scheduler_op.C
        sim.C

Rom    4 Apr 2007
    - WIN: Introduce assembly manifests for all binaries produced for
        Windows.
    - WIN: Code sign each of the binaries produced for Windows.
    
      NOTE: Windows Vista has so many levels of protection that it makes
        it hard to debug specific issues without triping up on one of them.
        
        Until we can perform our Vista work items we'll work around the
        issue by informing Vista that we need admin rights via the
        assembly manifest before Vista launches us.
        
    /
        configure.ac
        version.h
    client/win/
        boinc.exe.manifest (Added)
        boinc.scr.manifest (Added)
        boinc_cli.rc
        boinc_cmd.rc
        boinc_ss.rc
        boinccmd.exe.manifest (Added)
    clientgui/
        BOINCGUIApp.rc
        boincmgr.exe.manifest (Added)
    win_build/
        boinc_cli_curl_2003.vcproj
        boinc_dll_2003.vcproj
        boinc_ss_2003.vcproj
        boinccmd_2003.vcproj
        boincmgr_curl_2003.vcproj

Rom    4 Apr 2007
    - MGR: Remove save/restore selection calls from the various Grid based
        views as it isn't needed anymore.
        
    clientgui/
        BOINCGridCtrl.cpp
        ViewMessagesGrid.cpp
        ViewProjectsGrid.cpp
        ViewTransfersGrid.cpp
        ViewWorkGrid.cpp

Rom    4 Apr 2007
    - MGR: Move grid event trapping code into the BOINCBaseView class and
        delete the duplicated code from each of the views
    - MGR: UpdateSelection should be called on any selection change.
    
    clientgui/
        BOINCBaseView.cpp, .h
        ViewMessages.h
        ViewMessagesGrid.cpp, .h
        ViewProjectsGrid.cpp, .h
        ViewResources.h
        ViewStatistics.h
        ViewTransfersGrid.cpp, .h
        ViewWorkGrid.cpp, .h        

Rom    4 Apr 2007 (HEAD)
    - Tag for 5.9.3 release, all platforms
      boinc_core_release_5_9_3

David  4 Apr 2007
    - core client: round fractional work request up to 1 sec
    - simulator now working

    client/
        scheduler_op.C
        sim.C,h
        sim_host/prefs/projects.xml (new)
    lib/
        browser.C
        prefs.C

David  5 Apr 2007
    - Scheduler: add option <send_result_abort>. If set:
        - If client is processing a result for a WU that has
            been cancelled or is not in the DB
            (i.e. there's no chance of getting credit)
            send <result_abort>.
        - If client is processing a result for a WU that has
            been assimilated or is overdue
            (i.e. there's a chance of not getting credit)
            send <result_abort_if_not_started>
    - Scheduler: enhancements to replication policy
        (which attempts to send additional replicas of a WU
        only to reliable/fast hosts).
        There are several new config options which let projects
        tailor the policy in various ways:
        - <reliable_min_avg_credit>: a host must have at least
            this avg credit to be considered reliable
        - <reliable_max_avg_turnaround>: a host must have at most
            this avg_turnaround to be considered reliable
        - <reliable_on_priority>: results with at least 
            this priority will be sent only to reliable hosts
        - <reliable_priority_on_over>:
            increase priority of additional replicas by this amount
        - <reliable_priority_on_over_except_error>
            increase priority of additional replicas
            triggered by timeout (but not error) by this amount
        - <reliable_time>: send results for WUs at least this old
            only to reliable hosts
        - <reliable_reduced_delay_bound>: if a WU is at least
            "reliable_time" old, multiply its latency bound
            by this factor (0..1)
    - Transitioner: add the notion of "grace period"
        so users get credit even if results are somewhat late.
        - <grace_period_hours>: defer the deletion of
            the canonical result for this many hours
            after the deadline of any pending result
    - Transitioner: add option <delete_delay_hours>:
        delay the deletion of WU input files for this
        interval after last result has been returned

    Implementation details::
    - add TRANSITIONER_ITEM::res_received_time
    - add WORK_ITEM::res_priority
        (read by feeder, stored in shared mem, used by scheduler)
    - add IN_PROGRESS_RESULT to enumerate in-progress results
    - read appid in VALIDATOR_ITEM
    - add priority_increase arg to create_result()

    (all the above from Kevin Reed)

    db/
        boinc_db.C,h
    sched/
        feeder.C
        handle_request.C
        sched_config.C,h
        sched_send.C
        sched_shmem.h
        server_types.C,h
        transitioner.C
    tools/
        backend_lib.C,h

David  5 Apr 2007
    - core client: fix bug where, if client runs at boot time
        and DNS system isn't up yet,
        entries in remote_hosts.cfg will fail to resolve,
        and the core client will be inaccessible.
        Fix: we already have a mechanism in which GUI_RPC_CONN_SET::init()
        is called 30 times, at 1-sec interval, until it succeeds.
        Extend this to cover the parsing of remote_hosts.cfg also.

    client/
        client_state.C
        gui_rpc_server.C,h

David  5 Apr 2007
    - core client: work fetch skip a project if its # deadline misses
         is >= #cpus (not just > 0)
    - define a set of process exit codes (currently just 3 of them)
        separate from function return values.
        Process exit codes are limited to 8 bits in Unix;
        use positive numbers starting at 192

    api/
        boinc_api.C
    client/
        app_start.C
        client_state.C
        sim.C,h
        work_fetch.C
    lib/
        diagnostics.C
        error_numbers.h

David  5 Apr 2007
    - core client: canonicalize account manager URL
    - boinc_cmd: add --join_acct_mgr, --quit_acct_mgr commands;
        remove --acct_mgr_op command.

    client/
        acct_mgr.C
    lib/
        boinc_cmd.C

David  6 Apr 2007
    - client simulator: add the ability to do many simulations,
        each specified in a separate directory,
        and show the individual and total results.

    client/
        sim.C,h

David  6 Apr 2007
    - core client: sanity check on work request size
        (from John McLeod)

    client/
        work_fetch.C

David  8 Apr 2007
    - updater:
        - make program more general (array of files)
        - if get an error before installing new version,
            run the old version (core and/or mgr).
        - if launch of new core client or manager fails
            or program exits within 5 seconds,
            back out the update and run old version
        - when running core client (old or new) pass --run_by_updater flag
        - move files instead of copy
    - core client:
        - add --run_by_updater cmdlines option;
            if set, and updater version > client version,
            set "install_failed" flag in AUTO_UPDATE.
            This prevents the client from trying the update again.
        - if updater doesn't run or exits within 5 seconds,
            mark update as failed (stick with current version)

    client/
        auto_update.C,h
        client_state.C,h
        cs_cmdline.C
        sim.C,h
    lib/
        filesys.C
        util.C,h
    tools/
        updater.C

David  9 Apr 2007
    - win compile fixes

    client/
        auto_update.C
    lib/
        util.C

David  9 Apr 2007
    - bug fix in simulator (possibly core client too):
        in handle_finished_apps(),
        do the vector erase directly instead of calling remove()
        (which could cause you to skip one task)

    client/
        app.C,h
        cs_apps.C

David  9 Apr 2007
    - update netsoft URL

    html/inc/
        stats_sites.inc
        user.inc

Charlie 9 Apr 2007
    - change boinc_catch_signal() to exit with exit code EXIT_SIGNAL 
        instead of ERR_SIGNAL_CATCH.
        
    lib/
        diagnostics.C

Charlie 10 Apr 2007
    - Mac: Add support for Firefox on Mac.
    
    lib/
        browser.C

David  10 Apr 2007
    - simulator

    client/
        sim.C,h

Rom    10 Apr 2007
    - MGR: Do not attempt a refresh of the old grid header if the
        old value is -1.
        (From Walt G.)
        
    clientgui/
        BOINCGridCtrl.cpp

David  10 Apr 2007
    - core client: adjustment to anticipated debt is
       resource_share*expected_payoff, not
       (1-resource_share)*expected_payoff

    client/
        cpu_sched.C
        sim.C,h

Charlie 11 Apr 2007
    - Mac: Add support for Safari on Mac.
    - Fix bugs in Firefx / Mozilla cookie detection:
        - Don't require match for a leading "www" in URL.
        - Don't return true if is_authenticator_valid(cookie) fails.
        - Check for std::string.find() returning npos if it fails, not -1.
        - Add extern "C" to browser.h file.
    
    lib/
        browser.C,h
        mac_browser.mm (new, Mac only)

David  11 Apr 2007
    - database: add sent_email table; keep track of emails sent to users
    - boinc_cmd: add --read_cc_config command

    db/
        boinc_db.h
        schema.sql
    client/
        cs_cmdline.C
    html/ops/
        db_update.php
        remind.php
    lib/
        boinc_cmd.C

David  11 Apr 2007
    - client: write availability info to a log file
        Don't let file exceed 1 MB or 1 year, whichever is larger
    - client: work fetch tweak: add notion of fetchable_resource_share
    - client: remove BOINC_OUTAGE code
    - client: remove leftover CURL temp files (blc*) on startup
    - client: remove duration_variability code
    - client: in maintaining availability info (TIME_STATS),
        ignore CPU throttling.
    - Manager: don't divide work_buf_additional_days by 86400 (??)

    client/
        client_state.C,h
        client_types.C,h
        cpu_sched.C
        cs_scheduler.C
        file_names.h
        http_curl.C,h
        rrsim_test.C
        sim.h
        time_stats.C,h
        work_fetch.C
    clientgui/
        DlgAdvPreferences.cpp
    lib/
        network.h

David  11 Apr 2007
    - user web: wrong URL for BOINC Combined Stats

    html/inc/
        user.inc

Charlie 11 Apr 2007
    - Move browser.C,h from lib/ to clientgui/
    - Move lib/mac_browser.mm to clientgui/browser_safari.mm
    - Adjust makefiles and XCode project for above changes
    - Remove extern "C" from browser.h
    - Fix compiler warning in http_curl.C

    client/
        http_curl.C
    clientgui/
        browser.C,h (added)
        browser_safari.mm (added)
        makefile.am
    lib/
        browser.C,h (removed)
        mac_browser.mm (removed)
        makefile.am
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Charlie 12 Apr 2007
    - MGR: Fix bug in SimpleGUI prefs: it wasn't resetting the 
        <run_if_user_active> tag when changing "Do work when user 
        idle" override from "0 (Run Always)" to an idle time value. 
        
    clientgui/
        sg_DlgPreferences.cpp

Rom    12 Apr 2007
    - Change directory layout for 32-bit Windows client
        dependancies (curl, openssl, zlib)
    - Include 64-bit Windows client dependancies
        (curl, openssl, zlib)
        
    curl/
        <Many Files>
    openssl/
        <Many Files>
    zlib/
        <Many Files>

David  12 Apr 2007
    - added script for getting statistics on job FLOP counts

    html/ops/
        index.php
        job_times.php

Charlie 12 Apr 2007
    - Fix compile error: #include <sys/resource.h> in cs_benchmark.C
    - Mac: Update XCode project, build scripts and build instructions to use 
        wxMac-2.8.3.
    - Mac: Fix minor XCode project bug in ppc_Deployment build configuration 
        of target BOINC_Client (this build configuration is not used 
        for release builds.)

    client/
        cs_benchmark.C
    mac_build/
        buildWxMac.sh
        HowToBuildBOINC_XCode.rtf
        setupForBOINC.sh
        boinc.xcodeproj/
            project.pbxproj

David  12 Apr 2007
    - client: log job completions

    client/
        client_types.C,h
        cs_apps.C
        file_names.C,h

David  13 Apr 2007
    - feeder: improve efficiency of DB query
    - client: add optional tags <send_time_stats_log> and
        <send_job_log> to scheduler RPC reply;
        next scheduler RPC request will contain the indicated
        subset of the time stats log or job log.
        (no server-side support for this yet)

    client/
        client_types.C,h
        cs_scheduler.C
        file_names.h
        scheduler_op.C,h
        time_stats.C
    db/
        boinc_db.C

Bruce 16 April 2007
    - scheduler: remove compiler warnings
    - feeder: broken because of David's checkin to db/boinc_db.C above.
      David, please confirm if result.appid -> r1.appid is correct.
    - locality scheduler: add new boolean config option
        locality_scheduling_sorted_order.  If this is enabled,
        then instead of looking for work starting with a random
        file on the host,
        the scheduler will search for work in sorted order of the filenames,
        starting with the lexagraphically smallest file
        and moving upwards until work is found.

    sched/
        handle_request.C
        feeder.C
        sched_config.C
        sched_config.h
        sched_locality.C
        server_types.h
    doc/
        sched_locality.php

Charlie 16 Apr 2007
    - Mac: fix Mac Stuffit file corrupted in switch from CVS to Subversion.
    - Mac: Update backtrace to use entirely new code from Apple Developer 
        Technical Support.  The format is now compatible with OS X's 
        built-in Crash Reporter, and is ready for 64-bit Mac Intel 
        applications (which will be available in OS 10.5).  If the backtrace 
        is from a stripped application, the output of this new code can be 
        run through a new shell script (available on Apple's web site) to 
        add symbols to it from a separate symbol file - this is a very useful 
        feature.  For details, see comments in mac_backtrace.h.
        
        Note: We build the PowerPC applications with GCC-3.3 to be backward 
        compatible with OS 10.3.0 - 10.3.8, and GCC 3.3 does not support 
        64-bit applications, and Apple discontinued production of PowerPC 
        Macs in 2006, so this backtrace code does not support 64-bit PowerPC 
        G5 applications.
        
    clientgui/
        mac/
            BOINCSaver.nib.sit
    lib/
        mac_backtrace.C,h (removed)
        mac/
            dyld_gdb.h (added)
            mac_backtrace.C,h (added)
            QBacktrace.c,h (added)
            QCrashReport.c,h (added)
            QMachOImage.c,h (added)
            QMachOImageList.c,h (added)
            QSymbols.c,h (added)
            QTaskMemory.c,h (added)
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Rom    17 Apr 2007
    - Test SVN Commit Email

Charlie 17 Apr 2007
    - Mac: Fix Safari cookie logic for OS 10.3, move to Mac directory.
    - Mac: Remove remaining obsolete backtrace source files, fix compiler 
        warnings, update makefile for changes.
    - Mac: fix Mac icon files corrupted in switch from CVS to Subversion 
        and move to directory with other icon files. 
    - Mac: Delete very old obsolete files.

    client/
        mac/      (directory removed)
            BOINC.term (removed)
            BoincLaunch.app.zip (removed)
            BoincLaunch.zip (removed)
            GridRepublic.icns (extra copy removed)
            mac_about.cpp,h (removed)
            mac_join.cpp,h (removed)
            mac_main.cpp,h (removed)
            mac_prefs.cpp,h (removed)
            postinstall (removed)
    clientgui/
        makefile.am
        mac/
            browser_safari.mm (moved from clientgui/browser_safari.mm)
        res/
            BOINCMgr.icns (moved from client/mac/BOINCMgr.icns)
    lib/
        makefile.am
        MoreAddrToSym.c,h (removed)
        MoreBacktrace.c,h (removed)
        mac/
            QMachOImage.c
            QMachOImageList.c
    mac_build/
        boinc.xcodeproj/
            project.pbxproj
        English.lproj/
            AboutBox.nib (removed)
            boinc.nib (removed)
            JoinDialog.nib (removed)
            PrefsDialog.nib (removed)

David  17 Apr 2007
    - file deleter:
        - Antique deletion is now default; it gets done once/day
            (pass -dont_delete_antiques to turn it off)
        - retry of errors is now default; it gets done once/day
            (pass -dont_retry_errors to turn it off)
        - add -dont_delete_batches option,
            and remove <dont_delete_batches> option from config file
    - client: fix format string in job log write

    client/
        client_types.C
    sched/
        sched_config.C,h
        file_deleter.C

David  17 Apr 2007
    - compile fix for FCGI

    lib/
        util.C

David  17 Apr 2007
    - client: define work_buf_total as
        max(1, work_buf_min + work_buf_additional).
        Allow both work_buf_min and work_buf_additional to be zero.
    - client: remove work_needed_secs()

    client/
        client_state.h
        cpu_sched.C
        sim.h
        work_fetch.C

David  17 Apr 2007
    - user web: better text for work-buf preferences;
        defaults are 0 and 0.25.
    - remove test_sanity.py stuff from configure.ac.
        It's relevant only to the automated testing framework,
        which no one uses except us.

    configure.ac
    html/inc/
        prefs.inc
    test/
        testbase.py

Charlie 17 Apr 2007
    - Mac: Trim bogus extra frame and post-signal frames from backtrace 
        reports, like the old Mac backtrace did.
    
    lib/
        mac/
            mac_backtrace.C
            QBacktrace.c
            QCrashReport.c

David  17 Apr 2007
    - "start" script: stop scheduler before daemons; otherwise can get
        "no shared memory" errors from scheduler

    sched/
        start

David  18 Apr 2007
    - Server: added sample_assimilator.C
        (an assimilator that copies output files to a directory)
    - Server: added sample_work_generator.C

    Note: until now we haven't supplied an example of of a work generator.
    The above two components (and the uppercase app) let us create
    an example project that actually does something.
    My plan is to have make_project install all this stuff

    - Server: added count_unsent_results() to sched_util
    - backend code: remove the -asynch arg from all programs.
        This was used by old PHP test framework, not needed now.
    - backend code: got rid of some compile warnings
    - removed assimilator_placeholder and validator_placeholder.
        These serve no useful purpose
        (they're copies of other files, and they don't actually
        act as placeholders since they get overwritten on a SVN update)

    sched/
        Makefile.am
        assimilator.C
        assimilator_placeholder.C (removed)
        db_dump.C
        db_purge.C
        feeder.C
        handle_request.C
        make_work.C
        message_handler.C
        sample_assimilator.C (new)
        sample_work_generator.C (new)
        sched_config.C,h
        sched_util.C,h
        server_types.C
        transitioner.C
        trickle_handler.C
        update_stats.C
        validator.C
        validator_placeholder.C (removed)

Rom    18 Apr 2007
    - fixes #7: Includes the last remaining files needed to build and
        package up 64-bit files for setup. We can now build and create
        64-bit windows installer packages.
        
    win_build/installerv2/
        BOINC.ism
        BOINCx64.ism
    win_build/installerv2/redist/Windows/src/
        <Numerious Files>
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll (Added)
        boinccas95.dll (Added)
        dbghelp95.dll (Added)

David  18 Apr 2007
    - bug fixes for sample work generator

    sched/
        sched_config.C,h
        sample_work_generator.C

Rom    19 Apr 2007
    - Fix a minor compile problem on 64-bit Windows platforms with the
        call to SetTimer.
    - fixes #80: Introduce the notion of an alternate platform for 64-bit
        Windows clients, which can also run 32-bit Windows apps.
        
      TODO: We'll need to refactor the whole platform section in the
        scheduler request creation section so that it can handle
        multiple alternate platforms and for Linux/Mac.
        
    api/
        windows_opengl.C
    client/
        client_state.C, .h
        cpp.h
        cs_scheduler.C

David  19 Apr 2007
    - Change things so that make_project installs a test application
        (uppercase) and the daemons to go along with it
        (sample_work_generator, sample_bitwise_validator, sample_assimilator).
        This is mostly working, not completely.

    apps
        upper_case.C
    html/ops/
        mass_email_script.php
    py/Boinc/
        setup_project.py
    sched/
        sched_config.C,h
        sample_work_generator.C
    tools/
        make_project
        project.xml
        Makefile.am

David  19 Apr 2007
    - scheduler: accept elements of the form
        <alt_platform>
            <name>windows_x86</name>
        </alt_platform>
        in request messages.
        These are platforms that the client can handle,
        other than its main one,
        listed in order of decreasing preferences.
        fixes #81.

    sched/
        handle_request.C
        server_types.C,h

Rom    19 Apr 2007
    - Match the client-side and server-side XML for alternate
        platforms.
    - Print both the max active memory usage and max idle
        memory usage after all the preference information has
        been parsed.
        
    client/
        cs_prefs.C
        cs_scheduler.C
        
Rom    19 Apr 2007
    - Statistics view update.
      (From Mifistor)
      
    clientgui/
        ViewStatistics.cpp, .h

Rom    19 Apr 2007 (HEAD)
    - Tag for 5.9.4 release, all platforms
      boinc_core_release_5_9_4

David  20 Apr 2007
    - make_project: add periodic tasks to default config.xml:
        dp_dump, update_uotd, update_forum_activities, update_stats,
        update_profile_pages
    - backend_lib.C: refuse to create a job for which some necessary
        parameter (rsc_fpops_est, rsc_fpops_bound, etc.) is missing
    - Unix build: don't include std_fixes.h in config.h.
        std_fixes.h is (I think) deprecated
    - sched_util: default sched log level is MSG_NORMAL
    - client: add ".txt" to job log filename
    - compile fixes

    configure.ac
    api/
        reduce_main.C
    client/
        file_names.C
    lib/
        str_util.h
    sched/
        sample_work_generator.C
        sched_msgs.h
    tools/
        backend_lib.C
        make_project

David  20 Apr 2007
    - str_util: don't use std::transform, since it causes problems
        with VC++ express edition

    clientgui/
        sg_SGUIListControl.h
    html/ops/
        db_update.php
    lib/
        str_util.C,h

David  20 Apr 2007
    - Advanced prefs: remove incorrect multiplication by 86400

    client/
        cs_prefs.C
    clientgui/
        DlgAdvPreferences.cpp

Rom    20 Apr 2007
    - Fix: Win x64's alternate platform is really windows_intelx86
        not windows_x86_64.
    
    client/
        client_state.C

Bruce  20 April 2007
    - Minor locality sched change for E@H

    sched/
        sched_locality.C

David  23 Apr 2007
    - make_project: remove --no_test_app option, add --test_app option
    - make_project: initial config in all cases has
        one_result_per_user_per_wu = 0
    - sample_assimilator: make it able to handle > 1 output file
    - boinc_cmd: make --help output more readable
    - User web: fix some undefined vars in translation.inc
        Rytis: let's try to fix PHP runtime warnings
    - DB: add default values for app table (avoid MySQL warnings)

    db/
        schema.sql
    html/
        inc/
            translation.inc
            uotd.inc
        ops/
            update_forum_activities.php
    lib/
        str_util.C
        boinc_cmd.C
    py/Boinc/
        setup_project.py
    sched/
        sample_work_generator.C
        sample_assimilator.C
    tools/
        make_project
        uc_wu, uc_result (new)

Rom    23 Apr 2007
    - fixes #120 - Rebuild all 32-bit Windows dependencies using
        VS 2005 so tht they all depend on the new CRT runtime. Make
        sure all dependencies include an application manifest.
    - WIN: Rebuild libcurl for x64 and include an application
        manifest so that it can find MSVCR80 when executing.
        
    curl/
        <multiple files>
    openssl/
        <multiple files>
    zlib/
        <multiple files>

David  23 Apr 2007
    - client: fix bug where client is unresponsive if
        there are unresolvable names in remote_hosts.cfg file

    client/
        gui_rpc_server.C,h

Rom    24 Apr 2007
    - fixes #121 - Both 32-bit and 64-bit BOINC Windows Installation
        packages require bootstrap loader.

    win_build/installerv2/
        BOINC.ism
        BOINCx64.ism

Rom    24 Apr 2007
    - fixes #122 - Windows benhcmark differences between VS 2003 and 
        VS 2005.
      
      The default FP model has changed since 2003, so change how the
        BOINC components are compiled so that they use /fp:fast instead
        of /fp:precise.
    
    win_build/
        *.vcproj

David  24 Apr 2007
    - Server: add new database field host.error_rate.
        Stores a dynamic estimate of the fraction of the hosts's
        results that fail validation (updated by the validator).

    client/
        sim.C
        cs_prefs.C
    db/
        boinc_db.C,h
    html/ops/
        db_update.php
    sched/
        handle_request.C
        sched_msgs.h
        validator.C

Eric K 24 Apr 07
    -  Exteded the "altername_platform" mechanism to x86_64 linux
       and solaris.  The current alternate platforms found by configure
       are...
     x86_64-pc-linux-gnu    -> i686-pc-linux-gnu
     sparc64-sun-solaris    -> sparc-sun-solaris
     sparc-sun-solaris      -> sparc-sun-solaris2.7
     powerpc64-apple-darwin -> powerpc-apple-darwin
    -  The alternate platform can be overridden on the configure command line
         --with-boinc-alt-platform="platformname"

    m4/
        boinc_platform.m4
    sched/
        Makefile.am
    client/
        client_state.C
        cs_scheduler.C
        client_state.h

David  25 Apr 2007
    - eliminate spurious "work fetch too big" message

    client/
        work_fetch.C

David  25 Apr 2007
    - fixes #126 - generate cronjob file in make_project

    tools/
        make_project

Rom    26 Apr 2007
    - fixes #86 - 5.9.3 won't install on Win98
        Make sure that the custom actions that use NT
        specific APIs are only executed on NT based systems.
        
    win_build/installerv2
        BOINC.ism
        BOINCx64.ism

Rom    26 Apr 2007
    - fixes #10 - Remove dependency on ATL framework for 
      boinc.dll on Windows
      
      With this checkin, the BOINC client should now be able
      to be built with Visual Studio Express.
      
    clientgui/
        BOINCGUIApp.cpp, .h
    clientlib/win/
        boinc_dll.cpp, .h
        boinc_dll.rc
        boincclient.rgs (deleted)
        boincsens.rgs (deleted)
        BOINCSENSSink.cpp, .h (deleted)
        IdleTracker.cpp
        NetworkTracker.cpp, .h (deleted)
        SENSLogonSubscriptions.h (deleted)
        SENSNetworkSubscriptions.h (deleted)
        SENSOnNowSubscriptions.h (deleted)
        SENSSubscriptions.h (deleted)
        stdafx.h
        
David  26 Apr 2007
    - server: fix bug that causes PHP scripts not to run from Cron
        Fixes #129.  From Christian Beer.

    html/ops/
        update_profile_pages.php
    tools/
        run_in_ops

David  26 Apr 2007
    - core client: set config settings to default values before
        parsing cc_config.xml.
        Otherwise, if you have a lot of log flags set,
        and tell the client to reread a config file that
        doesn't specify ANY log flags,
        you'll end up with all the flags still set.
        (from Sebastian Masch)
    - make_project: add cmdline args for update_stats in initial config

    tools/
        make_project
    client/
        log_flags.C,h

Charlie 27 Apr 2007
    - Mac: Update build instructions.  Mark old mac_build.php page as 
        deprecated and add link to new wiki page.

    doc/
        mac_build.php
    mac_build/
        HowToBuildBOINC_XCode.rtf

David  27 Apr 2007
    - bug in language_select.php made 'auto' not work,
        i.e. its impossible to return to browser settings
        after doing a cookie-based language choice
    - translation.inc and language_select.php were using $HTTP_SERVER_VARS,
        which appears to be deprecated in PHP 5.
        Use $_SERVER instead.
    - made strings at top of web site translatable

    html/
        inc/
            translation.inc
        user/
            language_select.php
    languages/translations/
        en.po

David  27 Apr 2007
    - Major rewrite of email-sending programs.
        Instead of editing their source (ugh!)
        you can now use command-line args to get testing functionality.

    html/ops/
        remind.php
        mass_email_script.php

Rytis  29 Apr 2007
    - Private message functionality for the forums.
        NOTE: needs database update.

    html/
        user/
            forum_forum.php
            forum_help_desk.php
            forum_index.php
            forum_pm.php (new)
            white.css
            img/
                pm.png (new)
        
        inc/
            db.inc
            forum.inc
            forum_user.inc
            user.inc
        
        ops/
            db_update.php
            
    db/schema.sql

David  30 Apr 2007
    - UOTD code: don't generate a static page; add uotd.php

    html/
        ops/
            update_uotd.php
        inc/
            uotd.inc
        user/
            uotd.php (new)

Rom    30 Apr 2007 (HEAD)
    - Tag for 5.9.5 release, all platforms
      boinc_core_release_5_9_5

David  30 Apr 2007
    - scheduler: added (correct this time!) support for
        <alt_platform> tags in scheduler requests.
    - file_deleter: add check for -dont_delete_batches

    sched/
        file_deleter.C
        handle_request.C
        sched_array.C,h
        sched_locality.C,h
        sched_resend.C,h
        sched_send.C,h
        server_types.h

David  30 Apr 2007
    - core client: if platform is different from platform in state file,
        print a message but don't reset projects
        (otherwise people running on 64-bit machines would lost
        in-progress jobs when switching to 64-bit client)

    client/
        client_state.C

David  30 Apr 2007
    - scheduler: un-comment-out code to send abort_if_result_not_started
        messages

    sched/
        handle_request.C

David  1 May 2007
    - make_project and upgrade now write a file 'local.revision'
        in the project home directory.
        It contains the output of /usr/bin/svnversion,
        i.e. the code revision from which the server software was built.
    - Web files that create directories now give them g+rwx permissions
        
    html/inc/
        cache.inc
        translation.inc
    sched/
        edf_sim.C
    tools/
        make_project
        upgrade

Rom    30 Apr 2007 (HEAD)
    - Tag for 5.9.6 release, all platforms
      boinc_core_release_5_9_6

Charlie 2 May 2007
    - Mac: Revert to wxMac-2.8.0 due to bugs in later versions.
    - Mac: Update XCode project, build scripts and build instructions to use 
        wxMac-2.8.0.  Tag these changes for 5.9.6 release.

    mac_build/
        buildWxMac.sh
        HowToBuildBOINC_XCode.rtf
        setupForBOINC.sh
        boinc.xcodeproj/
            project.pbxproj

Rom    2 May 2007
    - fixes #154: 
        * refactored the alternate platform mechinism so that we
          can support multiple alternate platforms.
        * moved everything to cs_platforms.C since we expect the
          kind of sprawl that is in host_info.C on the *nix
          environments.
    - Clean up some warnings
          
    client/
        acct_setup.C
        client_state.C, .h
        client_types.h
        cs_platforms.C (Added)
        cs_scheduler.C
        cs_statefile.C
        http_curl.C
    lib/
        str_util.h

Matt    2 May 2007
    - updated db/validator to add logic for wuhash table.
      wuhash table (see schema.sql) has two fields, user and 
      project-specific workunit id so that a user's contribution
      can be tied to the appropriate workunit ID in the science
      database (a different ID than in the BOINC database). This logic
      is only enacted with -update_wuhash flag on command line.
      The project-specific workunit id is expected to be found
      in the workunit.opaque field.

    db/
        schema.sql
        constraints.sql
        boinc_db.C,h
    sched/
        validator.C
    html/ops/
        db_update.php
    
Walt   2 May 2007
    - Add cs_platform.C to Makefile.am
          
    client/
        Makefile.am

David  2 May 2007
    - Scheduler: in reply, add <platform> element to each <app_version,
        and add <platform> and <version_num> elements to <result>
        (server half of multi-version changes)
    - scheduler: make ssp a global; could eliminate from args everywhere

    db/
        boinc_db.h
    sched/
        feeder.C
        main.C,h
        sched_send.C
        sched_shmem.C,h
        server_types.C

Matt    2 May 2007
    - per Dave's request changed "wuhash" to "credited_job" which
      is a little more self-explanatory.

    db/
        schema.sql
        constraints.sql
        boinc_db.C,h
    sched/
        validator.C
    html/ops/
        db_update.php

Charlie 2 May 2007
    - Mac: Use run_program() instead of wxExecute to launch boinc CC, 
        because under wxMac-2.8.0, wxExecute starts a separate thread 
        to wait for child's termination. wxProcessTerminationThread uses 
        a huge amount of CPU time (about 11% of 1 CPU on 2GHz Intel Mac). 
    - Mac: add cs_platform.C to XCode project.

    clientgui/
        BOINCGUIApp.cpp
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Rom    3 May 2007
    - fixes #5: Include the version number of the client next to it's
        name, so people can see if they need to upgrade a remote client.
    - fixes #149: Change the parsing function for the
        CBOINCGridCellProgressRenderer so that we don't have to update
        the docs or screenshots. Display the progress bar as a resource
        share fraction.

    clientgui/
        AdvancedFrame.cpp
        BOINCGridCtrl.cpp
        MainDocument.cpp, .h
        ViewProjectsGrid.cpp

David  3 May 2007
    - Core client: handle multiple platforms correctly.
        Remove the tacet assumption that a host can handle
        applications for a single platform.
        With the Apr 30 scheduler changes,
        a project may (at different times)
        send app versions for the same app and version number,
        but different platforms.
        Before we would have ignored all but the first;
        now we handle them correctly.

        Implementation notes:
        - Add APP_VERSION.platform, RESULT.platform,
            and RESULT.version_num.
            If these are missing from an XML doc
            (e.g. an existing state file or a scheduler reply
            from a project not running current server)
            then set to the primary platform.
        - Continue to write workunit.version_num
            and active_task.version_num to state file,
            even though these are no longer part of the struct.
            This allows users to revert to an older version.

    client/
        app.C
        check_state.C
        client_state.C,h
        client_types.C,h
        cs_apps.C
        cs_scheduler.C
        cs_statefile.C
        sim.C

David  3 May 2007
    - Core client: small changes to make the client simulator act reasonably.
        - change > to >= for check for running beyond sched period
        - adjust debts before calculating anticipated debt

    client/
        client_types.h
        cpu_sched.C
        sim.C

Charlie 3 May 2007
    - Mac: Update license agreement, modify build scripts to include license 
        agreement with bare-client releases, not only wih Manager.

    mac_installer/
        License.rtf
        release_boinc.sh
        release_GridRepublic.sh

Rom    3 May 2007
    - Fix build break for Unicode builds
      ( From Frank Weiler )
    - Win: Introduce a custom action to delete any lingering binaries from the
        installation directory before MSI determines what needs to be copied.
    - Win: Introduce a custom action that will migrate
        C:\Program Files (x86)\BOINC to C:\Program Files\BOINC for the x64
        upgrade scenario.
    
    clientgui/
        BOINCGridCtrl.cpp
    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.rc
        boinccas95.def
        boinccas95.vcproj
        CACleanupOldBinaries.cpp, .h (Added)
        CAMigratex86x64.cpp, .h (Added)
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll

Rom    3 May 2007
    - Include the new custom actions in the Windows Installers
    
    win_build/installerv2/
        BOINC.ism
        BOINCx64.ism
    
Rom    3 May 2007 (HEAD)
    - Tag for 5.9.7 release, all platforms
      boinc_core_release_5_9_7

David  4 May 2007
    - scheduler: in send_result_abort(), distinguish between
        the enumeration ending versus it failing.
        This fixes a bug where lots of results would be
        incorrectly aborted if there's a database problem.
        This fix only matters if you use the <send_result_abort> config flag.
        (from Kevin Reed)
    - validator: add -credit_from_wu option.
        This gets credit from the workunit XML
        (which must have a <credit> flag).
        This lets you use credit-from-WU with the standard validators
        (sample_bitwise and sample_trivial)

    sched/
        handle_request.C
        validator.C
        validate_util.h

David  4 May 2007
    - API: if using graphics, set worker thread stack size limit to max
        (from Rhiju Das of Rosetta@home)

    api/
        graphics_impl.C

David  4 May 2007
    - Sim-related stuff

    sched/
        edf_sim.C
    client/
        sim.C,h

David  4 May 2007
    - Oops!  Small mistake in multi-platform changes.

    client/
        cs_scheduler.C

David  4 May 2007
    - Server status page: fix bug that showed most daemons as not running
        on FC6; needed to trim white space from pid
    - Server status page: show server software SVN revision

    html/ops/
        sample_server_status.php

Charlie 5 May 2007 (HEAD)
    - Bump version to 5.9.8 for release with multi-platform fix.
    - Tag for 5.9.8 release, all platforms
      boinc_core_release_5_9_8
    
    client/
        version.h

Charlie 6 May 2007
    - Mac: On Intel Macs, support PowerPC Mac as a secondary platform.
    
    client/
        cs_platforms.C

David  6 May 2007
    - core client: another multi-platform fix (missing \n)

    client/
        client_types.C

David  6 May 2007
    - core client: when parsing statefile or scheduler reply,
        if get an app_version with unknown platform name, ignore it.
        This means that, e.g. if someone moves a BOINC directory
        from Intel to PowerPC Mac, things will still work right.

    client/
        client_state.C,h
        cs_platforms.C
        cs_scheduler.C
        cs_statefile.C

Janus    6 May 2007
    - Removed some old debug code and changed a bogus error message to a more
      sane one.

    html/inc/
        translation.inc

David  6 May 2007
    - make_project: create <log_dir> element in config.xml
        (so that show_logs.php will work).
        Fixes #170

    py/Boinc/
        setup_project.py

Charlie 7 May 2007 (HEAD)
    - Bump version to 5.9.9 for release with multi-platform fix.
    - Tag for 5.9.9 release, all platforms
      boinc_core_release_5_9_9
    
    client/
        version.h

Janus    7 May 2007
    - Removed BOINC.dk from stats sites as it is in the process of shutting down
      several of its services.
      
    /html/inc/
        stats_sites.inc

David  7 May 2007
    - core client: fix bug in code to ignore unknown platforms.

    client/
        cs_scheduler.C

Rom    7 May 2007
    - fixes# 162: Fix the Windows setup to install the CRT as a private assembly
        so that we can avoid running into sxs problems. At some point I'll have 
        to revisit this and figure out what is really going on.
    
    win_build/installerv2/
        BOINC.ism
        BOINCx64.ism

David  7 May 2007
    - core client: add <no_alt_platform> config option;
        eliminates use of alternate platforms.

    client/
        client_state.h
        cs_platforms.C
        cs_statefile.C
        log_flags.C,h

Rom    7 May 2007
    - fixes #110 - Simple GUI: "spacer" image is not updated
    
    clientgui/
        sg_ImageLoader.cpp
        sg_ProjectsComponent.cpp, .h

Rom    7 May 2007
    - fixes #4 - BOINC Manager should be able to find it's 
      localization files.
      
      BOINCMgr will now check in the absolute path in which
      it was installed as well as the relative path from where
      it was executed from.
      

    clientgui/
        BOINCGUIApp.cpp, .h

David  7 May 2007
    - client simulator:
        - Add --server_uses_workload option
            (simulate server that does EDF simulation)
        - Add simulation of exponential backoff when don't get work.
            Otherwise it will keep asking forever.
        - move non-interesting stuff to sim_util.C
    - change simulator code to use ' instead of " in compiled translations

    client/
        makefile_sim
        sim_util.C
        sim.C,h
        work_fetch.C
    html/inc/
        translation.inc
    sched/
        edf_sim.C
        edf_sim.h (new)

Rom    7 May 2007
    - Tag for 5.9.10 release, all platforms
      boinc_core_release_5_9_10
    
    client/
        configure.ac
        version.h

Janus    8 May 2007
    - Initial checkin of a tiny part of the serverside Bittorrent file 
      distribution code. Everything BT-related will reside in /html/bt and
      will be disabled by default.
    - Id property set on belement.inc
    
    html/bt/ (new)
        README (new)
    INSTALL (new)
    html/bt/inc/ (new)
        belement.inc (new)

David  8 May 2007
    - core client: improve error message when can't link app version

    client/
        client_state.C
        cs_statefile.C

David  8 May 2007
    - GUI RPC: add new element d_boinc to DISK_USAGE;
        tells how much disk space BOINC is using
        (not including projects).
    - added project.max_infeasible_count to client simulator

    client/
        gui_rpc_server_ops.C
        sim.C,h
        sim_util.C
    clientgui/
        ViewResources.cpp
    lib/
        filesys.C
        bui_rpc_client.h
        bui_rpc_client_ops.C

Charlie 8 May 2007
    - Mac: Refresh Disk Usage pane only on every 10th call to reduce 
        CPU overhead, but refresh once per second the first 3 times 
        to work around a bug drawing the legends. (Also included in 
        5.9.10 Mac release, added to boinc_core_release_5_9_10 tag.)

    clientgui/
        ViewResources.cpp

Janus    9 May 2007
    - Fixed an issue where long unbreakable post content could break the layout
      of the forum for an entire thread. Now this only breaks the layout for that
      particular post.
      If you use a different css stylesheet than white.css you should copy over the
      #thread part.
      Thanks to Lee Carre for pointing out the issue and possible solution.
    - Added BEncoded dictionaries to the Bittorrent checkin.

    html/user/
        white.css
    html/bt/inc/
        bdictionary.php

Charlie 9 May 2007
    - Finally fixed a long-standing bug which caused the PieCtrl legend to 
        be clipped to a small rectangle when first drawn on Macs.  If the 
        legend changed so it required more space, this bug would also clip 
        to the former size the first time it was updated.  This problem 
        did not occur on Windows.
        NOTE: I currently can't build on Windows or Linux, so please verify 
        that my modified code works OK on those platforms. 
    - Mac: removed the hack which refreshed once a second the first 3 times 
        to work around this bug.
        
    clientgui/
        ViewResources.cpp
        common/
            wxPieCtrl.cpp

David  9 May 2007
    - Client simulator: added --dcf_dont_use and --dcf_stats options
        (alternate ways of computing DCF)

    client/
        cpu_sched.C
        sim.C,h
        sim_util.C

David  9 May 2007
    - scheduler: slight code cleanup prior to adding EDF stuff

    languages/translations/
        en.po
    sched/
        sched_send.C
        server_types.h

Rytis   9 May 2007
    - Update BBCode to allow easy linking to Trac tickets, wiki and changesets.
        
    html/
        user/
            bbcode.php
        inc/
            text_transform.inc

Charlie 10 May 2007
    - A better fix for Mac PieCtrl legend clipping bug: wxPieCtrl::Refresh() 
        calls new wxPieCtrlLegend::MeasureText() method to caclulate size of 
        the legend area and SetSize() of legend window before OnPaint() is 
        called.  Apparently, calling SetSize() from within the OnPaint() 
        function doesn't adjust the "invalid" area to be repainted until 
        a return to the event loop, so the added area didn't get painted 
        until the next OnPaint() call.  Also, the wxMemoryDC bitmap was 
        being created at the smaller size, so that was also clipping the 
        drawing.
    - Mac: include size of BOINC Manager bundle in BOINC total disk usage 
        displayed in Disk Usage pane Pie Chart.

    clientgui/
        BOINCGUIApp.cpp, .h
        ViewResources.cpp
        common/
            wxPieCtrl.cpp

Rom    10 May 2007
    - Possible fix for a crashing condition when the manager is shutdown
        from the system tray icon.
        
    clientgui/
        BOINCBaseFrame.cpp
        BOINCTaskBar.cpp, .h


David  10 May 2007
    - client simulator: make it compile on Win
    - client: parse version_num in active_task to avoid spurious error msg

    client/
        app.C
        sim.C
    win_build/
        sim.vcproj

Rom    10 May 2007
    - fixes #164: Aborting a Task
    
        If a task has already been aborted, don't enable the abort task
        button.

    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp

David  10 May 2007
    - client: add constructor/destructor for APP_VERSION, WORKUNIT, RESULT
    - client: with anonymous platform, don't link app version twice

    client/
        client_types.h
        client_state.C
        cs_apps.C
        cs_files.C
        cs_prefs.C
        cs_scheduler.C
        cs_statefile.C
        sim_util.C
    html/
        uotd.inc
    sched/
        edf_sim.h
        server_types.h
    client/
        app.C
        sim.C
    win_build/
        sim.vcproj

David  10 May 2007
    - scheduler: add <workload_sim> config option.
        If set, the scheduler will use EDF simulation,
        together with the in-progress workload reported by the client,
        to avoid sending results that
        1) will miss their deadline, or
        2) will cause an in-progress result to miss its deadline, or
        3) will make an in-progress result miss its deadline
            by more than is already predicted.
        If this option is not set, or if the client request doesn't
        include a workload description (i.e. the client is old)
        use the existing approach, which assumes there's no workload.
        NOTE: this is experimental.  Production projects should not use it.
    - EDF sim: write debug stuff to stderr instead of stdout
    - Account manager:
        - if an account is detach_when_done, set dont_request_more_work
        - check done_request_more_work even for first-time projects
    - update_uotd: generate a file for use by Google gadget
    - user_links(): use full URLs (so can use in Google gadget)

    client/
        acct_mgr.C
        work_fetch.C
    html/
        inc/
            uotd.inc
            util.inc
        user/
            uotd_gadget.php (new)
    sched/
        Makefile.am
        edf_sim.C
        sched_config.C,h
        sched_resend.C
        sched_send.C,h
        server_types.C,h

Janus    10 May 2007
    - Added BEncoded integer support for the Bittorrent utility files

    /html/bt/inc/
        binteger.php

David  10 May 2007
    - boinc_cmd: add --network_available and --get_cc_status options

    lib/
        boinc_cmd.C

Rom    10 May 2007
    - Add a project config.xml option to allow moderators to ban
        accounts.
        
      <moderators_allowed_to_ban>1</moderators_allowed_to_ban>
      
    html/inc/
        forum.inc
        forum_moderators.inc

David  10 May 2007
    - core client: fix big that caused
        duplicate app versions to appear in state file
        (this was harmless, BTW)

    client/
        cs_scheduler.C

Rom    10 May 2007
    - Fix a build break in the manager.
    
    client/
        app.h
    lib/
        common_defs.h

Charlie 10 May 2007
    - One more rework of Mac PieCtrl following Frank Weiler's suggestions.
        Eliminated wxPieCtrlLegend class completely, integrated legend 
        drawing into the PieCtrl class itself, greatly simplifying it.
    - Mac only: create CViewResources::GetViewRefreshRate() to update 
        PieCtrl only every 10 seconds to reduce CPU overhead instead of 
        doing it with a counter in CViewResources::OnListRender().
    - Mac: Determine size of BOINC Manager bundle in core client if it was 
        launched by Manager rather than in the Manager itself, to get 
        correct information when controlling a remote computer.

    client/
        gui_rpc_server_ops.C
    clientgui/
        BOINCGUIApp.cpp, .h
        ViewResources.cpp, h
        common/
            wxPieCtrl.cpp, h

David  11 May 2007
    - translation.inc: backed out change of 7 May;
        we need to use " to expand $PROJECT var
    - scheduler:
        take work_buf_min into account in deciding whether
        a result will be reported by its deadline.
    - all back end programs:
        better error message if can't parse config file

    html/inc/
        translation.inc
    sched/
        *.C

David  11 May 2007
    - web RPC: fix bug in XML variant in show_user.php, bad-ID case.

    html/user/
        show_user.php

David  11 May 2007
    - Manager: show (in Project/status) if a sched RPC is in progress

    clientgui/
        ViewProjects.cpp
        ViewProjectsGrid.cpp

David  11 May 2007
    - web RPC: show lots more info in team_lookup.php, XML version

    html/inc/
        xml.inc

David  11 May 2007
    - Python tools:
        - removed "add" (long deprecated)
        - version.py is needed only in test/;
            remove references to it in boinc_path_config.py,
            and don't copy it to project/bin

    py/Boinc/
        boinc_path_config.py.in
        setup_project.py
    tools/
        add (removed)

Rom    12 May 2007
    - Change the 'ProductName' in the resource structures to
        'BOINC client' instead of 'BOINC core client'

    client/win/
        boinc_cmd.rc
        boinc_ss.rc
    clientgui/
        BOINCGUIApp.rc

David  14 May 2007
    - scheduler: add max_wus_in_progress option.
        Limits total # of in-progress results per host
        (independently of #CPUs)

    sched/
        sched_config.C,h
        sched_resend.C
        sched_send.C
        server_types.h

David  14 May 2007
    - core client: in statefile read, set avp->platform
        before linking.
    - core client: when parse app_info.xml,
        set platform to primary platform.
        Otherwise anonymous platform mechanism doesn't work.
    - GUI RPC: in attach project RPC, check for
        already attached even in config file case

    client/
        cs_statefile.C
        gui_rpc_server_ops.C
        scheduler_op.C
        time_stats.C

David  14 May 2007
    - core client: on attach to project,
        if the initial sched request failed,
        the manager would show "communicating" for 60 sec,
        then time out and show "failed to attach".
        But the project would actually be attached.
        This was due to a logic error,
        but I fixed it in a more fundamental way:
        by considering an attach to be complete immediately,
        without waiting for a successful scheduler RPC.

        This was originally done to ensure that the URL and account key
        were valid.
        But when using the BOINC Manager, we've already verified
        both of these before doing the attach project RPC.

        When using boinc_cmd, you now have to check for messages
        indicating a bad URL or account key.
        I changed things to print these messages on every sched RPC.

        Implementation: the notion of "tentative project" no longer exists.

    client/
        client_state.C,h
        client_types.C,h
        cs_account.C
        cs_benchmarks.C
        cs_scheduler.C
        gui_rpc_server_ops.C
        scheduler_op.C
        sim.C
        sim_util.C

David  14 May 2007
    - API: Eric Myers reported that my 4 May checkin
        (which increased worker thread stack size to the limit
        returned by getrlimit())
        broke his app on several Linux platforms.
        So I added a worker_thread_stack_size element to BOINC_OPTIONS.
        If you want an increased stack size, set this.
    - web RPC: add <url> and <local_revision> elements to
        the XML returned by get_project_config.php

    html/user/
        sample_get_project_config.php
    api/
        graphics_impl.C

David  14 May 2007
    - client: fix bug where:
        1) client wakes up from hibernate
        2) one or more network ops start (e.g. because backoff expired)
        3) ops fail because DNS system isn't up yet
        4) connect to reference site fails too
        5) user sees "please create physical connection",
            even though there's been a physical connection the whole time.
        Solution:
        - keep track of "last wakeup time": the last time the
            time of day (measured in poll_slow_events())
            increased by more than 10 times the polling interval.
            This must be either coming out of hibernation,
            or the user resetting the system clock.
        - When a network operation fails, try to contact the reference site
            only if it's more than 30 seconds after the last wakeup time.

    client/
        client_state.C,h
        net_stats.C

Rom    15 May 2007
    - MGR: Increase the connection timeout to one minute to account
        for slow machines during boot-up.
        
    clientgui/
        MainDocument.cpp

David  15 May 2007
    - client: change Win program launch to suppress hourglass cursor
    - client simulator: add --cpu_sched_rr_only and --dual_dcf options

    client/
        app.h
        app_start.C
        client_types.C,h
        cpu_sched.C
        cs_scheduler.C
        sim.C,h
        work_fetch.C

David  15 May 2007
    - user web: add 
        $s = '$s';
        at top of compiled translation files,
        to allow re-ordering of format codes
        (from H. Komori)

    html/inc/
        translation.inc

Rom    16 May 2007
    - Tag for 5.9.11 release, all platforms
      boinc_core_release_5_9_11
    
    client/
        configure.ac
        version.h

David  17 May 2007
    - sort team-lookup results by avg credit desc

    html/user/
        team_lookup.php

Charlie 17 May 2007
    - Mac: Change "GridRepublic Manager" to "GridRepublic Desktop" in 
        GridRepublic ReadMe file.

    mac_installer/
        GR-ReadMe.rtf

Charlie 18 May 2007
    - Mac: New shell script make_GridRepublic.sh creates a GridRepublic 
        installer from a standard (unbranded) Mac BOINC installer plus 
        the GridRepublic branded resources: GridRepublic.icns, 
        GridRepublic.tiff, GR_ReadMe.rtf and skin files. 

    mac_installer/
        make_GridRepublic.sh

David  18 May 2007
    - client simulator: fix cpu_sched_rr_only bug
    - boinc_cmd: canonicalize URLs
    - user web: fix link to Top Teams
    - back end: remove code related to alternate download dir

    client/
        cpu_sched.C
        sim.C
    html/
        inc/
            stats_sites.inc
        user/
            stats.php
    lib/
        boinc_cmd.C
    sched/
        file_deleter.C
        sched_config.C,h

David  18 May 2007
    - fix bugs in job_times.php; it shows the correct mean and stdev now.

    html/ops/
        job_times.php

Charlie 19 May 2007
    - Mac installer: if installer package includes a custom skin, set 
        preferences of all users to that skin.
        
    mac_installer/
        PostInstall.cpp

Janus    20 May 2007
    - Added BEncoded lists to the Bittorrent serverside utility classes

    html/bt/inc/
        blist.php (new)

Rom     21 May 2007
    - Bug Fix: fprintf is an ANSI function in Linux, convert Unicode
        string to ANSI before writing them to sdterr.
    - Bug Fix: Fix the abort button logic, VS 2005 was throwing some
        useful warnings.
        
    clientgui/
        SkinManager.cpp
        ViewWork.cpp
        ViewWorkGrid.cpp

David  21 May 2007
    - scheduler: fix bug that caused crash in anonymous platform case;
        don't send result platform or version num if anon platform.
    - back end: parse server status-related config elements
        (wwww_host etc.) to avoid XML warnings

    sched/
        sched_config.C
        sched_send.C
        server_types.C

David  21 May 2007
    - client: if anonymous platform, don't match platform/version
        in lookup_app_version(); just match app

    client/
        client_state.C

David  21 May 2007
    - feeder: the query change of 13 April broke the -random_order,
        -priority_order, -priority_order_create_time,and -mod options
        (from Nicolas Maire)

    sched/
        feeder.C

Rom    21 May 2007
    - fixes #182 - System tray icon should be removed for both exit
        scenarios.
        
    clientgui/
        BOINCBaseFrame.cpp
        BOINCTaskBar.cpp

David  21 May 2007
    - API: don't include config.h in a few places

    api/
        graphics_impl.C
        texture.C
        tgalib.C

David  21 May 2007
    - feeder: fixed SQL query again
    - start script: print error if host has no daemons
    - client: fix bug if #CPUs changes during benchmark

    client/
        cs_benchmark.C
    sched/
        feeder.C
        start

Janus    22 May 2007
    - Fixed missing version trackers in BInteger, BList classes
    - Added BString class for BEncoded strings for the Bittorrent code

    html/bt/inc/
        blist.php
    binteger.php
    bstring.php (new)

Rom    22 May 2007
    - fixes #85 - Both Grid based views and List based views are now
        available.

    clientgui/
        AdvancedFrame.cpp, .h
        Events.h

Rom    22 May 2007
    - fixes #187 - Fix the initial refresh interval for the various
        views.
    
    clientgui/
        AdvancedFrame.cpp, .h

David  22 May 2007
    - scheduler: fix FCGI compile
    - API: add files for version 6 graphics

    api/
        Makefile.am
        graphics2.C (new)
        graphics2_unix.C (new)
        graphics2_win.C (new)
    sched/
        Makefile.am

David  22 May 2007
    api/
        graphics2.C
        graphics2_win.C

Charlie 22 May 2007
    - Manager: Fix crash bug in wxPieCtrl.
    - Mac: Add list control sources back into XCode Project 
        (ViewTransfers.cpp,.h, ViewWork.cpp,.h,ViewProjects.cpp,.h)
    - Mac: Revert XCode project, build scripts and build instructions to use 
        wxMac-2.6.3 as a temporary workaround to SimpleGUI drawing bug.  
        
    clientgui/
        wxPieCtrl.cpp
    mac_build/
        buildWxMac.sh
        HowToBuildBOINC_XCode.rtf
        setupForBOINC.sh
        boinc.xcodeproj/
            project.pbxproj

David  22 May 2007
    - lib/filesys: do timed retry of delete/rename on Unix as well as Win
    - client: sleep 1 sec (not 60) before retry statefile write
    - client: parse <credit> in workunit XML
    - scheduler: better error messages if insert_wu_tags() fails

    api/
        graphics2_unix.C
    client/
        client_state.C
        client_types.C
    lib/
        filesys.C
    sched/
        sched_send.C

Rom    23 May 2007
    - MGR: Make it as plain as day what the new menu item it geared
        towards by calling it the accessible view.

    clientgui/
        AdvancedFrame.cpp

Rom    23 May 2007
    - Tag for 5.9.12 release, all platforms
      boinc_core_release_5_9_12
    
    client/
        configure.ac
        version.h

Janus    23 May 2007
    - Added "IllegalArgumentException" class for use in the remainin BT code
    - Also added the class which will be used to represent the contents of
      a .torrent descriptor.
      This class can generate (hopefully!) valid .torrents and register the file
      that the torrent points to with the database for later tracking.
      The constructor takes a list of webseeds (HTTP servers) as input together
      with an URL where the tracker can be found - and of course the file that it
      should generate data for.

    html/bt/inc/
        torrent.php (new)
    illegalargumentexception.php (new)

David  23 May 2007
    - client: unscrambled some of the #ifdefs in hostinfo_unix.C
        In Linux case, if measured RAM size is negative, print some info.

    client/
        hostinfo_unix.C

David  23 May 2007
    - client, Unix: always use 1 (rather than slot#) in ftok().
        Slot is already encoded in path.
    - client, Linux: get memory size from /proc/meminfo
        rather than sysconf()

    client/
        app_start.C
        hostinfo_unix.C

Jeff  23 May 2007
    - fixed a linkage problem whereby the fcgi_file_upload_handler was
      linking to some non-fcgi versions of .o files.  This was resulting
      in segfaults.
    - added an fcgi entry counter to the file_upload_handler

    sched/
        Makefile.am
        file_upload_handler.C

David  23 May 2007
    - debug version 6-style graphics on Windows.
        New example app works now!

    api/
        graphics2.C,h
        graphics2_util.C
        graphics2_win.C
    lib/
        util.C,h

David  23 May 2007
    - debug version-6-style graphics on Unix

    api/
        Makefile
        graphics2.h
        graphics2_win.C
        graphics2_util.C
        graphics2_unix.C
    lib/
        shmem.h

Charlie 23 May 2007
    - Mac: Remove obsolete XCode project script phase for separate SG 
        build symbol table.
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

David  24 May 2007
    - Add a mechanism for a project to shut down gracefully.
        If <ended>1</ended> is included in config.xml,
        this gets send to clients,
        and they display a "Project ended - OK to detach" message.

    client/
        client_state.C
        client_types.C,h
        scheduler_op.C
    clientgui/
        VIewProjects.cpp
        VIewProjectsGrid.cpp
    lib/
        gui_rpc_client.h
        gui_rpc_client_ops.C
        gui_rpc_client_print.C
    sched/
        main.C
        sched_config.C,h
        server_types.C

David  24 May 2007
    - client, Windows: when making calls to get free disk space
        (e.g. pGetDiskFreeSpaceEx())
        pass the path of the current directory instead of NULL.
        Otherwise, if we're running as an unprivileted user
        with no access to the root dir,
        the call fails and reports zero free space.

    lib/
        filesys.C

David  24 May 2007
    - renamed texfont.c to texfont.C to fix automake warning

    api/
        texfont.C (changed c to C)
        Makefile.am

David  26 May 2007
    - Add GUI RPC to set projects debts (short and long term).
        Lets you set all of them at once, as suggested by Nicolas Alvarez.
        fixes #131

    client/
        gui_rpc_server_ops.C
    html/user/
        sample_index.php
    lib/
        boinc_cmd.C
        gui_rpc_client.h
        gui_rpc_client_ops.C

David  27 May 2007
    - Manager: make some strings translatable, and fix them

    clientgui/
        sg_StatImageLoader.cpp
        sg_ProjectsComponent.cpp
        sg_ViewTabPage.cpp
        DlgAdvPreferences Base.cpp

Rytis   27 May 2007
    - Donations system (running via PayPal).
        NOTE: DB updated needed. Documented in
        http://boinc.berkeley.edu/trac/wiki/PayPalDonations
        
    db/
        schema.sql
    html/user/
        currency.js
        donate.php
        donated.php
        donation_ipn.php
        donations.php
        img/
            paypal_logo.png

David  28 May 2007
    - Unix: 'make install' copies certificate authority file
        to client directory

    client/
        Makefile.am

David  28 May 2007
    - user web: host-merging logic was wrong for Intel CPUs
        with MHz instead of GHz in their names.
    - user web: it no hosts eligible for merging, say so
        instead of showing blank table

    html/
        inc/
            host.inc
        user/
            host_edit_form.php

Rom    29 May 2007
    - fixes #207 - HTML entities in BOINC Manager have to be decoded
    
        BOINC Manager can now properly decode HTML entites for the
        following elements:
        
            Projects Tab:
                Project Name
                User Name
                Team Name
            Work Tab:
                Project Name
                Application Name
            Transfers Tab:
                Project Name
            Messages Tab:
                Project Name
            Disk Tab:
                Project Name
    - fixes #212 - Info in columns misaligned on switching views
    - Properly restore which tab view the user left from when going
        to the advanced view from the simple view
    - Fix the problem that caused the manager to wait for 7 seconds
        to display anything on initial startup.
    - Store the various Grid/List persisted data seperately so that
        the different header sizes don't cause problems.
    
    clientgui/
        AdvancedFrame.cpp
        BOINCBaseView.cpp, .h
        BOINCGridCtrl.cpp
        ViewMessages.cpp, .h
        ViewMessagesGrid.cpp, .h
        ViewProjects.cpp, .h
        ViewProjectsGrid.cpp, .h
        ViewResources.cpp, .h
        ViewStatistics.cpp, .h
        ViewTransfers.cpp, .h
        ViewTransfersGrid.cpp, .h
        ViewWork.cpp, .h
        ViewWorkGrid.cpp, .h
    lib/
        gui_rpc_client_ops.C

Rom    29 May 2007
    - Disable HtmlEntityEncode/HtmlEntityDecode on all platforms but
        Windows for now.
    - Change all references of mb_str() to c_str() in SkinManager.cpp
        to avoid SIGILL's on Unicode environments.
    - fixes #215: Customize the VBS script used to launch BOINC Manager
        for each system we install on.

    clientgui/
        BOINCBaseView.cpp
        SkinManager.cpp
    win_build/installerv2/
        BOINC.ism
        BOINCx64.ism
    win_build/installerv2/redist/Windows/
        BOINC Manager.vbs (Deleted)
    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.sln
        boinccas95.vcproj
        CACreateVBSShortcut.cpp, .h (Added)
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll
        
Rom    29 May 2007
    - Tag for 5.10.0 release, all platforms
      boinc_core_release_5_10_0
    
    client/
        configure.ac
        version.h

David  29 May 2007
    - client: add cmdline options --exit_before_start and --exit_after_finish.
        This cause the core client to exit immediately before or after
        running a job,
        letting you examine the contents of the slot directory.
    - scheduler: changed max # of CPUs used in daily_result_quota
        limit from 4 to 8, and make it a compile-time parameter
    - feeder/scheduler: make the number of work items in shared
        memory configurable (in config.xml).
        The element is <shmem_work_items>
    - feeder: make the size of the work item query configurable
        (<feeder_query_size)
    - feeder: remove code related to removing infeasible results
        from shared mem.
        This mechanism was never needed,
        and I think a timeout would accomplish the same effect.

    client/
        app.C
        app_start.C
        client_state.C,h
        cs_cmdline.C
    sched/
        feeder.C
        sched_array.C
        sched_config.C,h
        sched_send.C
        sched_shmem.C,h
        sched_util.C
        show_shmem.C

David  29 May 2007
    - Scheduler: increased the resolution of homogeneous redundancy (HR)
        e.g. distinguish between models of Intel and AMD
    - Scheduler: add a quick HR check that doesn't access the DB
    - Transitioner: if a workunit has >0 error results and no success results,
        set its HR class to zero
    From M.F. Somers.

    db/
        boinc_db.C,h
    sched/
        sched_array.C
        sched_hr.C,h
        transitioner.C

Rom    29 May 2007
    - fixes #220: 5.10.0 won't install on Win98
    - fixes #11: Installer installs autostart command when not
        selected (Win9x)

    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.rc
        boinccas95.vcproj
        CACreateVBSShortcut.cpp
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll
        
Charlie 30 May 2007
    - Client: fix compile break.
    - Mac: Fix substantial build breaks in reorganized hostinfo_unix.C.
    
    client/
        cs_cmdline.C
        hostinfo_unix.C

Rom    30 May 2007
    - MGR: _() is for static content, wxGetTranslation is for dynamic
        content.
        
    clientgui/
        sg_StatImageLoader.cpp

David  30 May 2007
    - fixed --help output of client and boinc_cmd
        (from Frank Thomas)
        Fixes #222

    lib/
        boinc_cmd.C
    client/
        cs_cmdline.C

David  30 May 2007
    - user web: fix bug in host merge function
    - core client: fix bug in set_debt() GUI RPC
    - scheduler: some of the "quick checks" in scan_work_array()
        are applicable to locality scheduling also,
        so they should be moved to wu_is_infeasible().
        I did this for one: the check for one result
        per user (or host) per WU.  Should do for others.

    client/
        gui_rpc_server_ops.C
    html/
        host_edit_action.php
        host_edit_form.php
    sched/
        sched_array.C
        sched_send.C,h

David  30 May 2007
    - user web: added new feature to merge hosts by name.
        This is handy if you have a lot of hosts,
        and every now and then they get a new host ID
        (e.g. because you delete and reinstall BOINC).
        You can now merge all of them with a single click.

    html/
        inc/
            host.inc
        user/
            host_edit_action.php
            merge_by_name.php (new)
            hosts_user.php

David  30 May 2007
    - add token protection to the previous checkin;
        for prefs edit, don't demand token if only showing form.
        (opt_out.php doesn't supply tokens)

    html/user/
        prefs_edit.php
        merge_by_name.php

David  30 May 2007
    - scheduler: add debugging msg for HR reject

    sched/
        sched_hr.C,h
        sched_array.C

Charlie 31 May 2007
    - Fix compiler warning.

    lib/
        boinc_cmd.C

Rom    31 May 2007
    - MGR: Make sure get_cc_status is called only once a second.
        Polling should be taken care of via MainDocument functions
        to make sure that RPCs calls do not become excessive.
        
    clientgui/
        AccountManagerPropertiesPage.cpp
        BOINCDialupManager.cpp
        ProjectPropertiesPage.cpp

David  31 May 2007
    - scheduler: move HR check to wu_is_infeasible()
        In principle, a project can now use both
        locality scheduling and homogeneous redundancy.
    - scheduler: do HR check before deadline check,
        since the latter is slower.
    - scheduler: wu_is_infeasible() doesn't return a bitmap.
        Change its return values to sequential numbers.
    - scheduler: ignore <accelerator> and <p_capabilities> tags

    sched/
        sched_send.C,h
        sched_array.C
        sched_locality.C
        server_types.C

Rom    31 May 2007
    - MGR: Get rid of an exit(0) call since it is evil in Windows
        programs.

    clientgui/
        MainDocument.cpp

Rom    1 June 2007
    - WinSETUP: Add an exception handler to the VBS script so if the
        user cancels the launch of BOINC Manager at startup the script
        itself doesn't throw an error message.

    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.rc
        CACreateVBSShortcut.cpp
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll

David  1 June 2007
    - Get memory measurements to work on Win64.
        The format of a process descriptor had changed a little,
        and the format of the VM stats part was completely changed.
        I had to reverse engineer it - very unpleasant.

    lib/
        diagnostics_sin.h
        procinfo.h

David  1 June 2007
    - client: a few more network_status_debug messages

    client/
        client_state.C
        net_stats.C

David  3 June 2007
    - client: allow suspension of non-CPU-intensive project or app
        (undoes checkin of 25 Jan 2005; I don't remember why we
        made that change.  Next time put in checkin notes!)
    - client: Linux: show error msg if can't open /proc/cpuinfo
        or /proc/meminfo; set memory size of 1 GB in latter case.
        Remove duplicate code that read /proc/meminfo
    - 'start' script; handle <disabled>0</disable> in tasks and daemon
        elements of config.xml (can't handle <disable/>, however).

    client/
        gui_rpc_server_ops.C
        hostinfo_unix.C
    sched/
        feeder.C
        start

David  3 June 2007
    - client: fix inconsistent integer benchmarks on Windows
        with multicore machines.  I don't know why this happened,
        but I fixed it by doing integer benchmarks only on CPU zero.
        This is OK since cores have separate integer units
        (but not necessarily FP units)
        Also shortened benchmark from 60 sec to 30 sec.

    client/
        cs_benchmark.C

Rytis   5 June 2007
    - user web: add a separate preference for private message notification
        emails.
        NOTE: needs DB update, see html/ops/db_update.php
        
    db/
        schema.sql
    html/
        inc/
            forum_pm.inc
            forum_user.inc
        ops/
            db_update.php
        user/
            edit_forum_preferences_action.php
            edit_forum_preferences_form.php

David  4 June 2007
    - Client (Unix) show process exit codes as negative numbers also
        (e.g., to show BOINC error codes correctly)
    - get_project_config.php: add an element that lists the
        platforms supported by this project
        (i.e. for which there's a non-deprecated app version)
        Cache this info in a file (cache/platform_list.xml)
        so that it will be available even when the project's DB is down.
    - Rename sample_get_project_config.php to get_project_config.php;
        a project should no longer need its own version of this file.
        Change setup_project accordingly.

    client/
        app_control.C
    html/user/
        get_project_config.php (new)
        sample_get_project_config.php (removed)
    py/Boinc/
        setup_project.py

Rom    4 June 2007
    - fixes #221: Win64 - attach/syncronice AMS crash Manager.
    
      The manager was getting stuck in an infinite loop since a
      bool wasn't being explicitly initialized to false.
      
    clientgui/
        AccountManagerProcessingPage.cpp

Rom    4 June 2007
    - Tag for 5.10.1 release, all platforms
      boinc_core_release_5_10_1
    
    client/
        configure.ac
        version.h

Rom    5 June 2007
    - MGR: Bug Fix for suspend/resume operations not updating
        in the UI after the user selected operation.
        
    lib/
        gui_rpc_client_ops.C

Rom    4 June 2007
    - Tag for 5.10.2 release, all platforms
      boinc_core_release_5_10_2
    
    client/
        configure.ac
        version.h

Charlie 6 June 2007
    - Mac: Minor fix to error handling when setting permissions.
    - Mac: Create "Uninstall BOINC" application, modify build scripts 
        to include it in release package with BOINC Manager.
    - Mac: Fix a bug in release_GridRepublic.sh build script which 
        created a bogus " BOINC Data/locale" directory (with a bad 
        leading space character.)
    
    mac_build/
        boinc.xcodeproj/
            project.pbxproj
        Uninstaller-Info.plist (new)
    mac_installer/
        uninstall.cpp (new)
        make_GridRepublic.sh
        release_GridRepublic.sh
        release_boinc.sh
        GR-ReadMe.rtf
        ReadMe.rtf
    clientgui/
        mac/
            SetupSecurity.cpp
            SetVersion.C

David  6 June 2007
    - new <platform> elements in get_project_config.php
        confuse the client because their <name> element
        gets parsed as the project name.
        Work around by changing to <platform_name>.
    
    Note: here (and everywhere else) if we get an unparsed XML tag
        we should skip to past the close tag.
        I'll put this in soon.

    html/user/
        get_project_config.php

Rom    6 June 2007
    - WinSETUP: The VBS custom action should delete the existing
        VBS script when executing in uninstall mode.

    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.rc
        CACreateVBSShortcut.cpp
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll

Janus    6 June 2007
    - Fixed a small display error on the pending credit page (the
      workunitid-column was showing the resultid for the result.

    html/user/
        pending.php

Charlie 6 June 2007
    - Mac: Fix a minor bug which caused an assert in backtrace code.
    - Mac: Define NDEBUG in all projects for all deployment builds.
    
    lib/
        mac/
            mac_backtrace.C
            QBacktrace.c
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Rom    7 June 2007
    - WinSETUP: The VBS custom action should delete the existing
        VBS script in the various uninstall modes.

    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.rc
        CACreateVBSShortcut.cpp, .h
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll

Charlie 7 June 2007
    - Mac: Further work on "Uninstall BOINC" application: use various 
        techniques to try to locate BOINC Manager in non-standard 
        directories, use branding-independent search techniques.
        to include it in release package with BOINC Manager.
    - Mac: Update visible copyright date from 2006 to 2007.
    
    mac_build/
        boinc.xcodeproj/
            project.pbxproj
        Uninstaller-Info.plist
        English.lproj/
            InfoPlist.strings
    mac_installer/
        uninstall.cpp
        make_GridRepublic.sh
        release_GridRepublic.sh

Rom    7 June 2007
    - fixes #241: BOINC Manager should only display one of each project,
        no matter how many time you switch to and from the page.

    clientgui/
        ProjectInfoPage.cpp, .h

David  8 June 2007
    - rename BOINC_DIAG_USEDEFALUTS (??) to BOINC_DIAG_DEFAULTS

    api/
        boinc_api.C
    lib/
        diagnostics.h

David  8 June 2007
    - API: added boinc_register_timer_callback() for V6 graphics.
        This lets the app do things
        (e.g. updated shared memory for graphics) every second.
    - API: change signature of boinc_worker_thread_cpu()
    - API: rename worker_timer() to timer_handler()
    - API (win): got rid of timer_quit_event (not used)
    - API (version 6 graphics): removed extern C stuff
    - client: improved the handling of unrecognized XML
        Old: suppose we have
            <name>foobar</name>
            <unrec>
               <name>blah</name>
            </unrec>
            where "<unrec>" is unrecognized.
            We'd skip the <unrec>, but parse the <name> within it.
            This wrong.
        New: skip the entire unrecognized element
        NOTE: I implemented this in the new parser (XML_PARSER)
        and added it for everything that uses XML_PARSER.
        The old parser still isn't quite right:
        it will skip until the next </unrec>,
        but not necessarily the matching instance of that tag.
    - client: added error messages for unparsed XML in several places
    - client/lib: use "else-less" syntax in XML parsing code

    api/
        boinc_api.C,h
        graphics2.h
        greaphic2_win.C
    client/
        acct_mgr.C
        cs_statefile
        gui_rpc_server_ops.C
        log_flags.C
        net_stats.C
    lib/
        app_ipc.C
        gui_rpc_client_ops.C
        parse.C,h
        prefs.C

David  8 June 2007
	- compile fix

	api/
		graphics_api.C

Charlie 8 June 2007
    - Mac: Add application icons to installer, uninstaller; add 
        "are you sure?" dialog to uninstaller.  Fix installer 
        copyright and version strings.

    clientgui/
        res/
            MacInstaller.icns (new)
            MacUninstaller.icns (new)
            GR_install.icns (new)
            GR_uninstall.icns (new)
    mac_build/
        boinc.xcodeproj/
            project.pbxproj
        Uninstaller-Info.plist
        Installer-Info.plist
        English.lproj/
            InfoPlist.strings
    mac_installer/
        uninstall.cpp
        make_GridRepublic.sh
        release_GridRepublic.sh

Rom    8 June 2007
    - fixes #237 - current BM fails to build with wxWidgets
        unicode variant
      (Applied Frank Thomas's patch)
    
    clientgui/
        SkinManager.cpp

David  8 June 2007
	- fix bugs introduced by recent XML changes

	lib/
		gui_rpc_client_ops.C
		parse.C
		prefs.C
		
Rom    8 June 2007
    - Tag for 5.10.3 release, all platforms
      boinc_core_release_5_10_3
    
    client/
        configure.ac
        version.h

David  8 June 2007
    - sched compile fix

    sched/
        server_types.C

Charlie 8 June 2007
    - Mac: Better application icons for installer, uninstaller.
    - Mac: move uninstaller, COPYING and COPYRIGHT files to a 
        subdirectory in Manager distributions.

    clientgui/
        res/
            MacInstaller.icns
            MacUninstaller.icns
            GR_install.icns
            GR_uninstall.icns
    mac_installer/
        release_boinc.sh
        make_GridRepublic.sh
        release_GridRepublic.sh

David  9 June 2007
	- client: fixed bug in prefs parsing

	lib
		prefs.C

Rom    8 June 2007
    - Tag for 5.10.4 release, all platforms
      boinc_core_release_5_10_4
    
    client/
        configure.ac
        version.h

David  11 June 2007
	- manager: fix bug in parsing of all-projects list
		(caused Wizard list to be empty)
	- manager: change (web) to WWW

	client/
		acct_mgr.C
		cs_statefile.C
	clientgui/
		ProjectListCtrl.cpp
	lib/
		gui_rpc_client_ops.C

Janus	11 June 2007
    - Added checks.php containin common code between the bittorrent tracker
      and the scraping mechanism.
    - Fixed some of the SVN properties for the BT-related files.

    html/bt/inc
        checks.php (new)

David  11 June 2007
    - client: if statefile has an app version an unknown platform,
        change it to the primary platform.
        The probably cause of this is that the user switched to
        a 64-bit client, then back to the 32-bit client.
        If we reject the app version, it would e.g. cause CPDN
        WUs to get aborted in the middle.

    client/
        cs_statefile.C

David  11 June 2007
	- change new XML parser to handle XML comments (<!-- ... -->)

	client/
		log_flags.C
	lib/
		parse.C,h

David  11 June 2007
    - client: enforce_schedule(): if try to preempt a
        process that's not running, at least mark it as preempted.
        (this should never happen in principle)
    - API: compile fix for Mac

    api/
        graphics2_unix.C
    client/
        cpu_sched.C

David  11 June 2007
    - Project initialization: create project home page
        and schedulers.txt file in a way that will work
        with UMTS ISPs (which strip out comments)

    html/user/
        sample_index.php
    py/Boinc/
        setup_project.py

Rom    11 June 2007
    - Tag for 5.10.5 release, all platforms
      boinc_core_release_5_10_5
    
    client/
        configure.ac
        version.h

Charlie 12 June 2007
    - Mac: Installer writes all_projects_list.xml file to BOINC 
        Data directory unless it already contains one.  This 
        avoids overwriting a newer project list with an older one.
        
    mac_installer/
        PostInstall.cpp
        release_boinc.sh
        release_GridRepublic.sh

David  12 June 2007
    - client: fetch all-projects list at startup if it doesn't exist
    - client: if result in statefile is labeled with unsupported platform,
        set its platform to primary
        (this completes the fix of 11 June, hopefully fixes #262)

    client/
        client_state.C
        cs_statefile.C

David  12 June 2007
	- client: when I changed the length of benchmark intervals
		from 20 to 10 seconds, this broke things on ultra-slow CPUs.
		I think this is because a single loop of the FP
		benchmark took so long that the end time of the int
		benchmark had already come and gone.
		Fixed this (I hope) by reducing the loop length
		by a factor of 10.

	client/
		cs_benchmark.C
		dhrystone.C
		whetstone.C

David  12 June 2007
    - API: initialize all fields on BOINC_OPTIONS.
        Fixes a bug that caused crash on 64bit Linux
        (from M.F. Somers)

    api/
        boinc_api.h

Rom    12 June 2007
    - MGR: If the screen resolution is too small for the Simple GUI
        switch to the Advanced GUI automatically.
    - MGR: If a screen reader is detected, switch to the Advanced
        GUI list view automatically.
        
    clientgui/
        AdvancedFrame.cpp
        BOINCGUIApp.cpp

Rom    12 June 2007
    - MGR: Only detect if the host name is local once per connection.
    
    clientgui/
        MainDocument.cpp, .h

David  12 June 2007
    - scheduler: add no_darwin_6 option
        (don't send work to Mac OS X 10.2 or earlier).
        This used to be #ifdef in by Einstein@home.
    - scheduler: add no_amd_k6 option
        (don't send work to AMD K6 CPUs)

    sched/
        handle_request.C
        sched_config.C,h

Janus  12 June 2007
    - Added an index page giving clues about potential misconfigurations in the BT
      serverside setup. Once the remaining parts of the code are in place it should
      be possible to use this page as a guide on where to look for any errors.

    html/bt/
        index.php (new)

Charlie 12 June 2007
    - Mac: Exit Client if launched by Manager and Manager crashed.
    - Sandbox: clean up authentication logic for privileged operations 
        (attach, detach, reset, etc.), fixing bugs.
    - Mac Sandbox: free authorization after authenticating.
    - Mac: Add graphics2_util.C to XCode Project for libboinc_api.a.
    - Mac: Fix bug in XCode project which sometimes overwrote 
        symbol table files with stripped application.

    client/
        cs_prefs.C
    clientgui/
        MainDocument.cpp
        mac/
            MacGUI.cpp
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Rom    13 June 2007
    - Tag for 5.10.6 release, all platforms
      boinc_core_release_5_10_6
    
    client/
        configure.ac
        version.h

David  13 June 2007
	- API: XML parsing glitch caused apps to always run standalone,
		not report CPU time etc.

	lib/
		app_ipc.C
		prefs.C

David  13 June 2007
    - API: set timer thread stack size to 16KB
    - Scheduler: for no_amd_k6 option, check CPU vendor as well as model

    sched/
        handle_request.C
    api/
        boinc_api.C

David  13 June 2007
    - parse_str(): remove unnecessary checks
    - client: allow app_info.xml to have multiple versions
 
    lib/
        parse.C
    client/
        client_state.C
        scheduler_op.C

David  13 June 2007
    - Added project.xml entry for Playstation 3 / Linux
    - Server status page: if the scheduler isn't running,
        it's almost certainly because "stop_sched" is present,
        not because Apache isn't running.
        Get rid of the use of "sched_pid".

    tools/
        project.xml
    html/ops/
        sample_server_status.php

David  14 June 2007
    - Scheduler: changed the <homogeneous_redundancy> option
        from a bool to an int:
        0 = no HR
        1 = HR with fine-grained classification (from MF Somers)
        2 = HR with coarse-grained classification (from WCG)

        Note: numerical equivalence depends on your application
        and how it's compiled.  Some apps may need classifications
        other than these two.  Contact me if so.

    sched/
        sched_hr.C
        sched_config.C,h

Rom    14 June 2007
    - Branch for 5.10 release, all platforms
      boinc_core_release_5_10

Rom    16 June 2007
    - WINSETUP: Remove the VBS Script custom action and put back
        the shortcut to BOINC Manager.
        
    win_build/installerv2/
        BOINC.ism
        BOINCx64.ism

Rom    16 June 2007
    - MGR: Revert back out the change to cache the host type
        (local/remote). Somehow it was messing up controlling
        remote machines.

    clientgui/
        MainDocument.cpp, .h

Rom    16 June 2007
    - Tag for 5.10.7 release, all platforms
      boinc_core_release_5_10_7
    
    client/
        configure.ac
        version.h

Charlie 19 June 2007
    - Mac: Fix visible copyright and version strings in installer and 
        uninstaller.

    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Charlie 22 June 2007
    Sandbox: fix switcher call to kill to eliminate error 
        message and to correctly send SIGKILL instead of 
        SIGTERM.
        
    client/
        app_start.C

David  22 June 2007
    - client: when you read a file into a string with:
            loop
                read a line X
                S += X
        it performs real bad if the file is large
        (allocation of std::string seems to stupid)
        So I changed this to
            find file size n
            read file into malloced buf size n
            S = buf
            free buf
    - lib: moved functions to appropriate file
            
    client/
        acct_setup.C
        cs_prefs.C
    lib/
        parse.C,h
        str_util.C,h
        util.C,h

David  22 June 2007
	- compile fixes for Win

	client/
		acct_setup.C
		cs_prefs.C
		cs_trickle.C
	lib/
		filesys.C
		str_util.C,h
		util.C,h
	tools/
		updater.C
	win_build/
		sim.vcproj

David  22 June 2007
	- client: fix two XML parsing bugs:
		1) XML_PARSER::parse_int() and parse_double() wouldn't parse
			<foo></foo>, and in fact would consume the </foo>,
			so that the resulting skip_unexpected()
			would skip the entire rest of the document.

			This was exercised because my checking of 17 Apr
			set the default for work_buf_min_days as "" rather than 0.

		2) XML_PARSER::scan_tag() was removing spaces,
			so <venue name="home"> parsed as venuename="home"
			This actually didn't do any damage.

	lib/
		parse.C
		prefs.C

David  22 June 2007
    - client: read only first 63KB of stderr.txt
    - user web: default work_buf_min_days is 0, not ""

    html/inc/
        prefs.inc
    client/
        app_control.C

Charlie 23 June 2007
    Mac: if (log_flags.state_debug) print debugging info when rename 
        of client_state_next.xml to client_state.xml fails
    Sandbox: fix build break.

    client/
        cs_statefile.C
    lib/
        filesys.C

Rom    23 June 2007
    - Tag for 5.10.8 release, all platforms
      boinc_core_release_5_10_8
    
    client/
        configure.ac
        version.h

Charlie 24 June 2007
    Mac: Fix bugs when user chooses Quit from menubar icon menu and 
        then cancels in confirmation dialog. 
    Mac: Modify XCode project not to copy header files into Manager bundle.
    (Both checked into boinc_core_release_5_10_8 and re-released in Mac 5.8.10)
    
    clientgui/
        BOINCGUIApp.cpp
        BOINCTaskBar.cpp
        mac/
            MacSysMenu.cpp
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Charlie 25 June 2007
    CC: Add logic to scheduler, etc. for systems which limit the number 
        of shared memory segments per process and / or system-wide.  
        Mac OS X has default limits of 8 shmem segments per process, 32 
        max system wide.
        - Don't treat failure to allocate & attach to shared memory as a 
            computation error.
        - Destroy shared memory segments associated with all tasks which 
            exit, not just those with a finished file.  This frees up a 
            segment for use by another task.
        - If we run out of shared memory, start a 10 second timer during 
            which don't try to run tasks unless they are already attached 
            to shared memory (suspended tasks left in memory qualify.)
        - If a task is waiting for shared memory to become available, 
            display this in the Manager's tasks pane.
        - Added a new log flag stress_shmem_debug for testing scheduling 
            logic when we run out of shared memory.
        
    QUESTIONS for further development:
        - Note that it is quite easy to run out of shared memory segments if 
            the leave-suspended-tasks-in-memory option is set.  (The shared 
            memory channel must remain active for heartbeats and to tell the 
            task when to resume.)
            - Should we override this option if we run out of shared memory 
                segments?  
            - What about tasks left in RAM because they don't checkpoint?
        - If BOINC crashes, its shared memory is not removed.  In some 
            cases, when BOINC is relaunched it will use the same key and 
            so can re-attach to the orphaned segments, but this won't always 
            happen.  This can cause problems with the system-wide limits.
            We can't mark the segment for removal when we create it, because 
            doing so (by calling shmctl with IPC_RMID) would remove its key 
            so the project application couldn't attach to it.
            But we could do this safely after the first successful response 
            from the project application.  Should we make this change?

    client/
        app.C,h
        app_control.C
        app_start.C
        client_state.C,h
        cpu_sched.C
        log_flags.C,h
    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp
    lib/
        shmem.C,h
        gui_rpc_client.h
        gui_rpc_client_ops.C

Charlie 25 June 2007
    Mac: Fix bugs in XCode script phases which create visible copyright and 
        version strings in installer and uninstaller.

    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Charlie 25 June 2007
    CC: More scheduler tweaks for shared memory: clear retry_shmem_time
        when releasing shared memory, value of stress_shmem_debug log
        flag sets number of shared memory segments to make unavailable.
        Fix bug: reversed comparison of retry_shmem_time.

    client/
        app.C
        client_state.C
        cpu_sched.C
        log_flags.C,h
    lib/
        shmem.C,h

Rom    27 June 2007
    - DIAG: Visual Studio 2005 enforces parameter checking, and if
        a parameter is wrong it just terminates the process with
        a 0xc000000d. This is a shot in the dark but I think it
        is a good guess as to what is happening right now.
        
    lib/
        diagnostics.C, .h
        diagnostics_win.C

Rom    27 June 2007
    - Tag for 5.10.9 release, all platforms
      boinc_core_release_5_10_9
    
    client/
        configure.ac
        version.h

Charlie 28 June 2007
    CC: Problem: On Mac OS X and some other systems, shared memory 
        segments remain allocated unless the owner has marked them 
        for destruction with shmctl(id, IPC_RMID, 0), causing shared 
        memory leaks if BOINC crashes or exits suddenly (e.g., due 
        to being called with --exit_after_finish).
        But on Mac OS X and some other systems, this shmctl command 
        also prevents any more processes from attaching.
        Solution: Add code to delete_old_slot_dirs() to check for 
        and delete the possible orphan shared memory segment at 
        BOINC startup for each slot directories with an init_data.xml 
        file.

    client/
        file_names.C

Rom    29 June 2007
    - WIN: Update 2003 project files
    - WIN: Re-introduce manifests for 2003 built files.

    /
        <Numerious Files>

Charlie 29 June 2007
    Mac: Update user-visible copyright dates from 2006 to 2007

    clientgui/
        mac/
            SetVersion.C

Rom    29 June 2007
    - Tag for 5.10.10 release, all platforms
      boinc_core_release_5_10_10
    
    client/
        configure.ac
        version.h

Rom    2 July 2007
    - MGR: Adjust menu names.
    
    clientgui/
        AdvancedFrame.cpp
        Events.h

Rom    2 July 2007
    - Tag for 5.10.11 release, all platforms
      boinc_core_release_5_10_11
    
    client/
        configure.ac
        version.h

Rom    2 July 2007
    - CC: Remove calls to kill_all_children.
    
    client/
        app_control.C

Rom    2 July 2007
    - Tag for 5.10.12 release, all platforms
      boinc_core_release_5_10_12
    
    client/
        configure.ac
        version.h

Rom    4 July 2007
    - Tag for 5.10.13 release, all platforms
      boinc_core_release_5_10_13
    
    client/
        configure.ac
        version.h

Charlie 10 July 2007
    Mac: log_flags.state_debug prints errno when rename of 
        client_state_next.xml to client_state.xml fails

    client/
        cs_statefile.C

David  25 June 2007
    - Manager: if a job is running EDF, show "high priority" in status

    clientgui/
        ViewWork.cpp
        ViewWorkGrid.cpp

David  25 June 2007
    - manager: improve wording in advanced prefs dialog

    clientgui/
        DlgAdvPreferencesBase.cpp,h

David  25 June 2007
    - manager and client: fixed bug where only one day-of-week
        preference would be parsed.

    lib/
        prefs.C,h

David  27 June 2007
    - client: allow up to a day (rather than work_buf_min()) to elapsed
        between completing a result and reporting it.

    client/
        work_fetch.C

David  30 June 2007
    - GUI RPC: debug set_debts handler.  Fixes #131

    client/
        gui_rpc_server_ops.C

David  2 July 2007
    - client: fix bug that broke <os_random_only> option
    - client and Manager: attempts to fix problems
        if <guirpc_debug> is set

    client/
        gui_rpc_server_ops.C
    clientgui/
        MainDocument.cpp
    lib/
        gui_rpc_client_ops.C
        md5_file.C

David  3 July 2007
    - Added args to XML_PARSER::skip_unexpected() to you can say
        whether to write messages to stderr for unparsed stuff.
        This is set to true if log_flags.unparsed_xml is set (client)
        or if debug_level is 3 (server)

    client/
        acct_mgr.C
        gui_rpc_server_ops.C
        log_flags.C

David  6 July 2007
    - client: change order so that backoff because of no work
        happens before server-requested backoff (eliminate double messages)

    client/
        cs_scheduler.C
        scheduler_op.C

David  6 July 2007
    - bug fix to the above

    client/
        scheduler_op.C

David  7 July 2007
    - Client: radically faster (on Win) version of dir_size()
        (from John McLeod)

    lib/
        filesys.C

David  9 July 2007
    - client: add "dont_contact_ref_site" config flag;
        suppresses connectivity-testing connections to google.com

    client/
        log_flags.C,h
        net_stats.C

Rom    9 July 2007
    - MGR: Workaround a crash issue by only dealing with the frame
        pointer if the manager is told to quit by the cc.
        
    clientgui/
        MainDocument.cpp

David  10 July 2007
    - client: run_if_user_active pref applies to both
        network transfers and CPU usage.
        (Note: maybe we should have a separate pref for this).

    client/
        client_state.C,h
        cs_prefs.C

David  11 July 2007
    - Manager: make various strings translatable (from Mifistor)

    clientgui/
        AccountInfoPage.cpp

Charlie 11 July 2007
    Mac Installer: use sh shell (bash) instead of csh for 
        postinstall and postupgrade scripts.
    Mac Installer: installer creates skins directory if it 
        doesn't already exist.
    MGR: Check correct menu item in View menu when launching Manager 
        or when returning from Simple View.

    clientgui/
        AdvancedFrame.cpp
    mac_installer/
        postinstall
        postupgrade
        release_boinc.sh
        release_GridRepublic.sh

David  13 July 2007
    - client: if CA bundle file isn't in BOINC directory,
        don't tell Curl to look for it there.
        It might be in the default place where Curl looks.

    client/
        file_names.h
        http_curl.C

David  13 July 2007
    - GUI RPC: added "detach_when_done" and "dont_detach_when_done"
        project-control options.
        Made these available in boinc_cmd.
        Fixes #335.

    client/
        gui_rpc_server_ops.C
    lib/
        boinc_cmd.C
        gui_rpc_client_ops.C

David  14 July 2007
    - client: print time zone message at startup

    client/
        client_state.C
        cpu_sched.C

David  14 July 2007
	- Manager: removed ForceRefresh() calls in grid views;
		reduces CPU usage, still seems to work (from Frank Weiler)
                Fixes #291.

	clientgui/
		ViewMessagesGrid.cpp
		ViewProjectsGrid.cpp
		ViewTransfersGrid.cpp
		ViewWorkGrid.cpp

Charlie 14 July 2007
    MGR: Merged David's changes of today into 5.10 branch to greatly 
        reduce Grid Views' CPU usage (change from Frank Weiler): 
        Don't call m_pGridPane->ForceRefresh() from OnListRender().

    clientgui/
        ViewMessagesGrid.cpp
        ViewProjectsGrid.cpp
        ViewTransfersGrid.cpp
        ViewWorkGrid.cpp

David  16 July 2007
    - client: show OS name/version in message at startup

    client/
        client_state.C

Charlie 16 July 2007
    - Mac client: always show UNIX error if state file rename fails.
    
    client/
        cs_statefile.C

David  16 July 2007
    - client: if can't write state file, don't immediately exit,
        but don't do anything other than handle GUI RPCs.
        After 50 secs, print an "about to exit" message.
        After 60 seconds, exit

    client/
        client_state.C,h

David  16 July 2007
    - Manager: changed wording the "Choose a project" page
        of attach wizard.
        At least one person was confused by 'WWW';
        he thought you clicked there to choose project.

    clientgui/
        ProjectInfoPage.cpp
        ProjectListCtrl.cpp

David  16 July 2007
    - Manager: in grid views, don't sort unless needed (from Frank)

    clientgui/
        BOINCGridCtrl.cpp,h
        ViewWorkGrid.cpp

Charlie 17 July 2007
    - Manager: Fixed bug in task grid view: code was always using the 
        grid row number as index into results vector. Added a hidden 
        column COLUMN_RESULTS_INDEX to hold index into results vector 
        for the data in each row, so it is available after sorting grid.
        This allows the changes of 16 July 2007 to work properly.

    clientgui/
        ViewWorkGrid.cpp


Charlie 17 July 2007
    - Manager GridCtrl: Don't save/restore width of hidden/invisible columns.
        Fix Compile error on some platforms.

    clientgui/
        BOINCGridCtrl.cpp
        ViewWorkGrid.cpp

David  19 July 2007
    - client: added a new pref "suspend_if_no_recent_input"
        that lets you suspend computation after a specified period of idleness.
        This is necessary to allow some machines to go into low-power mode
        when they're not being used.
    - Change the wording of some existing prefs; for example, changed
        "Do work while computer is in use?" to
        "Suspend work while computer is in use".
        The former is confusing - if you say yes, BOINC may in fact
        NOT do work while the computer is in use,
        due to other factors (time of day, etc.)
    TODO: HOST_INFO::users_idle() should be changed so that it
        returns the idle time
        (rather than telling you whether we've been idle for X)

    client/
        client_state.C,h
        cs_prefs.C
        hostinfo_unix.C
    html/inc/
        prefs.inc
    lib/
        common_defs.h
        prefs.C,h

Charlie 18 July 2007
    - Manager: Update disk pie chart only if something has changed (from 
        Frank Weiler)
    - Manager: don't call GetWorkCount() unnecesaarily in ViewWorkGrid.cpp.
    
    clientgui/
        ViewResources.cpp,.h
        ViewWorkGrid.cpp

David  20 July 2007
    - client: add mechanism to abort results if they get > 100
        "premature exits" (exit(0) without finish file) between checkpoints

    client/
        app_control.C
        app.C,h
    lib/
        error_numbers.h

Charlie 20 July 2007
    Mac: changes for libcurl 7.16.4.

    mac_build/
        boinc.xcodeproj/
            project.pbxproj
        buildcurl.sh
        setupForBoinc.sh
        HowToBuildBOINC_XCode.rtf
        
Rom    25 July 2007
    - Tag for 5.10.14 release, all platforms
      boinc_core_release_5_10_14
    
    /
        configure.ac
        version.h

Rom    27 July 2007
    - A few lines of code that were missed in the last round of
        checkins.
        
    client/
        app.C
        app_start.C
        client_types.C
        cs_apps.C
        cs_cmdline.C
    lib/
        miofile.C
        util.C, .h
        
Rom    27 July 2007
    - Tag for 5.10.15 release, all platforms
      boinc_core_release_5_10_15
    
    /
        configure.ac
        version.h

David  27 July 2007
    - client: fix bug that caused "no shared memory segment" errors,
        introduced in 20 July checkin

    client/
        app_control.C
    clientgui/
        ProjectInfoPage.cpp
        ViewWork.cpp
        ViewWorkGrid.cpp

Rom    27 July 2007
    - Tag for 5.10.16 release, all platforms
      boinc_core_release_5_10_16
    
    /
        configure.ac
        version.h

David  28 July 2007
    - client: fix bug where if you get no work from a project
        with zero delay_request,
        the client immediately requests more work

    client/
        client_types.h
        cs_scheduler.C

Rom    30 July 2007
    - Tag for 5.10.17 release, all platforms
      boinc_core_release_5_10_17
    
    /
        configure.ac
        version.h

Charlie 30 July 2007
    - Manager: don't call GetWorkCount() repeatedly in CViewProjectsGrid, 
        CViewTransfersGrid and CViewMessagesGrid (tagged for Mac 5.10.17 
        release.)
    
    clientgui/
        ViewMessagesGrid.cpp
        ViewProjectsGrid.cpp
        ViewTransfersGrid.cpp

Charlie 31 July 2007
    - Graphics API: Don't render graphics when application is suspended 
        to reduce CPU usage.
    
    api/
        x_opengl.C

David  31 July 2007
    - client: don't crash if use --detach_project option
        (fixes #283)
    - client: canonicalize URLs in all cmdlines
    - db_update.php: don't prompt for DB name/host; get it from config file
        (fixes #356)

    html/ops/
        db_update.php
    client/
        cs_cmdline.C

Charlie 31 July 2007
    - Graphics API: Don't render graphics when application is suspended 
        to reduce CPU usage.
    
    api/
        x_opengl.C

David  1 Aug 2007
    - GUI RPC: added get_global_prefs_network()
        and get_global_prefs_working()

    lib/
        gui_rpc_client.h
        gui_rpc_client_ops.C
    client/
        gui_rpc_server_ops.C
        cs_prefs.C

Charlie 1 Aug 2007
    - MGR: Populate Simple and Advanced Preference dialogs with current 
        values of preferences (including any overrides), not with 
        defaults or old (possibly stale) values.
        
    lib/
        gui_rpc_client_ops.C
    clientgui/
        DlgAdvPreferences.cpp
        sg_DlgPreferences.cpp

Charlie 2 Aug 2007
    - GUI RPC: rename get_global_prefs_network() to get_global_prefs_file() 
        to make it clear this returns the contents of the file which was 
        obtained from the network (i.e., web-based preferences) and not just 
        the prefernces affecting network connectivity.
    - GUI RPC: Add get_global_prefs_working_struct().
    - MGR: call get_global_prefs_working_struct() for both preference dialogs.
    - MGR: Dialup Manager updates current preferences from client before using 
        them.

     client/
        gui_rpc_server_ops.C
    clientgui/
        BOINCDialupManager.cpp
        DlgAdvPreferences.cpp
        sg_DlgPreferences.cpp
    lib/
        gui_rpc_client.h
        gui_rpc_client_ops.C

Rom    2 Aug 2007
    - DIAG: Disable symbol server technology for applications where a symbol
        server isn't specified.
    - MGR: Provide some additional text to the begining of the attach to project
        wizard when the client is attached to an account manager. Warn the user
        that the AMS will not know about the project or its stats.
    - MGR: Fix dialog titles for the Simple GUI dialogs.
    - MGR: Eliminate bogus error messages when using the default skin.
    - MGR: Introduce new logo into the manager
    - MGR: Introduce the notion of the syncronize button in the Simple GUI.
        NOTE: This button will replace the 'attach to project' button when
        the manager detects that the client is attached to an account manager.
    
    client/win/res/
        icon.ico
    clientgui/
        DlgAbout.cpp
        sg_DlgMessages.cpp
        sg_DlgPreferences.cpp
        SkinManager.cpp, .h
        WelcomePage.cpp
    clientgui/res/
        boinc.xpm
        boinc_logo.xpm
        BOINCGUIApp.ico
    clientgui/res/templates/
        boinc.ico
        boinc16.bmp
        boinc32.bmp
        boinc48.bmp
        boinc128.bmp
        boinc256.bmp
        boinc_logo.gif
    lib/
        stackwalker_win.cpp

Eric K      06 Aug 2007
    -added new functions boinc_suspend_graphics_thread() and
     boinc_resume_graphics_thread(), so apps can suspend the graphics
     threads for critical sections without suspending all threads.
     Only implemented under WIN32 thus far.
    api/
        graphics_lib.[Ch]

Rom    7 Aug 2007
    - MGR: Respect the disallow_attach and simple_gui_only status
        flags in both the simple GUI and advanced GUI.
    - MGR: Enable the syncronize button in the simple GUI which
        just causes an account manager update request.
    - MGR: Fix an overactive assert in debug builds

    clientgui/
        AdvancedFrame.cpp
        Events.h
        sg_BoincSimpleGUI.cpp
        sg_ProjectsComponent.cpp, .h
        SkinManager.cpp
        WelcomePage.cpp
    clientgui/res/skins/default/graphic
        syncronize_button.xpm (Added)
        syncronize_clicked_button.xpm (Added)
    clientgui/res/templates/skins
        btnSynronize.png (Added)
        btnSynronizeClick.png (Added)

Rom    8 Aug 2007
    - MGR: Update taskbar icons.
    
    clientgui/res/
        boinc.xpm
        boincdisconnect.xpm
        boincsnooze.xpm
    clientgui/res/templates/
        boincsnooze.ico
        boincdisconnect.ico

Rom    8 Aug 2007
    - Tag for 5.10.18 release, all platforms
      boinc_core_release_5_10_18

    /
        configure.ac
        version.h

David  10 Aug 2007
    - client: timezone reflects daylight savings time (Win)
        from David Barnard; fixes #334
    - GUI RPC: add <success/> replies for ops that don't return anything
    - GUI RPC: check args for project_attach
    - GUI RPC: return error (not blank) if no prefs override file
    - add error string for ERR_TOO_MANY_EXITS

    client/
        gui_rpc_server_ops.C
        hostinfo_win.C
    lib/
        str_util.C

David  10 Aug 2007
    - Manager: show the AMS name, not the skin name, in Wizard

    clientgui/
        WelcomePage.cpp

David  10 Aug 2007
    - Manager: change "Retry communications" to "Do network communication"
    - client: use gethostname() to get host name on Linux

    client/
        hostinfo_network.C
    clientgui/
        AdvancedFrame.cpp
    lib/
        error_numbers.h

Janus    11 Aug 2007
    - Added a DB table creation query for the BT file table

    html/bt/database/
        bittorrent_files.sql (new)

Rom    13 Aug 2007
    - SCR: Move screensaver related files out of the CC directory
        structure and put it into its own directory structure.
        
    client/win/
        boinc.scr.manifest (deleted)
        boinc_ss.h (deleted)
        boinc_ss.rc (deleted)
        boinc_ss_2003.rc (deleted)
        win_screensaver.cpp, .h (deleted)
    clientscr/
        boinc.scr.manifest (added)
        boinc_ss.h (added)
        boinc_ss.rc (added)
        boinc_ss_2003.rc (added)
        win_screensaver.cpp, .h (added)

Charlie 13 Aug 2007
    Fix compiler warnings.

    client/
        hostinfo_network.C
    clientgui/
        WelcomePage.cpp

Charlie 14 Aug 2007
    Sandbox: Create boinc_exec() function for invoking switcher and 
        setprojectgrp utilities instead of calling system(). POSIX 
        requires that if a shell is invoked by a setuid / setgid 
        process, the shell is run using the real UID and GID. This 
        was not enforced by Mac OS 10.4, but will be enforced by 
        OS 10.5. The system() calls invoke the shell, so we must 
        use fork() and execv() instead.
    MGR: Add transparency mask to boinc_logo.xpm.
    All changes checked into boinc_core_release_5_10_18 tag.

    client/
        app_control.C
        file_names.C
    clientgui/
        res/
            boinc_logo.xpm
    lib/
        filesys.C, h

Rom    15 Aug 2007
    - MGR: Fix the synchronize button and variables.
    
    clientgui/
        sg_ProjectsComponent.cpp, .h
        SkinManager.cpp, .h
    clientgui/res/skins/default/graphic
        synchronize_button.xpm
        synchronize_clicked_button.xpm
    clientgui/res/templates/skins/
        btnSynchronize.png
        btnSynchronizeClick.png

Rom    15 Aug 2007
    - MGR: Update taskbar icons.
    
    clientgui/res/
        boinc.xpm
        boincdisconnect.xpm
        boincsnooze.xpm
    clientgui/res/templates/
        boincsnooze.ico (deleted)
        boincdisconnect.ico (deleted)
        boinc.gif (added)
        boincdisconnect.gif (added)
        boincsnooze.gif (added)

David  16 Aug 2007
    - client: add a <data_dir> option in cc_config.xml;
        tells the client to use this as the data directory
    - scheduler: improve the message telling the client that
        more disk or memory is needed;
        tell them the minimum amount needed to
        send any of the jobs rejected,
        rather than the amount needed for the first job rejected
    - manager: fix text in "connect now" dialog

    client/
        client_state.C
        log_flags.C,h
    clientgui/
        BOINCDialupManager.cpp
    sched/
        sched_locality.C
        sched_send.C
        server_types.h
        transitioner.C

David  16 Aug 2007
    - screensaver fix

    clientscr/
        screensaver_win.cpp

Rom    16 Aug 2007
    - MGR: Make sure all the dialogs contain the application name
        and do not have BOINC Manager hard coded in them.

    clientgui/
        AdvancedFrame.cpp
        DlgAbout.h
        DlgAdvPreferencesBase.cpp, .h
        DlgOptions.cpp, .h
        DlgSelectComputer.cpp, .h

Charlie 16 Aug 2007
    Mac MGR: New Mac application icon built with artwork from Michal 
        Krakowiak.

    clientgui/
        res/
            BOINCMgr.icns

David  16 Aug 2007
    - screensaver fix

    api/
        graphics2_win.C
    lib/
        util.C

David  17 Aug 2007
    - client: change the way upload/download throughput
        estimates are maintained.
        The old way took concurrency into account but ignored compression;
        the new way does the converse.
    - client: maintain new stat: recent average transfer rates.
        This track average up/down throughputs
        (over wall clock time, not just while xfers are active)
        with a half-life of 1 day.
        Will eventually add a new pref: don't fetch new work if
        either of these is above a threshold

    client/
        client_state.C
        file_names.C
        http_curl.C,h
        net_stats.C,h

Charlie 17 Aug 2007
    MGR: Disable Simple GUI if the screen height < 600 (instead of== 480). 
        also disable Simple GUI item in View Menu and prevent switching 
        to Simple GUI.
    - API: don't include config.h in parse.h (port David's 7/24/07 change.)
        This file is included from apps (indirectly, via graphics_api.h)
        so it shouldn't assume that config.h exists

    clientgui/
        AdvancedFrame.cpp
        BOINCGUIApp.cpp
    lib/
        parse.h

Charlie 19 Aug 2007
    Mac: New Mac application icons built with artwork from Michal 
        Krakowiak.

    clientgui/
        res/
            BOINCMgr.icns
            MacInstaller.icns
            MacUninstaller.icns

Charlie 20 Aug 2007
    Mac SG: Ugly hack for unknown alignment problem on Mac, requested by Kevin 
        Reed
    Mac Uninstaller: Display new image in "Are you sure" dialog showing new 
        BOINC logo going into the trash for non-English speaking users.
    
    clientgui/
        sg_ViewTabPage.cpp
    mac_build/
        boinc.xcodeproj/
            project.pbxproj
    mac_installer/
        uninstall.cpp
        Uninstaller.rsrc (new)

Charlie 20 Aug 2007
    - Tag for 5.10.19 release, all platforms
      boinc_core_release_5_10_19
    
    /
        configure.ac
        version.h

Charlie 21 Aug 2007
	Win Mgr: Fix bad include header path in boinc.sln

    win_build/
        boincmgr_curl.vcproj

David  16 Aug 2007
    - client: add a <data_dir> option in cc_config.xml;
        tells the client to use this as the data directory

    client/
        log_flags.C,h

Rom    23 Aug 2007
    - Win Install: Create a custom action for terminating the united
        devices agent for WCG.
        
    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.def
        boinccas.rc
        boinccas.vcproj
        CAShutdownUD.cpp, .h (Added)
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll

Rom    23 Aug 2007
    - Tag for 5.10.20 release, all platforms
      boinc_core_release_5_10_20
    
    /
        configure.ac
        version.h

Rom    24 Aug 2007
    - Win Install: ignore string case before comparing process names.
        
    win_build/installerv2/redist/Windows/src/boinccas/
        boinccas.rc
        terminate.cpp
    win_build/installerv2/redist/Windows/Win32/
        boinccas.dll
        boinccas95.dll
    win_build/installerv2/redist/Windows/x64/
        boinccas.dll
        boinccas95.dll

Charlie 25 Aug 2007
    Preferences: Apply David Barnard's patches to fix #363: per-day 
        time preferences work incorrectly.  
    MGR: Preferences dialogs use cached preferences if connected to older 
        pre-5.10.18 client (before new get_global_prefs_working_struct RPC)
        
    client/
        cs_prefs.C
    clientgui/
        DlgAdvPreferences.cpp
        sg_DlgPreferences.cpp
    lib/
        prefs.C,h

Charlie 1 Sep 2007
    - Mac screensaver: replace image in screensaver control panel with 
        new logo.
    
    clientgui/
        mac/
            boinc.tiff (deleted)
            boinc.jpg (added)
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Charlie 2 Sep 2007
    - Mac MGR: if  BOINC is running as a service / daemon, connect to 
        BOINC Client before creating menubar icon menu to work around 
        a problem of unknown cause which sometimes made icon unresponsive.
    - Mac: add -daemon flag to script for starting BOINC as a service.

    clientgui/
        BOINCGUIApp.cpp
    mac_build/
        Make_BOINC_Service.sh

Charlie 4 Sep 2007
    - CC: fix bug so we do new version check when client is first started 
        as well as every 14 days thereafter.  Display message in red.

    client/
        acct_setup.C

Charlie 4 Sep 2007
    - MGR: Fix #388: Snooze menu item is disabled and not checked if user 
        selects RUN_MODE_NEVER; it is enabled and checked if user selects 
        Snooze; otherwise it is enabled and not checked.
        
    clientgui/
        BOINCTaskBar.cpp

Charlie 5 Sep 2007
    - Mac Installer: Remove old BOINC Manager and screensaver bundles before 
        installing new ones to guarantee a clean install.  Updates for Grid 
        Republic.
    
    mac_installer/
        release_boinc.sh
        release_GridRepublic.sh
        make_GridRepublic.sh
        preinstall
        uninstall.cpp

David  9 Sept 2007
    - API: initialize sigaction struct in X graphics code

    api/
        x_opengl.C

Charlie 10 Sep 2007
    - Manager: port David's checkin of 10 Aug 2007: show the AMS name, not 
        the skin name, in Wizard

    clientgui/
        WelcomePage.cpp

Charlie 21 Sep 2007
    - Mac SCR: prevent double delete of RPC_CLIENT rpc on closing screensaver.

    clientgui/
        mac/
            mac_saver_module.cpp

Kevin 21 Sep 2007
    - Screen Saver: Add additional information about the work running when no graphics are available.  
            Increased the size to the box displaying the message to accommodate larger image sizes.  
            Add code to center images if less then the allowed max size of 450x166

    client/win
        win_screensaver.cpp
        
Rom    24 Sep 2007
    - SCR: If the secure screensaver desktop checkbox is checked, password on resume,
        just display the status of the active workunits so the user will have
        something interesting to look at.
    - SCR: Fix random crashes on Vista for machines that are extra picky about
        manifest files.
    - SCR: Don't allow graphics at all, since that can disable the ability to
        show graphics on the desktop.
        
    client/win/
        win_screensaver.cpp, .h
    win_build/
        boinc_ss.vcproj

David  24 Sept 2007
    - client: clean up (old undergrad-written) code related to pers file xfer.
        The main goal is to fix a bug where,
        if a file is deleted from a project's download server,
        a client will keep trying to download it for 2 weeks.
        A download "file not found" is a permanent error, not transient.
        (fixes #383)
        In general, revised and renamed things to clarify the
        distinction between permanent and transient errors.
        Old functions:
            handle_xfer_failure(), try_next_url(), xfer_failed(), retry_or_backoff()
        New functions:
            permanent_failure(), transient_failure()
    - manager: compile fix for win (don't include sys/wait.h)

    client/
        client_types.h
        pers_file_xfer.C,h
    clientgui/
        MainDocument.cpp

Kevin 25 Sep 2007
    - Screen Saver: Fix bug related to the check to the secure screensaver box.  If graphics are not available, then rotate
            through the currently running results (it will change every 10 seconds) for display so that all are presented

    client/win
        win_screensaver.cpp, .h

Charlie 25 Sep 2007
    - Manager: Fix a compiler warning.

    clientgui/
        WelcomePage.cpp

David  27 Sept 2007
    - client: first pass at fixing a fundamental design flaw:
        there's a single GUI_HTTP object,
        and it works only if used sequentially,
        i.e. an op is started only after the previous one ends.
        This breaks if a GUI RPC triggerse and op while
        a project-list fetch (initiated by the client itself) is in progress.
        Or if two managers are connected at the same time,
        and both do HTTP ops.
        The solution: have a separate GUI_HTTP object for each GUI_RPC_CONN,
        and an additional one for use by the client itself.

    client/
        acct_setup.C,h
        client_state.C,h
        gui_http.h
        gui_rpc_server.C,h
        gui_rpc_server_ops.C

David  27 Sept 2007
    - client: finished up the above

    client/
        acct_setup.C,h
        client_state.C,h
        gui_rpc_server.C,h
        gui_rpc_server_ops.C
        net_stats.C,h

Kevin 28 Sep 2007
    - Manager: During an auto-attach initiated by a project_init.xml file, Mozilla based browsers are checking cookies in the domain 
            (ex: worldcommunitygrid.org) for a project while IE cookies were only being checked for the full project dns (www.worldcommunitygrid.org).
            IE has been changed so that it will also check the domain.
            This mechanism is generic and can be used by any project or account manager.

    client/win
        browser.C

Rom    28 Sep 2007
    - Tag for 5.10.21 release, all platforms
      boinc_core_release_5_10_21
    
    /
        configure.ac
        version.h

Rom    28 Sep 2007
    - Tag for 5.10.21 release, all platforms
      boinc_core_release_5_10_21a
    
    /
        configure.ac
        version.h

Charlie 1 Oct 2007
    Sandbox: Fix a security hole so that switcher sets real user ID, 
    saved set_user-ID, real group ID and saved set_group-ID for process 
    in addition to effective user ID and effective group ID.  This 
    prevents a project application from accidentally or maliciously 
    setting the effective user or group ID back to those of the user 
    who launched BOINC. (Tagged for Mac 5.10.21a release.)


    client/
        check_security.C
        switcher.C
    clientgui/
        mac/
            SetupSecurity.cpp
    mac_build/
        Mac_SA_Secure.sh

Kevin 2 Oct 2007
    - Manager: During an auto-attach initiated by a project_init.xml file, the code to check for the Setup cookie within an IE browser would
        fail and cause the attach to project dialogue to close with no warning in the event that there is a cookie set for the project but there
        is not a Setup cookie.

    client/win
        browser.C

David  2 Oct 2007
	- client: fix bug where failure to get project list would result
		in an empty project list file.
	- client: if failed to get project list file, retry in an hour, not immediately

	client/
		acct_setup.C
		file_names.h
		gui_http.h
	lib/
		util.C

David  2 Oct 2007
    - client: if dont_contact_ref_site option is set,
        contact a random project master URL rather than Google
        to trigger personal firewall alert on version change
    - switcher: compile fix for Linux (strlcpy doesn't exist,
        and I didn't want to bring in libboinc.a)

    client/
        client_state.C
        switcher.C

Rom    3 Oct 2007
    - Tag for 5.10.22 release, all platforms
      boinc_core_release_5_10_22
    
    /
        configure.ac
        version.h

Charlie 10 Oct 2007
    - Mac V5 GFX API: In setMacPList(), if resource already exists, don't 
        call getPathToThisApp() because it leaves a zombie process.
        This call probably won't be used in V6 applications.

    api/
        mac_icon.C

Charlie 11 Oct 2007
    - Mac V5 GFX API: Fix old zombie process bug (I hope).  getPathToThisApp()
        should call pclose(), not fclose().
        
    api/
        mac_icon.C

David  15 Oct 2007
    - client: fix bug where delay request from project is ignored
        if no results are returned.
        Also, made the "Deferred" messages conditional on sched_op_debug
        Fixes #430 (from Rattledagger)

    client/
        cs_scheduler.C
        scheduler_op.C
        work_fetch.C

Rom    16 Oct 2007
    - DEP: Update libCurl to 7.17.0

    curl/include/curl/
        <All Files>
    curl/mswin/
        <All Files>

Rom    16 Oct 2007
    - TRAY: Introduce BOINC Tray for Windows. It's primary goal is
        to keep the CC up to date with when the last time the user
        has used the computer. It has no UI. It is just meant to
        be launhced at startup and let run in the background.
        
    clienttray/
        boinc_tray.h (Added)
        boinc_tray.rc (Added)
        tray_win.cpp, .h (Added)

Charlie 16 Oct 2007
    - Mac: Update for curl_7.17.0.
    
    mac_build/
        buildcurl.sh
        HowToBuildBOINC_XCode.rtf
        setupForBOINC.sh
        boinc.xcodeproj/
            project.pbxproj

Rom    16 Oct 2007
    - Tag for 5.10.23 release, all platforms
      boinc_core_release_5_10_23
    
    /
        configure.ac
        version.h

David  2 July 2007 <Checked in sometime ago>
    - client: add <simple_gui_only> config flag
    - GUI RPC: add disallow_attach and simple_gui_only flags
        to CC_STATUS structure

    client/
        gui_rpc_server_ops.C
        log_flags.C,h
    lib/
        gui_rpc_client.h
        gui_rpc_client_ops.C

David  10 Aug 2007
    - client: timezone reflects daylight savings time (Win)
        from David Barnard; fixes #334
    - GUI RPC: add <success/> replies for ops that don't return anything
    - GUI RPC: check args for project_attach
    - GUI RPC: return error (not blank) if no prefs override file
    - add error string for ERR_TOO_MANY_EXITS

    client/
        gui_rpc_server_ops.C
        hostinfo_win.C
    lib/
        str_util.C

David  2 Sept 2007
    - client: zero out xfer_speed in HTTP_OP constructor
        (may fix problem w/ #INF bandwidth display)

    client/
        http_curl.C

David  3 Sept 2007
    - client: when a job finishes, read last (not first) 63KB of stderr
    - client: parse <cpid_time> in scheduler reply;
        add cpid_time field to PROJECT.
        This defaults to the user_create_time.
        In deciding which CPID to send in a scheduler request,
        use the one with oldest cpid_time (not user_create_time).
        This is the client half of fixing a bug that causes
        CPID to flip/flop between to values in a certain case.

    client/
        app_control.C
        client_types.C,h
        cs_scheduler.C
        scheduler_op.C
    lib/
        util.C,h

David  12 Sept 2007
    - client: CPU scheduler: if a project has 2 jobs with same deadline,
        give preference to jobs already started

    client/
        cpu_sched.C

David  12 Sept 2007
	- Manager: clean up text in system tray balloon
	- Client: use dd-MMM-yyyy format for dates;
		mm/dd/yyyy is ambiguous and mixed-endian

	clientgui/
		BOINCTaskBar.cpp
	lib/
		str_util.C

David  13 Sept 2007
    - client: restore <slot> element on GUI RPC result XML
        (needed by BOINCSpy)
    - client: CPU sched fix

    client/
        app.C
        cpu_sched.C

David  17 Sept 2007
    - client: performance tweak for CPU sched
    - client: fix /proc/cpuinfo parsing for linux 2.6.23, powerPC

    client/
        cpu_sched.C
        hostinfo_unix.C

David  21 Sept 2007
	- client: get_proxy_settings GUI RPC requires authentication

	client/
		gui_rpc_server_ops.C

David  17 Oct 2007
	- client: improve log messages

	client/
		cs_scheduler.C
		pers_file_xfer.C
		scheduler_op.C
	clienttray/
		tray_win.cpp

Rom    17 Oct 2007
    - Tag for 5.10.24 release, all platforms
      boinc_core_release_5_10_24
    
    /
        configure.ac
        version.h

Charlie 18 Oct 2007
	- Fix compiler warnings.
        - Clean up checkin_notes SVN conflicts

    client/
        cs_scheduler.C
    lib/
        util.C

David  18 Oct 2007
	- client (win): fix time-zone code

	client/
		hostinfo_win.C

Rom    18 Oct 2007
    - Add the Global prefix to the shared memory segment that
        is used to track keyboard and mouse activity for any
        machine that is Windows 2000 or better.
    
    clientlib/win/
        IdleTracker.cpp

Charlie 18 Oct 2007
    - client: Fix double daylight savings time adjustment on UNIX/Linux.
    
    client/
        hostinfo_unix.C

Rom    18 Oct 2007
    - TRAY: Remove the icon resource from boinctray.exe
    
    clienttray/
        boinc_tray.h
        boinc_tray.rc
        tray_win.cpp

Rom    19 Oct 2007
    - Tag for 5.10.25 release, all platforms
      boinc_core_release_5_10_25
    
    /
        configure.ac
        version.h

David  20 Oct 2007
	- client: cc_config.xml can contain one or more <alt_platform> elements
		specifying additional alternate platforms.

	client/
		cs_platforms.C
		log_flags.C,h

David  21 Oct 2007
    - client: add <active_task_state> to <active_task> elements in state file.
        These are needed by some 3rd-party software that uses
        the state file instead of GUI RPCs

    client/
        app.C

Rom    22 Oct 2007
    - Tag for 5.10.26 release, all platforms
      boinc_core_release_5_10_26
    
    /
        configure.ac
        version.h

Charlie 22 Oct 2007
    Mac: In XCode script, wait for expansion of nib stuffit file to finish before 
        linking screensaver.
        
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

David  22 Oct 2007
	- GUI RPC: fix format of <auth2> request
	- GUI RPC: don't enable network on bad request

	client/
		gui_rpc_server_ops.C
	lib/
		gui_rpc_client.C

David  22 Oct 2007
	- client: remove unparsed XML error for <active_task_state>
	- client: remove spurious error if include <alt_platform> in cc_config.xml

	client/
		app.C
		log_flags.C

Rom    23 Oct 2007
    - client: read_file_string was modified sometime ago to support tail
        functionality, we really do want only the last 63KB of stderr
        for science applications.
    
    client/
        app_control.C

Rom    23 Oct 2007
    - TRAY: No longer depend on boinc.dll as it has a dependancy on MSVCRT 8.0
        which is only installed to the BOINC directory.
    - TRAY: On Vista systems, only processes started in session 0, i.e. services,
        and elevated processes can create shared memory segments. All others
        fail with an access denied error code. BOINCTray needs to be able to
        ignore the error and attempt to re-attach to the shared memory segment
        every 5 seconds until it is successful. When BOINC starts it'll be able
        to created the shared memory segment and then boinctray will be able to
        attach to it.
        
    clientlib/win/
        IdleTracker.cpp
    clienttray/
        tray_win.cpp, .h
    win_build/
        boinctray.vcproj

Frank Thomas    24 Oct 2007
    - MGR: Check on account creation if wxGetUserName() returned an empty
        string and if it did assign the output of wxGetUserId() to
        ai->user_name instead. (fixes #440)

    clientgui/
        ProjectProcessingPage.cpp

David  24 Oct 2007
    - client: fixed bug that broke idle detection on Unix.
        The problem: the various checks were surrounded by things like
        #ifdef HAVE__DEV_MOUSE
        If the host on which the client is built doesn't have a mouse
        (as is the case with our build machine)
        then the resulting executable doesn't check /dev/mouse,
        even if it exists on the target host.
    - removed configure checks for /dev/mouse, /dev/kbd, and /dev/tty1

    configure.ac
    client/
        hostinfo_unix.C

Rom    24 Oct 2007
    - Tag for 5.10.27 release, all platforms
      boinc_core_release_5_10_27
    
    /
        configure.ac
        version.h

David  24 Oct 2007
    - client: add <max_stdout_file_size> and <max_stderr_file_size>
        cc_config.xml options to change log file size limit
        from the default of 2 MB

    client/
        log_flags.C,h
        main.C
    lib/
        diagnostics.C,h

Charlie 26 Oct 2007
    Mac: Fix bugs in scripts for building wxMac-2.6.3; fix XCode project 
        when using debug build of wxMac-2.6.3.
        
    mac_build/
        buildWxMac.sh
        setupForBOINC.sh
    mac_build/
        boinc.xcodeproj/
            project.pbxproj

Frank Thomas    29 Oct 2007
    - MGR: Fixed broken URLs in the Help menu. The URLs are only broken if the
        Manager was built with the wxWidgets unicode variant.

    clientgui/
        AdvancedFrame.cpp

Rom    29 Oct 2007
    - Tag for 5.10.28 release, all platforms
      boinc_core_release_5_10_28
    
    /
        configure.ac
        version.h

Charlie 31 Oct 2007
    - Mac: Fix bugs when running under OS 10.5: menubar icon menu; 
        installer bugs due to PackageMaker changes; linker warnings 
        due to addition of visibility patch to compiler; new command-
        line utilities for flushing users & groups caches (used by 
        BOINC installer).  Checked into boinc_core_release_5_10_28.
        
    clientgui/
        mac/
            SetupSecurity.cpp
            SystemMenu.m
            MacSysMenu.cpp
    mac_build/
        buildWxMac.sh
        boinc.xcodeproj/
            project.pbxproj
    mac_installer/
        release_boinc.sh
        release_GridRepublic.sh

Rom    2 Nov 2007
    - CC: Remove the event handler for CTRL-C, or rather change it
        so that it means the same thing as it does to other apps, just
        quit the CC instead of suspending or resuming the CC.
        
    client/
        main.C

Rom    5 Nov 2007
    - CC: Treat the return code 0xC0000142 as though it is a temporary
        error. 0xC0000142 means STATUS_DLL_INIT_FAILED which can happen
        when an application attempts to create a new process while the OS
        is shutting down, and when the desktop heap is fully utilized.
        
        This will keep an app from erroring out during Vista's shutdown
        sequence. Only a reboot can fix the desktop heap.
        
    client/
        app.h
        app_control.C

Charlie 6 Nov 2007
    - Mac: Fix brief flash of Manager window at OS 10.5 system startup.
    - Mac: Fix compiler warnings when building boinc_cmd under OS 10.5.
        
    mac_installer/
        PostInstall.cpp
    mac_build/
        buildWxMac.sh
        boinc.xcodeproj/
            project.pbxproj

Charlie 7 Nov 2007
    - Mac: Better error-handling in sandbox setup code.
    
    clientgui/
        mac/
            SetupSecurity.cpp

David  7 Nov 2007
    - client: when starting an app, and an input/app file is not available,
        show the file name and error code in the message
        that's appended to the job's stderr_out.

    client/
        client_state.h
        sim.h
        cs_apps.C
        app_start.C

Charlie 8 Nov 2007
    Mac SS: Work around a poorly understood problem calling MPLibraryIsLoaded()
        on OS 10.3.x when it was built using XCode 3.0 on OS 10.5.
    Mgr SG: Fix SG preferences bug: set "custom" checkmark only if
        global_prefs_override.xml file exists.
    Mac: Additional changes to release scripts for compatibility with new 
         PackageMaker.    
     - Tag for 5.10.29 release, all platforms
      boinc_core_release_5_10_29
    
    clientgui/
        mac/
            mac_saver_module.cpp
        sg_DlgPreferences.cpp,h
    mac_installer/
        release_boinc.sh
        release_GridRepublic.sh
    /
        configure.ac
        version.h


Charlie 9 Nov 2007
    Mgr SG: Fix SG preferences bug: save "Do work only between" and 
        "Connect only between" as doubles, not longs so they work 
        properly.

    clientgui/
        sg_DlgPreferences.cpp

David  12 Nov 2007
    - client: fix bug in parsing of <link rel=boinc_scheduler ...>
        element in master files.  fixes #467

    client/
        scheduler_op.C

Rom    13 Nov 2007
    - DEP: Update libCurl to 7.17.1

    curl/include/curl/
        <All Files>
    curl/mswin/
        <All Files>

Rom    13 Nov 2007
    - Fix build break introduced by new libcurl headers on Windows.
    
    lib/
        boinc_win.h

Rom    29 Oct 2007
    - Tag for 5.10.30 release, all platforms
      boinc_core_release_5_10_30
    
    /
        configure.ac
        version.h

Charlie 14 Nov 2007
    Mac: Update libCurl to 7.17.1.
    (Checked in to boinc_core_release_5_10_30)
        
    mac_build/
        buildcurl.sh
        HowToBuildBOINC_XCode.rtf
        setupForBOINC.sh
        boinc.xcodeproj/
            project.pbxproj

Charlie 17 Dec 07
    - Mac MGR: Fix serious memory leak under OS 10.5 by upgrading to 
        wxMac 2.8.7.  This causes a minor cosmetic bug in SimpleGUI which 
        needs fixing.

    mac_build/
        buildWxMac.sh
        HowToBuildBOINC_XCode.rtf
        boinc.xcodeproj/
            project.pbxproj

Charlie 18 Dec 07
    - MGR: Work around long-standing cosmetic bug in SimpleGUI with 
        newer versions of wxwidgets.  For unknown reasons, the size of
        the ClientStateIndicator panel was reduced from (343,314) to
        (336,300) before it is updated in CViewTabPage::DrawText().  
        This hack simply sets the size back to its original value.
    - Mac: Fix curl library build problem when building under OS 10.5 and 
        XCode 3.0 (compatibility settings issue, enter "man compat" in Terminal 
        for more info).
    - Update version number to 5.10.31.
    - Tag for 5.10.31 release, all platforms (only Mac relase is needed)
      boinc_core_release_5_10_31
    
    /
        configure.ac
        version.h
    clientgui/
        sg_ViewTabPage.cpp
    mac_build/
        buildcurl.sh

Charlie 19 Dec 07
    - Mac MGR: Fix code which draws menubar icon to properly use alpha 
        channel with newer versions of wxwidgets (checked into tag 
        boinc_core_release_5_10_31).
        
    clientgui/
        mac/
            SystemMenu.m
            MacSysMenu.cpp,h

Charlie 19 Dec 07
    - Mac: Work around bug in wxMac-2.8.7 implementation of wxListCtrl::RefreshItem() 
         which does not update the display.  The default wxListCtrl in wxMac-2.8.7 
         uses DataBrowser, but allows us to select the traditional generic implementation 
         with a wxSystemOptions::SetOption() call.
    - Mac MGR: Fix minor cosmetic bug in Pie Control.

    clientgui/
        BOINCGUIApp.cpp
        common/
            wxPieCtrl.cpp,h

Charlie 20 Dec 07
    - Tag for 5.10.32 release, all platforms (only Mac relase is needed)
      boinc_core_release_5_10_32
    
    /
        configure.ac
        version.h
