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

. 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/ 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 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 to HOST_INFO which contains the family, model, and stepping of the processor for Windows. Example: x86 Family 15 Model 2 Stepping 7 - 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