Boinc_alpha 7.8.0 For Mac
ICloud Control Panel 7.8.0.7 LATEST. Requirements: Windows 7 / Windows 8 / Windows 10 / Windows 7 64 / Windows 8 64 / Windows 10 64. Calendars, and bookmarks up to date automatically between your iOS devices, Mac, and Windows PC. You can also share select photos with friends and family using Shared Photo Streams, complete with.
Contents. 7.0.29. MGR: Remove the visuals in the wizard for multi-core and opencl. This area will get a bunch of work in a future commit. client: show option in log, and give warning if include this while in sandbox mode. MGR: Fix build breaks. MGR: Fix menu redraw issue under Ubuntu's new interface.
Fixes #1180 (From Huibert). MGR: Wait until there is valid data in the list box before processing the OnProjectSelected event. Fix for linux idle detection bug with USB mice. client: if available, use GPU model name from CAL for OpenCL model name. client: added the definitions for the new Windows 7/2008r2 preSP1 and Windows 8/2012 SKUs based on the winnt.h from the Windows 8 RC SKD (also added as proof).
client: added the detection for some more Windows SKU. client: Updates provided by Teamwork of Planet3Dnow.de to coprocdetect.cpp added CALTARGETID 21 as: AMD Radeon HD 78x0 series (Pitcairn) (from P3D Crashtest).
client, GUI RPC: detect and export the PCI bus, device, and domain #s. Mac installer: Fix bugs I introduced on May 3 and May 6. Mac installer: Create or delete Login Items and set screensaver properly when installing for multiple users on OS 10.7, 10.8 7.0.30.
client: it's possible for a host to get app versions for a given app that have different platforms and different version #s. The client was erroneously deleting the one w/ the lower version when it was no longer in use.
Fix: in garbage collection, consider one version to supercede another only if they have the same platform. client: split GPU detection code into separate files. client: rename coprocdetect.cpp to gpudetect.cpp.
client: compile fixes. Windows compile fixes. client: for NVIDIA, make an array of the PCI info for all usable GPUs.
client: AMD 77x0 GPU detection addition (from P3D Crashtest). Mac: Update XCode project with new source files.
fix configure error on Linux. (David) I think the ACPROGOBJCXX should be limited to Mac somehow. API, Linux: increase timer thread stack size from 16K to 32K.
Apparently new use of MAXPATHLEN can cause overflow. Fixes trac#1191/trac.
client, lib, win: split GPU detection code into separate files. Mac: Fix displayed names of BOINC installer, uninstaller, etc. Mac: Code sign the BOINC installer and uninstaller if we have a valid code signing identity. client: More AMD GPU detection additions (from P3D Crashtest). Fix typo in Finnish translation for Manager. Unix build: fix typo. Unix build: fix for Mac OS X (from Oliver).
Mac client: Upgrade to curl 7.26.60 and c-ares 1.9.1. Mac client: build libssl.a and libcrypto.a from openssl 1.0.1c and static link them. Tweak Mac build instructions.
client: keep track of the fraction of time that 1) a network connection is available and 2) network communication is allowed and 3) CPU computation is allowed. If an app version is marked as needsnetwork, use the above fraction in estimating its rate of progress. Replace 'core client' with 'client' in comments. Unix build tweaks. Fixes #1193 (David: I think).
Unix build: remove 'if' around ACPROGOBJCXX; apparently this is needed for Gentoo build. You may need a recent automake for this to work. Fixes #1193 7.0.31. Unix build tweak. Mac client: Update wxMac build script for partial compatibility with OS 10.8 and XCode 4.5. client: when estimating FLOPS for an anonymous-platform app version for which no estimate has been supplied by user, use (CPU speed).(cpuusage + 10.gpuusage) (- add the 10.).
client: add missing end tag for. When the client makes a scheduler RPC without requesting work, and there's a simple reason (e.g. The project is suspended, no-new-tasks, downloads stalled, etc.) show it in the event log. If the reason is more complex, don't try to explain.
client: msg tweak. client: further msg tweaks. client: in the job scheduler, there's a check to prevent overcommitting the CPUs if an MT is scheduled. Skip this check for GPU jobs.
7.0.32. more code cleanup. Unix build: fix problem with Debian automated builds; from Steffen M. Mac: fix build break. Mac client: Update Xcode project for compatibility with Xcode 4.3.2 and Xcode 4.5.
Client (Win): in filesize, use stat64 instead of stat. Otherwise it doesn't work for files = 2GB. Client: TIMESTATS::trimstatslog wasn't working because it's called in the constructor of TIMESTATS, which is called before we've done a chdir to the data dir.
Note: for this reason, no disk access should be done in constructors of global objects. A quick scan found no instances of this.
Mac: update script which builds our installer to work with Xcode 4.3 for Lion and later. client: remove 'device' entry from CUDADEVICEPROP, and change types of mem-size fields from int to double. These fields are sizet in NVIDIA's version of this; however, cuDeviceGetAttribute returns them as int, so I don't see where this makes any difference. client: fix bug in handling of element. Mac: update build scripts to work with Xcode 4.3 for Lion and later. Mac: update build scripts, source files and Xcode project to allow building with Xcode 4.3 and Xcode 4.5. client: small code cleanup, no functional change.
Mac: update sample code to allow building with Xcode 4.3 and to eliminate compiler warnings. Mac: update sample code to allow building with Xcode 4.4 GM seed under OS 10.8 GM seed. lib: treat MINGW32 like CYGWIN32 (in 1 place - should do everywhere?) from Oliver.
client: delete sticky files when reset project. client: if we get a job for which a GPU is missing, keep the RESULT record so that we can report it to the scheduler. Otherwise we'll keep getting the same job if the project has set.
lib: Adjust #include files as requested by Oliver Bock. client: Re-introduce the WMQUERYSESSIONEND window message handler to the power management window proc, it was removed during one of the Win9x code scrubs. When we see it, inform the client it is time to shutdown. lib: fix typo. client: don't request work for backup project for a processor type unless there are idle instances of that type.
client: improve 'new version available' notice. Mac: update script which builds our installer to work with Xcode 4.3 for Lion and later. Mac: update build scripts to work with Xcode 4.3 for Lion and later. Mac client: build libssl.a and libcrypto.a from openssl 1.0.1c and static link them. Mac: update build scripts, source files and Xcode project to allow building with Xcode 4.3, Xcode 4.4GM and Xcode 4.5. Mac: update sample code to allow building with Xcode 4.4 GM seed under OS 10.8 GM seed. lib: Adjust #include files as requested by Oliver Bock.
Mac: fix a typo in build script. Mac: create build scripts for FreeType and FTGL. Mac: create build scripts for FreeType-2.4.10 and FTGL-2.1.3-rc5 libraries. Mac: Eliminate extra output from wxMac build script.
client: keep track of the fraction of time that 1) a network connection is available and 2) network communication is allowed and 3) CPU computation is allowed. If an app version is marked as needsnetwork, use the above fraction in estimating its rate of progress. Replace 'core client' with 'client' in comments. client: when estimating FLOPS for an anonymous-platform app version for which no estimate has been supplied by user, use (CPU speed).(cpuusage + 10.gpuusage) (- add the 10.). Compile fixes for Fedora core 17. From Christian B.
Fixes trac#1194/trac. Fix various #include issues. CODING STYLE LAW (minimal inclusion principle): If foo.cpp requires, #include in foo.cpp, NOT foo.h. MGR: Use the same fix for the simple gui that we used on the advanced gui with regards to the menu on Ubuntu's interface. 7.0.33. Fix build breaks for server components. 7.0.34.
Use instead of. Seems to be needed on Debian.
API, SCR: Switch from.txf fonts to TrueType fonts in graphics apps, ensuring that all related files have no licensing issues. Mac: change names of branded installers from '.macOSXuniversal' to '.macOSXi686'.
Mac: Update scripts for building branded installers to allow building with Xcode 4.3 under OS 10.7.x Lion. VBOX: Do not perform the hardware virtualization check when the guest VM is 64-bit.
64-bit guest vms require hardware virtualization and should fail without it. VBOX: Implement the directive in the vboxjob.xml file. If initdata.xml is set, the wrapper will copy the initdata.xml file to the shared directory before the VM is launched.
SCR: Update project files to use FreeType and FTGL on Windows. WIN: Make the example graphics application build again.
WIN: Get rid of the linker warnings for both the default screensaver and the example graphics application. API: remove support for BMP and TGA image files; the code to parse these had no license info.
Only JPEG is supported now. API: remove references to removed files bmplib.h and tgalib.h. Mac: Update build instructions and build script.
WIN: Don't include the newer DBGHELP symbols in MinGW64. (From Oliver Bock). client: fix error in runtime estimation for active tasks. MGR: Enforce the 0.10 day limit on the connect interval for the advanced preferences dialog. At some point we should rename it. API: Remove ttfont.cpp from Makefile.am.
Apps should include it in their Makefile as needed. SCR: Fix problem with the screensaver needlessly cycling in Windows preview mode. client: parse in prefs. WIN: Remove reference to deleted tgalib.cpp file.
Client/manager: there was a bug because some code was writing 'cpu' in XML, and other code was looking for 'CPU'. To fix this and prevent similar problems, processor type names are now encapsulated in proctypenamexml.
Code should use this rather than having hard-wired names. Redefine: GPUTYPE. as macros that call proctypenamexml.
MGR: Fix build break. client: when we're making a scheduler RPC for a reason other than work fetch, and we're deciding whether to piggyback a work request, skip the checks for hysteresis (buffer max. This is needed to prevent projects that use nextrpcdelay from queuing unbounded work. client: treat all 4xx HTTP errors as permanent. code cleanup.
WINSETUP: Provide the ability to create the acctmgrlogin.xml form from the command line. Useful for mass deployments within companies and charities. Mac installer: Fixes for short (posix) user names containing spaces. 7.0.35. client: if a project has excluded GPUs of a given type, allow it to fetch work of that type if the # of runnable jobs is option in ccconfig.xml. Client/manager: if a GPU app is suspended because a GPU-exclusive app is running, show an appropriate message. client: message tweak.
A bunch of tweaks from Steffen Moller, e.g. Using MAXPATHLEN. Mac: Fix build breaks.
client: MAXPATHLEN tweak. Manager: fix 'exclusive GPU app running' message logic. client and API: improve the way an app checks for the death of the client. Old: heartbeat mechanism Problem: if the client is blocked for 30 secs (e.g.
Because it takes a long time to write the state file, or because it's stopped in a debugger) then apps exit. This is bad if the app doesn't checkpoint and has been running for a long time. New: the client passes its PID to the app. The app periodically (10 sec) checks that the process still exists. Notes: For backward compatibility (e.g.
New API w/ old client, or vice versa) the client still sends heartbeats, and the API checks heartbeats if the client doesn't pass a PID. The new mechanism works only if the client's PID isn't assigned to a new process within 10 secs of the client exiting.
Windows 2000 reuses PIDs immediately, so check for Win2K and don't use this mechanism if so. TODO: For Unix multithread apps, critical sections aren't currently being enforced. Need to fix this by masking signals.
Win compile fixes. For now, include psapi.lib in various project properties. Try to figure out a different way.
MGR: We don't save Simple View's width & height since its window is not resizable, so don't try to read them back. lib: don't clear entire APPVERSION struct in APPVERSION::parsecoproc. MGR: Fix references to the taskbar events which are now included in the stock wxWidget library,. MGR: Fix the logging class which changed for the new wxWidgets.
MGR: Add missing references winspool.lib in the linker. Add missing references to psapi.lib for various build configurations. client: change work fetch policy to avoid starving GPUs in situations where GPU exclusions are used. client: fix bug in round-robin simulation when GPU exclusions are used. Note: this fixes a major problem (starvation) with project-level GPU exclusion. However, project-level GPU exclusion interferes with most of the client's scheduling policies.
E.g., round-robin simulation doesn't take GPU exclusion into account, and the resulting completion estimates and device shortfalls can be wrong by an order of magnitude. The only way I can see to fix this would be to model each GPU instance as a separate resource, and to associate each job with a particular GPU instance. This would be a sweeping change in both client and server. SCR: Fix bug in X11 screensaver.
Mac: Fix icons in Simple View Task and Project selection combo boxes. Mac: Fix Quit command in Simple View and a crash bug with Quit AppleEvent. WINSETUP: Add the account manager auth logic from the 6.8 installer to current generation installers. WINSETUP: Make whether or not to create start menu items configurable via the command line. Useful for mass deployment installs. Add missing files and fix project files. Slight tweaks to the installer.
Installer tried picking up the wrong font file. Fix assert in Simple Preferences: use window foreground color for CTransparentStaticLine if skin does not specify. Fix assert in SkinManager when file referenced by tag is missing.
Boinc Alpha 7.8.0 For Mac
Mac: Work around wxMemoryDC::Clear bug in drawing Simple View background. Mac: Work around apparent bug in wxWidgets 2.9.4 which failed to render wxNoteBook pages.
VBOX: Change the way elapsedtime is calculated in vboxwrapper. Previously: elapsedtime was just incremented with the value of the polling period each iteraction through the main loop. This introduced issues when vboxmanage lagged for whatever reason. This lag could go as high as 5 seconds.
Over the timespan of a day this could increase the wall clock time of a task a great deal. Now: elapsedtime is incremented with the time it took to execute the main loop. VBOX: Increase elapsedtime if we were forced to sleep after executing the main loop. Mac: Work around apparent refresh bug in wxCarbon 2.9.4 wxGenericListCtrl. Win: Fix rendering of CBOINCTaskCtrl buttons on Windows. On Windows with wxWidgets 2.9.4, buttons don't refresh properly unless they are children of the wxStaticBox, but on Mac the layout is wrong unless the buttons are children of the parent of the wxStaticBox. Fix more bad wxFlexGridSizers, etc.
In Attach Wizard, Advanced Preferences. Fix assert caused by Clear of empty Project Categories wxComboBox. Fix bad wxFlexGridSizer in CDlgGenericMessage. Fix assert due to missing wxOK calling SafeMessageBox in ProjectInfoPage. VBOX: Remove timeouts for creating and deleting snapshots. client: fix bug in handling proxy info in ccconfig.file.
client: if exiting because of exitafterfinished flag, write state file before exiting so we don't restart the job later. client, Unix: make Curl sockets close-on-exec, so that app processes don't inherit them. client: fix bug that makes client exit if a slot dir contains finish file on startup. GUI RPC: expose TIMESTATS info (e.g. Onfrac) in the binding of the getstate RPC.
client: move clientstarttime and previousuptime from CLIENTSTATE to TIMESTATS, so that these are also visible in GUI RPC. scheduler RPC: move uptime and previousuptime into.
client: condition an RR simulation message on. boinccmd: show TIMESTATS info in -getstate. VBOX: Don't report any error messages when unregistering the VM.
VirtualBox 4.2 no longer requires certain commands to be executed to unregister a VM while older versions do. Just ignore any error codes, if it becomes a problem we can always make it conditional on what version of VirtualBox is installed. VBOX: Make deleting a snapshot a non-terminal event. Deleting stale snapshots now consists of enumerating the existing snapshots and deleting all but the most recent snapshot. This fixes the problem where, for one reason or another, a snapshot could not be deleted at one point in time. The wrapper would just continue to create new ones and was unable to successfully deal with the older ones. Disk space would eventually run out.
client: message tweaks for failed app startup. Fix MinGW build: generatesvnversion.sh only works on top level. VBOX: Cleanup log a little bit. VBOX: Cleanup all the snapshots before unregistering the VM.
VBOX: Make adjustments to the clean-up procedure for Vbox 4.2. client/manager: move the conditional define of MAXPATHLEN from boincwin.h to filesys.h, so that the client will hopefully build on Hurd, which doesn't define MAXPATHLEN. client: in checking reasons for not requesting work, look at backoff last. Otherwise the user can get a misleading message if they update a project that's backed off.
CTRL+SHIFT+E works also on simple view now. So no need to point a novice user to advanced view and leave him scared there. 7.0.40.
Mac: update Xcode project for building boinczip. Mac: add slide-show screensaver to exampleapp Xcode project and Mac exampleapp build scripts example app: fix compiler warnings in slideshow.cpp.
client: Win build fix. add Visual Studio project for slideshow NOTE: (David) this currently doesn't build because boinczip is missing.
I'll fix this soon. client: fix bug where, when updating a project, we fail to request work even though higher-priority projects are marked as no-new-tasks or are otherwise ineligible for work fetch. build fixes for OpenBSD, from rustyBSD. client: TIMESTATS fields go in part of state file. client: fix typo. WIN: Introduce updated project files for the boinczip library used by the slideshow project. WIN: Adjust the slideshow project so that it will build both 32-bit and 64-bit versions and use the boinczip library.
VBOX: Add the ability to specify both the type and model of disk controller to use. It can be specified by adding the following tags to vboxjob.xml: Executing vboxmanage -help will list the available options in the storeagectl section. compile fix for FreeBSD. remove deprecated MAC address code. client: if a project has 64 or more ready-to-report tasks, report them. 64 is chosen a bit arbitrarily, but the idea is to limit the number of tasks reported per RPC, and to accelerate the reporting of small tasks.
Mac: remove deleted files from Xcode project. WIN: Fix Debug configuration which was corrupted. client: if a project is anonymous platform, don't send list of alternate platforms in scheduler RPC.
client: fix uninitialized vars in CPU feature detection (from RustyBSD). client: when reset a project, clear its scheduler URL list (force a reload of the master page). Mgr: Fix Windows hangs and simplify code for notices display. Fix compiler warnings.
client: add 'client app configuration' feature; see This lets users do the following: 1) limit the number of concurrent jobs of a given app (e.g. For WCG apps that are I/O-intensive) 2) Specify the CPU and GPU usage parameters of GPU versions of a given app. Implementation notes: - max app concurrency is enforced in 2 places: 1) when building the initial job run list 2) when enforcing the final job run list Both are needed to avoid possible starvation. however, we don't enforce it during RR simulation. Doing so could cause erroneous shortfall and work fetch. This means, however, that work buffering will not work as expected if you're using max concurrency. client: add the above to VS project.
fix mysterious problems in Windows build. Fix build configuration on Windows.
client: bug fixes for app config feature. client: add new files appconfig.cpp,h to Xcode project. Fix file permissions.
client (Win) preallocate large files to avoid file fragmentation when you write to them incrementally. (workaround for shoddy filesystem design). lib: Win compile fix for boincallocatefile. Mgr: Fix some rare issues on Windows (including a possible memory leak) when switching to a client on a different computer after trying to display notices without an Internet connection.
Fix corrupted line endings. client: if is set, don't check file existence at startup. Mac installer: add missing pclose (from RustyBSD). OpenCL: Add definition of GPUTYPEINTEL to match definitions of GPUTYPEATI and GPUTYPENVIDIA. OpenCL: Change type argument of new boincgetopenclids API from char. to int; it now accepts PROCTYPENVIDIAGPU, PROCTYPEAMDGPU or PROCTYPEINTELGPU.
OpenCL: First pass at adding support for Intel Ivy Bridge GPUs. lib: add size info to messages when realloc fails in MFILE.
MGR: Fix two potential security issues with browser.cpp where the query to the cookie database could have been abused. At present neither of the two parameters originate as user input so using it as an attack vector isn't very high. Prevent the functions from being exploited in the future in case the routines were ever used in a different way. VBOX: Fix build break introduced by the previous vbox commit. client: strcasestr doesn't exist on Windows. (Rom).
client: strcasestr does exist on Windows in lib/strreplace.cpp, but I just needed to #include 'strreplace.h'. This is preferable because it handles INTEL as well as Intel and intel. (Charlie). fix typo in GUI RPC. OpenCL: Add peak FLOPS computation for Intel Ivy Bridge GPUs. Mac: remove deleted files from Xcode project.
(Checked into 7.0.40 tag) 7.0.41. adjustuserpriority: scale FLOP count by app's minavgpfc to account for systematic errors in FLOP count - adjustuserpriority: get total project RAC by summing RAC of app versions where RAC has been updated in past week - feeder: add -priorityasc option (for when wu.priority is a logical time). Manager: compile fixes for OpenBSD. From RustyBSD. client (unix): rename doesn't work between filesystems. If the user has set things up so that slots/ is a symlink to a different filesystem, things won't work when the client moves output files from the slot to project dir.
Solution: if rename fails, try system('mv.' ) since mv works across filesystems. Manager: Fix Mac bug introduced by recent OpenBSD compile fixes. Fix build environment help scripts for Windows.
MGR: Minor fix to the OpenCL output for Intel GPUs. client: Hook up the XML portion of the Intel GPU detection code so the server scheduler knows about it. client: Print out the peak flops for the Intel GPU, the regular OpenCL descriptions do not show peak flops. client/server: fix build breaks introduced last night with a variable rename. client/server: Make sure the GPU Type field is really classified as an Intel GPU.
client/manager: tweaks to Intel GPU code. client: win compile fix.
client: add new file gpuintel.cpp to Xcode project. client: replace ignorenvidiadev etc. With an array.
PRINCIPLE: AVOID PER-GPU-TYPE VARIABLES. get rid of alloca stuff in gutil.cpp; almost certainly not needed. don't include malloc.h; it doesn't exist on BSD systems.
minor code cleanup from RustyBSD. client: clean up redundant and confusing GPU descriptions. Problems: COPROCNVIDIA::description is really description of CUDA GPUs. COPROCATI::description is really description of CAL GPUs. On Windows and Linux, AMD OpenCL and CAL always coexist, and NVIDIA OpenCL and CUDA always coexist. But on the Mac, AMD OpenCL always exists without CAL and NVIDIA OpenCL often exists without CUDA.
Therefore, BOINC has never shown peak-flops on the Mac for AMD or for NVIDIA without CUDA because it does not display COPROCATI::description and may not display COPROCNVIDIA::description. On all OS's, INTEL GPU OpenCL will always exist without any vendor-proprietary GPU computation framework, so COPROCINTEL::description would never show COPROCUSED. Solutions: 1 Instead of adding '(OpenCL only)' to these descriptions just to show peak-flops for these cases, show peakflops in all OpenCL descriptions.
2 Preface COPROCNVIDIA::description with 'CUDA: ' and preface COPROCATI::description with 'CAL: ' to match the 'OpenCL: ' preface in OPENCLDEVICEPROP::description. 3 Eliminate useless COPROCINTEL::description. client: COPROCNVIDIA, COPROCATI and COPROCINTEL constructors must initialize the entire struct, not just the GPU type field. 7.0.42. client: fix a few variable naming issue that cropped up during the merge to the 7.0.x branch. lib: the XML type field for an Intel GPU is INTELGPU, not INTEL. client: fix changes lost in previous merge from trunk: COPROCS::clear should call intelgpu.clear.
client: fix changes lost in previous merge from trunk: set OPENCLDEVICEPROP::peakflops field for COPROCATI when CAL is present for COPROCNVIDIA when CUDA is present. Manager: remove sqlite3.c from Xcode project; add build script to build libsqlite3.a from source files downloaded from sqlite3.org.
lib: actually let's make it 'intelgpu'. 7.0.43. Win process control (affects API and wrapper): Since Win doesn't have an API for process suspend/resume, we were suspending processes by 1) enumerating all the threads in the system (typically several thousand) 2) suspending those belonging to the given process The problem: for each thread, the code was calling a function in diagnosticswin.cpp to see if the thread was exempted from suspension. This check (which is unnecessary anyway if we're suspending another process) was surrounded by a semaphore acquire/release. The result: performance problems. It could take a minute to suspend the threads.
Solution: 1) do the check for exemption only if we're suspending threads in our own process (i.e. From the API) 2) if we're suspending multiple processes, enumerate the threads only once, and see if each one belongs to any of the processes 3) have the wrapper elevate itself to normal priority.
Otherwise it can get preempted for long periods, sometimes in the middle of scanning the threads. Note: post-9x versions of Win have a process group API that includes suspend/resume. We'll switch to this soon. (David).
client: show Intel GPU memory size as integer. scheduler: attempted performance enhancement. Old: each scheduler process holds a semaphore while scanning the shared-mem job array.
On machines with many CPUs there seems to be contention for this semaphore, causing slow scheduler response and possibly connection failures. New: Don't hold the semaphore while scanning array. Instead, if find a job that passes quickcheck, acquire the semaphore and recheck that the job is present in array and passes quickcheck.
client: show messages if appconfig.xml has unrecognized tags. Apply RustyBSD's patch for selectively disabling the detection of the X screensaver framework in configure.ac. SCR: Include the compiled X11 screensaver app in the self extracting archive distro of the client software. (Linux only). Mgr: Fix delay displaying notice. OpenCL: Eliminate spurious error message when an OpenCL platform exists but the computer has no corresponding devices. Mac: Fix linker warning.
client: show Intel GPU memory size as integer. Mgr: Fix potential crashes displaying notices asynchronously on Windows. Mgr: Fix bad line endings. Mgr: More robust way to display 'No notices' message.
Mgr: Shorten Internet timeout for notices on Windows to 5 seconds. Fix license info.
Mgr: fix license declaration in file derived from wxWidgets. Mgr: Windows only: If OpenURL fails, we probably don't have an Internet connection so use a shorter timeout for subsequent calls to OpenURL until one succeeds; otherwise notices takes takes too long to display if there are multiple notices with images. Mgr: Don't call getnotices RPC before previous one is processed to prevent multiple display of notices. Mgr: Display 'Fetching notices.' Instead of 'There are no notices' while getting notices.
Display 'There are no notices' only if we have actually determined there are no notices. Mgr: Add code to reload notices with images / items missing due to problems accessing their URLs.
Mgr: Display 'Fetching notes' when reloading notices. Mgr: If network activity is suspended, don't retrieve URL references within notices unless they are already in our cache or in the Windows cache. Mgr: Clear our internal Internet cache when selecting a different computer; when removing entries from hash table, delete data to avoid memory leaks. Mgr: Display a message and 'Retry now' button if some images or other items within notices failed to load from the Internet; if network activity is suspended, say so in the message.
When removing entries from hash table, delete only the contents of the cached data (pointed to by mdata), not the entire MemFSHashObj. Use the WXCLEARHASHTABLE macro to clear the notices hash table. Mgr: When removing entries from our hash table, delete data to avoid memory leaks. Mgr: Allow existing to retrieve images or other items from the Internet even if network activity is suspended.
(But client won't get new notices.). Mgr: Reset Internet timeout when retrying notices. Mgr: Bug fixes for Windows Async Internet access, including closing the WinINet handle when aborting due to timeout, etc.
To prevent crashes. Mgr: Add all the new notices features to the Simple View notices dialog. client: improved log messages for work fetch. Mgr: When closing Simple View notices, wait for all Async Internet access to complete before calling the notices panel destructor.
Fix compiler warnings. Fix compile warnings on Linux X-screen saver. client: processor identification for ARM (from Evandro Menezes and Joachim Fritzsch). API: fix Unix bug when checking if client is alive based on PID. Can't use waitpid here; works only for children. Use kill(pid, 0) instead. API: improve log messages when detect dead client.
client: disable remote access if - guirpcauth.cfg is empty, or - it doesn't exist and we can't open it for writing, or - the write to it fails. client: don't crash if GUI RPC password is too long (from RustyBSD) (change from max 256 chars to 512 chars).
client: Account for the display management power system when calculating idle time from the XSS system on Linux. client: if guirpcauth.cfg is empty, print a warning but don't fail with an error; an empty GUI RPC password is allowed. (size=8ito error out/i is not a known verb, David./size). lib: compile fix. client: when checking file sizes at startup, skip image files if the 'dontverifyimages' pref is set. Otherwise we'll be downloading the file on each startup.
Fixes trac#1222/trac. compile fixes. Fixes #1219. WIN: Update copyright information in the Windows resource files.
MGR: Revert the changes made to AsyncRPC.cpp on Dec 7th. It broke our ability to deal with localization on Windows, Mac, and Linux. We'll have to revisit this issue after the next build for the BSDs. Fix Build Breaks. 7.0.44.
Fix conflict resolution mistake. 7.0.45. client: show available disk space correctly on startup. client: add code for detecting running on batteries on OpenBSD. From RustyBSD. LIB: Standardize on using windowsformaterrorstring and drop windowserrorstring.
Move the windowsformaterrorstring function to winutil.cpp,.h instead of it being scattered between util.h and strutil.cpp. Convert the Windows error string into UTF8 before allowing it to be used by the caller. Remove windowserrorstring from library. LIB: Call FormatMessageW directly and skip an extra string encoding conversion step.
OpenCL: fix bug reported by Heinz-Bernd Eggenstein. Fix build break for boincopencl.cpp and move the include of below the pre-compiled header file for Windows builds in boincapi.cpp. client: make CPU throttling apply to GPU apps.
MGR: when selecting a new client, clear Notices tab and don't display 'Fetching notices' until connected to new client. MGR: clear Simple View Notices when disconnected and don't display 'Fetching notices' until connected to client. client: get proxy info before attempting project list fetch or any other HTTP op.
client: backoff message tweaks. Manager: fix case where the client has only an Intel GPU, and the manager was acting as if it had no GPUs. client: write GPU list in getstate GUI RPC. Otherwise manager doesn't know what GPUs we have. client: the logic for work fetch in the presence of GPU exclusions (especially per-app exclusions) was incomplete and buggy. Changes: - make bitmaps of included instances per (app, resource type). in round-robin simulation, we keep track of used instances (so that we know if there are instances that are idle because of exclusions).
Do this based on app-level exclusions (previously it was done based on project-wide exclusions, which didn't include app-level exclusions). compute RSCPROJECTWORKFETCH::nonexcludedinstances as the logical OR of the per-app masks. If you exclude an instance for all apps separately, it's the same as excluding it for the project as a whole. (Note: this bitmap is used for only 1 purpose: if we have idle instances, don't request work from a project for which those instances are excluded.) - define RSCPROJECTWORKFETCH::ncoprocsexcluded as the # of instances excluded for.any. app, not the # excluded for all apps. This quantity is used in work fetch to make sure we don't unboundedly fetch jobs that turn out not to have a GPU to run on due to exclusions. MGR: Somehow we are receiving an WMACTIVATEAPP event before mpFrame has been populated on Windows 8.
If mpFrame is NULL, ignore the event. client (Win): don't call msgprintf from sysmon thread. Instead, put msg into a buffer and let main thread print it. This may fix crashes on system suspend/resume. Compile fix for non-Windows clients. OpenCL: remove dead code reported by Heinz-Bernd Eggenstein.
WINSETUP: Update installer build files based on the 7.0.x branch 7.0.46. client: show sysmon messages correctly. This was supposed to be in David's commit, but it got botched somehow. client: the debug flag enables suspend/resume messages for both CPU and GPU. Previously CPU messages were always shown, and GPU messages were shown if was set.
client: fix bug where reschedule wasn't being done on GPU suspend or resume. client: if app does temporary exit, don't print premature exit warning. Fixes #1224. client: when formatting the OpenCL description field, use the human readable version of the GPU type. People were expecting Intel GPU instead of intelgpu. 7.0.47.
lib: Remove duplicate GPU text in the OpenCL description. client: message tweak for GPU suspend/resume.
WINSETUP: Change description text for service installs. 7.0.48.
client: message tweak. MGR: Properly handle the back button on the wizard page that asks for credentials. We'll need to revisit this issue for cookie and automatic attach situations though. MGR: Fix class name collision with MemFSHashObj in fsmem.cpp in wxWidgets which caused Manager crashes.
MGR: Fix assert when allprojectslist.xml file is missing. client: check return value of the function (statfs or statvfs) used to find disk space and usage. This may be failing for in-memory filesystems on Linux. WINSETUP: Switch to using ENABLEPROTECTEDAPPLICATIONEXECUTION3 instead of ENABLEPROTECTEDAPPLICATIONEXECUTION2. WINSETUP: Explicitly use certain values for boolean flags instead of using the output of the UI controls. Avoids confusing values in the registry. WINSETUP: Switch ISM files to use ENABLEPROTECTEDAPPLICATIONEXECUTION3.
SETUP: Update the all projects list for Windows/Mac? 7.0.52. MGR: fix some compile warnings on Unix.
client: Basic detection of how much capacity a host's battery has on Android and Windows. client: show '%' correctly in messages from scheduler. client: Fix typo. client: job scheduler tweak to avoid CPU idleness in situation where GPU jobs use different CPU fractions. client: work fetch: if there are idle devices, we need to ask the highest-prio project for work for all of them (don't scale by the fetchable resource share!). This should fix some device starvation problems. client: Fix typo from previous commit.
client: fix more typos. client (Unix): check whether VBoxManager is executable by us before trying to run it.
Otherwise we get lots of msgs in stderr. Manager: right-justify task deadline in advanced view.
(Android?). Fix wild card in Exclusive Apps dialog for Linux (from Gianfranco Costamagna). client: Properly return the battery status as full when it is. (Android + laptop). client: suspendreason is not a bitmap; fix code that acted like it is. WINSETUP: Fix the launch manager and tray functionality at the end of setup. 7.0.54.
MGR: SimpleGUI: Make the Notices/Suspend/Resume/Help button borders transparent. The other buttons will take a bit more work. WINSETUP: Fix the launch manager and tray functionality at the end of setup. (Applied to WCG.ism). client (Android and other Unix without shmget): Don't write spurious messages to stderr about shmem operations not being supported. MGR: Limit event log to 2000 messages, deleting oldest if necessary.
MGR: Make my recent Event Log changes a little more robust. (Charlie). client: show error notice if a GPU exclusion (in ccconfig.xml) has an invalid URL, type, or app. client: show nvidia driver version as 314.07 instead of 314.7. scheduler and web: store OpenCL version along with other GPU info in host.serialnum. Display it on web.
include OpenCL info when faking an NVIDIA GPU. MGR: Simple View slide show area should be a fixed size. MGR: Center the Simple View slide show area, fix wrapping of project description text when project has no slide show. Client: on readccconfig GUI RPC, reread appconfig.xml files as well as ccconfig.xml.
Attempt to fix appearance of Simple View buttons on Windows. MGR: Fix a minor glitch rendering corners of backgrounds of Task and Project areas in Linux Simple View. MGR: patch to change temporaries to long. Fixes #1226 (From: Alyssa Milburn) Thanks Gianfranco Costamagna. WINSETUP: Remove RCSID tags from files. MGR: Add missing template files. client: Add some missing test files.
MGR: Add missing header file for VS Intellisense population of wxWidgets class information. Add inert script file. client: change work fetch policy to work better with GPU exclusions scale amount of work request by (# non-excluded instances)/#instances. change policy: old: don't fetch work if #jobs #non-excluded instances. New: don't fetch work if # of instance-seconds used in RR sim workbufmin.
(#non-exluded instances)/#instances. client: add -suppressnetinfo cmdline option. client/manager: isspace throws an exception on Win for non-ASCII chars. Check isascii first.
client, work fetch policy. Change policy for projects w/ GPU exclusions. client (FreeBSD): detect running on batteries; from rustyBSD. client: add config option; requests work when you update a project even if it's not highest priority. MGR: Limit event log to 2000 messages, deleting oldest if necessary. MGR: Make the flags to InternetReadFileEx match those of InternetOpen.
Mixed flags can cause unpredictable results. MGR: if InternetReadFile sets ERRORIOPENDING error, we need to call it again to get the next chunk of data. client: parse config flag, and show it on startup. MGR: Fix memory leaks, add debug fprintf's trying to find cause of crashes when retrying load of images in notices.
MGR: don't show DCF in project properties page if it's 1. build: Add -Wcast-align to list of compiler warnings we are interested in. It'll help prevent crashes in CPU Architectures that are strict on there alignment policies.
(From: Jeffrey Walton). client: Revert my changes for the -detachconsole functionality back to the original implementation.
MGR: Remove temporary debugging fprintf's. MGR (and possibly other components): XML parsing fix. MGR: Remove temporary debugging fprintf's - missed one line before.
MGR: Disable the download of image files for now. Revisit policy after the next public release.
7.0.55. WINSETUP: When ENABLEUSEBYALLUSERS is true, create the automatic run key in the HKEYLOCALMACHINE registry space. When it is false use HKEYCURRENTUSER.
client (and maybe others): fix XML parsing bug when skipping large unrecognized elements. client: don't show cache size in startup messages. 7.0.56. MGR: Modify the GUI for the Attach to Project Wizard for the World Community Grid version of the client.
These changes should make clearer the difference between attaching to a new BOINC project vs changing which applications a user is choosing to run at World Community Grid. MGR: Further modifications to the World Community Grid installer and skin for BOINC 7. MGR: fix build breaks on Win.
You can't just say '#elif'. client: write log flags in alpha order. client and boinccmd: update usage text. update Unix command completion script. update XML man pages for client, manager, boinccmd.
man page tweak. client: removed unused code for old work-fetch logic.
client: fix small work fetch bug that caused the client to not add a piggyback work request when it should have. 7.0.57. client: alphabetize log flags. client: there were many places in the code where we keep track (usually in a static variable called 'lasttime') of the last time we did something, and we only do it again when now - lasttime exceeds some interval. Example: sending heartbeat messages to apps.Problem: if the system clock is decreased by X, we won't do any of these actions are time X, making it appear that the client is frozen.Solution: when we detect that the system clock has decreased, set a global var 'clockchange' for 1 iteration of the polling loop, and disable these time checks if clockchange is set.
client: a couple of more clock-change fixes. Client: debug last commit. Also fix bug where benchmarks don't end when clock goes backward. client: updated Windows version identification, from Robert Kress.
client and wrapper (Linux): when parsing /proc/x/stat entries, handle command names that contains white space. client: improve work fetch messages. MGR: Add missing static text back to the welcome page for the attach wizard. 7.0.58. XML parser: when skipping unrecognized elements, don't read them into memory. MGR: Update copyright year.
7.0.59. MGR (Win): case-insensitive check for.exe ending of exclusive apps. client: if is set in config, still check for errors (e.g. Verify failures) at startup, and reset file if so.
Otherwise we'll never recover from those errors. MGR: Downloading images in notices using asynchronous WinInet (Windows Internet I/O) code finally seems to be working for all 3 of us who have tested it. client: code cleanup. Some variable/function/constant names contained 'debt' when they actually refer to REC.
Change these names to use 'rec'. client, work fetch: request # instances so that we have enough jobs to use project's share of instances. Remove Beta/Alpha flag for Linux builds. MGR: Revise how CPU Architecture is determined in the about dialog box per Gianfranco's recommendation. 7.0.60.
client: on startup, if new version, arrange to get new project list. client: alphabetize fields in prefs structure. XML parser: return error if string exceeds buffer size. client: when parsing MD5, use 64 instead of 33 char buffer.
When the XML parser reads a string, it enforces the buffer size limit BEFORE it strips whitespace. So if a project put whitespaces before or after the MD5, it would fail to parse. MGR: fix crash bug in Simple View preferences dialog. 7.0.61. Remove more dead projects from project list. client: detect new Win versions and AMD GPUs; from P3D Crashtest.
client: fix bug in work fetch that prevented resource backoff. client: AMD GPU names; from Jord. client: AMD GPU name tweaks. client: put back -detach (because BoincTasks assumes it) and -detachconsole (because the documentation says it exists). I'm not sure why -detachphasetwo is there, but leave it. boinccmd: show correct error message if auth failure. MGR: Fix minor cosmetic issue rendering Task Selection Control in Simple View on Mac.
MGR: Check the size of the stats vectors before attempting to tabulate the results. MGR: Fix the text for the 'reread config files' menu option. client: Make the detach console stuff backwards compatible with BOINCTasks. WCG: Fix bug in WCG version of client when using the projectinit.xml file it initiate auto-attach to World Community Grid.
WCG: Add signing requirement to installer. Need Rom to add key location and key password to file when he builds. 7.0.62. MGR: Remove fix of text for the 'reread config files' menu option. (Adding it now would break translations.
This change will come in the next major revision.) 7.0.63. Fix issue with WCG build of client on the Add Project dialogue. If the user was not connected to WCG, then no option was selected by default. Now, the 'Add Project' option will be shown as selected. client: don't prefix messages with task.
client: check return value of FormatMessageW so we don't print garbage. client: bugfix for Android in hostisrunningonbatteries. Change filehandling back to fopen and fclose from rewind.
WINSETUP: Fix the Enable Use by All Users checkbox in the installer. The setting wasn't being properly restored. WINSETUP: Special case the LAUNCHPROGRAM property, if the registry value is an empty string, enable the checkbox. client: add AMD GPU name for HD 3650 (RV635).
MGR: Don't display architecture (x86 vs x8664) in About Box on Macs. MGR: Enforce a minimum username/email address length when we are prompting for a username or email address. MGR: Cleanup up the about dialog a little bit.
7.0.64. MGR: Keep the BOINC logo visible in the about dialog box. 7.0.65. Mac: Fix compile errors.