mirror of https://github.com/BOINC/boinc.git
6527 lines
202 KiB
Plaintext
Executable File
6527 lines
202 KiB
Plaintext
Executable File
David 1 Jan 2005
|
||
- Deprecated the bad hash function used for the
|
||
upload/download directory hierarchies.
|
||
It wasn't uniform.
|
||
Use MD5 instead.
|
||
|
||
Kept the old one around for a the time being.
|
||
dir_hier_path() and dir_hier_url() take a new arg
|
||
saying whether to use new or old hash.
|
||
The file_deleter and validator try the new hash, then the old.
|
||
|
||
doc/
|
||
busy_work.php (new)
|
||
tools_work.php
|
||
lib/
|
||
util.C,h
|
||
sched/
|
||
file_deleter.C
|
||
file_upload_handler.C
|
||
make_work.C
|
||
validate_util.C
|
||
wu_check.C
|
||
tools/
|
||
backend_lib.C
|
||
dir_hier_move.C
|
||
dir_hier_path.C
|
||
|
||
David 3 Jan 2005
|
||
- split the implementation of REDUCE into 2 parts,
|
||
one for the app's main program and one for the shared library
|
||
|
||
api/
|
||
Makefile.am
|
||
reduce.C (removed)
|
||
reduce_lib.C (new)
|
||
reduce_main.C (new)
|
||
|
||
Bruce 5 Jan 2005
|
||
Bruce 6 Jan 2005
|
||
- added new directory which builds a self-extracting tar
|
||
archive (executable shell script) for installation on
|
||
unix platforms. This will only be made when building
|
||
the client GUI and installs both the boinc client and
|
||
client GUI. Written and tested by Bernd Machenschalk.
|
||
|
||
- next day revision, name shell script with appropriate
|
||
version/release number from configure.ac
|
||
|
||
Makefile.am
|
||
sea/ [New Directory]
|
||
make-sea.sh
|
||
Makefile.in
|
||
BOINC/ [THIS DIRECTORY IS SPURIOUS: NO LONGER NEEDED]
|
||
|
||
Janus 6 Jan 2005
|
||
- Added support for an "Ignore" function in the forums
|
||
Users can now ignore a list of other users. The ignored
|
||
posts will appear as filtered.
|
||
|
||
To use this the forum_preferences table needs a new
|
||
column:
|
||
|
||
ALTER TABLE `forum_preferences` ADD `ignorelist` VARCHAR( 254 ) NOT NULL ;
|
||
|
||
- Added thread name to page title in forums (from Athlonrob)
|
||
- Round scores and ratings in forum to avoid a rating of
|
||
for instance 2.999999999
|
||
|
||
/html/user
|
||
edit_forum_preferences_form.php
|
||
edit_forum_preferences_action.php
|
||
forum_thread.php
|
||
/html/inc
|
||
forum.inc
|
||
|
||
Rom 6 Jan 2005
|
||
- Bug Fix: fix crashing bug when running the old gui and new gui
|
||
side by side
|
||
- Bug Fix: Fix sync bug in new gui related to how the number of
|
||
rows were being calculated
|
||
- Bug Fix: Remove the explict call to freeze/thaw which was causing
|
||
the messages tab to flicker even when the data has not changed.
|
||
- Bug Fix: On Windows systems that support tooltip bubbles, don't
|
||
populate the regular tooltip field as it will appear before
|
||
the bubble request and makes the taskbar applet appear
|
||
ugly
|
||
- Bug Fix: The new gui should enforce closing down the core client
|
||
when it launches the core client, we were using the wxWidget
|
||
framework to do this, but the call to wxProcess::Exists causes
|
||
an assert on Windows if the process doesn't exist. And sometimes
|
||
crashes in a release build.
|
||
- Bug Fix: When syncing the views cache make sure there is at least
|
||
one item to syncronize, otherwise we'll reference a NULL pointer
|
||
and blow up. This fixes the crashing bug when you startup and
|
||
shutdown the core client in the background.
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
clientgui/
|
||
BOINCGUIApp.cpp, .h
|
||
BOINCBaseView.cpp
|
||
ViewMessages.cpp
|
||
ViewProjects.cpp
|
||
ViewResources.cpp
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
clientgui/msw/
|
||
taskbarex.cpp
|
||
|
||
Rom 6 Jan 2005
|
||
- Bug Fix: On Windows 2000 machines or better use the GetLastInputInfo
|
||
API to determine if the system is idle or not instead of hooking
|
||
into each process space. This will fix the possible warnings
|
||
that key logging detection tools throw with BOINC is started up.
|
||
For older platforms we'll hook into the process space.
|
||
- Bug Fix: Detect system idle properties across the terminal services
|
||
boundry. Thanks to Eric Youngdale for the patch.
|
||
- Bug Fix: Detect the condition where the system tick count may have
|
||
looped back to zero.
|
||
|
||
client/
|
||
main.C
|
||
client/win/
|
||
hostinfo_win.cpp
|
||
win_idle_tracker.cpp, .h, .def
|
||
clientgui/
|
||
BOINCGUIApp.cpp, .h
|
||
BOINCTaskBar.cpp, .h
|
||
MainFrame.cpp, .h
|
||
|
||
Rom 7 Jan 2005
|
||
- Bug Fix: Provide better visuals during the connect and disconnected
|
||
states for the BOINC Manager
|
||
- Bug Fix: Provide written text describing the BOINC Manager state
|
||
- Bug Fix: Add new strings to language files
|
||
|
||
clientgui/
|
||
MainFrame.cpp, .h
|
||
stdwx.h
|
||
clientgui/res/
|
||
connect.xpm
|
||
disconnect.xpm
|
||
clientgui/locale/
|
||
< All PO files >
|
||
|
||
Janus 7 Jan 2005
|
||
- Bug fix: Don't show icon column in helpdesk - icons are not used here
|
||
- Bug fix: Filtering can now be turned off in helpdesk
|
||
- Ignored userlist is now unique and sorted by userid
|
||
(patches from Christian Beer - thanks!)
|
||
- More score rounding to avoid float inaccuracy
|
||
|
||
/html/user
|
||
edit_forum_preferences_action.php
|
||
/html/inc
|
||
forum_show.inc
|
||
forum.inc
|
||
|
||
David 7 Jan 2005
|
||
- drop the indices on mod_time.
|
||
(result: app_mod_time, workunit: wu_filedel)
|
||
For SETI@home they were too much of a performance hit.
|
||
They're needed only for db_purge and result_summary.php,
|
||
which will have to do a sequential scan instead
|
||
- db_dump: try several times to remove old stats directory
|
||
|
||
db/
|
||
constraints.sql
|
||
html/ops/
|
||
db_update.php
|
||
sched/
|
||
db_dump.C
|
||
sched_locality.C
|
||
|
||
David 7 Jan 2005
|
||
- User web: show "external" version of cross-project ID
|
||
(i.e. hashed with email_addr) in the My Account page.
|
||
It will now match what's in the XML dump files
|
||
|
||
html/inc
|
||
user.inc
|
||
|
||
Rom 7 Jan 2005
|
||
- Bug Fix: Fix compile error on Unix platforms for the BOINC Manager
|
||
- Bug Fix: Don't blow out of the core client when running as a service/daemon
|
||
and adding a project fails. Thanks to Sebastian Masch for tracking
|
||
down the bug.
|
||
|
||
client/
|
||
client_state.C, .h
|
||
cs_cmdline.C
|
||
main.C
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
|
||
David 7 Jan 2005
|
||
- fixes from Christian Beer to avoid undefined PHP vars
|
||
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
ops/
|
||
db_action.php
|
||
db_form.ph
|
||
|
||
Bruce 7 Jan 2005
|
||
|
||
- Reinhard has done a substantial amount of work in the past
|
||
couple of weeks to fix a number of bugs and problems in the
|
||
X-windows and/or Mac graphics event loop, and with lockfile
|
||
handling problems seen on a number of Unix file systems. A
|
||
brief summary of the changes is:
|
||
|
||
lockfile: replace calls to exit() by boinc_finish() + make
|
||
boinc_finish() remove the lockfile
|
||
|
||
graphics-eventloop: some re-structuring and simplification to
|
||
make handling of glut-exits/abort-signals more robust. Eric,
|
||
if you could test this under Solaris we'd be very grateful.
|
||
|
||
api/
|
||
boinc_api.C
|
||
graphics_impl.C
|
||
x_opengl.C
|
||
diagnostics.C
|
||
filesys.C
|
||
|
||
Rom 7 Jan 2005
|
||
- Bug Fix: The screensaver doesn't really need to update every second. change
|
||
it to update once a minute.
|
||
- Bug Fix: The screensaver only needs to detect if BOINC is running once,
|
||
if it doesn't detect it display the not detected message.
|
||
|
||
client/win/
|
||
win_screensaver.cpp
|
||
|
||
David 7 Jan 2005
|
||
- off-by-1 error caused trivial validator to not work
|
||
|
||
sched/
|
||
validate_util.C
|
||
|
||
David 7 Jan 2005
|
||
- moved dir hierarchy code from lib/util.C to sched/sched_util.C
|
||
- buffer was too small by 1 byte in md5_file.C
|
||
|
||
lib/
|
||
md5_file.C
|
||
util.C,h
|
||
sched/
|
||
file_deleter.C
|
||
sched_util.C,h
|
||
|
||
David 7 Jan 2005
|
||
- Changed Makefile.am's to use libraries (libboinc.a, libsched.a)
|
||
instead of listing separate .o files
|
||
|
||
Makefile.incl
|
||
sched/
|
||
Makefile.am
|
||
wu_check.C
|
||
tools/
|
||
Makefile.am
|
||
backend_lib.C
|
||
dir_hier_move.C
|
||
dir_hier_path.C
|
||
|
||
David 7 Jan 2005
|
||
- Win compile fix
|
||
|
||
api/
|
||
boinc_api.C
|
||
|
||
David 7 Jan 2005
|
||
- add "ignorelist" field to forum_preferences
|
||
- add script for correcting team.nusers
|
||
(can drift away from correct value for some reason)
|
||
- User web mods:
|
||
- improve result field explanations
|
||
- user date_str() instead of time_str() when showing signup date
|
||
|
||
db/
|
||
schema.sql
|
||
html/
|
||
inc/
|
||
result.inc
|
||
team.inc
|
||
user.inc
|
||
util.inc
|
||
ops/
|
||
db_update.php
|
||
team_repair.php (new)
|
||
user/
|
||
explain_state.php
|
||
|
||
Bruce 8 Jan 2005
|
||
|
||
In order to coordinate better with David, I am doing a slightly
|
||
premature checkin of modifications to scheduling locality. The
|
||
basic idea is to provide a simple notification mechanism to the
|
||
project, so that if no work is currently available for a given
|
||
data file, there is an opportunity to make such work. This is
|
||
controlled by an additional tag in config.xml, of the form:
|
||
|
||
<locality_scheduling_wait_period> N </locality_scheduling_wait_period>
|
||
|
||
where N is some number of seconds. If this new tag is absent,
|
||
then the locality scheduler behaves as before.
|
||
|
||
The modification to behavior happens in send_results_for_file().
|
||
This is the function that queries the database to see if there are
|
||
unsent results available for a given (large) data file on the
|
||
host. Previously, if such results are not found the scheduler
|
||
gives up and tries sending other results. With this modification,
|
||
if N is nonzero, then if no results are found the scheduler
|
||
touches a file with the same name as the host's data file, in a
|
||
directory
|
||
PROJECT_ROOT/locality_scheduling/need_work/
|
||
The scheduler then sleeps for N seconds, and makes one additional
|
||
attempt to find suitable unsent results. The idea is that in this
|
||
interval, the project has an opportunity to make additional WU for
|
||
this file, which the transitioner can convert to unsent
|
||
results. [Note, the transaction for the first query is completed
|
||
before the sleep(N), and a new transaction is initiated
|
||
afterwards. So there is no 'sleep within a transaction'.] This
|
||
delay allows the project to make additional workunits suitable for
|
||
the host's existing data files.
|
||
|
||
In addition, if the project determines that NO further workunits
|
||
can be made for a given data file, then the project can touch a
|
||
file with the same name as the input data file, in a directory
|
||
PROJECT_ROOT/locality_scheduling/no_work_available/
|
||
If the scheduler finds this warning then it assumes that the
|
||
project can not manufacture additional WU for this data file and
|
||
skips the 'notify, sleep, query again' sequence above. Of course
|
||
it still does the initial query, so if the transitioner has made
|
||
some new results for an existing (old) WU, they will get picked
|
||
up.
|
||
|
||
This mechanism is robust in the sense that if the signals fail for
|
||
any reason, or (say) the WU are not converted into unsent results
|
||
quickly enough by the transitioner, or if they are snapped up by
|
||
some other host, then the scheduler simply proceeds as with its
|
||
current unmodified behavior and nothing goes wrong. In other
|
||
words, the signals can be ignored at any time and for any time
|
||
without adverse consequences.
|
||
|
||
TODO: further testing.
|
||
|
||
sched/
|
||
sched_locality.C
|
||
|
||
David 8 Jan 2005
|
||
Some changes related to locality scheduling:
|
||
|
||
- Factored Bruce's new code into a separate function,
|
||
make_more_work_for_file()
|
||
- Remove the 'id>X' stuff from queries.
|
||
Assuming that work is fairly homogeneous
|
||
(i.e. no results are rejected because of resource requirements)
|
||
this is not needed.
|
||
If a result has already been sent,
|
||
it won't qualify for the select anyway.
|
||
- Add a 'workunitid<>X' clause to the queries.
|
||
This is to make the process of enforcing the
|
||
one_result_per_wu_per_user rule more efficient.
|
||
If the rule is not in effect, X is zero (so always true)
|
||
- If two consecutive select queries return the same result,
|
||
break out of the loop (avoid undesired looping)
|
||
- Use a for i=1,100 loop instead of a while(1) loop
|
||
around the work-sending logic,
|
||
to avoid infinite loops just in case
|
||
|
||
sched/
|
||
sched_locality.C
|
||
|
||
David 8 Jan 2005
|
||
- Implement the <locality_scheduling_wait_period> element in config.xml
|
||
If present, this tells the scheduler how long to sleep
|
||
between requesting more work for a file
|
||
and looking for it (and giving up if it's not there)
|
||
If absent, the scheduler doesn't request more work unit generation.
|
||
|
||
sched/
|
||
sched_config.C,h
|
||
sched_locality.C
|
||
|
||
David 9 Jan 2005
|
||
- fix memory leak in get_insert_id()
|
||
|
||
db/
|
||
db_base.C
|
||
|
||
David 9 Jan 2005
|
||
- user profile fixes
|
||
- disallow thread titles consisting only of HTML tags
|
||
|
||
html/inc/
|
||
forum.inc
|
||
profile.inc
|
||
|
||
David 9 Jan 2005
|
||
- message board fixes - show thread titles using htmlspecialchars()
|
||
prevent invisible titles
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
forum_show.inc
|
||
user/
|
||
forum_thread.php
|
||
|
||
Rom 9 Jan 2005 (boinc)
|
||
- Tag for 4.58 release, all platforms
|
||
boinc_core_release_4_58
|
||
|
||
David 9 Jan 2005
|
||
- fix a buffer overrun problem by using std::string
|
||
in DB_BASE::insert_batch()
|
||
|
||
db/
|
||
db_base.C,h
|
||
sched/
|
||
transitioner.C
|
||
|
||
David 10 Jan 2005
|
||
- client: fix bug where "requesting more work" messages
|
||
are generate every second when all projects are suspended
|
||
|
||
client/
|
||
client_types.h
|
||
cs_scheduler.C
|
||
|
||
David 10 Jan 2005
|
||
- locality scheduling changes:
|
||
Changed the algorithms a bit to avoid lots of DB queries
|
||
Invariant: for a given file/user pair,
|
||
results are sent in order of increasing ID
|
||
(i.e. the result sent is that with the smallest ID
|
||
among all those that CAN be sent).
|
||
This ensures that:
|
||
- the result for given WU will be sent around the same time
|
||
send_results_for_file():
|
||
1) of results for this file sent to this user,
|
||
find the one R with largest ID
|
||
2) find unsent result R2 for this file with next ID greater than R,
|
||
and (if one result per user per WU) different workunitid than
|
||
ALL previous results sent to this user.
|
||
3) if need more results, set R = R2 and go to 2)
|
||
send_new_file_work():
|
||
min_id = 0
|
||
while need more work
|
||
find unsent result R with id>min_id of least ID
|
||
min_id = R.id
|
||
(Note: this is necessary to preserve the invariant)
|
||
Changed make_more_work_for_file() to return zero for success
|
||
(BOINC convention)
|
||
|
||
db/
|
||
db_base.C,h
|
||
sched/
|
||
sched_locality.C
|
||
|
||
David 11 Jan 2005
|
||
more locality sched changes (with Bruce Allen)
|
||
|
||
- Added a notion of "working set" of files.
|
||
If a host doesn't have a file, the scheduler picks a
|
||
random entry from the working set and tries to send it
|
||
work from that file.
|
||
The project must supply a daemon program that maintains the working set
|
||
(could be the same as the work generator)
|
||
- Added config.locality_scheduling_send_timeout.
|
||
If any unsent result is older than this,
|
||
send it to the first eligible host
|
||
- If a host already has files, randomize their order
|
||
- Integrate work-generator invocation in send_results_for_file()
|
||
- If can't send a result because of no app_version, give up
|
||
|
||
lib/
|
||
error_numbers.h
|
||
sched/
|
||
sched_locality.C
|
||
|
||
Janus 12 Jan 2005
|
||
- Removed check for $user->disabled_filtering which no longer exists.
|
||
- Added output of CVS version information if available.
|
||
Someone with time on their hands should add the following line to all
|
||
the PHP and include files (right after the inital <php
|
||
(remove the star! - inserted to avoid having CVS generate the info...):
|
||
|
||
$cvs_version_tracker[]="\$I*d$"; //Generated automatically - do not edit
|
||
|
||
(bug and idea found by Bruce Allen)
|
||
|
||
html/inc
|
||
util.inc
|
||
forum_show.inc
|
||
|
||
Bruce 12 Jan 2005
|
||
more locality sched changes.
|
||
- bug fix 1, trivial, n % 0 generates FPE if no files.
|
||
- bug fix 2, subtle. In the deterministic hunt to find
|
||
the next unsent result, the comparison of the result name must be
|
||
done with the lexically maximum result name constructed from the
|
||
given filename. Eg, if one needs name>FILE_ZZZZ...Z where
|
||
Z=0xff (is this charset independent??) and the total name length
|
||
is 255 (or is it 254??).
|
||
|
||
- David, I'll clean out some of the debugging scaffolding in a few
|
||
more days, when I get some confidence that there are not other
|
||
problems to fix! Please read embedded comments/questions in code.
|
||
|
||
- Some more comemnts added later. We do sometimes get non-zero
|
||
return values from possibly_send_result(). I think that this is
|
||
because you've failed to match up the start_transaction and
|
||
commit_transaction pairs. Be careful: sleeps AND modifies the
|
||
DB. Right now I am too tired to fix this without making it worse.
|
||
Your turn.
|
||
|
||
- A few other comments. Currently, I am 'advertising' filenames
|
||
returned by get_working_set_filename() for TWO types of files:
|
||
(1) those for which I can make more work
|
||
(2) those for which I can NOT make more work, but where you have
|
||
not flagged with flag_for_possible_removal().
|
||
I am not sure that I understand the intent of
|
||
flag_for_possible_removal(). You surely are not guaranteeing
|
||
that no results will ever appear in the future for these files
|
||
(outstanding results might fail). So what is my WU generator
|
||
supposed to do with flag_for_possible_removal? Is (2) above
|
||
correct?
|
||
|
||
- Finally, I have not yet seen a SINGLE instance of a
|
||
flag_for_possible_removal. Is the logic right?
|
||
|
||
sched/
|
||
sched_locality.C
|
||
|
||
David 12 Jan 2005
|
||
- xml_escape() and xml_unescape(): handle non-ASCII characters
|
||
|
||
lib/
|
||
parse.C
|
||
|
||
Rom 12 Jan 2005
|
||
- Bug Fix: Fix the bug where the screensaver wasn't saving the
|
||
configuration settings to the registry without the prep
|
||
work done by the previous installer.
|
||
|
||
client/win/
|
||
win_screensaver.cpp, .h
|
||
|
||
Bruce 13 Jan 2005
|
||
- Various efforts to fix CVS 'loginfo' file so that we get auto
|
||
mailings of changes to the top level directory. The main problem
|
||
is that one can't use "^boinc[ ]" or "^boinc\ " or
|
||
"^boinc\#20" as a regex to try and match the name of the top
|
||
level directory with no trailing slash. What a mess!
|
||
|
||
- More work on sched_locality.C. Note that the 'wacky' warning is
|
||
actually not impossible. Consider the following scenario: WU A
|
||
has result 1 and WU B has result 2. These are both sent to a
|
||
host. Some time later, result 1 fails and the transitioner
|
||
creates a new result, result 3 for WU A. Then the host requests
|
||
a new result. The maximum result already sent to the host is 2.
|
||
The next unsent result (sorted by ID) is #3. But since it is
|
||
for WU A, and since the host has already gotten a result for WU
|
||
A, it's infeasible. So I think this is only wacky if
|
||
!one_wu_per_result_per_host.
|
||
|
||
- David, I simplified the inner part of send_results_for_file()
|
||
somewhat. I can't see the need/use for the bool bool
|
||
in_working_set argument. If I have really screwed the pooch
|
||
please revert.
|
||
|
||
sched/
|
||
sched_locality.C
|
||
|
||
David 13 Jan 2005
|
||
- Core client: when get a workunit from scheduler,
|
||
clear errors (e.g. download failures)
|
||
for all files associated with this WU
|
||
(this is down in a new function WORKUNIT::clear_errors())
|
||
Without this, if a file common to multiple WUs had a download
|
||
failure, all WUs would fail until user resets project!!
|
||
- Giant bug in HTTP file transfer:
|
||
If a network connection failed in the middle,
|
||
it wasn't being distinguished from a completed download;
|
||
the file size would be checked at the PERS_FILE_XFER level,
|
||
and it would get a "bad file size" fatal error.
|
||
Fix: when get EOF from a network connection reading HTTP reply,
|
||
compare the bytes transferred with the content-length
|
||
from HTTP header.
|
||
If not equal, classify it as an error.
|
||
This will cause higher levels to view it as a transient error,
|
||
and restart the download later.
|
||
- PERS_FILE_XFER::poll():
|
||
the check for actual file size == desired file size
|
||
was inexplicably being done even for file uploads,
|
||
and even in cases where another error had occurred.
|
||
Do it only for download success cases.
|
||
|
||
|
||
client/
|
||
client_types.C,h
|
||
cs_scheduler.C
|
||
http.C
|
||
pers_file_xfer.C
|
||
|
||
Rom 13 Jan 2005 (boinc)
|
||
- Tag for 4.59 release, all platforms
|
||
boinc_core_release_4_59
|
||
|
||
David 13 Jan 2005
|
||
- user web: in thread page, show numbered lists of pages correctly
|
||
Also get rid of goofy big/bold stuff
|
||
- page_tail(): use the current year (not necessarily 2004) for copyright
|
||
- add warning about CPU overheating to Rules/Policies page
|
||
- use tables for result state explanations
|
||
|
||
html/
|
||
inc/
|
||
forum_show.inc
|
||
util.inc
|
||
user/
|
||
explain_state.php
|
||
info.php
|
||
|
||
David 13 Jan 2005
|
||
- add "hidden" fields to thread and post tables,
|
||
in preparation for message board moderation features
|
||
|
||
NOTE TO PROJECTS: apply this update if you're using current PHP.
|
||
It doesn't hurt to apply it anyway.
|
||
|
||
db/
|
||
schema.sql
|
||
html/ops/
|
||
db_update.php
|
||
|
||
Rom 13 Jan 2005
|
||
- Checkin the changes necessary to hide threads in the forum code.
|
||
By: Rob Ogilvie
|
||
- Hidden threads should not be visible through a direct call
|
||
|
||
html/inc/
|
||
forum.inc
|
||
html/user/
|
||
forum_thread.php
|
||
|
||
David 13 Jan 2005
|
||
- modified DB_BASE::enumerate() so that it returns:
|
||
- zero if returning a row
|
||
- ERR_DB_NOT_FOUND if reached end of result set
|
||
- other values indicated DB errors (e.g. lost connection to server)
|
||
|
||
Strange as it may seem, until now we didn't have a way of
|
||
knowing that enumerate() had errored out.
|
||
As a result, e.g., db_dump would happily generate
|
||
a zero-entry user or host file
|
||
if the DB happened to disconnect during the select.
|
||
- changed db_dump.C to check error returns from enumerate(),
|
||
and exit() on DB failure
|
||
- changed xml_escape() to completely remove
|
||
control characters except for 9, 10, 13
|
||
|
||
db/
|
||
db_base.C
|
||
lib/
|
||
error_numbers.h
|
||
parse.C
|
||
sched/
|
||
db_dump.C
|
||
|
||
David 14 Jan 2005
|
||
- Fix problems with backslashes in forum titles;
|
||
also kludge display so old titles with extraneous backslashes
|
||
are shown without them
|
||
|
||
html/inc/
|
||
forum.inc
|
||
|
||
David 14 Jan 2005
|
||
- fix to fix in msg board code
|
||
|
||
html/inc/
|
||
forum_show.inc
|
||
|
||
Rom 14 Jan 2005
|
||
- Bug Fix: The screensaver was passing the raw blank time (number of
|
||
minutes) instead of when in unix time format the screen should go
|
||
blank (number of seconds).
|
||
|
||
client/win/
|
||
win_screensaver.cpp
|
||
|
||
Karl 2005-01-16
|
||
- Added support for specifying db_{user,passwd} when creating projects
|
||
|
||
tools/
|
||
make_project
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
Bruce 17 Jan 2005
|
||
- Additional work on locality scheduling.
|
||
(a) make DB queries more efficient using name>'FILE__' and
|
||
name<'FILE__~' rather than name like 'FILE__%'
|
||
(b) Set 'no remaining work for this file' flag correctly
|
||
by making a DB scan if needed.
|
||
One can show that this is the 'cheapest'
|
||
reliable place to put this scan.
|
||
(c) Modify deterministic algorithm for finding unsent results
|
||
so that instead of starting with FILE="" and scanning forward
|
||
over all files, it starts at a random place in file space,
|
||
scans cyclicly to the end, and then from "" to the start point.
|
||
(d) Satisfy work request if possible.
|
||
Don't terminate sending work until none left that is feasible,
|
||
or request satisfed.
|
||
(e) If a new file is needed, first pick file associated with unsent
|
||
results which are more than 2 hours old.
|
||
Note: need to make this a user-configurable option,
|
||
and add some random +- slack.
|
||
|
||
For the record, here is the current locality scheduler logic.
|
||
I will update the docs once this is a bit better tested and
|
||
stable.
|
||
|
||
(1) If there is an (one) unsent result which is older than
|
||
(1) config.locality_scheduling_send_timeout (7 days) and is
|
||
(1) feasible for the host, sent it.
|
||
|
||
(2) If we did send a result in the previous step, then send any
|
||
(2) additional results that are feasible for the same input file.
|
||
|
||
(3) If additional results are needed, step through input files on
|
||
(3) the host. For each, if there are results that are feasible for
|
||
(3) the host, send them. If there are no results that are feasible
|
||
(3) for the host, delete the input file from the host.
|
||
|
||
(4) If additional results are needed, and there is (one) unsent
|
||
(4) result which is older than 2 hours and is feasible for the
|
||
(4) host, send it.
|
||
|
||
(5) If we did send a result in the previous step, then send any
|
||
(5) additional results that are feasible for the same input file.
|
||
|
||
(6) If additional results are needed, select an input file name at
|
||
(6) random from the current input file working set advertised by
|
||
(6) the WU generator. If there are results for this input file
|
||
(6) that are feasible for this host, send them.
|
||
|
||
(7) If additional results are needed, carry out an expensive,
|
||
(7) deterministic search for ANY results that are feasible for the
|
||
(7) host. This search starts from a random filename advertised by
|
||
(7) the WU generator, but continues cyclicly to cover ALL results
|
||
(7) for ALL files. If a feasible result is found, send it. Then
|
||
(7) send any additional results that use the same input file. If
|
||
(7) there are no feasible results for the host, we are finished:
|
||
(7) exit.
|
||
|
||
(8) If addtional results are needed, return to step 4 above.
|
||
|
||
sched/
|
||
sched_locality.C
|
||
|
||
|
||
David 17 Jan 2005
|
||
- don't start apps until after benchmark
|
||
(may work around CPDN bug)
|
||
|
||
client/
|
||
client_state.C
|
||
|
||
Rom 17 Jan 2005
|
||
- Bug Fix: Remove the ability for the CC to exit when a project fails to
|
||
attach. This now keeps the CC from exiting for te Single and Shared
|
||
install types as well.
|
||
- Bug Fix: Remove the readme options from setup.
|
||
- Bug Fix: Enable the checkboxes in setup by default.
|
||
|
||
client/
|
||
main.C
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/0409
|
||
readme.txt
|
||
win_build/installerv2/redist/windows
|
||
BOINC.vbs
|
||
|
||
Janus 18 Jan 2005
|
||
- Initial test-version of the moderation system
|
||
Please test the current features (deleting posts, moving posts) and see
|
||
if this is how it should be done.
|
||
The rest is mostly copy-paste work as the same design can be used for
|
||
threads as well.
|
||
|
||
This update includes:
|
||
- Deleting posts
|
||
- Moving posts
|
||
- Sending email notice to post author
|
||
- Users cannot edit their posts more than 1 hour after creating them
|
||
- Deleted posts are only shown to moderators
|
||
- Inversion of $filter_on in getThreads and getPosts (!)
|
||
Now the bit means "show deleted posts/threads" and defaults to off
|
||
- New special user bitfield
|
||
|
||
Due to the new special user bitfield you must redefine who is who in your
|
||
project. Currently this is done manually (idea for the ops page, anyone?)
|
||
|
||
This is how the bitfield is used:
|
||
1st bit = Moderator
|
||
2nd bit = Project Admin
|
||
3rd bit = Project dev
|
||
4th bit = Project tester
|
||
5th bit = Volunteer dev
|
||
6th bit = Volunteer tester
|
||
7th bit = Project Scientist
|
||
|
||
So if I'm a project admin and want to be moderator as well, I would
|
||
do the following SQL query:
|
||
|
||
Update forum_preferences set special_user = '1100000' where userid=42
|
||
html/
|
||
user/
|
||
forum_edit.php
|
||
+forum_moderate_post.php (new)
|
||
+forum_moderate_post_action.php (new)
|
||
inc/
|
||
forum.inc
|
||
email.inc
|
||
+forum_moderators.inc (new)
|
||
ops/
|
||
update_db.php
|
||
|
||
David 18 Jan 2005
|
||
- user web: general code cleanup,
|
||
and increased use of stylesheets for formatting
|
||
rather than hard-wired HTML
|
||
- use tables for profiles
|
||
- change way profiles are rated
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
prefs.inc
|
||
profile.inc
|
||
util.inc
|
||
user/
|
||
forum_edit.php
|
||
forum_help_desk.php
|
||
forum_sample_index.php
|
||
forum_thread.php
|
||
profile_rate.php (new)
|
||
profile_search_action.php
|
||
view_profile.php
|
||
white.css
|
||
sched/
|
||
db_dump.C
|
||
|
||
David 18 Jan 2005
|
||
- fix "added clauses" feature of admin web DB interface
|
||
|
||
html/inc/
|
||
db_ops.inc
|
||
|
||
David 18 Jan 2005
|
||
- added --cron-tasks option to start
|
||
(does periodic tasks but doesn't start daemons)
|
||
From David Hammer.
|
||
This should arguably be used instead of --cron
|
||
because if daemons are crashing you'll find out about it sooner.
|
||
|
||
sched/
|
||
start
|
||
|
||
David 18 Jan 2005
|
||
- added <min_core_client_version> element to SCHED_CONFIG.
|
||
Lets the scheduler turn away clients below a certain version
|
||
without doing a lot of work
|
||
(especially important for locality scheduling)
|
||
|
||
doc/
|
||
configuration.php
|
||
sched/
|
||
sched_config.C,h
|
||
handle_request.C
|
||
|
||
David 18 Jan 2005
|
||
- initial checkin of RPCs for account management systems: see
|
||
http://boinc.berkeley.edu/acct_mgt.php
|
||
|
||
NOTE: to use this feature, you'll need to update your DB
|
||
using update_1_19_2005()
|
||
|
||
html/
|
||
ops/
|
||
db_update.php
|
||
user/
|
||
am_confirm.php
|
||
am_create.php
|
||
am_query.php
|
||
|
||
Bruce 19 Jan 2005
|
||
- Patches from Reinhard Prix to fix several problems.
|
||
(1) apps being suspended would call boinc_finish(nonzero) and
|
||
core client would treat this as app failure. Introduce
|
||
a new function boinc_exit() and call that instead.
|
||
(2) improvements to GUI build with wxWidgets
|
||
(3) improved X event handling loop now ensures that X window
|
||
is taken away when window killed.
|
||
configure.ac
|
||
clientgui/
|
||
Makefile.am
|
||
api/
|
||
boinc_api.h
|
||
boinc_api.C
|
||
x_opengl.C
|
||
lib/
|
||
filesys.C
|
||
|
||
David 19 Jan 2005
|
||
- don't show rating buttons when user looks at their own profile
|
||
|
||
html/inc/
|
||
profile.inc
|
||
uotd.inc
|
||
|
||
David 19 Jan 2005
|
||
- Change the logic in CLIENT_STATE::do_something to
|
||
avoid unsuspending activities before starting them
|
||
- change CLIENT_STATE::check_suspend_activities() from int to void
|
||
|
||
Checked these changes into boinc_public also
|
||
|
||
client/
|
||
client_state.C,h
|
||
cs_prefs.C
|
||
|
||
David 19 Jan 2005
|
||
- db_dump: deleting the old stats dir with /bin/rm -rf
|
||
fails sometimes ("dir is not empty").
|
||
If this happens, try renaming it.
|
||
|
||
sched/
|
||
db_dump.C
|
||
|
||
Bruce 20 Jan 2005
|
||
- From Reinhard Prix. At Rom's request, this builds the
|
||
Linux client and clientgui using static rather than
|
||
dynamic linking to the gcc C++ lib. Note that modifying
|
||
this to do the same whenever gcc is used (not just under
|
||
Linux) might be desirable.
|
||
|
||
configure.ac
|
||
client/
|
||
Makefile.am
|
||
clientgui/
|
||
Makefile.am
|
||
|
||
David 20 Jan 2005
|
||
- Added cross-project IDs for hosts.
|
||
This lets statistics sites show work per host, summed over projects.
|
||
|
||
Implementation:
|
||
Hosts generate their own "internal" CPIDs,
|
||
using an MD5 of time/domain/IP/disk_free.
|
||
This should be unique across that user's hosts.
|
||
It's stored in the HOST_INFO structure and sent to server.
|
||
The server hashes the internal CPID with the user's email address
|
||
and stores the resulting "external" CPID in the host table.
|
||
It is included by db_dump in <host> elements.
|
||
|
||
PROJECT NOTE: if you use this server code you will need
|
||
to apply update_1_20_2005() from html/ops/db_update.php to existing DBs
|
||
|
||
client/
|
||
client_stats.h
|
||
hostinfo_unix.C
|
||
win/
|
||
hostinfo_win.cpp
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
html/ops/
|
||
db_update.php
|
||
lib/
|
||
hostinfo.C,h
|
||
sched/
|
||
db_dump.C
|
||
handle_request.C
|
||
server_types.C
|
||
start
|
||
|
||
David 20 Jan 2005
|
||
- scheduler compile fix for Solaris
|
||
|
||
sched/
|
||
sched_locality.C
|
||
|
||
David 20 Jan 2005
|
||
- client: strip whitespace from command lines
|
||
(prevents buildup of CRLFs in state file)
|
||
- in filesys.C, replaced #ifndef NDEBUG with #if 0
|
||
to fix Windows compile
|
||
|
||
client/
|
||
client_types.C
|
||
lib/
|
||
filesys.C
|
||
|
||
David 20 Jan 2005
|
||
- converted code to LGPL license
|
||
|
||
(essentially all files)
|
||
|
||
Rom 20 Jan 2005
|
||
- Bug Fix: Remove some code that was keeping half of the
|
||
check_suspend_activities conditions to be skipped.
|
||
|
||
NOTE: basically this was causing BOINC to alternate
|
||
between suspended mode and non-suspended mode twice
|
||
a second because the check for user idle activity
|
||
happened after we returned from the function which
|
||
means that reason was returning 0, meaning we shouldn't
|
||
be suspended.
|
||
|
||
- Bug Fix: Setting activities_suspended should happen outside
|
||
the check for tasks_restarted, since it is used later in
|
||
the function, and activities_suspended may not be what
|
||
we expect it to be.
|
||
- Cleanup: In the idle detection routine save the needed values
|
||
to a variable so we can see them as we are steping though
|
||
the code, let the optimizer deal with it on release builds.
|
||
- Bug Fix: Remove the Modify option in setup, our setup is an
|
||
all or nothing deal.
|
||
- Bug Fix: Configure setup for automatic upgrades, this requires
|
||
the previous MSI databases from the builds we release to
|
||
public.
|
||
|
||
NOTE: I need to talk to David about this a little bit, but
|
||
I think it is doable.
|
||
- Bug Fix: Fix the screensaver load up problem where it was
|
||
taking 60 seconds before the first text was displayed.
|
||
|
||
NOTE: This reintroduces a bug where the screensaver slows to
|
||
a crawl when boinc isn't running in the background. I
|
||
think I've figured out a solution to it, but I didn't get
|
||
the code written for this release.
|
||
|
||
client/
|
||
client_state.C
|
||
cs_prefs.C
|
||
client/win
|
||
hostinfo_win.cpp
|
||
win_screensaver.cpp, .h
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Rom 20 Jan 2005 (boinc)
|
||
- Tag for 4.60 release, all platforms
|
||
boinc_core_release_4_60
|
||
|
||
David 20 Jan 2005
|
||
- Add external_ip_addr field to host table.
|
||
This is the REMOTE_ADDR reported by Apache
|
||
when the host contacts the scheduler.
|
||
May be different from the IP address reported by the host
|
||
(e.g. if the host is behind a NAT)
|
||
|
||
NOTE: project must update their databases
|
||
(html/ops/db_update.php, update_1_20a_2005())
|
||
to use this code.
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
html/ops/
|
||
db_update.php
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 21 Jan 2005
|
||
- Make it possible to abort/suspend/resume
|
||
results even when they're not active (i.e. not ACTIVE_TASK exists)
|
||
- move suspended_via_gui flag from ACTIVE_TASK to RESULT
|
||
- add aborted_via_gui flag to RESULT
|
||
- if start a task whose result is aborted_via_gui, abort immediately
|
||
- suspended results aren't eligible to start
|
||
- GUI RPCs that modify state set dirty flag
|
||
|
||
client/
|
||
app.C,h
|
||
client_state.C
|
||
client_types.C,h
|
||
cs_account.C
|
||
cs_apps.C
|
||
gui_rpc_server.C
|
||
|
||
David 21 Jan 2005
|
||
- rename ACTIVE_TASK::state to task_state
|
||
(to avoid confusion with RESULT::state)
|
||
- remove ACTIVE_TASK::exit_status
|
||
(just use RESULT::exit_status)
|
||
- when start result aborted via GUI, set its exit status accordingly
|
||
- CLIENT_STATE::app_finished():
|
||
don't deal with output files if task was aborted via GUI
|
||
|
||
client/
|
||
app.C,h
|
||
app_control.C
|
||
app_start.C
|
||
cs_apps.C
|
||
|
||
David 21 Jan 2005
|
||
- finalize result correctly when aborted via GUI
|
||
- add aborted_via_gui flag to GUI RPC's version of RESULT
|
||
(the BOINC manager needs to look at this flag)
|
||
|
||
client/
|
||
app_control.C
|
||
app_start.C
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
Rom 22 Jan 2005
|
||
- Bug Fix: Upgrades of BOINC should now work correctly, any new
|
||
version of BOINC should automatically uninstall the previous
|
||
version before installing the new version.
|
||
|
||
NOTE: The ProductCode has to be changed between each version or
|
||
the installer will believe it is a minor version change and
|
||
not prompt the UI, it'll just overwrite the files.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Janus 23 Jan 2005
|
||
- When listing a user's posts, only display deleted posts to the
|
||
author or moderators. When displaying them, display additional
|
||
info as to why the post was deleted.
|
||
(by Jens Seidler)
|
||
|
||
html/user
|
||
forum_user_posts.php
|
||
html/inc
|
||
forum.inc
|
||
|
||
Bruce 24 Jan 2005
|
||
- Fixes from Christian Beer for ops pages to approve profiles and
|
||
to errors in the previous 20/next 20 links when 'additional
|
||
clauses' is non-empty. Restore missing project_footer() function.
|
||
- From Bernd Machenschalk, build self-extracting installer under
|
||
Solaris, now works with normal Sun/Solaris make (don't need gnu make).
|
||
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
profile.inc
|
||
project.sample/
|
||
project.inc
|
||
|
||
David 24 Jan 2005
|
||
- Save proxy user names and passwords to disk in XML-escaped form
|
||
(so passwords of the form X<Y will get parsed correctly)
|
||
|
||
lib/
|
||
proxy_info.C
|
||
|
||
Rom 24 Jan 2005
|
||
- When the server requests a delay, make sure we do not overwrite
|
||
the min_rpc_time, which has already been set to the proper
|
||
delay time.
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
scheduler_op.C
|
||
lib/
|
||
error_numbers.h
|
||
|
||
David 24 Jan 2005
|
||
- Amend the above checkin so that a scheduler reply
|
||
is handled completely even if there's a delay request
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
scheduler_op.C
|
||
lib/
|
||
error_numbers.h
|
||
|
||
Rom 24 Jan 2005 (boinc)
|
||
- Tag for 4.62 release, all platforms
|
||
boinc_core_release_4_62
|
||
|
||
NOTE: 4.61 was eaten up in setup testing.
|
||
|
||
Rom 24 Jan 2005
|
||
- Modify configure.ac so that I can try and build the client and
|
||
clientgui with the static stdc++ library.
|
||
|
||
/
|
||
configure.ac
|
||
|
||
David 25 Jan 2005
|
||
Policy change: apps of non-CPU-intensive projects are never suspended
|
||
- Change ACTIVE_TASK_SET::suspend_all() and unsuspend_all()
|
||
to skip non-CPU-intensive projects.
|
||
- Ignore GUI RPC requests to suspend non-CPU-intensive projects or results
|
||
- Add the non_cpu_intensive flag to GUI RPC's PROJECT structure.
|
||
GUIs should not show suspend/resume buttons
|
||
for non-CPU-intensive projects or results
|
||
|
||
client/
|
||
app_control.C
|
||
gui_rpc_server.C
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
html/project.sample/
|
||
project.inc
|
||
|
||
Rom 25 Jan 2005
|
||
- Allow BOINC Manager to search for it's localization catalog files in
|
||
a sub directory called 'locale' like it does in Windows.
|
||
- The options dialog should grow in size with the different languages,
|
||
add a notebook sizer to the mix.
|
||
|
||
clientgui/
|
||
BOINCGUI.pjd
|
||
BOINCGUIApp.cpp
|
||
DlgOptions.cpp
|
||
|
||
David 26 Jan 2005
|
||
- commented out code in scheduler that notifies user
|
||
if a newer core client exists in this project's DB.
|
||
Projects don't generally keep track of CC versions any more
|
||
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 26 Jan 2005
|
||
- Reinhard's patch to configure.ac
|
||
|
||
configure.ac
|
||
|
||
Rom 26 Jan 2005
|
||
- The worker thread priority for a science application should be lowered
|
||
for both the graphics capable application and non-graphics capable.
|
||
- The graphics thread priority should now be set to a normal thread
|
||
priority level instead of high.
|
||
|
||
NOTE: The above changes were only implemented for Windows right now,
|
||
the pthread version of this stuff needs to be done.
|
||
|
||
api/
|
||
boinc_api.C, .h
|
||
graphics_impl.C
|
||
|
||
David 27 Jan 2005
|
||
- feeder: improved error message when table overflows shared-mem structure
|
||
Also, exit(1) in this case
|
||
|
||
sched/
|
||
sched_shmem.C
|
||
|
||
David 27 Jan 2005
|
||
- build fixes from Reinhard
|
||
|
||
configure.ac
|
||
|
||
Rom 27 Jan 2005
|
||
- Include some of the battery status flags in the decision when trying to
|
||
determine if a notebook is on battery power.
|
||
|
||
client/win
|
||
hostinfo_win.cpp
|
||
|
||
David 27 Jan 2005
|
||
- Enhancements to update_versions
|
||
- allow a multi-file app version to include multiple executable files
|
||
All files with the u+x bit set are treated as executable
|
||
- set min_core_version and max_core_version to zero.
|
||
Shouldn't be setting these to anything nonzero here.
|
||
Projects are no longer expected to maintain core versions.
|
||
|
||
py/Boinc/
|
||
tools.py
|
||
tools/
|
||
update_versions
|
||
|
||
David 27 Jan 2005
|
||
- scheduler reply includes scheduler's version info
|
||
|
||
sched/
|
||
server_types.C
|
||
|
||
David 27 Jan 2005
|
||
- db_dump: instead of deleting old stats, move them to a directory
|
||
whose name includes the current date
|
||
|
||
sched/
|
||
db_dump.C
|
||
|
||
David 27 Jan 2005
|
||
- added utility programs to tools/ (from Christian S<>ttrup)
|
||
|
||
tools/
|
||
kill_wu.C
|
||
poll_wu.C
|
||
|
||
David 27 Jan 2005
|
||
- API: move code to get worker thread handle,
|
||
and set its priority, to set_worker_timer().
|
||
This function is guaranteed to be always called
|
||
by the worker thread, and only by the worker thread.
|
||
Got rid of boinc_adjust_worker_thread_priority().
|
||
- removed LHC@home-specific function from boinc_api_fortran.C
|
||
|
||
api/
|
||
boinc_api.C
|
||
boinc_api_fortran.C
|
||
graphics_impl.C
|
||
|
||
David 27 Jan 2005
|
||
- core client: initialize PROJECT structure more thoroughly
|
||
|
||
client/
|
||
client_types.C
|
||
|
||
David 28 Jan 2005
|
||
- typo in server_types.C
|
||
|
||
sched/
|
||
server_types.C
|
||
|
||
David 28 Jan 2005
|
||
- core client: in MESSAGE_DESC
|
||
(used to save messages, so they can be sent to core client)
|
||
store project name, instead of pointer to project.
|
||
By the time we send msg to GUI, the project object might be deleted!
|
||
- improve time_stats
|
||
|
||
client/
|
||
client_msgs.C,h
|
||
client_state.C
|
||
gui_rpc_server.C
|
||
time_stats.C,h
|
||
|
||
David 28 Jan 2005
|
||
- when including FILE_INFOs for sticky files in scheduler request,
|
||
include the file size and status
|
||
(0=not present, 1=present, else error code)
|
||
- change TIME_STATS::last_update from int to double
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
time_stats.C,h
|
||
|
||
David 28 Jan 2005
|
||
- core client: add notion of CONNECTED_STATE;
|
||
can be CONNECTED, NOT_CONNECTED, or UNKNOWN.
|
||
Implemented get_connected_state() on Windows
|
||
- if connected state is UNKNOWN,
|
||
TIME_STATS::connected_frac is set to -1
|
||
- rewrote TIME_STATS::update().
|
||
Seems to work in testing.
|
||
|
||
client/
|
||
client_state.C
|
||
hostinfo_network.h
|
||
hostinfo_unix.C
|
||
time_stats.C,h
|
||
win
|
||
win_net.cpp,h
|
||
|
||
Rom 28 Jan 2005
|
||
- Check to see if we are already connected to the core client before
|
||
attempting to get the activity state and network state.
|
||
- Change the dynamic object array for the view caches to a vector for
|
||
a perf increase, and to cleanup a possible crashing error.
|
||
- Add aditional asserts in the base view to check for a possible cache
|
||
inconsistency.
|
||
- Remove an out of date file from the build list.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
MainDocument.cpp
|
||
ViewMessages.cpp, .h
|
||
ViewProjects.cpp, .h
|
||
ViewResources.cpp, .h
|
||
ViewTransfers.cpp, .h
|
||
ViewWork.cpp, .h
|
||
win_build/
|
||
BOINCGUI.vcproj
|
||
winbuild/installerv2/
|
||
BOINC.ism
|
||
|
||
Rom 29 Jan 2005
|
||
- Cleanup memory leaks due to the conversion to vectors.
|
||
|
||
clientgui/
|
||
ViewMessages.cpp
|
||
ViewResources.cpp
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
|
||
Rom 29 Jan 2005
|
||
- We had an interesting crash condition where the GUI would crash while
|
||
requesting for a run mode update, aparently the core client has some
|
||
junk appended to the end of the RPC, so this allows the cliet-side
|
||
code to deal with this condition.
|
||
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
David 29 Jan 2005
|
||
- make_work: fixed a basic design problem.
|
||
Its main loop creates workunits until the number of
|
||
sendable results reaches the "cushion" level.
|
||
This worked OK in the old days when creating a workunit
|
||
created its results; but these days the transitioner does that.
|
||
So make_work would end up creating way more workunits
|
||
than it's supposed to.
|
||
|
||
The fix: estimate how many WUs to create
|
||
(based on wu.target_nresults).
|
||
Make that many, then sleep for 10 seconds
|
||
(give the transitioner a chance to create the results).
|
||
|
||
- Another problem: the "master WU" used by make_work could
|
||
get deleted by file_deleter and db_purge.
|
||
Kludgy but effective solution:
|
||
change file_deleter and db_purge to ignore WUs whose
|
||
name includes "nodelete".
|
||
Call your master WU "wu_nodelete".
|
||
|
||
- change dir_hier_path so that it just prints the pathname of the file,
|
||
so you can use it in scripts
|
||
|
||
sched/
|
||
db_purge.C
|
||
file_deleter.C
|
||
make_work.C
|
||
tools/
|
||
dir_hier_path.C
|
||
|
||
David 30 Jan 2005
|
||
- fixed bug in xml_unescape(). Didn't parse special chars correctly
|
||
|
||
lib/
|
||
parse.C
|
||
|
||
David 30 Jan 2005
|
||
- user web: slight cleanup
|
||
- reduced verbosity in profile page
|
||
- moved "you may use HTML tags" to function
|
||
|
||
html/
|
||
inc/
|
||
profile.inc
|
||
util.inc
|
||
user/
|
||
edit_forum_preferences_form.php
|
||
edit_user_info_form.php
|
||
forum_post.php
|
||
|
||
Bruce 31 Jan 2005
|
||
- scheduler changes: if host is not getting any work because available
|
||
disk space is < 0, delete files which have <sticky> and <report_on_rpc>
|
||
set. Note that (1) this deletion simply removes the <sticky> tag, so
|
||
file won't be deleted until after all WU that depend upon it are
|
||
completed and (2) the mechanism to determine which file to delete
|
||
could be improved. TODO: improve messages to hosts which have no file
|
||
space and ALSO have no files to delete.
|
||
- scheduler changes: locality scheduling. Clean up code which makes a
|
||
deterministic search of results to delete. Data files names can not
|
||
contain the "~" character!
|
||
- modified the send_new_file_work() function to look for unsent work
|
||
starting with a random time 6 to 12 hours ago.
|
||
- scheduler changes: added a simple debugging mechanism for scheduler
|
||
requests/replies. If you touch a file named 'debug_sched' in the project
|
||
root, then files called sched_reply_HOSTID_RPCNO and
|
||
sched_request_HOSTID_RPCNO will be created
|
||
under cgi-bin/ which contain the scheduler replies. You can turn on
|
||
this mechanism for some time to study the scheduler replies.
|
||
- David, the write() function that I added to SCHEDULER_REQUEST can
|
||
probably be done better. It would be nice if all the classes that
|
||
this includes an instance of had their own write() functions: it
|
||
would make debugging very easy.
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_locality.C
|
||
server_types.h
|
||
server_types.C
|
||
|
||
Eric K. 31 Jan 05
|
||
Fixed typo in lib/parse.C
|
||
|
||
lib/parse.C
|
||
|
||
Janus 31 Jan 05
|
||
- Added functions to read and parse .po translations for the webinterface.
|
||
- Changed apps.php to use these new functions as an example.
|
||
- Added a tiny example language interface file
|
||
- Added language files (that are valid with regards to the interface) for
|
||
English and Danish as an example
|
||
|
||
The script (Apache or whatever webserver is used) must have write-
|
||
access to the /languages/compiled directory as well as /languages/. It
|
||
will create compiled versions of the interface file and language files the
|
||
first time a page is accessed after a new language file or interface file
|
||
has been installed.
|
||
|
||
To output something that can be translated, a page can use:
|
||
echo tr(MY_TOKEN);
|
||
where MY_TOKEN is the token-name used to identify the text that will be
|
||
output. To actually be allowed to write and use MY_TOKEN, the token must
|
||
be added to the language interface. The language interface file is simply
|
||
a file containing all the valid tokens listed one per line. Adding
|
||
MY_TOKEN
|
||
to the bottom of the file will make "MY_TOKEN" a valid token.
|
||
|
||
Whenever you add a new token to the interface you _should_ at least add
|
||
the text to the english language file located in
|
||
/languages/translations/en.po
|
||
This file is used as default language and will be used as fallback in case
|
||
a translator for another language does not provide a translation for your
|
||
particular token (which especially will be the case when you add a new
|
||
token).
|
||
|
||
You should be able to add comments using a # as the first char in a line -
|
||
at least in the .po-files.
|
||
|
||
Future plans: 1) An expansion for project specific translations which can
|
||
be independently maintained by the project.
|
||
2) Language selection in user prefs (to override browser defaults)
|
||
3) Even better automatic language detection
|
||
|
||
html/
|
||
inc/
|
||
translation.inc (new)
|
||
languages/ (new)
|
||
language_interface (new)
|
||
translations/ (new)
|
||
da.po (new)
|
||
en.po (new)
|
||
user/
|
||
apps.php
|
||
|
||
David 31 Jan 2005
|
||
- Make it possible for a scheduler RPC reply to include several "messages",
|
||
each with its own message body and priority.
|
||
This involved changes to both scheduler and core client.
|
||
If the current core client gets several messages,
|
||
it will display only the last one.
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
scheduler_op.C,h
|
||
sched/
|
||
handle_request.C
|
||
sched_send.C
|
||
server_types.C,h
|
||
|
||
David 31 Jan 2005
|
||
- Made WORK_REQ into a member of SCHEDULER_REPLY.
|
||
This makes it available in handle_request()
|
||
in case you want to send user messages based on it.
|
||
Also reduces the number of structs that have to be
|
||
passed around everywhere.
|
||
- Fixed formatting in sched_locality.C.
|
||
Bruce: please use 4-space indentation, no tab chars
|
||
|
||
sched/
|
||
sched_locality.C,h
|
||
sched_send.C,h
|
||
server_types.C,y
|
||
|
||
David 31 Jan 2005
|
||
- Changed the way the core client handles <delete_file_info> elements
|
||
in scheduler RPC replies.
|
||
Old: clear the FILE_INFO's sticky bit
|
||
New: set a FILE_INFO::marked_for_delete flag.
|
||
An unreferenced file will be deleted if this flag is set,
|
||
regardless of whether the sticky flag is set.
|
||
If the marked_for_delete flag is set,
|
||
it won't be reported in scheduler RPCs,
|
||
even if the report_on_rpc flag is set.
|
||
This avoids situations where a server asks the client to delete a file,
|
||
but later sends work to that file
|
||
because it's reported in an RPC file list
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C,h
|
||
cs_scheduler.C
|
||
|
||
David 31 Jan 2005
|
||
- Core client: moved initialization stuff to new boinc_init();
|
||
change main() so that it calls boinc_init(),
|
||
then does platform-specific stuff,
|
||
then calls boinc_main_loop()
|
||
This ensures, e.g. that check_unique_instance() is called
|
||
before most other stuff
|
||
|
||
client/
|
||
main.C,h
|
||
win/
|
||
win_service.cpp
|
||
|
||
Rom 31 Jan 2005
|
||
- Implement log files for the BOINC Manager
|
||
- Implement call stacks, and memory leak detection for the BOINC Manager
|
||
on Windows
|
||
- Implement log rotation for both the core client and manager
|
||
- Implement stderr and stdout redirects with the core client
|
||
- Make the manager start the core client with IO redirection enabled
|
||
- Cleanup some more memory leaks in the BOINC Manager
|
||
- Enabled the STL use of the debug heap on Windows
|
||
|
||
client/
|
||
client_state.C, .h
|
||
cs_cmdline.C
|
||
cs_files.C
|
||
file_names.h
|
||
main.C
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
clientgui/
|
||
BOINCGUI.cpp, .h
|
||
LogBOINC.cpp, .h (Added)
|
||
Makefile.am
|
||
ViewProjects.cpp
|
||
ViewMessages.cpp
|
||
ViewResources.cpp
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
stdwx.h
|
||
lib/
|
||
diagnostics.C, .h
|
||
win_build/
|
||
BOINCGUI.vcproj
|
||
|
||
Rom 31 Jan 2005
|
||
- Move the SetCurrentDirectory call to boinc_init() from service_main()
|
||
which was causing the log files to be put into the system32 directory.
|
||
Fixes start as service setup case.
|
||
- Flush stderr as well as stdout in boinc_init()
|
||
- Remove needless calls to PostMessage from check_unique_instance()
|
||
- Adjust BOINC Manager so that it can properly detect if it can open
|
||
a connection to the core client so that it can determine
|
||
if it needs to start it. Fixes single user setup case.
|
||
Should I make a complete API call in case another application
|
||
has port 1043 open?
|
||
- Cleanup exception.C out of the core client project.
|
||
|
||
client/
|
||
file_names.C
|
||
main.C
|
||
clientgui/win/
|
||
win_service.cpp
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
MainDocument.cpp, .h
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
|
||
David 1 Feb 2005
|
||
- scheduling server: if host is 4.62 or earlier, concatenate messages
|
||
|
||
sched/
|
||
server_types.C
|
||
|
||
David 1 Feb 2005
|
||
- MFILE's buffer was not being maintained as NULL-terminated.
|
||
This caused problems with GUI RPC, where the buffer was
|
||
transferred to code that expected it to be NULL-terminated
|
||
|
||
lib/
|
||
mfile.C,h
|
||
|
||
Rom 1 Feb 2005
|
||
- Implement the UI for aborted results that have not been executed before.
|
||
- Initialize aborted_via_gui since wxWidgets initializes bools to true.
|
||
|
||
clientgui/
|
||
MainDocument.cpp, .h
|
||
ViewWork.cpp
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
Rom 1 Feb 2005 (boinc)
|
||
- Tag for 4.63 release, all platforms
|
||
boinc_core_release_4_63
|
||
|
||
Bruce 2 Feb 2005
|
||
- Fixed trivial bug in scheduler which caused messages sent to clients
|
||
< 4.62 to be interchanged with their priority. So if the message was
|
||
supposed to be 'No work available' with priority 'low', the actual
|
||
message sent was 'low'.
|
||
|
||
sched/
|
||
server_types.C
|
||
|
||
Bruce 2 Feb 2005
|
||
- Improvements to the file deletion mechanism. Now try removing files if
|
||
no work was sent to hosts, and available space<0 OR if available space>0
|
||
but work was unfeasible because the disk bound requirements of the work
|
||
exceeded the available space.
|
||
- Added a new config.xml boolean element called 'choose_download_url_by_timezone'
|
||
This requires that projects provide a 2-column file in the project root named
|
||
'download_servers'. An example is:
|
||
3600 http://einstein.aei.mpg.de
|
||
-21600 http://einstein.phys.uwm.edu
|
||
The first column is offset from UTC in seconds, and the second column is the URL
|
||
of the download server. When enabled, the scheduler will replace the download
|
||
path for data and executables by a list of download URLs, ordered by proximity
|
||
to the host's timezone. The download path must start with the
|
||
BOINC default download/ and the different download servers must have identical
|
||
file paths under download/, in other words they must be mirrored.
|
||
- Really exciting news, David: I have finally gotten emacs to obey your
|
||
indentations and formatting conventions, apart from doing this:
|
||
some_function(foo, bar
|
||
);
|
||
instead of this:
|
||
some_function(foo, bar
|
||
);
|
||
Emacs experts, advice appreciated!
|
||
|
||
doc/
|
||
configuration.php
|
||
server_debug.php
|
||
|
||
sched/
|
||
sched_config.h
|
||
sched_config.C
|
||
sched_send.C
|
||
handle_request.C
|
||
|
||
Rom 2 Feb 2005
|
||
- Moved localization resources to the root of the project per a discussion with
|
||
Janus, basically we are going to try to have all the localization material
|
||
for the web/Forum and clients all in one place.
|
||
|
||
clientgui/locale/
|
||
<all directories and files deleted>
|
||
locale/
|
||
<all localization files for the client are now here>
|
||
|
||
Bruce 2 Feb 2005
|
||
|
||
- Made the caching of md5 info for source files a configuration option in
|
||
config.xml. Use the boolean tag <cache_md5_info> to enable it.
|
||
This prevents the work generation library from having to go back and
|
||
continuously regenerate the md5 sums of your input data files. Note
|
||
that reading these from disk can be expensive if you have many such files
|
||
that are large and that you re-use. See check-in notes from 30/31 Dec 2004
|
||
for some details.
|
||
|
||
doc/
|
||
configuration.php
|
||
sched/
|
||
sched_config.C
|
||
sched_config.h
|
||
tools/
|
||
backend_lib.C
|
||
|
||
Rom 2 Feb 2005
|
||
- Bug Fix: Adjust the manager so that it'll set it's current directory
|
||
to that of its installed location.
|
||
This will fix the bug of the log files ending
|
||
up where the installer is executed from.
|
||
- Bug Fix: Remove the message cache from the message view in the manager.
|
||
This should clear up a crashing problem that seems to
|
||
strike the Win9x platform.
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
ViewMessages.cpp, .h
|
||
|
||
David 2 Feb 2005
|
||
- Scheduler: make things more uniform between locality
|
||
and non-locality (work array) scheduling.
|
||
Both cases use the following functions:
|
||
1) call wu_is_feasible() to see if the host has enough
|
||
disk, memory, and CPU speed to handle a result.
|
||
(added this to locality scheduling)
|
||
2) call add_result_to_reply() when you decide to send a result.
|
||
This updates database and SCHED_REPLY.
|
||
- If using locality scheduling, add_result_to_reply() doesn't
|
||
decrement wreq.disk_available,
|
||
since several results may involve the same file.
|
||
BRUCE: we need to decrement disk_available in
|
||
the locality scheduling code.
|
||
- add disk space check to wu_is_feasible()
|
||
(and removed it from scan_work_array())
|
||
- simplified the args of wu_is_feasible()
|
||
- work_needed(): if wreq.disk_available is <= zero,
|
||
set the wreq.insufficient_disk flag and return false.
|
||
NOTE: this and wu_is_feasible() are now the only places
|
||
where we disk space is checked
|
||
|
||
lib/
|
||
error_numbers.h
|
||
sched/
|
||
sched_locality.C
|
||
sched_send.C,h
|
||
|
||
David 2 Feb 2005
|
||
- core client: add platform name and client version to HTTP request headers
|
||
|
||
client/
|
||
http.C
|
||
|
||
Rom 2 Feb 2005
|
||
- Bug Fix: The screensaver really should call UpdateErrorBox frequently,
|
||
otherwise the error box ends up being drawn outside the visible region
|
||
of the window, which gives the impression that the screen has gone blank.
|
||
- Bug Fix: Give the core client enough time to actually cycle through all
|
||
the capable graphics applications before acting on the error codes.
|
||
|
||
client/win/
|
||
win_screensaver.cpp, .h
|
||
|
||
Rom 2 Feb 2005
|
||
- Bug Fix: Ops, when deleting a bunch of code, make sure all of it really
|
||
isn't needed. When the manager looses the core client reset the message
|
||
sequence back to zero so when we detect the core client again we can
|
||
get all the messages.
|
||
|
||
clientgui/
|
||
MainDocument.cpp
|
||
|
||
Rom 2 Feb 2005
|
||
- Tag for 4.64 release, all platforms
|
||
boinc_core_release_4_64
|
||
|
||
Rom 2 Feb 2005
|
||
- Use the same technique to statically link nsl and socket for the client
|
||
as the clientgui.
|
||
- move the apps directory from the API_SUBDIRS variable to the
|
||
SERVER_SUBDIRS variable since we really don't need to build the
|
||
sample applications when all we really want is just the boinc client
|
||
tools.
|
||
|
||
/
|
||
configure.ac
|
||
Makefile.am
|
||
|
||
Rom 3 Feb 2005
|
||
- Bug Fix: On machines older than Windows 2000 don't attempt to use memory
|
||
mapped files as an IPC mechinism for trapping when the last keyboard
|
||
or mouse input has happened. It's just easier to use the DLL shared
|
||
memory segment, and keeps us from crashing due to the fact that the
|
||
init function isn't called before the hook functions in external
|
||
processes.
|
||
|
||
client/win/
|
||
win_idle_tracker.cpp
|
||
|
||
Bruce 3 Feb 2005
|
||
- core client: add platform name and client version to HTTP request headers
|
||
when going via a proxy server. See David's change just above from 2 Feb.
|
||
|
||
client/
|
||
http.C
|
||
|
||
David 3 Feb 2005
|
||
- when get a FILE_INFO in a scheduler RPC reply,
|
||
replace the current list of URLs
|
||
with the list in the scheduler reply
|
||
|
||
client/
|
||
client_types.C
|
||
|
||
David 3 Feb 2005
|
||
- include platform name and client version in all GET and HEAD
|
||
HTTP request headers.
|
||
(but not POST - not needed since included in request body)
|
||
Note: would be nice to include host ID, but that info
|
||
isn't available at the HTTP level
|
||
|
||
client/
|
||
http.C
|
||
|
||
Rom 3 Feb 2005
|
||
- Bug Fix: Fix a localization problem where the application version
|
||
number was being localized when it shouldn't be.
|
||
- Bug Fix: The dwBlankTime variable is initialized at screensaver
|
||
startup instead of when BOINC is notified to start the screensaver.
|
||
This should fix the case where the blank time is longer than
|
||
the project cycle time.
|
||
- Bug Fix: Fix the version number display for a science application
|
||
in the work tab. It shouldn't use the localization rules.
|
||
- Bug Fix: In the transfers tab, replace upload with transfer.
|
||
- Bug Fix: In the work tab, replace "Quick Tips" with just "Tips"
|
||
to be consistent with the rest of the tabs.
|
||
- Bug Fix: Additional check to see if any new messages have been added
|
||
before changing the visible messages in the message tab.
|
||
- Bug Fix: Change the default blank time to 5 minutes.
|
||
- Bug Fix: Remove the ability for us to affect the secure password
|
||
option on NT based machines.
|
||
- Bug Fix: Check to see if we are running setup on an NT 4.0 box
|
||
acting as a Domain Controller, if we are warn the admin that
|
||
they'll have to manually set the 'LogonAsService' right themselves
|
||
with the User Manager for Domains, and then set the setup flag to
|
||
false.
|
||
- Bug Fix: Reorder the Service setup dialog so that there are entries
|
||
after the password confirmation edit box which gives us the extra
|
||
step needed to enable the next button.
|
||
- Bug Fix: Enable the 'Property as Integer' bit of the various checkboxes
|
||
we use in setup so that when somebody unchecks the damn checkbox it
|
||
finally does what I expected it to do in the first place.
|
||
|
||
client/win/
|
||
win_screensaver.cpp, .h
|
||
clientgui/
|
||
ViewWork.cpp
|
||
ViewTransfers.cpp
|
||
ViewMessages.cpp
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Rom 3 Feb 2005
|
||
- Tag for 4.65 release, all platforms
|
||
boinc_core_release_4_65
|
||
|
||
Rom 3 Feb 2005
|
||
- Bug Fix: Add a comment to the service install option that states that
|
||
show graphics does not work in the service install scenario.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Rom 3 Feb 2005
|
||
- Bug Fix: Add the 'Users' group to the list of users permissioned to read
|
||
and execute from within the BOINC folder after a service install.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Janus 4 Feb 2005
|
||
- Added strong to the list of allowed html tags in the forum.
|
||
|
||
html/inc/
|
||
sanitize_html.php
|
||
|
||
Rom 4 Feb 2005
|
||
- Bug Fix: Surround the calls to atol and atof in parse_int and parse_double
|
||
with setlocale calls so that we can parse numerical types from the core
|
||
client even while the manager is configured for a different locale.
|
||
|
||
lib/
|
||
boinc_win.h
|
||
parse.C
|
||
|
||
Rom 4 Feb 2005
|
||
- Bug Fix: Don't record the blank time as Epoch time in the registry.
|
||
|
||
client/win/
|
||
win_screensaver.cpp
|
||
|
||
Eric K 4 Feb 2005
|
||
- Added diagnostics.[Ch] to the gui build. (Builds were failing because it
|
||
was missing)
|
||
- Added function xwin_glut_is_initialized() so applications can tell if glut
|
||
is initialized.
|
||
|
||
clientgui/Makefile.am
|
||
api/
|
||
x_opengl.[Ch]
|
||
|
||
Rom 4 Feb 2005
|
||
- Bug Fix: Adjust the display of the app version in the work tab with a call
|
||
to setlocale instead if parsing a string. It looks better, and works
|
||
under a larger set of conditions.
|
||
- Bug Fix: Change the display of the progress indictator in the work tab to
|
||
use printf instead of just setting the string. This allows the progress
|
||
to be displayed in a localized fashion.
|
||
- Bug Fix: Change the transfer rate in the transfer tab to use printf instead
|
||
instead of just setting the string. This allows the progress to be
|
||
displayed in a localized fashion.
|
||
- Bug Fix: Add keyboard accelerators for all the setup configuration screens.
|
||
|
||
clientgui/
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Rom 5 Feb 2005
|
||
- Bug fix: Rework the logic for NT 4.0 BDC detection and dealing with the
|
||
condition.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Rom 5 Feb 2005
|
||
- Tag for 4.66 release, all platforms
|
||
boinc_core_release_4_66
|
||
|
||
Rom 5 Feb 2005
|
||
- Bug Fix: Remove the Users group from the service install type ACL list.
|
||
- Bug Fix: Set ALLUSERS to null when either the Single or Service install
|
||
type is selected
|
||
- Bug Fix: Adjust the validate setup type script to account for the new
|
||
rules
|
||
- Bug Fix: When switching from an error state to the blank screensaver
|
||
state, invalidate the window and redraw the background. Basically
|
||
that was causing us to display out of sync project data.
|
||
- Bug Fix: Another screensaver transitional state fix
|
||
|
||
client/win/
|
||
win_screensaver.cpp, .h
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/windows
|
||
BOINC.vbs
|
||
|
||
Rom 6 Feb 2005
|
||
- Bug Fix: Reduce the flicker of the error box by only painting on
|
||
every third WM_PAINT message.
|
||
|
||
client/win/
|
||
win_screensaver.cpp, .h
|
||
|
||
David 6 Feb 2005
|
||
- Initial client support for "account managers".
|
||
Includes:
|
||
- new core client class (ACCT_MGR) for doing RPCs
|
||
to account managers
|
||
- GUI RPC for initiating an account manager RPC
|
||
TODO: add support in BOINC Manager
|
||
|
||
client/
|
||
acct_mgr.C,h (new)
|
||
file_names.h
|
||
gui_rpc_server.C
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
|
||
David 6 Feb 2005
|
||
- The critically important "work_req_seconds" field of a scheduler request
|
||
was not documented anywhere.
|
||
The units of this request are "normalized CPU seconds":
|
||
the request specifies the number of wall-clock seconds
|
||
the work should take to finish using 1 CPU on the host,
|
||
taking into account resource share, on_frac, and active_frac.
|
||
- client side:
|
||
document;
|
||
take on_frac into account
|
||
- server side:
|
||
document;
|
||
use wall-clock instead of cpu estimate for "seconds filled";
|
||
take on_frac into account in wallclock estimate.
|
||
TODO: it would be simpler if the request just specified a number of FLOPs .
|
||
That way the server wouldn't have to
|
||
know about on_frac, resource share etc.
|
||
- Code cleanup
|
||
|
||
|
||
client/
|
||
client_state.h
|
||
client_types.h
|
||
cs_scheduler.C
|
||
doc/
|
||
work_req.php (new)
|
||
sched/
|
||
handle_request.C
|
||
sched_send.C
|
||
server_types.C
|
||
|
||
Rom 6 Feb 2005
|
||
- Bug Fix: Enable the user to select which language the BOINC Manager
|
||
should display on startup. This is configured via the tools\options
|
||
dialog.
|
||
- Bug Fix: BOINC Manager should now remember whether it is maximized
|
||
or minimized, it does not remember position because wxWidgets
|
||
has a hard time with negitive coordinate values that multi-mon
|
||
configurations may have. If you plug in a negative value for
|
||
x or y the client ends up off the visible part of the screen.
|
||
|
||
clientgui/
|
||
BOINCGUI.pjd
|
||
BOINCGUIApp.cpp, .h
|
||
DlgOptions.cpp, .h
|
||
MainFrame.cpp, .h
|
||
|
||
Rom 6 Feb 2005
|
||
- Remove Legacy installer
|
||
- Add the BOINC Manager resource templates
|
||
|
||
clientgui/res/templates
|
||
<added a bunch of files>
|
||
win_build/installer
|
||
<removed a bunch of files>
|
||
|
||
David 6 Feb 2005
|
||
- compile fixes
|
||
|
||
lib/
|
||
parse.C
|
||
sched/
|
||
sched_locality.C
|
||
sched_send.C,h
|
||
|
||
David 7 Feb 2005
|
||
- add "web service" for verifying a user CPID and an authenticator
|
||
|
||
html/user/
|
||
verify_cpid.php
|
||
|
||
David 7 Feb 2005
|
||
- If a result is reported after the canonical result's output files
|
||
have been deleted, handle this case specially:
|
||
don't trigger the validator,
|
||
and set the result's validate_state to TOO_LATE (new value)
|
||
- Add acct_mgr to Unix makefile
|
||
|
||
client/
|
||
Makefile.am
|
||
acct_mgr.h
|
||
db/
|
||
boinc_db.h
|
||
html/inc
|
||
result.inc
|
||
sched/
|
||
sched_send.C
|
||
transitioner.C
|
||
|
||
David 7 Feb 2005
|
||
- change limit in stderr_out reporting from 4KB to 63KB
|
||
|
||
client/
|
||
app_control.C
|
||
|
||
Bruce 7 Feb 2005
|
||
- Add new validate_state==TOO_LATE to ops pages summaries and result table
|
||
choice selection menus
|
||
- Ops pages fixes from Christian Beers and David Hammer:
|
||
* some rearrangement of index page
|
||
* fix pass percentage by platform pages to show only non-deprecated apps
|
||
* all platforms now appear in summary pages of failures
|
||
html/
|
||
ops/
|
||
cancel_wu_action.php
|
||
cancel_wu_form.php
|
||
clear_host.php
|
||
create_account_action.ph.
|
||
create_account_form.php
|
||
create_forums.php
|
||
db_action.php
|
||
db_form.php
|
||
index.php
|
||
failure_result_summary_by_platform.php
|
||
forum_repair.php
|
||
make_emails_lowercase.php
|
||
pass_percentage_by_platform.php
|
||
profile_screen_form.php
|
||
repair_validator_problem.php
|
||
result_summary.php
|
||
show_log.php
|
||
team_repair.php
|
||
inc/
|
||
db_ops.inc
|
||
util_ops.inc
|
||
|
||
Rom 7 Feb 2005
|
||
- Bug Fix: Introduce a new state for the screensaver where it can display
|
||
that it is starting up, instead of flickering between different states
|
||
so fast at startup.
|
||
- Bug Fix: Only update the status box every ten seconds instead of every
|
||
second.
|
||
- Bug Fix: Change the update timer to every 30 seconds.
|
||
|
||
client/win/
|
||
boinc_ss.h
|
||
boinc_ss.rc
|
||
win_screensaver.cpp, .h
|
||
|
||
Bruce 8 Feb 2005
|
||
- Bug fix: method of determining which download site to point a host to
|
||
computing timezone differences, not taking into account the fact that
|
||
UTC+11 hours and UTC-11 hours are only 2 hours apart. Duh.
|
||
|
||
sched/
|
||
sched_send.C
|
||
|
||
Janus 8 Feb 2005
|
||
- Added another example of the use of the new multilanguage features for
|
||
the website. This time it is the "Rules and policies" page.
|
||
- Small correction to better allow comments and empty lines in language-
|
||
files and language interface.
|
||
|
||
html/
|
||
inc/
|
||
translation.inc
|
||
languages/
|
||
language_interface
|
||
translations/
|
||
en.po
|
||
user/
|
||
info.php
|
||
|
||
David 8 Feb 2005
|
||
- return the last 63KB of stderr output, not first 63KB
|
||
|
||
client/
|
||
app_control.C
|
||
|
||
David 8 Feb 2005
|
||
- locality scheduling: in send_results_for_file(),
|
||
if can't send a result because of a transient reason
|
||
(too little disk, estimated delay too large) break out of loop.
|
||
This is an attempt to preserve the "next available result ID" invariant.
|
||
|
||
sched/
|
||
sched_locality.C
|
||
sched_send.C,h
|
||
|
||
David 8 Feb 2005
|
||
- Change the way user cross-project ID is maintained.
|
||
OLD: when the client sends a scheduler RPC to project P,
|
||
it sends the largest CPID among projects with same
|
||
email hash as P.
|
||
This is saved in P's database and sent in future RPC replies.
|
||
Problem (pointed out by John McLeod):
|
||
A user's CPID can change whenever he joins a new project.
|
||
Statistics web sites don't have permanent IDs for a user.
|
||
NEW: when the client sends a scheduler RPC to project P,
|
||
it sends the CPID of the project for which user_create_time
|
||
is least (i.e. the project with the oldest account).
|
||
Project URL is used as a tie-breaker.
|
||
|
||
- Fixed a bug where user_create_time wasn't being
|
||
parsed correctly from server reply.
|
||
|
||
client/
|
||
client_types.C
|
||
cs_scheduler.C
|
||
|
||
David 8 Feb 2005
|
||
Stuff related to web-site translations:
|
||
|
||
- removed blank lines from language_interface;
|
||
these caused bad entries in language_interface.inc
|
||
- make_project: create additional directories
|
||
(html/languages, /compiled, /translations)
|
||
and make them writeable to all
|
||
- make_project and upgrade: copy language files too
|
||
|
||
html/languages/
|
||
language_interface
|
||
py/Boinc/
|
||
setup_project.py
|
||
tools/
|
||
make_project
|
||
|
||
Rom 8 Feb 2005
|
||
- Bug Fix: Add the ability for setup to shutdown any running instances
|
||
of the BOINC Manager during install and uninstall.
|
||
- Bug Fix: Change "Launch the program" to "Launch the BOINC Manager"
|
||
- Bug Fix: Fix a number of event bubble up issues with the base
|
||
wxTaskBarEx class, the sample format provided with the wxWidget
|
||
framework leads down the wrong path if you try to extend the class.
|
||
- Bug Fix: Add another custom action dll to do the actual shutdown
|
||
of the BOINC Manager
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
BOINCTaskBar.cpp, .h
|
||
clientgui/msw/
|
||
taskbarex.cpp, .h
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/Windows/src/ShutdownBOINCManager
|
||
ShutdownBOINCManager.cpp ( added )
|
||
ShutdownBOINCManager.def ( added )
|
||
ShutdownBOINCManager.sln ( added )
|
||
ShutdownBOINCManager.vcproj ( added )
|
||
stdafx.cpp, .h ( added )
|
||
win_build/installerv2/Windows/x86/
|
||
shutdown.dll
|
||
|
||
Bruce 8 Feb 2005
|
||
Added new tag pair to config.xml:
|
||
<min_core_client_version_announced> N </min_core_client_version_announced>
|
||
<min_core_client_upgrade_deadline> M </min_core_client_upgrade_deadline>
|
||
This is used to warn users in advance if a new minimum core client is going
|
||
to be required. Users have until time 'M' (Unix epoch time(2) format)
|
||
to upgrade. Not yet tested.
|
||
|
||
doc/
|
||
configuration.php
|
||
sched/
|
||
handle_request.C
|
||
sched_config.C
|
||
sched_config.h
|
||
|
||
|
||
|
||
Bruce 8 Feb 2005
|
||
- Turn off ops pages that update the data base. These now issue a message
|
||
informing the project admin that they need to be explicitly edited to
|
||
enable updating the database. This will help prevent inadvertent use.
|
||
Thanks to David Hammer.
|
||
|
||
html/
|
||
ops/
|
||
clear_host.php
|
||
forum_repair.php
|
||
make_emails_lowercase.php
|
||
repair_validator_problem.php
|
||
team_repair.php
|
||
|
||
David 9 Feb 2005
|
||
- small bug fix: set must_reschedule_cpus in
|
||
ACTIVE_TASK_SET::exit_tasks().
|
||
This fixes a (rare) situation where you detach from a project,
|
||
other projects' tasks are not run, and the CPU is idle.
|
||
- win graphics compile fix
|
||
|
||
api/
|
||
reduce_lib.C
|
||
client/
|
||
app_control.C
|
||
client_state.h
|
||
|
||
Eric K. 9 Feb 2005
|
||
-Unfortunately on some 32 bit systems there is a problem with wx-widgets
|
||
configuring itself for largefile support. On these systems largefile
|
||
support breaks C++ compiles by defining away many of the C standard library
|
||
routines that should reside in namespace std::. In order to get around
|
||
problem first we have to check the largefile support macros. Later we will
|
||
use the macro SAH_LARGEFILE_BREAKS_CXX to check for the breakage. If
|
||
if breakage is found LARGEFILE_BREAKS_CXX is defined in config.h. This
|
||
define is checked in std_fixes.h and the appropriate functions are defined
|
||
in order to solve the problem. (These functions were already in place)
|
||
Because these defines affect the behavior of standard library headers,
|
||
std_fixes.h is being included from config.h
|
||
-Added AM_CPPFLAGS, AM_CFLAGS, and AM_CXXFLAGS (for flags common to all
|
||
compiles) so they will be defined in all Makefile.am files.
|
||
-Put #ifdef _cplusplus around the C++ specific items in std_fixes.h so it
|
||
may be included from C source files.
|
||
|
||
configure.ac
|
||
Makefile.incl
|
||
m4/
|
||
sah_largefile_breaks_cxx.m4
|
||
api/
|
||
Makefile.am
|
||
lib/
|
||
std_fixes.h
|
||
|
||
David 9 Feb 2005
|
||
- locality scheduling: move check for transient infeasibility
|
||
to SCHEDULER_REPLY::work_needed() for uniformity
|
||
- scheduler: if request has different CPID, accept it
|
||
whether or not it's greater than current one
|
||
- file deleter: show full path in error messages
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_locality.C
|
||
sched_send.C
|
||
server_types.h
|
||
|
||
Rom 9 Feb 2005
|
||
- Bug Fix: Fix a stupid mistake where I wasn't even checking to see if a
|
||
person selected to allow the screen to be blanked before setting the
|
||
blank timer to work.
|
||
|
||
client/win/
|
||
win_screensaver.cpp, .h
|
||
|
||
Rom 9 Feb 2005
|
||
- Bug Fix: If a result is flagged as 'Aborted', do not show the
|
||
'Suspend'/'Resume' options in the task list.
|
||
- Bug Fix: If a result is suspended without having already been
|
||
executed, display it as suspended instead of 'Ready to Run'
|
||
|
||
clientgui/
|
||
ViewWork.cpp
|
||
|
||
David 9 Feb 2005
|
||
- scheduler changes to get the FCGI version to compile.
|
||
Problem: the FCGI library inexplicably doesn't provide
|
||
a version of fscanf().
|
||
Some of Bruce's recent additions
|
||
(timezone-dependent URL, MD5 caching) use fscanf().
|
||
I commented them out with the _USING_FCGI_ symbol.
|
||
This shouldn't affect anyone since E@h doesn't use FCGI.
|
||
|
||
sched/
|
||
sched_send.C
|
||
tools/
|
||
backend_lib.C
|
||
|
||
David 9 Feb 2005
|
||
- report GUI RPC connection rejected errors at most once every ten minutes
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
|
||
Bruce 10 Feb 2005
|
||
More sched locality and other scheduler changes.
|
||
- Address David's comment of Feb 2.
|
||
Now properly reduce the disk size resource requirements
|
||
of a WU being sent if the file is already on the host,
|
||
or already included in a previous WU being sent.
|
||
DAVID: please check that reply_copy.wus.pop_back() is right.
|
||
- For this, define a function host_has_file().
|
||
This can also be used in the future for more intelligent
|
||
file deletion schemes.
|
||
- Make warnings to upgrade old clients have low priority until
|
||
3 days before deadline. Then high priority.
|
||
- Fix sign error in messages sent to users about insufficient disk space.
|
||
- Move extract_filename() from sched_locality.C to sched_util.C
|
||
- Pretty up the ordered list of URLs printed for a given host.
|
||
- I've even tested these changes before committing them!
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_locality.C
|
||
sched_send.C
|
||
sched_util.[hC]
|
||
|
||
Bruce 10 Feb 2005
|
||
Added code to the scheduler so that it will dump core on SEGV.
|
||
This is disabled by default.
|
||
Having this is really useful if the scheduler is crashing
|
||
some of the time.
|
||
You can load the core dump file into a debugger to see where things are
|
||
breaking. To use this, edit sched/main.C by hand and set
|
||
#define DUMP_CORE_ON_SEGV 1
|
||
|
||
sched/
|
||
main.C
|
||
|
||
Eric K 10 Feb 2005
|
||
Fixes to get server components compiling under FCGI.
|
||
- Added check for _USING_FCGI_ in std_fixes.h in order to prevent
|
||
redefinition of stdlib functions with LARGEFILE_BREAKS_CXX is defined.
|
||
- Because FCGI doesn't have fscanf() and fgetc() that work on FCGI_FILE*,
|
||
the FILE pointers for these functions need to be wrapped in a call to
|
||
FCGI_ToFILE(). In the case where FCGI isn't being used we define
|
||
FCGI_ToFILE(x) to (x).
|
||
|
||
lib/
|
||
std_fixes.h
|
||
sched/
|
||
sched_send.C
|
||
tools/
|
||
backend_lib.C
|
||
|
||
David 10 Feb 2005
|
||
code shuffling in scheduler:
|
||
- moved locality-specific code from sched_send.C to sched_locality.C
|
||
- moved timezone-related code to sched_timezone.C
|
||
|
||
sched/
|
||
Makefile.am
|
||
sched_locality.C,h
|
||
sched_send.C
|
||
sched_timezone.C,h (new)
|
||
|
||
David 10 Feb 2005
|
||
- expanded gui_test to a full-featured command-line interface
|
||
to the core client, and renamed it to boinc_cmd.
|
||
The commands have all changed; see code (I'll write a web page too)
|
||
|
||
lib/
|
||
Makefile.am
|
||
boinc_cmd.C (new)
|
||
gui_rpc_client.C,h
|
||
gui_test.C (removed)
|
||
|
||
Rom 10 Feb 2005
|
||
- Bug Fix: Inconsistant window state was causing the BOINC Manager to
|
||
be blank on startup, basically either wxWidgets or Windows wasn't
|
||
properly dealing with the Window state changes and the client
|
||
would believe it was not being displayed when in fact it was on
|
||
the screen. When the window was hidden from view, it would
|
||
skip updating any of the controls.
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
BOINCTaskBar.cpp
|
||
MainFrame.cpp
|
||
|
||
Eric K 10 Feb 2005
|
||
- There was a problem using dynamic allocations (with new) in many of the
|
||
graphics classes. In many places the code was written assuming default
|
||
values of 0, especially for pointers and booleans. While that's true
|
||
in the case of a static instance with the default constructors, it not
|
||
generally true with dynamic allocation unless the default constructor
|
||
is replaced. Therefore I've added constructors in the following
|
||
classes/structs: MOVING_TEXT_PANEL, COLOR, PROGRESS, PROGRESS_2D,
|
||
TEXTURE_DESC, REDUCED_ARRAY.
|
||
- This will be a problem is any are used from C code unless the
|
||
constructors declarations are enclosed in "#ifdef __cplusplus" blocks.
|
||
- There was also a problem that showed up under Windows when dynamic
|
||
allocations were used. app_graphics_resize() gets called before
|
||
app_graphics_init(). This usually results in a crash since classes
|
||
haven't yet been constructed. To work around this I've added a case
|
||
for WM_CREATE in the WndProc() which calls app_graphics_init. Under
|
||
windows this will get passed before WM_SIZE does.
|
||
|
||
api/
|
||
gutil.C
|
||
gutil.h
|
||
reduce_main.C
|
||
windows_opengl.C
|
||
|
||
Rom 10 Feb 2005
|
||
- Bug Fix: Reorder the logic for NT 4.0 domain controllers one more
|
||
time. Damn variant variable types.
|
||
|
||
win_build/installerv2/redist/windows/
|
||
BOINC.vbs
|
||
|
||
Bruce 10 Feb 2005
|
||
- Sched locality change: if the host does not have enough memory to satisfy
|
||
a work request, do not search for or send further work. This is the same
|
||
way that disk space limits are handled. This is necessary since otherwise
|
||
a host with small memory will endlessly trigger the WU generator, churning
|
||
out infeasible WUs.
|
||
- Added boolean arg to host_has_file() following David A's advice. This
|
||
eliminates the 'expensive' copy of a large data structure. The bool arg
|
||
makes host_has_file() skip the final WU in the vector in hunting for a file.
|
||
- Better log message for setting coredump size.
|
||
I - Added RCSID tag to sched_timezone.C
|
||
- Got rid of annoying 'no <host_venue>' tag messages from scheduler
|
||
sched/
|
||
sched_send.C
|
||
sched_locality.C
|
||
main.C
|
||
sched_timezone.C
|
||
server_types.C
|
||
|
||
David 11 Feb 2005
|
||
- Core client: require that an app version's main program be executable
|
||
(and thus that it be digitally signed)
|
||
- compile fix for Windows guirpctest (should rename boinc_cmd)
|
||
client/
|
||
app_control.C
|
||
app_start.C
|
||
win_build/
|
||
boinc_guirpctest.vcproj
|
||
|
||
Janus 11 Feb 2005
|
||
- Added translation features to create_account_form.php
|
||
- Inserted the text from the page in the language interface and the
|
||
english language file
|
||
|
||
/html/
|
||
users/
|
||
create_account_form.php
|
||
languages/translations/
|
||
en.po
|
||
|
||
Rom 11 Feb 2005
|
||
- Bug Fix: Check to see if the hostname given to us is in dotted decimal
|
||
notation, if so, convert it into an ip address, otherwise pass it to
|
||
a name resolution service.
|
||
|
||
client/
|
||
net_xfer.C
|
||
|
||
David 11 Feb 2005
|
||
- core client: added a function maybe_more_data()
|
||
to see if there might be more data later
|
||
on a socket for which recv() returned -1
|
||
|
||
Previously this was done in HTTP_REPLY_HEADER::read_reply()
|
||
in a way that worked on Unix but not Windows,
|
||
and it wasn't done at all in read_reply()
|
||
(used to read file upload handler replies).
|
||
|
||
client/
|
||
http.C
|
||
|
||
David 11 Feb 2005
|
||
- compile fix for Unix
|
||
|
||
client/
|
||
net_xfer.C
|
||
|
||
David 11 Feb 2005
|
||
- compile fix for FreeBSD (from JR Oldroyd)
|
||
|
||
api/
|
||
graphics_lib.C
|
||
|
||
Janus 12 Feb 2005
|
||
- Added "Delete forum thread" feature
|
||
- Added "Double post" to the list of reasons why a post is deleted
|
||
|
||
/html/
|
||
inc/
|
||
email.inc
|
||
user/
|
||
forum_moderate_post.php
|
||
forum_moderate_thread.php (new)
|
||
forum_moderate_thread_action.php (new)
|
||
forum_thread.php
|
||
|
||
David 12 Feb 2005
|
||
- fix to the 11/feb fix
|
||
|
||
client/
|
||
http.C
|
||
|
||
David 12 Feb 2005
|
||
- added functions in PHP code to get data from GET and POST,
|
||
and do various safety checking on it.
|
||
These functions should be used exclusively;
|
||
$_GET and $_POST should not be accessed directly
|
||
- moved some stuff out of html/inc/util.inc
|
||
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
gallery.inc
|
||
prefs.inc
|
||
profile.inc
|
||
util.inc
|
||
user/
|
||
various (didn't finish)
|
||
|
||
David 13 Feb 2005
|
||
- Get rid of the concept of explicitly "activating" an account.
|
||
Instead: whenever the server receives an account key
|
||
(whether via the web or in a scheduler RPC request)
|
||
for an account that has an unverified email address
|
||
(i.e. the email_addr field is in 'munged' form)
|
||
it changes the email address to non-munged form.
|
||
|
||
html/
|
||
inc/
|
||
email.inc
|
||
languages/
|
||
language_interface
|
||
translations/
|
||
en.po
|
||
user/
|
||
account_created.php
|
||
account_setup.php
|
||
account_setup_first.php
|
||
account_setup_nonfirst_done.php
|
||
create_account_form.php
|
||
login_action.php
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 13 Feb 2005
|
||
- code cleanup in forum code.
|
||
More validation of GET and POST data
|
||
|
||
html/
|
||
forum*.php
|
||
|
||
David 13 Feb 2005
|
||
- scheduler: change config option from "enforce_delay_bound"
|
||
to "ignore_delay_bound" (i.e. the default is to enforce the bound)
|
||
- scheduler: in estimating result delay,
|
||
take into account results being included in this reply
|
||
(as well as work already on client)
|
||
|
||
sched/
|
||
sched_config.C,h
|
||
sched_send.C
|
||
server_types.C,h
|
||
|
||
David 13 Feb 2005
|
||
- Core client: require that all app_version files be signed
|
||
- update_versions: put signatures on all app_version files
|
||
|
||
client/
|
||
client_state.C
|
||
cs_files.C
|
||
py/Boinc/
|
||
tools.py
|
||
|
||
David 14 Feb 2005
|
||
- user web fixes
|
||
|
||
html/user/
|
||
create_account_form.php
|
||
account_created.php
|
||
|
||
David 14 Feb 2005
|
||
- scheduler: in estimating delay of a result,
|
||
ignore time stats (on_frac, active_frac)
|
||
if no results have been added to reply yet.
|
||
Clients with low on_frac/active_frac
|
||
will still get at least one result.
|
||
|
||
sched/
|
||
sched_send.C
|
||
server_types.C
|
||
|
||
David 14 Feb 2005
|
||
- Allow remote application graphics via X11. This involves:
|
||
- Adding an optional <display> element to graphics messages
|
||
passed from core client to app
|
||
- Changed the GUI RPC interface to include display
|
||
(as well as window_station and desktop)
|
||
- X version of API does putenv("DISPLAY=x") with the display X
|
||
it gets from the core client
|
||
- change BOINC manager so that (on Unix) it gets the DISPLAY
|
||
and passes it in graphics RPCs
|
||
- modify boinc_cmd so that it can pass display
|
||
- fixed indentation in x_opengl.C
|
||
Please follow the existing style!!
|
||
|
||
api/
|
||
x_opengl.C
|
||
clientgui/
|
||
BOINCGUIApp.cpp,h
|
||
MainDocument.cpp,h
|
||
ViewWork.cpp
|
||
lib/
|
||
app_ipc.C,h
|
||
boinc_cmd.C
|
||
gui_rpc_client.C,h
|
||
|
||
Rom 14 Feb 2005
|
||
- Use the display information passed from the BOINC Manager and
|
||
screensaver.
|
||
|
||
client/
|
||
app_graphics.C
|
||
gui_rpc_server.C
|
||
|
||
David 15 Feb 2005
|
||
- Fix the anonymous platform mechanism
|
||
|
||
client/
|
||
app_start.C
|
||
|
||
David 15 Feb 2005
|
||
- BOINC manager: on Unix, don't ask whether to show remote graphics
|
||
|
||
clientgui/
|
||
ViewWork.cpp
|
||
|
||
David 15 Feb 2005
|
||
- "upgrade" creates any project directories that don't already exist.
|
||
(e.g. html/languages stuff)
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
Bruce 15 Feb 2005
|
||
- Scheduler changes (global):
|
||
- Ignore CPU limitations and resource share entirely, IF
|
||
a host:
|
||
(1) has no work for this project
|
||
(2) has no results in this sched reply
|
||
This ensures that any host that wants to do work will at least
|
||
get *something*. It liberalizes slightly David A's approach
|
||
from 14 Feb 2005. Eliminate use_time_stats from wreq structure.
|
||
- Scheduler changes (locality scheduling only):
|
||
- Improve return value info for some functions.
|
||
- Modify send_old_work() to accept a t_min < t < t_max time range
|
||
- New sched locality algorithm to send work to hosts with no files.
|
||
Send oldest result in the time range A < t < B where
|
||
B = locality_scheduling_timeout/2
|
||
A = B - rand*locality_scheduling_timeout/2
|
||
Here rand is a uniformly distributed random number in [0,1].
|
||
- When an unsent result is older than locality_scheduling_timeout, no
|
||
longer send it to the FIRST host that requests work. Instead send
|
||
it to the first host which has a connection speed > 100kb/s.
|
||
- Fix file deletion. Previously we were deleting files from hosts
|
||
when they got no work for that file. But this might have been
|
||
because the work was infeasible (cpu time). Now delete files
|
||
from host ONLY if there is no work remaining for that file.
|
||
|
||
sched/
|
||
sched_locality.C
|
||
sched_send.C
|
||
server_types.h
|
||
|
||
David 15 Feb 2005
|
||
- User web: security-related PHP cleanup
|
||
Replace $_GET["id"] with getint("id) here and there.
|
||
Use lookup_x() instead of explicit SQL
|
||
|
||
html/
|
||
inc/
|
||
db.inc
|
||
util.inc
|
||
user/
|
||
confirm_email_change.php
|
||
edit_email_action.php
|
||
host_edit_form.php
|
||
host_venue_action.php
|
||
hosts_user.php
|
||
results.php
|
||
show_user.php
|
||
team_display.php
|
||
team_quit_form.php
|
||
userw.php
|
||
|
||
David 15 Feb 2005
|
||
- User web: add warning telling message-board posters
|
||
not to be obscene or threatening
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
user/
|
||
forum_post.php
|
||
forum_reply.php
|
||
|
||
Bruce 15 Feb 2004
|
||
- More sensible use of request_delay. If a host contacts the
|
||
scheduler, and fails to get work because there are N secs
|
||
of pending work, then send a delay request of min(3600, N/5) secs.
|
||
Otherwise the same host was coming back every hour, without being able
|
||
to get additional work.
|
||
- Implemented by adding a method set_delay() to
|
||
SCHEDULER_REQUEST. This sets the delay to the maximum of the
|
||
previous requested delay or the current requested delay. The
|
||
delay is NEVER set longer than two days.
|
||
|
||
sched/
|
||
server_types.h
|
||
server_types.C
|
||
handle_request.C
|
||
sched_send.C
|
||
|
||
David 15 Feb 2005
|
||
- user web
|
||
|
||
html/user/
|
||
account_setup_first_done.php (new)
|
||
|
||
David 16 Feb 2005
|
||
- user web fixes
|
||
|
||
html/user/
|
||
account_setup_first_done.php
|
||
team_display.php
|
||
|
||
David 16 Feb 2005
|
||
- Giant checkin to remove warnings when compiled with
|
||
all known warnings enabled.
|
||
This consisted of:
|
||
1) string literals ("foo") are type const char*,
|
||
so any variables or args that you assign them to
|
||
must be const char*
|
||
2) shadowed variables
|
||
3) unused params (removed or commented out)
|
||
4) a couple of printf format/var mismatches
|
||
(nothing that would cause a problem at this point)
|
||
|
||
api/
|
||
x_opengl.C
|
||
client/
|
||
(most .C, .h)
|
||
clientgui/
|
||
(most .C, .h)
|
||
res/
|
||
*.xpm
|
||
db/
|
||
(most .C, .h)
|
||
lib/
|
||
(most .C, .h)
|
||
sched/
|
||
(most .C, .h)
|
||
tools/
|
||
(most .C, .h)
|
||
|
||
Janus 17 Feb 2005
|
||
- Added security checks to forum moderation features
|
||
- Added project specific translation ability to the translator:
|
||
To use this you simply add language files and tokens in the
|
||
project specific language directory:
|
||
/html/languages/project_specific_translations/
|
||
There's a dummy en.po file there to show how it is done.
|
||
You use the tr(TOKEN)-function to get your token translated.
|
||
It is possible to override the BOINC-provided translation by
|
||
redefining the TOKEN in the project specific translation files.
|
||
- Changed the translator to use the project default language as interface
|
||
instead of having to explicitly write everything in a seperate file.
|
||
Therefore you do no longer have to add tokens to the
|
||
language_interface-file.
|
||
|
||
html/
|
||
inc/
|
||
translation.inc
|
||
user/
|
||
forum_moderate_thread.php
|
||
forum_moderate_post.php
|
||
forum_moderate_thread_action.php
|
||
forum_moderate_post_action.php
|
||
languages/
|
||
language_interface (removed)
|
||
project_specific_translations/ (new)
|
||
en.po (new)
|
||
|
||
Rom 17 Feb 2005
|
||
- Bug Fix: Close down the local boinc daemon if we started the local boinc
|
||
daemon.
|
||
- Bug Fix: I forgot to change the comparision in the ENABLESCREENSAVER from
|
||
string to integer when I changed the control type
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp, .h
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
David 17 Feb 2005
|
||
- make_project: added --db_host option.
|
||
Lets you make a project with a remote DB server
|
||
- make_project: got rid of --base option
|
||
- add html/languages/project_specific_translations to set
|
||
of directories created by make_project and upgrade
|
||
|
||
py/Boinc/
|
||
database.py
|
||
setup_project.py
|
||
tools/
|
||
make_project
|
||
|
||
David 17 Feb 2005
|
||
- Win core client: retry CreateProcess() 5 times with random delay,
|
||
in case some other process has executable file open
|
||
(from Bruce Allen)
|
||
|
||
client/
|
||
app_start.C
|
||
|
||
Bruce 17 Feb 2005
|
||
- make daily_result_quota be PER CPU with a hardwired limit of
|
||
4 CPUS.
|
||
- Improved error messages if users are being denied work because of
|
||
lack of CPU. The message reports back their on fraction, active
|
||
fraction, and resouce share fraction, as percentages.
|
||
|
||
sched/
|
||
sched_send.C
|
||
doc/
|
||
configuration.php
|
||
|
||
David 17 Feb 2005
|
||
- partially fixed test_uc.py.
|
||
It doesn't get Python errors any more, but it sometimes fails.
|
||
This is because of file_deleter.
|
||
It can delete input files that are needed by
|
||
another WU, and it can delete output files before they're checked.
|
||
Should fix this.
|
||
|
||
test/
|
||
testbase.py
|
||
|
||
Rom 17 Feb 2005
|
||
- Add an additional HTTP trace statement to print out the reply size of
|
||
an HTTP operation on a failure condition.
|
||
|
||
client/
|
||
http.C
|
||
|
||
David 18 Feb 2005
|
||
- core client HTTP: in a POST operation (i.e. scheduler RPC)
|
||
when start to read reply body,
|
||
reset bytes_xferred and file_offset to zero
|
||
(otherwise length calculation at the end will fail)
|
||
|
||
client/
|
||
http.C,h
|
||
|
||
David 18 Feb 2005
|
||
- For some reason I removed a strdup() in my 17 Feb checkin to start.C,
|
||
which caused memory corruption on all platforms.
|
||
It's back now
|
||
- handle </venue> in PROJECT::parse_account().
|
||
Gets rid of a spurious warning
|
||
|
||
client/
|
||
app_start.C
|
||
cs_account.C
|
||
scheduler_op.C
|
||
|
||
David 18 Feb 2005
|
||
- fix gcc warning
|
||
- printf in http.C had wrong conversion character
|
||
|
||
client/
|
||
app_start.C
|
||
http.C
|
||
|
||
David 18 Feb 2005
|
||
- API: removed the check in boinc_init()
|
||
that requires the API library to have the same major version
|
||
as the core client.
|
||
|
||
api/
|
||
boinc_api.C
|
||
|
||
David 18 Feb 2005
|
||
- core client: pass proxy info to apps correctly
|
||
|
||
client/
|
||
app_start.C
|
||
|
||
David 19 Feb 2005
|
||
- user web cleanup (GET arg checking mostly)
|
||
|
||
html/user/
|
||
(various files)
|
||
|
||
Janus 20 Feb 2005
|
||
- Made the image resize script GD2-aware. It will automatically use >=GD2
|
||
if this is available on the webserver.
|
||
This will make avatars (and whatever uses the script) look much better.
|
||
|
||
html/inc/
|
||
image.inc
|
||
|
||
Bruce 20 Feb 2005
|
||
Fixed a bug in locality scheduling. When old work was being sent,
|
||
the daily_result_quota constraint was not being enforced.
|
||
Normally this constraint is enforced in the work_needed()
|
||
function. However note that the critical send_work() function
|
||
NEVER checks work_needed() [DAVID, perhaps it should?] before
|
||
calling send_work_locality() or scan_work_array(). Then, when
|
||
send_work_locality() was called, it would in turn call
|
||
send_old_work() immediately, WITHOUT checking to see if
|
||
work_needed() was TRUE. This allowed the daily_result_quota
|
||
constraint to be broken.
|
||
|
||
Possible fixes included:
|
||
test work_needed() before calling send_old_work()
|
||
test work_needed() WITHIN send_old_work()
|
||
test work_needed() within possibly_send_result()
|
||
test work_needed() within wu_is_infeasible()
|
||
|
||
Conclusion: work is ONLY sent by the function
|
||
possibly_send_result() which is called in two places in
|
||
sched_locality.C: once in send_results_for_file() and once in
|
||
send_old_work(). The first of these DOES check the value of
|
||
work_needed(). The second does NOT. So I added a check of
|
||
work_needed() within send_old_work(). A also added
|
||
added another check of work_needed() at the top of
|
||
send_results_for_file() BEFORE any DB access is done. It might be
|
||
better to put this test of work_needed() lower down (within
|
||
possibly_send_result()) or higher up (where send_old_work())
|
||
is called. I am not sure. David, I'd appreciate your advice.
|
||
|
||
sched/
|
||
sched_locality.C
|
||
|
||
Rom 21 Feb 2005
|
||
- Bug Fix: Fix a localization error where we were refering to
|
||
"Abort Transfer" as "Abort Upload"
|
||
|
||
clientgui/
|
||
ViewTransfers.cpp
|
||
|
||
Rom 21 Feb 2005
|
||
- Bug Fix: On platforms other than Windows, really close down the
|
||
manager, when the user requests the app to close.
|
||
|
||
clientgui/
|
||
MainFrame.cpp
|
||
|
||
Rom 21 Feb 2005
|
||
- Bug Fix: If a result or transfer is paused by some event other than
|
||
actually changing it's CPU_SCHED state, such as user activity then
|
||
report the result as suspended instead of running.
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
clientgui/
|
||
MainDocument.cpp, .h
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
lib/
|
||
gui_rpc_client.C, .h
|
||
|
||
Bruce 22 Feb 2005
|
||
- Bug fixes to scheduler code
|
||
- For locality scheduler, if anonymous platform lacks app,
|
||
don't do deterministic search for work!
|
||
- For locality scheduler, remove 'unsent' constraint from initial query
|
||
so that existing index in result table can be used to perform
|
||
a more efficient search.
|
||
- Send multi-message replies to core clients > 4.19
|
||
- Change 'no work available' message to 'no work sent'
|
||
since this is often due to constraints at the client end,
|
||
NOT lack of work at project end.
|
||
- When daily result quota exceeded,
|
||
tell users what its value is for that host.
|
||
|
||
sched/
|
||
sched_locality.C
|
||
sched_send.C
|
||
server_types.C
|
||
server_types.h
|
||
|
||
David 22 Feb 2005
|
||
- prevent users from including HTML tags in the
|
||
name, url, postal_code fields of their DB records
|
||
- add a script (clean_user_names.php) for fixing existing DBs
|
||
- fix type in team edit
|
||
|
||
html/
|
||
inc/
|
||
db.inc
|
||
translation.inc
|
||
ops/
|
||
clean_user_names.php (new)
|
||
user/
|
||
create_account_action.php
|
||
edit_user_info_action.php
|
||
team_edit_form.php
|
||
|
||
David 22 Feb 2005
|
||
- Validator: added a "-mod n i" cmdline option.
|
||
Processes only WUs with ID mod n == i.
|
||
Lets you run multiple copies of validators for greater throughput.
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
validator.C
|
||
|
||
Rom 22 Feb 2005
|
||
- Bug Fix: Include the core client version number in the connected to
|
||
field of the status bar to ease deployment issues for large farms
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
clientgui/
|
||
MainDocument.cpp, .h
|
||
MainFrame.cpp
|
||
lib/
|
||
gui_rpc_client.C, .h
|
||
|
||
David 22 Feb 2005
|
||
- backend processes: centralize avg_turnaround updating,
|
||
and write log messages
|
||
- backend programs: define CRITICAL/NORMAL/DEBUG as 1/2/3
|
||
so that message logging works as advertised
|
||
|
||
sched/
|
||
sched_msgs.h
|
||
sched_util.C,h
|
||
transitioner.C
|
||
validator.C
|
||
|
||
David 22 Feb 2005
|
||
- admin web:
|
||
fixed boinc_real_escape_string();
|
||
fixed clean_user_names.php (rerun this if you already ran)
|
||
- user web:
|
||
change "questions and problems" to "questions and answers"
|
||
|
||
html/
|
||
inc/
|
||
db.inc
|
||
ops/
|
||
clean_user_names.php
|
||
create_forums.php
|
||
user/
|
||
forum_help_desk.php
|
||
forum_post.php
|
||
forum_reply.php
|
||
sample_index.php
|
||
|
||
David 22 Feb 2005
|
||
- core client: scheduling: cap project debt at 1 day
|
||
|
||
client/
|
||
cs_apps.C
|
||
http.C
|
||
scheduler_op.C
|
||
sched/
|
||
sched_send.C
|
||
|
||
David 23 Feb 2005
|
||
- got test_uc.py to work again - woohoo!
|
||
- changed WU name to uc_wu_nodelete.
|
||
Otherwise the input file would get deleted
|
||
and subsequent WUs (created by make_work) would bomb out
|
||
- change make_work to strictly obey its max_wus argument.
|
||
- remove check that original input file is deleted, 'cuz it's not.
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
sched/
|
||
make_work.C
|
||
test/
|
||
make_project_ap.php (removed)
|
||
test_backend.py (removed)
|
||
test_uc.py
|
||
testbase.py
|
||
uc_wu (removed)
|
||
uc_wu_nodelete (new)
|
||
|
||
Rom 23 Feb 2005
|
||
- Bug Fix: On localized machines the administrators and users groups
|
||
can be named something other than administrators and users. This
|
||
is also the case if the administrators and users groups have been
|
||
renamed on english machines. So thanks to some sample code from
|
||
MSDN we can now detect what names we should be using in both cases
|
||
during setup to set permissions on the BOINC folder.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/Windows/src/GetGroupName
|
||
GetGroupName.cpp
|
||
GetGroupName.def
|
||
GetGroupName.sln, .vcproj
|
||
stdafx.cpp, .h
|
||
win_build/installerv2/redist/Windows/x86/
|
||
getgrpname.dll
|
||
|
||
Rom 23 Feb 2005
|
||
- Bug Fix: Installshield isn't very consistent with how it deals with
|
||
copied controls from one dialog to another. It seems on my last
|
||
round of updates to make the checkbox controls act as integers
|
||
the UI didn't update properly and left me with the impression
|
||
that all the controls had been properly flagged as integer values.
|
||
It turns out they were not, so i've changed them so that they are.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Rom 24 Feb 2005
|
||
- Bug Fix: Reset the client_version integer with every get_state request.
|
||
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
Janus 24 Feb 2005
|
||
- Web translator no longer outputs warnings to the screen - instead it logs
|
||
it to a file on the server. (defined in translation.inc)
|
||
- Added multilanguage features to the rest of the account_creation pages
|
||
|
||
/html/
|
||
inc/
|
||
translation.inc
|
||
user/
|
||
account_*_done.php
|
||
|
||
David 24 Feb 2005
|
||
- Finish server-side support for account management.
|
||
Changed all inputs to GET, all outputs to XML
|
||
Added get_info and set_info functions
|
||
|
||
html/
|
||
inc/
|
||
db.inc
|
||
user/
|
||
am_create.php
|
||
am_get_info.php (new)
|
||
am_query.php
|
||
am_set_info.php (new)
|
||
|
||
David 25 Feb 2005
|
||
- Core client: in Unix version, make sure that
|
||
shared-mem segments get deleted when ^C the core client.
|
||
If they don't, some systems (Solaris) eventually run out of something.
|
||
|
||
client/
|
||
app.C,h
|
||
app_control.C
|
||
cs_apps.C
|
||
|
||
David 25 Feb 2005
|
||
- Scheduler: added a mechanism to dynamically adjust the
|
||
max # of results sent per day on a per-host basis,
|
||
so that "bad hosts" (those that always return either errors or nothing)
|
||
are eventually cut back to 1 result per day.
|
||
|
||
Added "max_results_day" field to host table.
|
||
Initialized to config.daily_result_quota.
|
||
When host returns an error result, or a result times out,
|
||
decrement max_results_day (but not below 1).
|
||
When the host return a success result,
|
||
double max_results_day (but not above config.daily_result_quota)
|
||
|
||
Idea is from Bruce Allen
|
||
|
||
NOTE TO PROJECTS: you must update your database
|
||
(see html/ops/db_update.php) prior to using this on your server.
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
html/ops/
|
||
db_update.php
|
||
sched/
|
||
handle_request.C
|
||
sched_send.C
|
||
server_types.h
|
||
transitioner.C
|
||
|
||
David 25 Feb 2005
|
||
- core client: possible fix for heap corruption problem -
|
||
check for strlen(file_signature), not file_signature
|
||
|
||
client/
|
||
cs_files.C
|
||
|
||
David 25 Feb 2005
|
||
- allow only one account per email address,
|
||
including munged email addresses (from Bruce Allen)
|
||
|
||
html/user/
|
||
create_account_action.php
|
||
|
||
Rom 27 Feb 2005
|
||
- Add another flag to the diagnostics library that will allow
|
||
a check of the heap with every allocation/deallocation.
|
||
- Enable a check of the heap for every allocation in the
|
||
core client.
|
||
|
||
client/
|
||
main.C
|
||
lib/
|
||
diagnostics.C, .h
|
||
|
||
David 27 Feb 2005
|
||
If you attached to a project and give a URL like "a.b.c//",
|
||
two bad things happen:
|
||
1) canonicalize_master_url() strips off everything before the //,
|
||
leaving an empty URL
|
||
2) it will write an account file account_.xml
|
||
and make an entry in the client state file
|
||
3) next time the core client starts up, it errors out
|
||
trying to create the project directory.
|
||
Fixes:
|
||
- canonicalize_master_url(): check before "://", not "//"
|
||
- is_account_file(): tighten up.
|
||
Old: anything starting with account_ is considered an account file.
|
||
New: must match account_A.B.xml where A and B are nonempty
|
||
- invalid_url():
|
||
Old: must match http://X, X nonempty
|
||
New: must match http://X.Y/, X and Y nonempty
|
||
rename to valid_master_url() and invert sense
|
||
|
||
client/
|
||
cs_account.C
|
||
file_names.C
|
||
lib/
|
||
util.C,h
|
||
|
||
David 27 Feb 2005
|
||
- when scanning account files, make sure a project has
|
||
a unique master URL before adding to list of projects
|
||
|
||
client/
|
||
cs_account.C
|
||
|
||
Bruce 28 Feb 2005
|
||
- messages containing newlines were being lost when sent to 4.19
|
||
core clients. Fix strips newlines from messages sent to clients
|
||
<= 4.19. NOTE: stripping may ALSO be needed for more recent
|
||
clients. But it would be better to fix the clients so that
|
||
embedded newlines in messages are respected.
|
||
|
||
sched/
|
||
server_types.C
|
||
|
||
David 1 Mar 2005
|
||
- core client: in garbage collection, reference-count FILE_INFOs
|
||
that are pointed to by FILE_XFER or PERS_FILE_XFER objects.
|
||
Hopefully this will prevent crashes when dealing with
|
||
app versions with unsigned files.
|
||
|
||
client/
|
||
client_state.C
|
||
cs_files.C
|
||
pers_file_xfer.C,h
|
||
|
||
David 1 Mar 2005
|
||
- core client: FILE_INFO::merge_info(): merge signature also.
|
||
If we get a new version of a FILE_INFO from server
|
||
and it has a signature, us it.
|
||
|
||
client/
|
||
client_types.C
|
||
|
||
David 1 Mar 2005
|
||
- fix for update_versions in case of single-file app
|
||
with signature included (from John Flynn III)
|
||
|
||
tools/
|
||
update_versions
|
||
|
||
David 1 Mar 2005
|
||
- added host_venue to get_state GUI RPC reply
|
||
|
||
client/
|
||
cs_statefile.C
|
||
|
||
Janus 2 Mar 2005
|
||
- Changed translation compiler to avoid concurrent compiles
|
||
|
||
html/inc/
|
||
translation.inc
|
||
|
||
David 2 Mar 2005
|
||
- change db_update.php script to print messages on success/failure
|
||
(from Eric Myers)
|
||
|
||
html/ops
|
||
db_update.php
|
||
|
||
Rom 3 Mar 2005
|
||
- Bug Fix: Remove the prereq's for the Windows Scripting Host on
|
||
Windows
|
||
- Bug Fix: Convert all the VBS custom actions to C/C++ custom
|
||
actions
|
||
|
||
NOTE: I'm having problems with code paths that involve displaying
|
||
something to the user, so 7 out of the 10 custom actions have been
|
||
debugged, and the others are waiting on me to figure out why
|
||
MsiProcessMessage is returning 0 when it is supposed to be
|
||
returning 6.
|
||
|
||
win_build/installerv2/
|
||
< numerous files and folders >
|
||
|
||
Bruce 3 March 2005
|
||
- Added ops page for managing special users (from Christian Beer)
|
||
|
||
html/
|
||
ops/
|
||
index.php
|
||
manage_special_users.php
|
||
manage_special_users_action.php
|
||
|
||
David 3 Mar 2005
|
||
- typo in translation.inc (wrong date format in log file)
|
||
- db_update.php must be run from command line,
|
||
and gets user name/password interactively
|
||
instead of from config file
|
||
(from Eric Myers)
|
||
|
||
html/
|
||
inc/
|
||
ops.inc (new)
|
||
translation.inc
|
||
ops/
|
||
db_update.php
|
||
|
||
Rom 3 Mar 2005
|
||
- Bug Fix: Fix the rest of the custom actions
|
||
- Bug Fix: Hide password values from the log files
|
||
- Bug Fix: Enable Next by default on the Service Config page
|
||
|
||
win_build/installerv2/
|
||
< numerous files and folders >
|
||
|
||
David 3 Mar 2005
|
||
- include User-agent: BOINC field in all HTTP requests
|
||
(POST as well as GET)
|
||
- user web: missing wild-card char in email address lookup
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
http.C
|
||
html/user/
|
||
mail_passwd.C
|
||
|
||
Janus 4 Mar 2005
|
||
- Added optional project-specific callback functions for:
|
||
+ Workunit info page
|
||
+ User info page
|
||
+ User account page
|
||
+ Additional credit (old seti and old climateprediction)
|
||
These can be found in the project_callbacks.inc-file in the
|
||
project directory.
|
||
In the future you won't have to manually patch the CVS to edit
|
||
these pages - simply add stuff to these callback functions.
|
||
- Automatically detect image library to use with profiles
|
||
(from Christian Beer)
|
||
|
||
/html/
|
||
inc/
|
||
user.inc
|
||
profiles.inc
|
||
user/
|
||
show_user.php
|
||
home.php
|
||
workunit.php
|
||
project-sample/
|
||
project_callbacks.inc (new)
|
||
|
||
Rom 3 Mar 2005
|
||
- Bug Fix: Adjust the tail options for Linux with regards to
|
||
the self extracting archive script
|
||
|
||
sea/
|
||
make-sea.sh
|
||
|
||
David 5 Mar 2005
|
||
- code cleanup and reorganization.
|
||
Remove API-specific stuff from lib/filesys.C
|
||
Don't define HANDLE as int on Unix
|
||
|
||
api/
|
||
boinc_api.C
|
||
doc/
|
||
various changed and new
|
||
lib/
|
||
filesys.C,h
|
||
|
||
Rom 5 Mar 2005
|
||
- Add some additional log spew to display the daemon configuration
|
||
option and a note if the detected configuration doesn't support
|
||
graphics.
|
||
|
||
client/
|
||
client_state.C
|
||
|
||
David 5 Mar 2005
|
||
- initial support for GUI RPC authentication
|
||
If the core client finds a file called "gui_rpc_auth.cfg",
|
||
it reads a password from it, and all GUI RPC requests
|
||
must authenticate using a challenge/response sequence,
|
||
proving that they have the password without sending it.
|
||
- Added --passwd option to boinc_cmd
|
||
- Moved network-related code out of gui_rpc_server.C
|
||
and http.C (identical stuff) into lib/network.C,h
|
||
|
||
client/
|
||
file_names.h
|
||
gui_rpc_server.C,h
|
||
http.C
|
||
net_xfer.C,h
|
||
lib/
|
||
boinc_cmd.C
|
||
gui_rpc_client.C,h
|
||
network.C,h (new)
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boing_gui.vcproj
|
||
|
||
Bruce 7 March 2005
|
||
- Fix problem with ops page. If a clause had for example "name like '%Jim%'
|
||
then pushing the 'Next 20' link would break the additional clause.
|
||
Thanks for Christian Beer.
|
||
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
|
||
David 7 Mar 2005
|
||
- Unix compile fixes and core client code cleanup:
|
||
- add network.C to Makefile
|
||
- Move check_unique_instance() from file_names.C to main.C
|
||
|
||
client/
|
||
file_names.C,h
|
||
main.C
|
||
lib/
|
||
Makefile.am
|
||
network.C,h
|
||
|
||
David 7 Mar 2005
|
||
- Bug fixes in GUI RPC protection.
|
||
It works now using boinc_cmd.
|
||
(need to integrate in BOINC manager)
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
lib/
|
||
boinc_cmd.C
|
||
gui_rpc_client.C
|
||
|
||
David 7 Mar 2005
|
||
- validator: change credit-granting formula (median_mean_credit())
|
||
to ignore claimed credits close to zero.
|
||
This is a workaround for what seems to be a current bug
|
||
in the API or core client,
|
||
causing 0 or very low CPU time to get reported erroneously.
|
||
|
||
sched/
|
||
db_dump.C
|
||
validate_util.C
|
||
|
||
Rom 7 Mar 2005
|
||
- Bug Fix: Change the state refresh functionality from an OnIdle event
|
||
to a specific timer event since on some platforms the on timer
|
||
event is called really often.
|
||
|
||
clientgui/
|
||
Events.h
|
||
MainDocument.cpp, .h
|
||
MainFrame.cpp, .h
|
||
|
||
David 7 Mar 2005
|
||
- Core client: if a project is anonymous-platform,
|
||
don't require that main programs be marked as executable
|
||
|
||
client/
|
||
app_start.C
|
||
|
||
David 7 Mar 2005
|
||
- core client: win compile fixes
|
||
|
||
client/
|
||
main.C,h
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
network.cpp
|
||
|
||
Rom 7 Mar 2005
|
||
- Bug Fix: Remove the check to see if we have any projects already defined
|
||
or not, before promting the user for project information. This
|
||
keeps the client from getting stuck when being launched as a daemon
|
||
on the *nix machines.
|
||
|
||
client/
|
||
client_state.C, .h
|
||
cs_cmdline.C
|
||
main.C, .h
|
||
|
||
David 8 Mar 2005
|
||
- fixed bug where, if a trickle-up file arrives from app
|
||
while a scheduler RPC is in progress,
|
||
it gets deleted when the RPC concludes
|
||
(and therefore is never sent).
|
||
|
||
Solution: when put a trickle-up message in RPC request,
|
||
append ".sent" to its filename if not there already.
|
||
When get trickle-up ack, delete files of form trickle_up*.sent
|
||
client/
|
||
cs_trickle.C
|
||
lib/
|
||
util.C,h
|
||
|
||
David 8 Mar 2005
|
||
- user web: got rid of the "project_callbacks.inc" file.
|
||
"project.inc" is already being used for this purposes.
|
||
The project-specific functions must be defined there,
|
||
perhaps empty.
|
||
Also removed _callback from function names - they're
|
||
not callbacks in the conventional sense.
|
||
Also, these functions are expected to print, not return a string
|
||
(so they can call row2() and stuff like that)
|
||
- if a WU is pending validation, show that
|
||
- change CHARSET of english translation to UTF-8
|
||
|
||
html/
|
||
inc/
|
||
user.inc
|
||
languages/translations/
|
||
en.po
|
||
project.sample/
|
||
project.inc
|
||
project_callbacks.inc (removed)
|
||
user/
|
||
home.php
|
||
show_user.php
|
||
workunit.php
|
||
|
||
Rom 9 Mar 2005
|
||
- Bug Fix: Instead of relying on the wxWidget framework for UI
|
||
updates for various menu items, move the update code to the
|
||
OnFrameRender function so we don't eat CPU in what seems
|
||
to be a busy loop. It seems for platforms other than Windows
|
||
the Idle event is fired for each iteration of a message pump
|
||
check where no other events were processed. On Windows their
|
||
is an actual message sent by the OS called WM_IDLE which is
|
||
used by wxWidgets.
|
||
|
||
clientgui/
|
||
MainFrame.cpp, .h
|
||
|
||
David 9 Mar 2005
|
||
- db_dump: add UNIX time to directory names for old stats
|
||
(so that you can run db_dump more than once pre day)
|
||
|
||
sched/
|
||
db_dump.C
|
||
|
||
David 9 Mar 2005
|
||
- compile fix
|
||
|
||
client/
|
||
http.C
|
||
sched/
|
||
validate_util.h
|
||
|
||
Rom 9 Mar 2005
|
||
- Cleanup a few asserts that were happening under Linux and not
|
||
Windows
|
||
|
||
clientgui/
|
||
MainFrame.cpp
|
||
MainDocument.cpp
|
||
|
||
David 9 Mar 2005
|
||
- core client: allow show_graphics RPCs even for results
|
||
that are not currently scheduled
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
|
||
David 9 Mar 2005
|
||
- get rid of the STRING256 type, and change things to std::string
|
||
- subscript error in SCHEDULER_OP::update_urls().
|
||
Not sure if this could cause the project-clobber bug
|
||
|
||
client/
|
||
client_types.C,h
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
scheduler_op.C,h
|
||
|
||
David 9 Mar 2005
|
||
- When fetch a master URL, put it in a file of the form
|
||
master_PROJECTURL.html (not just master.html).
|
||
This will hopefully fix a bug where sometimes
|
||
one project's scheduler URL show up in another project.
|
||
- replace tabs with spaces
|
||
|
||
client/
|
||
acct_mgr.C
|
||
app_graphics.C
|
||
check_state.C
|
||
client_state.C
|
||
client_types.C
|
||
cs_benchmark.C
|
||
cs_files.C
|
||
cs_scheduler.C
|
||
cs_statefile.C
|
||
file_names.C,h
|
||
file_xfer.C
|
||
gui_rpc_server.C
|
||
http.C
|
||
main.C
|
||
net_xfer.C
|
||
scheduler_op.C,h
|
||
|
||
Rom 9 Mar 2005
|
||
- Bug Fix: refactor the status bar code so that it is a derived
|
||
class of wxStatusBar and then set it to be the status bar, which
|
||
in turn fixes the status bar creation bug on platforms other
|
||
than Windows in which the status bar text and bitmaps were
|
||
having their top and left values be set to 0,0.
|
||
|
||
clientgui/
|
||
MainFrame.cpp, .h
|
||
|
||
Rom 10 Mar 2005 ( On behalf of Komori H. )
|
||
- Bug Fix: Allow the proper translation of the status bar for languages
|
||
that change the ordering of works depending on context.
|
||
- Bug Fix: Include a meta tag in the task pane that specifies that the
|
||
task pane is UTF8.
|
||
|
||
clientgui/
|
||
MainFrame.cpp
|
||
BOINCTaskCtrl.cpp
|
||
|
||
David 10 Mar 2005
|
||
- core client: replace fopen() with boinc_fopen() in several places.
|
||
This could solve problems where some
|
||
other program (backup, virus check) is scanning files
|
||
- fix compile warnings
|
||
|
||
api/
|
||
gutil.C
|
||
apps/
|
||
concat.C
|
||
client/
|
||
cs_account.C
|
||
http.C
|
||
log_flags.C
|
||
next_xfer.C
|
||
scheduler_op.C
|
||
clientgui/
|
||
ViewMessages.cpp
|
||
ViewResources.cpp
|
||
ViewTransfers.cpp
|
||
doc/
|
||
manager.php (new)
|
||
menubar.php (new)
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
util.C,h
|
||
sched/
|
||
db_dump.C
|
||
server_types.C
|
||
validate_util.C
|
||
|
||
David 10 Mar 2005
|
||
- tested and fixed bugs in the core client's support for
|
||
account management RPC.
|
||
It now can make the RPC, parse the reply,
|
||
and attach to the projects listed in the reply.
|
||
|
||
client/
|
||
acct_mgr.C,h
|
||
client_state.C
|
||
lib/
|
||
boinc_cmd.C
|
||
gui_rpc_client.C
|
||
|
||
Charlie 11 Mar 2005
|
||
- Add support for building Mac GUI BOINC Manager, Core Client
|
||
and SETI@home application using XCODE IDE on Macintosh.
|
||
Removed Eric Heien's old boinc.pbroj which is confusing
|
||
on CVS because it is a bundle, which looks like a directory
|
||
to CVS. New boinc.pbproj bundle is checked in zipped.
|
||
|
||
- Changes for Mac GUI BOINC manager and core client.
|
||
Major rework of XCode project file.
|
||
BOINC Manager has standard Mac application bundle with icon.
|
||
Client doesn't ask for User ID or Project URL on command line.
|
||
Added code for Mac to determine idle time (user inactivity).
|
||
Core Client is embedded in BOINC Manager application bundle.
|
||
BOINC Manager sets working directory to
|
||
~/Application Support/Boinc_Data/
|
||
and then launches embedded Core Client.
|
||
|
||
client/
|
||
hostinfo_unix.C
|
||
main.C
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
lib/
|
||
hostinfo.h
|
||
mac_build/
|
||
boinc.pbproj/project.pbxproj (directory & file both removed)
|
||
boinc.pbproj.zip (new)
|
||
info.plist (new)
|
||
HowToBuildBOINC_XCode.rtf
|
||
|
||
Rom 11 Mar 2005
|
||
- Add Account Management support into the BOINC Manager.
|
||
|
||
NOTE: Some problems remain with the current design, such as
|
||
pointing out when a username and password combination is
|
||
invalid. Currently the only way for somebody to know
|
||
something is up is by looking into the messages tab, but
|
||
by then the username and password have been recorded in
|
||
the acct_mgr_login.xml file because there is no way for
|
||
the manager to know something is wrong.
|
||
|
||
clientgui/
|
||
BOINCGUI.pjd
|
||
DlgAccountManager.cpp, .h (added)
|
||
Events.h
|
||
MainDocument.cpp, .h
|
||
MainFrame.cpp, .h
|
||
lib/
|
||
acct_mgr_client.C, .h (added)
|
||
gui_rpc_client.C, .h
|
||
|
||
David 11 Mar 2005
|
||
- fix make_project
|
||
|
||
tools/
|
||
make_project
|
||
|
||
David 11 Mar 2005
|
||
- BOINC manager: avoid asserts by commenting out some code
|
||
- fix account manager functions
|
||
- print messages on acct mgr RPC start/end
|
||
|
||
client/
|
||
acct_mgr.C
|
||
clientgui/
|
||
MainFrame.cpp
|
||
lib/
|
||
acct_mgr_client.C
|
||
gui_rpc_client.C
|
||
|
||
David 12 Mar 2005
|
||
- Change the appearance of the Task area of the BOINC manager.
|
||
Use white background instead of blue.
|
||
Surround tasks with bordered boxes.
|
||
- commented out some unused code. Delete?
|
||
|
||
clientgui/
|
||
BOINCTaskCtrl.cpp,h
|
||
VewProjects.cpp
|
||
|
||
David 13 Mar 2005
|
||
- scheduler: add nowork_skip configuration flag.
|
||
If set, and there's no work, return from RPC
|
||
without looking up user/host records.
|
||
(this was previously the default. It no longer is)
|
||
- scheduler: if using locality scheduling, never set "have_no_work"
|
||
- scheduler: replace "Einstein" by "this project" in message
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_config.C,h
|
||
sched_send.C
|
||
|
||
David 13 Mar 2005
|
||
- db_dump: name archive dirs X_YYYY_mm_dd_hh_mm_ss
|
||
|
||
David 14 Mar 2005
|
||
- API: implement keyboard handling in X11 (from Eric Myers)
|
||
|
||
api/
|
||
x_opengl.C
|
||
|
||
Rom 15 Mar 2005
|
||
- Backout the meta tag change that was made to support Japanese,
|
||
aparently the string encodings are not automatically converted
|
||
in Linux, or something to that effect.
|
||
|
||
clientgui/
|
||
BOINCTaskCtrl.cpp
|
||
|
||
David 15 Mar 2005
|
||
- API: change timer_period from variable to constant
|
||
- fix compile warnings
|
||
|
||
api/
|
||
boinc_api.C
|
||
lib/
|
||
boinc_cmd.C
|
||
parse.C
|
||
|
||
David 15 Mar 2005
|
||
- BOINC manager: if project doesn't have a name yet, use its URL
|
||
|
||
clientgui/
|
||
MainDocument.cpp
|
||
|
||
Rom 15 Mar 2005
|
||
- Make the couldn't find messages visible only on debug builds, it
|
||
freaks people out when they see them in the BOINC Manager log
|
||
file even though it is normal for it to happen when the daemon
|
||
shuts down.
|
||
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
Rom 15 Mar 2005
|
||
- Remove the accessors from the cache container classes for each
|
||
of the views.
|
||
- Add the default system encoding to the help/about dialog for
|
||
the internationalization team.
|
||
|
||
clientgui/
|
||
DlgAbout.cpp
|
||
ViewProjects.cpp, .h
|
||
ViewResources.cpp, .h
|
||
ViewTransfers.cpp, .h
|
||
ViewWork.cpp, .h
|
||
|
||
Rom 16 Mar 2005
|
||
- Implement the diagnostics functions for platforms other than Windows.
|
||
|
||
NOTE: I was working in this area a bit since I'm trying to track down
|
||
why E@H isn't always able to display graphics during a start screen saver
|
||
request. The changes here and some build environment changes should
|
||
now allow us to build a debug E@H application with debug BOINC API
|
||
libraries and now see additional information reported to stderr_txt as
|
||
the application tries to identify/transition into the calling desktop.
|
||
|
||
lib/
|
||
diagnostics.C, .h
|
||
|
||
David 17 Mar 2005
|
||
- on Unix, create download files with user/group/other access
|
||
(RW or RWX, as needed)
|
||
All other files have permissions based on umask.
|
||
|
||
client/
|
||
client_types.C
|
||
cs_account.C
|
||
|
||
David 18 Mar 2005
|
||
- Web: make download network stuff work for new projects
|
||
|
||
html/inc/
|
||
download_network.inc
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
David 19 Mar 2005
|
||
- rewrite installer text for LGPL
|
||
- remove old license file
|
||
|
||
doc/
|
||
license_1.0.txt (removed)
|
||
win_build/installerv2/redist/0409/
|
||
eula.rtf
|
||
|
||
Bruce 19 Mar 2005
|
||
- Overdue checkins on a bunch of minor scheduler code. Some that is
|
||
E@H specific is now included (but protected by
|
||
#ifdef EINSTEIN_AT_HOME
|
||
to make it simpler for me to maintain consistency with BOINC cvs.
|
||
- Added project-specific unacceptable_os() function for rejecting hosts.
|
||
- Transitioner and scheduler now initalize host.max_results_day correctly
|
||
in database under all circumstances.
|
||
- Browser requests are now correctly identifed (REQUEST_METHO=="GET") and
|
||
properly redirected. This was broken. David, please see comment near
|
||
one of the probable_user_browser=true in handle_request.C. I think
|
||
something is wrong here (or I am missing the point!).
|
||
- More info about requests is logged
|
||
- If the scheduler hangs (incoming request incomplete) it will normally be
|
||
killed by Apache after a timeout. But this happens silently. So I now
|
||
install a signal handler and catch this SIGTERM. In this case an
|
||
error message is logged and all open files are flushed before exit(1)ing.
|
||
- If IO is passed through files, check that request length and content length
|
||
agree and log a message if they do NOT.
|
||
- active_frac not correctly reported by 4.19 and earlier core clients.
|
||
Adjust for this in estimating wallclock execution times.
|
||
- All messages sent to user ALSO get logged to cgi.log
|
||
- Added a small block into validator code to attach a debugger.
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_send.C
|
||
main.C
|
||
transitioner.C
|
||
validator.C
|
||
|
||
David 19 Mar 2005
|
||
- API: changed all vars modified by signal handler to "volatile"
|
||
- API: fixed typo in key handling for Unix
|
||
|
||
api/
|
||
boinc_api.C
|
||
|
||
David 21 Mar 2005
|
||
- API: changed time variables in worker signal handler from double to int.
|
||
Apparently some platforms had atomicity problems
|
||
where accessing doubles uses multiple instructions
|
||
and a signal was happening in the middle.
|
||
Don't need fractional time because worker timer period is 1 sec.
|
||
From Takafumi Kawana and Bruce Allen.
|
||
- boinc_checkpoint_completed(): clear ready_to_checkpoint
|
||
AFTER resetting time_until_checkpoint
|
||
From Takafumi Kawana.
|
||
|
||
api/
|
||
boinc_api.C
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 21 Mar 2005
|
||
- BOINC web site: reorganized front page, download page
|
||
- scheduler: fixed a heinous bug in validate_util.C
|
||
introduced on 7 Mar 2005
|
||
|
||
doc/
|
||
various
|
||
sched/
|
||
handle_request.C
|
||
validate_util.C
|
||
|
||
Rom 22 Mar 2005
|
||
- Bug Fix: Capture the WM_CLOSE message that Intellitype and Intellipoint
|
||
sends us and ignore them, that'll keep the screensaver up and running
|
||
even when Intellipoint/Intellitype is trying to shut us down.
|
||
|
||
client/win/
|
||
win_screensaver.cpp, .h
|
||
|
||
David 22 Mar 2005
|
||
- user web: mail_passwd.php was broken. Aargh.
|
||
|
||
html/user/
|
||
forum_thread.php
|
||
mail_passwd.php
|
||
|
||
David 22 Mar 2005
|
||
- core client: the -attach_project option now must be followed
|
||
by the URL and account key.
|
||
It no longer prompts for these.
|
||
|
||
client/
|
||
client_state.C,h
|
||
cs_cmdline.C
|
||
main.C
|
||
|
||
David 23 Mar 2005
|
||
- user web: added "prefs" anchor to home.php so you can
|
||
link to Preferences from front page.
|
||
- add teamid to account management RPCs
|
||
|
||
html/
|
||
inc/
|
||
user.inc
|
||
user/
|
||
am_get_info.php
|
||
am_set_info.php
|
||
|
||
David 23 Mar 2005
|
||
- user web: don't delete teams even when they become empty
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
ops/
|
||
db_update.php
|
||
user/
|
||
white.css
|
||
|
||
David 24 Mar 2005
|
||
- User web: in create_account_action() there was SQL of the form
|
||
select * from user where email_addr like '@$email_addr\\_%'.
|
||
THIS IS NOT CORRECT.
|
||
The email address itself can contain underscores,
|
||
which are wildcards for "like".
|
||
If the user table is big (like S@h) and the email address
|
||
is like a_a@b.c, a very slow query will result.
|
||
- added functions lookup_user_munged_email() and validated()
|
||
to inc/email.inc.
|
||
Use these for logic related to munged email addresses -
|
||
don't put SQL into top-level PHP files.
|
||
|
||
html/
|
||
inc/
|
||
email.inc
|
||
user/
|
||
create_account_action.php
|
||
|
||
Charlie 25 Mar 2005
|
||
- BOINC Manager: create BOINC Data directory in
|
||
"/Library/Application Support/" directory,
|
||
not in user's "~/Library/Application Support/"
|
||
- Set working directory to "BOINC Data" before redirecting stdout and stderr
|
||
- Fixed BOINCTRACE compile warning when non-debug build on Mac
|
||
- Fixed bug in CTaskBarIcon::OnNetworkSelection
|
||
- Implemented Dock popup menu using CTaskBarIcon class
|
||
- Implemented System Menubar Icon menu using CMacSystemMenu class
|
||
derived from CTaskBarIcon class
|
||
- Changed "Hide" menu item to "Close" (Mac only)
|
||
|
||
client/
|
||
main.c
|
||
|
||
clientGUI/
|
||
BOINCGUIApp.cpp
|
||
BOINCTaskBar.cpp/h
|
||
MainFrame.cpp
|
||
clientGUI/mac/
|
||
MacSysMenu.cpp/h (add)
|
||
SystemMenu_Prefix.pch (add)
|
||
SystemMenu.m (add)
|
||
lib/
|
||
diagnostics.h
|
||
mac_build/
|
||
Info.plist (add)
|
||
SystemMenu-Info.plist (add)
|
||
boinc.pbproj/project.pbxproj (add)
|
||
|
||
Charlie 26 Mar 2005
|
||
- BOINC Manager: Workaround apparent bug in Mac version of WxWidgets which
|
||
prevented the main window's size and position from being restored on
|
||
application launch.
|
||
- Precompile stdwx.h in XCode project BOINC Manager builds.
|
||
|
||
clientGUI/
|
||
MainFrame.cpp
|
||
mac_build/
|
||
boinc.pbproj/
|
||
project.pbxproj
|
||
|
||
Rom 28 Mar 2005
|
||
- Well now that I've fully tested and deployed BOINC via Active Directory,
|
||
I found something wrong. When deploying BOINC to the computer via
|
||
Active Directory the installation runs as the computer account when
|
||
copying files so files can be read off a network share, but when we get
|
||
to the CopyAccountFiles custom action setup would fail since LOCALSYSTEM
|
||
only has access to the local machine.
|
||
|
||
The solution is to include the account files and any other configuration
|
||
file as part of the BOINC MSI transform which needs to be created in
|
||
order to populate the global properties for deployment. The setup
|
||
documentation will be updated to reflect this change.
|
||
|
||
- Bug Fix: Attempting to install BOINC in a managed environment would fail
|
||
since ALLUSERS is automatically set to 1 for any installation type. So
|
||
if we detect that we are being installed in a managed environment
|
||
ignore the ALLUSERS value.
|
||
|
||
Menu items are still installed for all users though, that'll be fixed
|
||
a little later.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/Windows/src/boinccas/
|
||
boinccas95.def
|
||
boinccas95.vcproj
|
||
CACopyAccountFiles.cpp, .h (removed)
|
||
CAValidateSetupType.cpp
|
||
win_build/installerv2/redist/Windows/x86/
|
||
boinccas.dll
|
||
boinccas95.dll
|
||
|
||
David 28 Mar 2005
|
||
- user web: put charset in header if it's defined (from Jens)
|
||
- user web: call db_init() before mysql_real_escape_string()
|
||
|
||
html/
|
||
inc/
|
||
util.inc
|
||
user/
|
||
account_created.php
|
||
am_get_info.php
|
||
am_query.php
|
||
am_set_info.php
|
||
confirm_email_change.php
|
||
login_action.php
|
||
|
||
Rom 28 Mar 2005
|
||
- Keep people from rating posts if their RAC falls below 5.0
|
||
|
||
html/inc/
|
||
forum.inc
|
||
|
||
David 29 Mar 2005
|
||
- user SHM_R|SHM_W instead of 0777 in shmget() call
|
||
|
||
lib/
|
||
shmem.C
|
||
|
||
David 29 Mar 2005
|
||
- API: in boinc_finish(),
|
||
call boinc_worker_thread_cpu_time() instead of
|
||
boinc_calling_thread_cpu_time()
|
||
(since the graphics thread can call boinc_finish()).
|
||
Also, offset CPU time by initial_wu_cpu_time
|
||
instead of aid.wu_cpu_time
|
||
|
||
This may help "zero CPU time" problems, but I doubt it
|
||
|
||
api/
|
||
boinc_api.C
|
||
lib/
|
||
util.C
|
||
|
||
Rom 29 Mar 2005
|
||
- Bug Fix: Populate the tooltip field for the system tray icon
|
||
so that people can flag the manager as hidden and keep it hidden,
|
||
instead of having it show back up after every reboot.
|
||
- Bug Fix: Fix the Disable network access menu items after Charlie's
|
||
fix for the Mac, apparently the event class is populated at different
|
||
points between the two platforms, which causes code confusion, and
|
||
the docs don't help. Instead query the state from the core client
|
||
and then figure out what to do, this keeps the code the same on all
|
||
platforms and avoids the quirk.
|
||
- Add additional information to the attach to projects dialog describing
|
||
the project url and account key are sent via email from the project.
|
||
- Changed the baloon timeout value from 10 seconds to 5 seconds which is
|
||
about where the majority believes it should be.
|
||
|
||
clientgui/
|
||
BOINCGUI.pjd
|
||
BOINCTaskBar.cpp
|
||
DlgAttachProject.cpp
|
||
MainFrame.cpp
|
||
clientgui/msw/
|
||
taskbarex.h
|
||
|
||
David 29 Mar 2005
|
||
- moved NetOpen(), NetClose(), NetCheck() from win_net.cpp (removed)
|
||
to lib/network.C
|
||
|
||
client/
|
||
client_state.C
|
||
hostinfo_network.h
|
||
hostinfo_unix.C
|
||
time_stats.C
|
||
win/
|
||
win_net.cpp,h (removed)
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
network.C,h
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
|
||
David 29 Mar 2005
|
||
- Transitioner: when updating a workunit
|
||
(DB_TRANSITIONER_ITEM_SET::update_workunit()),
|
||
only update those fields that have changed since we read it.
|
||
This is an attempt to deal with the following scenario:
|
||
|
||
1) validator finds canonical result, triggers assimilation,
|
||
sets assimilate_state = READY
|
||
2) transitioner reads WU
|
||
3) assimilator reads WU and updates assimilate_state = DONE
|
||
4) transitioner writes WU (with assimilate_state still READY)
|
||
5) assimilator processes WU again (ERROR)
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
assimilator.C
|
||
transitioner.C
|
||
|
||
|
||
Rom 29 Mar 2005
|
||
- Implement GUI RPC authentication in the manager
|
||
- Implement a Select Computer MRU list so you only have to type
|
||
the remote computer name once.
|
||
|
||
clientgui/
|
||
DlgSelectComputer.cpp
|
||
MainDocument.cpp, .h
|
||
MainFrame.cpp, .h
|
||
lib/
|
||
gui_rpc_client.C, .h
|
||
|
||
Charlie 29 Mar 2005
|
||
BOINC Manager: Work around apparent bug in Mac version of WxWidgets
|
||
which prevented the main window's size and position from being
|
||
restored on application launch.
|
||
Main widow close box doesn't quit application.
|
||
Postponed implementing the umask change due to security concerns:
|
||
removed umask(0) from Core Client & BOINC Manager; changed BOINC
|
||
Data directory back to user's "~/Library/Application Support/"
|
||
Automate generating Mac version numbers from version.h file. (Added
|
||
shell script build phase and tiny SetVersion shell application to
|
||
XCode project to create / update InfoPlist.strings file.)
|
||
CViewProjects::OnTaskLinkClicked(): added casts to change compiler
|
||
errors to compiler warnings; this allows it to compile.
|
||
|
||
client/
|
||
main.C
|
||
clientGUI/
|
||
BOINCGUIApp.cpp
|
||
MainFrame.cpp
|
||
ViewProjects.cpp
|
||
clientGUI/mac/
|
||
SetVersion.C (add)
|
||
mac_build/
|
||
boinc.pbproj/
|
||
project.pbxproj
|
||
|
||
David 30 Mar 2005
|
||
- Fixed bug where clients report a result CPU time as zero,
|
||
even though the result used a lot of CPU.
|
||
The basic problem was in the API: the final call to
|
||
update_app_progress() (from boinc_finish())
|
||
was trying to send a status message.
|
||
But some fraction of the time the message slot was full
|
||
(core client hadn't read previous message)
|
||
so this message wouldn't get delivered.
|
||
Core client was using checkpoint_cpu_time as final CPU,
|
||
so (for applications that never checkpoint)
|
||
the core client would never get a nonzero checkpoint_cpu_time.
|
||
|
||
I fixed this at both ends, i.e. if you either use a new core client
|
||
with old apps, or use new apps with existing core clients,
|
||
the problem will go away.
|
||
Fixes:
|
||
|
||
1) API: retry sending final status message a few times w/ sleep
|
||
2) core client: use current_cpu_time rather than checkpoint_cpu_time
|
||
as the result's final_cpu_time.
|
||
- core client: show current directory on startup
|
||
- win compile fixes
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app_control.C
|
||
client_state.C
|
||
net_xfer.C
|
||
win/
|
||
wingui.h
|
||
clientgui/
|
||
BOINCTaskCtrl.cpp
|
||
lib/
|
||
network.h
|
||
|
||
David 30 Mar 2005
|
||
- Apparently, even though the port number 1043 is assigned to BOINC
|
||
(see http://www.iana.org/assignments/port-numbers)
|
||
Microsoft IIS binds to it on some systems.
|
||
So...
|
||
core client: if can't bind to 1043, bind to 31416
|
||
BOINC mgr: if can't connect to 31416, connect to 1043
|
||
|
||
If something is bound to 31416 we're screwed.
|
||
Thanks a lot, Microsoft!
|
||
|
||
client/
|
||
gui_rpc_server.C,h
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
sched/
|
||
sched_util.C
|
||
|
||
David 31 Mar 2005
|
||
- BOINC Manager compile fixes for Unix
|
||
|
||
clientgui/
|
||
MainDocument.cpp,h
|
||
Makefile.am
|
||
ViewProjects.cpp
|
||
|
||
Rom 31 Mar 2005
|
||
- Bug#59 Fixed: SystemTray Icon Does Not Remain Hidden
|
||
- Bug#79 Fixed: When manager window is in background selecting open
|
||
boinc manager does not bring it to front
|
||
- Bug#80 Fixed: Double clicking on system tray icon should open
|
||
manager/bring it into focus
|
||
- Bug#118 Fixed: BOINC Manager needs to prompt for project information
|
||
when no projects are detected
|
||
- Bug#143 Fixed: Position and size not saved consistantly
|
||
|
||
clientgui/
|
||
BOINCTaskBar.cpp
|
||
MainFrame.cpp, .h
|
||
|
||
Rom 1 Apr 2005
|
||
- Make the dialog manager files and implementation match so others
|
||
can make changes to the dialogs
|
||
|
||
clientgui/
|
||
BOINCGUI.pjd
|
||
DlgAbout.cpp, .h
|
||
DlgAccountManager.cpp, .h
|
||
DlgAttachProject.cpp, .h
|
||
DlgConnection.cpp, .h
|
||
DlgOptions.cpp, .h
|
||
DlgSelectComputer.cpp, .h
|
||
|
||
David 1 April 2005
|
||
- create_shmem(): use mode 0666 when creating shared mem
|
||
- attach_shmem(): fix error check on shmat() return
|
||
- sched_util.C: get_log_path() was creating directory in wrong place
|
||
|
||
api/
|
||
boinc_api.C
|
||
lib/
|
||
shmem.C
|
||
sched/
|
||
handle_request.C
|
||
sched_util.C
|
||
|
||
David 1 April 2005
|
||
- Parse environment vars AFTER parsing the client state file.
|
||
Otherwise env vars are ignored
|
||
|
||
client/
|
||
main.C
|
||
|
||
David 1 April 2005
|
||
- core client: if an app hasn't checkpointed yet,
|
||
leave it in memory when preempting.
|
||
|
||
client/
|
||
cs_apps.C
|
||
|
||
Janus 2 April 2005
|
||
- Lots of updates for the website translation system:
|
||
- Now creates missing dirs when first installed
|
||
- Supports "dual ID" language files (ie those files that have
|
||
names like xx_YY (for instance zh_TW for the Chinese)
|
||
Please note the use of lower- and uppercase letters.
|
||
- You can now override the automatic selection by the use of
|
||
a cookie named "lang". A page for setting this cookie has also
|
||
been made (language_select.php).
|
||
- The automatic selection now searches for all the languages that
|
||
the user's browser specifies before using the project default
|
||
(ie. it no longer uses only the first language that the browser
|
||
gives it in the string).
|
||
- Made some small additions to en.po so that the language select page
|
||
can display the correct names of the languages instead of their
|
||
ISO names: "Danish (Dansk)" instead of "da".
|
||
- Added some more logging so that missing tokens will be printed to
|
||
the logfile as well as on screen.
|
||
- Added the title on the sample forum index page to en.po
|
||
|
||
/html/
|
||
inc/
|
||
translation.inc
|
||
languages/
|
||
translations/
|
||
en.po
|
||
user/
|
||
language_select.php (new)
|
||
img/ (new)
|
||
da.png (new)
|
||
|
||
David 2 April 2005
|
||
html/
|
||
inc/
|
||
translation.inc
|
||
ops/
|
||
repair_validator_problem.php
|
||
|
||
David 3 April 2005
|
||
- Maintain the "main host venue" in a more robust way.
|
||
(Reminder: the "main host venue" is the host venue of the
|
||
project that supplied the most recent global prefs.
|
||
Host venues for each project are stored in account files.
|
||
The global prefs file identifies the source project.)
|
||
|
||
Old: main host venue is stored in the client state file,
|
||
and updated only when a scheduler RPC returns
|
||
global prefs with a new host venue.
|
||
Problem: if it's missing from the client state file
|
||
it may never get set to the correct value.
|
||
|
||
New: on startup, the global prefs file is parsed once
|
||
to obtain the source project.
|
||
Then main host venue is computed, based on the source
|
||
project and the host venue specified in its account file.
|
||
Then the global prefs file is parsed again, using this venue.
|
||
- user web: add option for columnar prefs display.
|
||
Append "&cols=1" to prefs.php URL
|
||
- boinc_cmd (command-line tool): fix bugs and improve argument checking.
|
||
Change syntax of some operations (see web page)
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.h
|
||
html/
|
||
inc/
|
||
prefs_col.inc
|
||
user/
|
||
prefs.php
|
||
lib/
|
||
boinc_cmd.C
|
||
|
||
Rom 3 Apr 2005
|
||
- Add an additional error code to the screensaver framework to
|
||
report back the difference between BOINC being idle and BOINC
|
||
being idle and not being attached to any projects.
|
||
|
||
client/
|
||
ss_logic.C, .h
|
||
boinc_ss.h
|
||
boinc_ss.rc
|
||
win_screensaver.cpp, .h
|
||
lib/
|
||
gui_rpc_client.h
|
||
|
||
David 3 April 2005
|
||
- BOINC manager: new "statistics" tab (from Jens Breitbart)
|
||
Here's Jens' summary of changes:
|
||
- Client
|
||
* Statistics are stored on a daily basis
|
||
~ Statistics := {User & host total credit, user & host avg. credit}
|
||
~ max. 30 days are stored
|
||
* Statistics are gathered after the client has contacted the scheduler
|
||
~ No extra call to the scheduler is made, just information already
|
||
provided are stored
|
||
* Added support for the RPC call "<get_statistics/>"
|
||
~ Answer include all saved statistics from all projects
|
||
~ Syntax of the answer:
|
||
<statistics>
|
||
<project_statistics>
|
||
<master_url>%s</master_url>
|
||
<daily_statistics>
|
||
<day>%f</day>
|
||
<user_total_credit>%f</user_total_credit>
|
||
<user_expavg_credit>%f</user_expavg_credit>
|
||
<host_total_credit>%f</host_total_credit>
|
||
<host_expavg_credit>%f</host_expavg_credit>
|
||
</daily_statistics> <- repeated for each day
|
||
</project_statistics> <- repeated for each project
|
||
</statistics>
|
||
* Statistics are saved in files called "statistics_master_url.xml"
|
||
~ Syntax is similar to the one shown above except every project is
|
||
saved in its own file
|
||
~ Files are saved after every scheduler reply
|
||
~ Files are read at client start
|
||
~ Files are deleted on project detach
|
||
- Manager
|
||
* Added a statistic tab
|
||
~ Drawing the graph on a wxPanel using the paint event.
|
||
~ wxPlottWindow not working very reliable...
|
||
~ Design is looking quite simple
|
||
* Using the RPC "<get_statistics/>" to get the Information from the client
|
||
|
||
client/
|
||
client_state.C,h
|
||
client_types.C,h
|
||
cs_account.C
|
||
file_names.C,h
|
||
gui_rpc_server.C
|
||
scheduler_op.C
|
||
ss_logic.C
|
||
clientgui/
|
||
BOINCBaseView.cpp.h
|
||
MainDocument.cpp,h
|
||
MainFrame.cpp
|
||
ViewStatistics.cpp,h (new)
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
util.C,h
|
||
win_build/
|
||
BOINCGUI.vcproj
|
||
|
||
David 4 April 2005
|
||
- compile fixes for Unix
|
||
|
||
cliengui/
|
||
MainFrame.cpp
|
||
Makefile.am
|
||
|
||
David 4 April 2005
|
||
- Call get_connected_state() every 10 seconds, not 10X per second
|
||
(it does a registry lookup on Win)
|
||
- fix names of SS constants
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C
|
||
ss_logic.C,h
|
||
time_stats.C,h
|
||
win/
|
||
win_screensaver.cpp
|
||
lib/
|
||
boinc_cmd.C
|
||
|
||
David 4 April 2005
|
||
- Core client: don't print "no final message" (not relevant in most cases)
|
||
- Core client: don't do SS poll more than once per second
|
||
- Core client: don't do SS reset on each CPU resched
|
||
(no reason to start/stop SS if same app running)
|
||
- Get rid of SS_STATUS_RESTARTREQUEST,
|
||
which as far as I can tell involved the core client asking
|
||
the screensaver to ask it to do graphics again.
|
||
Instead, the core client just tells another app to start doing SSG.
|
||
It hangs on to the last GRAPHICS_MSG
|
||
(workstation/desktop will be the same)
|
||
- Got rid of SS_STATUS_NOTGRAPHICSCAPABLE
|
||
???
|
||
- Allow really small CPU scheduling periods (for debugging)
|
||
|
||
client/
|
||
app_control.C
|
||
app_graphics.C
|
||
client_state.C
|
||
cs_apps.C
|
||
ss_logic.C,h
|
||
win/
|
||
win_screensaver.cpp,h
|
||
lib/
|
||
gui_rpc_client.h
|
||
prefs.C
|
||
|
||
Rom 5 April 2005
|
||
- Moved the daemon communication to a seperate thread so that the screensaver
|
||
can be more responsive to the system since it cannot now be blocked on
|
||
network IO.
|
||
|
||
client/win/
|
||
win_screensaver.cpp,h
|
||
|
||
Charlie 5 April 2005
|
||
Mac: Enabled close box on science application graphics, handle Quit properly
|
||
using Bernd's suggestions. Hide GLUT menu bar. Bring application to
|
||
front when "Show Graphics" is selected in BOINC Manager.
|
||
|
||
api/
|
||
x_opengl.C
|
||
|
||
Rom 5 April 2005
|
||
- Bug Fix: We stoped ack'ing the MODE_UNSUPPORTED from a science application
|
||
after a screensaver start request. Check for any graphics messages that
|
||
need to be processed from get_next_graphics_capable_app().
|
||
- Bug Fix: Adjust the logic of get_next_graphics_capable_app() so that even
|
||
if the graphics mode was MODE_WINDOW or MODE_HIDE_GRAPHICS before the
|
||
start of the screensaver, we still factor in what it's current
|
||
graphics_mode_acked in case it has been changed to MODE_UNSUPPORTED
|
||
|
||
client/
|
||
app_graphics.C
|
||
client/win/
|
||
win_screensaver.cpp
|
||
|
||
David 6 April 2005
|
||
Changes to support users whose Internet providers
|
||
modify image files in transit.
|
||
Cell-phone-based providers using UMTS (e.g. Vodaphone)
|
||
apparently do this.
|
||
|
||
- Add a preference "dont_verify_images" that tells BOINC
|
||
not to verify (via signature or checksum) image files.
|
||
"Image files" for those whose names end with .jpg, .jpeg or .png.
|
||
|
||
- Change the Windows path separator from \ to /
|
||
|
||
client/
|
||
app_start.C
|
||
cs_files.C
|
||
file_names.C,h
|
||
gui_rpc_server.C
|
||
pers_file_xfer.C
|
||
html/
|
||
inc/
|
||
prefs.inc
|
||
lib/
|
||
filesys.h
|
||
prefs.C,h
|
||
|
||
Rom 6 April 2005
|
||
- Implement a connection manager thread for the Manager, it is really rough.
|
||
|
||
NOTE: Currently crashes on exit, due to an access violation, and changing
|
||
computers does not work. It also prompts for a project every time it
|
||
starts
|
||
- Read/Write font information to the registry so we can attempt to
|
||
identify some of the localization issues as possible font set issues with
|
||
wxwidgets.
|
||
|
||
clientgui/
|
||
BOINCBaseView.h
|
||
BOINCTaskCtrl.cpp
|
||
MainDocument.cpp, .h
|
||
stdwx.h
|
||
|
||
David 6 April 2005
|
||
- screensaver tweaks
|
||
- code cleanup in screensaver.cpp
|
||
|
||
client/win/
|
||
boinc_ss.rc
|
||
win_screensaver.cpp
|
||
res/
|
||
boinc.cmp
|
||
|
||
Rom 6 April 2005
|
||
- Added the connecting state to the status bar since the UI was displaying
|
||
it as disconnected when we would switch between machines.
|
||
- Bug Fix: Explicitly declare the network connection thread as a joinable
|
||
thread, by default wxWidgets defines the default behavior as detached
|
||
which handles its own destruction.
|
||
|
||
NOTE: The documentation also states that on Windows all threads are
|
||
joinable, so in the end, the crashes were related to me attempting to
|
||
cleanup the thread when it had already deleted itself, which caused a
|
||
double free situation.
|
||
|
||
clientgui/
|
||
MainDocument.cpp, .h
|
||
MainFrame.cpp, .h
|
||
|
||
David 6 April 2005
|
||
- code cleanup in BOINC manager
|
||
|
||
clientgui/
|
||
*.cpp
|
||
|
||
David 7 April 2005
|
||
- Attempt to fix the situation where:
|
||
1) user merges hosts; hosts with lower IDs are folded
|
||
into host with maximal ID, then deleted
|
||
2) If host's client_state.xml file still has one of the
|
||
lower IDs, then the next time it contacts the scheduler,
|
||
the host lookup fails and a new host record is created,
|
||
which defeats the purpose of the merge.
|
||
|
||
Solution:
|
||
- When merge hosts, don't delete lower-ID records.
|
||
Instead, change them to "zombie" state, in which:
|
||
- userid is zero
|
||
- rpc_seqno is ID of new host record
|
||
- scheduler: if host is zombie, follow link to new host,
|
||
send back its ID to client
|
||
|
||
db/
|
||
boinc_db.h
|
||
html/
|
||
inc/
|
||
util.inc
|
||
user/
|
||
host_edit_action.php
|
||
host_edit_form.php
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 7 April 2005
|
||
- Core client: deal correctly with HTTP servers that don't support
|
||
the Range: option.
|
||
Namely: if we issue an HTTP GET request with a Range option,
|
||
and the reply header is 200 OK (rather than 206 Partial Content)
|
||
then assume the server is sending us the whole file;
|
||
reset bytes_xfered and offset to zero,
|
||
and open the file in "wb" rather than "ab" mode.
|
||
|
||
client/
|
||
http.C,h
|
||
|
||
David 7 April 2005
|
||
- Python: in install_boinc_files(): don't copy "sample" php files,
|
||
since this is called from "upgrade" and it would overwrite
|
||
existing files.
|
||
Move the copies to install_project(),
|
||
which is used only at project creation.
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
David 7 April 2005
|
||
- Show complete account info in profile page
|
||
- fix name conflict in PHP
|
||
|
||
html/
|
||
inc/
|
||
profile.inc
|
||
user.inc
|
||
util.inc
|
||
user/
|
||
host_edit_form.php
|
||
show_user.php
|
||
|
||
Rom 7 April 2005
|
||
- Switch the connection errors and connection initialization routines
|
||
from a polling style routines to an event style, this fixes the
|
||
issues of the attach to project dialog being displayed at odd
|
||
times.
|
||
- Warn the user of connection failures to a new host.
|
||
- Deal with various odd issues that cropped up due to the connection
|
||
thread being introduced to the system.
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
MainDocument.cpp, .h
|
||
MainFrame.cpp, .h
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
Rom 7 April 2005
|
||
- Enable the F1 key so that it'll open up a browser to
|
||
http://boinc.berkeley.edu/manager.php
|
||
- Add status bar text for each task that is defined and don't remove it
|
||
until the list has been updated.
|
||
- Define and fire an update view window message which is used to quickly
|
||
update the listview out of cycle with the timer event, but since the
|
||
timer event in turn fires the same event, we won't be caught in a
|
||
recursive update loop. We can only process one of these messages at
|
||
a time.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
BOINCTaskCtrl.cpp, .h
|
||
Events.h
|
||
MainFrame.cpp, .h
|
||
ViewMessages.cpp, .h
|
||
ViewProjects.cpp, .h
|
||
ViewResources.cpp, .h
|
||
ViewStatistics.cpp, .h
|
||
ViewTransfers.cpp, .h
|
||
ViewWork.cpp, .h
|
||
|
||
David 8 April 2005
|
||
- compile fixes, code cleanup
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp
|
||
BOINCGUIApp.cpp
|
||
BOINCListCtrl.cpp
|
||
BOINCTaskBar.cpp
|
||
DlgOptions.cpp
|
||
MainDocument.cpp
|
||
MainFrame.cpp
|
||
ViewMessages.cpp
|
||
|
||
David 8 April 2005
|
||
- user web: weaken the test for hosts to be considered compatible
|
||
for the "merge" function.
|
||
This is needed because different versions of the core client
|
||
reported CPU vendor/model differently.
|
||
|
||
If two hosts have the words "Intel" and "Pentium" anywhere
|
||
in their vendor/model,
|
||
and they don't have conflicting xxxGHz strings,
|
||
consider them compatible
|
||
|
||
client/
|
||
app_graphics.C
|
||
html/inc/
|
||
host.inc
|
||
|
||
David 8 April 2005
|
||
- Manager: removed extraneous stuff from About box
|
||
- Manager: don't show version number in status bar
|
||
|
||
clientgui/
|
||
DlgAbout.cpp
|
||
DlgSelectComputer.cpp
|
||
MainFrame.cpp
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
David 8 April 2005
|
||
- Made library functions for creating a socket,
|
||
and for changing a socket to/from asynch mode
|
||
- GUI RPC client: allow for asynchronous connection.
|
||
First you call RPC_CLIENT::init(host, true),
|
||
then you call RPC_CLIENT::init_poll()
|
||
until it returns either zero (connected)
|
||
or a value other than ERR_RETRY (error)
|
||
|
||
client/
|
||
net_xfer.C
|
||
lib/
|
||
error_numbers.h
|
||
gui_rpc_client.C,h
|
||
network.C,h
|
||
|
||
David 8 April 2005
|
||
- debugged asynchronous connect for GUI RPC
|
||
|
||
lib/
|
||
boinc_cmd.C
|
||
gui_rpc_client.C,h
|
||
|
||
David 9 April 2005
|
||
- GUI RPC: allow RPCs used by screensaver
|
||
(get/set screensaver state, get state, get results)
|
||
from local host without password authentication.
|
||
This eliminates need for screensaver to read password file
|
||
|
||
client/
|
||
gui_rpc_server.C,h
|
||
|
||
David 9 April 2005
|
||
- move NET_XFER::get_ip_addr() to lib/network.C,
|
||
and rename it resolve_hostname()
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
net_xfer.C
|
||
proxy.C
|
||
lib/
|
||
network.C,h
|
||
|
||
Rom 9 April 2005
|
||
- Initial checkin for async sockets wok for the manager.
|
||
|
||
NOTE: It currently reports back a -103 ERR_WRITE from the
|
||
rpc.authorize function.
|
||
|
||
clientgui/
|
||
Events.h
|
||
MainDocument.cpp, .h
|
||
MainFrame.cpp, .h
|
||
|
||
David 10 April 2005
|
||
- debug BOINC manager connection code
|
||
|
||
clientgui/
|
||
MainDocument.cpp
|
||
MainFrame.cpp
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
David 10 April 2005
|
||
- add is_file() to lib interface
|
||
- compile fix in zip code
|
||
|
||
lib/
|
||
filesys.C,h
|
||
zip/
|
||
boinc_zip.cpp
|
||
|
||
David 10 April 2005
|
||
- Unix compile fixes
|
||
|
||
client/
|
||
Makefile.am
|
||
clientgui/
|
||
Makefile.am
|
||
lib/
|
||
filesys.C
|
||
|
||
Bruce 11 April 2005
|
||
- Added signal handler to file_upload_handler along with a bit
|
||
of logging. This is intended to help debug file uploading
|
||
problems, where apache kills the file upload handler because
|
||
something is going wrong.
|
||
|
||
sched/
|
||
file_upload_handler.C
|
||
|
||
|
||
David 11 April 2005
|
||
- GUI RPC: if core client is < 4.30, don't do password authentication
|
||
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
Rom 11 April 2005 (boinc)
|
||
- Tag for 4.30 release, all platforms
|
||
boinc_core_release_4_30
|
||
|
||
David 11 April 2005
|
||
- Core client: if we're configured to not accept remote GUI RPC connections
|
||
(i.e., remote_hosts.cfg if absent or empty,
|
||
and the -allow_remote_gui_rpc cmdline is absent)
|
||
then bind our listening socket to 127.0.0.1 rather than INADDR_ANY.
|
||
This will in theory disallow remote connections.
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
|
||
Bruce 11 April 2005
|
||
- Scheduler: with locality scheduling, if we touch a trigger file then
|
||
sleep, and then try again, but DON'T find more work available, give up
|
||
trying to make work for that file.
|
||
|
||
- File upload handler: to prevent multiple instances of file_upload_handler
|
||
from trying to upload the SAME file,
|
||
use lockf() to place an advisory lock on the file.
|
||
David, I probably should have discussed this with you first,
|
||
but it's too early in the morning.
|
||
Please revert if this is a mistake!
|
||
|
||
sched/
|
||
sched_locality.C
|
||
file_upload_handler.C
|
||
|
||
David 12 April 2005
|
||
- The test script test_uc.py didn't work. There were 2 problems:
|
||
1) the core client's logic for checking an account filename
|
||
was too strict. It required a dot in the hostname,
|
||
which wasn't present here ("localhost")
|
||
2) the Python code for signing executables needed to look
|
||
both in bin/ (for "upgrade") and ../tools/ (for test)
|
||
for the sign_executable program
|
||
|
||
client/
|
||
file_names.C
|
||
py/Boinc/
|
||
setup_project.py
|
||
tools.py
|
||
|
||
David 12 April 2005
|
||
- core client: in result-finished message, show result name, not WU name
|
||
- core client: fix handling of dont_verify_images preference
|
||
FILE_INFO::verify_downloaded_file():
|
||
if image file and dont_verify_images is set,
|
||
and file is present and nonempty, count it as verified.
|
||
Also move file size checking logic here.
|
||
PERS_FILE_XFER::start_xfer(): use FILE_INFO::verify_downloaded_file()
|
||
to decide whether to use existing file,
|
||
rather than doing a bunch of checks manually
|
||
PERS_FILE_XFER::poll(): don't check size on completion of xfer.
|
||
Leave it to verify_downloaded_file().
|
||
- is_dir() and is_file() return bool, not int
|
||
(hope this doesn't break C compile)
|
||
- scheduler: the parent of a zombie host might be a zombie
|
||
|
||
client/
|
||
cs_apps.C
|
||
cs_files.C
|
||
pers_file_xfer.C
|
||
lib/
|
||
error_numbers.h
|
||
filesys.C,h
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 12 April 2005
|
||
- core client: merge verify_existing_file() and verify_downloaded_file()
|
||
into a single function verify_file(bool strict),
|
||
where "strict" says whether to check checksum/signature
|
||
(this is skipped when seeing if a result's input files are available)
|
||
This fixes a bug in the dont_verify_images logic
|
||
|
||
client/
|
||
client_types.C,h
|
||
cs_apps.C
|
||
cs_files.C
|
||
pers_file_xfer.C
|
||
sched/
|
||
sched_send.C
|
||
|
||
Rom 12 April 2005
|
||
- Bug Fix: The manager shuold look for the daemon on the loop back adapter
|
||
since that is where the daemon is listening.
|
||
- Bug Fix: THREAD_PRIORITY_IDLE is even lower than THREAD_PRIORITY_LOWEST
|
||
- Bug Fix: Once again back out a change to support Japanese until we
|
||
understand the font problems futher, basically trying to support
|
||
Japanese right now causes problems for English based systems.
|
||
|
||
api/
|
||
boinc_api.C
|
||
clientgui/
|
||
BOINCTaskCtrl.cpp
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
David 13 April 2005
|
||
client/
|
||
app_control.C
|
||
client_state.C,h
|
||
client_types.C,h
|
||
cs_apps.C
|
||
cs_scheduler.C
|
||
scheduler_op.C,h
|
||
lib/
|
||
boinc_win.h
|
||
prefs.C,h
|
||
|
||
Rom 13 April 2005
|
||
- Bug Fix: Re-enable INADDR_ANY for the *nix platforms since they cannot
|
||
seem to connect through the loopback adapter.
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
clientgui/
|
||
gui_rpc_client.C
|
||
|
||
David 13 April 2005
|
||
- schedule_cpus(): if using deadlines,
|
||
DON'T call assign_result_to_projects().
|
||
That sets the already_selected fields of running results,
|
||
and schedule_earliest_deadline_result() skips over them,
|
||
even though they may have the earliest deadline
|
||
- name changes
|
||
cpu_crunch_nearest_first -> cpu_earliest_deadline_first
|
||
schedule_nearest_deadline_project()
|
||
-> schedule_earliest_deadline_result()
|
||
- core client: make function request_schedule_cpus() so you can
|
||
see why CPU is being rescheduled
|
||
- don't use "crunch" or "panic mode", especially in user interface
|
||
|
||
client/
|
||
app_control.C
|
||
client_state.C,h
|
||
cs_apps.C
|
||
cs_scheduler.C
|
||
gui_rpc_server.C
|
||
|
||
Bruce 14 April 2005
|
||
- file_upload_handler: when responding to a request for the
|
||
file length, check first that the file is not already
|
||
in open (locked) by another file_upload_handler. If the
|
||
file IS open (locked), then do NOT hand back the file length.
|
||
Instead return a transient error. This will prevent
|
||
transmission of upload data starting at the wrong offset.
|
||
- file_upload_handler: ignore <data_server_request>tag
|
||
- To help understand when/why multiple file_upload_handlers
|
||
are trying to write to the same file, set default log level
|
||
to DEBUG. Also log messages at level CRITICAL if there is
|
||
an attempt to write to a locked file. We may want to change
|
||
this level to DEBUG in the future, if this turns out to be
|
||
'normal' TCP buffering of data between host and server.
|
||
|
||
sched/
|
||
file_upload_handler.C
|
||
|
||
Charlie 15 April 2005
|
||
Mac: Fix compile errors for BOINC Manager.
|
||
|
||
client/
|
||
net_xfer.C
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
MainDocument.cpp
|
||
mac_build/
|
||
boinc.pbproj/
|
||
project.pbxproj
|
||
English.lproj/
|
||
InfoPlist.strings
|
||
|
||
David 15 April 2005
|
||
- file upload handler: Solaris compile fix
|
||
- mail_passwd.php: if an account exists with non-munged address,
|
||
return that account key (old code could return account key
|
||
for a munged address, even though a non-munged one exists)
|
||
|
||
html/user/
|
||
get_passwd.php
|
||
mail_passwd.php
|
||
sched/
|
||
file_upload_handler.C
|
||
|
||
David 15 April 2005
|
||
- core client, GUI RPC: if no remote connections allowed,
|
||
use lookback address (127.0.0.1) for listening socket
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
lib/
|
||
boinc_cmd.C
|
||
gui_rpc_client.C
|
||
|
||
David 15 April 2005
|
||
- Manager: added "no more work" toggle for projects
|
||
(from James Drews)
|
||
and fix compile warnings
|
||
|
||
clientgui/
|
||
DlgAttachProject.cpp
|
||
DlgConnection.cpp
|
||
DlgSelectComputer.cpp
|
||
MainDocument.cpp,h
|
||
MainFrame.cpp
|
||
ViewMessages.cpp
|
||
ViewProjects.cpp,h
|
||
ViewStatistics.cpp
|
||
|
||
Bruce 15 April 2005
|
||
- file_upload_handler: fixed another bug. If you fopen(path, "a") in
|
||
append mode then fseek() then write to the file, the fseek() HAS
|
||
NO EFFECT. This is documented ANSI C. So I have eliminated the
|
||
fseek. We now check that the file size corresponds exactly to the
|
||
claimed offset of the data. If they do not agree then return a
|
||
transient error to force the host to ask again for the file length
|
||
and re-transmit data.
|
||
|
||
sched/
|
||
file_upload_handler.C
|
||
|
||
David 15 April 2005
|
||
- removed close() call in RPC_CLIENT constructor (???)
|
||
Manager works on Linux now
|
||
|
||
lib/
|
||
boinc_cmd.C
|
||
gui_rpc_client.C
|
||
|
||
David 15 April 2005
|
||
- core client: added "-dir path" cmdline option
|
||
(chdir to the given directory at startup)
|
||
|
||
client/
|
||
cs_cmdline.C
|
||
|
||
David 15 April 2005
|
||
- Fortran API: trim whitespace from filenames passed from FORTRAN,
|
||
and blank-pad filenames passed to FORTRAN (from Don Bashford)
|
||
|
||
api/
|
||
boinc_api_fortran.C
|
||
|
||
David 15 April 2005
|
||
- Ops web: create account script broken
|
||
(fixes from Andy Read)
|
||
|
||
html/ops
|
||
create_account_action.php
|
||
|
||
David 15 April 2005
|
||
- On Mac OS X apparently binding a socket to address 127.0.0.1 fails.
|
||
Use INADDR_ANY instead.
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
|
||
Charlie 16 April 2005
|
||
Mac: Fix paths in XCode project to make them fully portable / relative.
|
||
Clear menu bar in science apps using Bernd's suggested code.
|
||
|
||
api/
|
||
x_opengl.C
|
||
mac_build/
|
||
boinc.pbproj/
|
||
project.pbxproj
|
||
|
||
David 16 April 2005
|
||
- fixed GUI RPC connection problem on Mac
|
||
(if a connect on a socket fails, you need to close it
|
||
and make a new one before trying another connect)
|
||
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
Bruce 17 April 2005
|
||
- Made default choice 'ACCEPT' for screening user profiles for UOTD.
|
||
html/
|
||
ops/
|
||
profile_screen_form.php
|
||
|
||
David 17 April 2005
|
||
- (from Reinhard Prix) add IOKit framework to Mac compile of core client
|
||
|
||
configure.ac
|
||
|
||
David 17 April 2005
|
||
- add PID to log messages of scheduler and file upload handler
|
||
|
||
lib/
|
||
msg_log.C,h
|
||
sched/
|
||
main.C
|
||
file_upload_handler.C
|
||
|
||
David 18 April 2005
|
||
- code cleanup in scheduler
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_send.C,h
|
||
server_types.C,h
|
||
validate_util.C
|
||
|
||
Bruce 18 April 2005
|
||
- Added ops page script to email owners of 'problem' hosts. Thanks to
|
||
Christian Beer for writing this.
|
||
|
||
html/
|
||
inc/
|
||
email.inc
|
||
ops/
|
||
problem_host.php
|
||
|
||
David 18 April 2005
|
||
- scheduler: don't send a result to a host
|
||
if its network connection period (work_buf_min_days)
|
||
is greater than WU's delay bound
|
||
|
||
sched/
|
||
sched_send.C,h
|
||
server_types.C,h
|
||
|
||
Charlie 18 April 2005
|
||
Mac: Move some Mac-specific code out of x_opengl.C into new
|
||
Cocoa source file macglutfix.m. Replace Carbon API calls
|
||
with equivalent Cocoa calls soScience apps don't need to link
|
||
with Carbon framework. They will need to link with AppKit
|
||
framework (Macintosh only)
|
||
|
||
api/
|
||
x_opengl.C/h
|
||
macglutfix.m (new)
|
||
mac_build/
|
||
boinc.pbproj/
|
||
project.pbxproj
|
||
|
||
Bruce 19 April 2005
|
||
- rework of file_upload_handler. I learned that is it not
|
||
reliable to use flock/lockf/fnctl file locking with buffered
|
||
IO. This is because the stream libraries might unexpectedly
|
||
open/close/dup file descriptors on you. So I have modified
|
||
the file write/append functions to use raw IO rather than
|
||
buffered IO. In doing this I also found and fixed some small
|
||
bugs. There is no guarantee that one can mix flock/lockf/fnctl
|
||
file locking so I have settled on fnctl since it is POSIX and
|
||
gives the most control.
|
||
|
||
sched/
|
||
file_upload_handler.C
|
||
|
||
David 19 April 2005
|
||
- bug fixes for remote GUI RPC
|
||
|
||
client/
|
||
gui_rpc_client.C
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
Bruce 19 April 2005
|
||
- Better error reporting from problem_host.php reporting page, if
|
||
host does not exist. Thanks to Christian Beer.
|
||
|
||
html/
|
||
ops/
|
||
index.php
|
||
problem_host.php
|
||
|
||
David 19 April 2005
|
||
- BOINC manager: remote connection wasn't working because
|
||
it was using the wrong password variable.
|
||
|
||
clientgui/
|
||
MainDocument.cpp
|
||
|
||
David 19 April 2005
|
||
- error checking in boinc_cmd
|
||
|
||
lib/
|
||
boinc_cmd.C
|
||
gui_rpc_client.C
|
||
|
||
David 19 April 2005
|
||
- fix bug in -attach_project command line option (from Tony Murray)
|
||
- GUI RPC: include <rss_bytes> for active tasks,
|
||
(even though it's always zero)
|
||
|
||
client/
|
||
app.C
|
||
cs_cmdline.C
|
||
gui_rpc_server.C
|
||
|
||
David 19 April 2005
|
||
- core client: warn user if results are overdue
|
||
|
||
client/
|
||
app.C,h
|
||
client_state.C
|
||
cs_apps.C
|
||
|
||
Janus 20 April 2005
|
||
- Added "sticky forum thread" code from BURP (lightning)
|
||
- Added support for per sub-forum posting rules for threads and replies:
|
||
- You must have at least X total credit
|
||
- You must have at least Y recent credit
|
||
- You must wait Z secs between each post
|
||
- Moved temporary rules for rating to the forum_rate.php file.
|
||
(this file needs a bit of work)
|
||
- Added some DB fields to make the above features work
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
forum_show.inc
|
||
user/
|
||
forum_thread.php
|
||
forum_moderate_thread_action.php
|
||
forum_reply.php
|
||
forum_post.php
|
||
forum_rate.php
|
||
img/
|
||
unread_post.png (moved)
|
||
filtered_post.png (moved)
|
||
emphasized_post (moved)
|
||
unread_sticky.png (new)
|
||
stick_post.png (new)
|
||
ops/
|
||
db_update.php
|
||
|
||
Rom 20 April 2005
|
||
- The new UI scheme for the project tab, the rest of the tabs will
|
||
follow.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
BOINCTaskCtrl.cpp, .h
|
||
Events.h
|
||
MainFrame.cpp, .h
|
||
ViewProjects.cpp, .h
|
||
|
||
David 20 April 2005
|
||
- added Janus' DB changes to schema.sql
|
||
- use get_int() etc. in forum_rate.php
|
||
- no time limit in update_forum_activitie.php
|
||
|
||
db/
|
||
schema.sql
|
||
html/
|
||
ops/
|
||
update_forum_activities.php
|
||
user/
|
||
forum_rate.php
|
||
|
||
David 20 April 2005
|
||
- removed residual CORE_VERSION stuff
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
db_dump.C
|
||
handle_request.C
|
||
sched_shmem.C,h
|
||
|
||
Rom 20 April 2005
|
||
- Here are the rest of the tabs converted over to the new UI scheme.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
BOINCTaskCtrl.cpp
|
||
Events.h
|
||
MainFrame.cpp
|
||
ViewMessages.cpp, .h
|
||
ViewProjects.cpp, .h
|
||
ViewResources.cpp, .h
|
||
ViewStatistics.cpp, .h
|
||
ViewTransfers.cpp, .h
|
||
ViewWork.cpp, .h
|
||
|
||
Rom 20 April 2005
|
||
- Fix an Assert where somebody attempts to close the manager and then
|
||
selects exit again before the daemon has a chance to close itself
|
||
down
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
|
||
David 21 April 2005
|
||
- change buttons in task tab based on selection
|
||
|
||
clientgui/
|
||
BOINCBaseView.h
|
||
MainDocument.cpp,h
|
||
ViewProjects.cpp
|
||
|
||
Rom 21 April 2005
|
||
- Code Cleanup
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
BOINCListCtrl.cpp, .h
|
||
BOINCTaskCtrl.cpp, .h
|
||
ViewMessages.cpp, .h
|
||
ViewProjects.cpp, .h
|
||
ViewResources.cpp, .h
|
||
ViewStatistics.cpp, .h
|
||
ViewTransfers.cpp, .h
|
||
ViewWork.cpp, .h
|
||
|
||
David 21 April 2005
|
||
- CPU scheduler: don't run projects or results suspended via GUI,
|
||
even in earliest-deadline-first mode
|
||
- fix button logic for projects
|
||
- set buttons in work tab based on selection
|
||
- include graphics_mode_acked in GUI RPC description RESULT.
|
||
Could indicate whether app has window open (but doesn't yet).
|
||
|
||
client/
|
||
app.C
|
||
cs_apps.C
|
||
clientgui/
|
||
MainDocument.cpp,h
|
||
ViewProjects.cpp,h
|
||
ViewWork.cpp, h
|
||
lib/
|
||
gui_rpc_client.h
|
||
|
||
Rom 21 April 2005
|
||
- More code cleanup
|
||
- Enable the various project defined website under new GUI scheme
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
Events.h
|
||
ViewMessages.cpp
|
||
ViewProjects.cpp, .h
|
||
ViewResources.cpp
|
||
ViewStatistics.cpp
|
||
ViewTransfers.cpp
|
||
|
||
David 21 April 2005
|
||
- improve client startup messages
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.h
|
||
cs_account.C
|
||
cs_scheduler.C
|
||
|
||
Rom 22 April 2005
|
||
- Post an update request instead of forcing one right as the user is changing
|
||
tabs, this increases preceived performance since the tab switches over
|
||
and the update happens around the same time as ones eyeballs move to the
|
||
part of the screen where they are expecting to see a change.
|
||
|
||
clientgui/
|
||
MainFrame.cpp
|
||
|
||
Charlie 23 April 2005
|
||
Mac: Rename "BOINC.app" to "BoincManager.app", rename "boinc_client"
|
||
to "boinc".
|
||
Create screen saver, add it to BOINC XCode project.
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
mac/
|
||
mac_saver_module.cpp (new)
|
||
boinc.tiff (new)
|
||
Mac_Saver_ModuleView.h (new)
|
||
Mac_Saver_ModuleView.m (new)
|
||
BOINCSaver.nib.sit (new)
|
||
mac_build/
|
||
Info.plist
|
||
ScreenSaver-Info.plist (new)
|
||
boinc.pbproj/
|
||
project.pbxproj
|
||
|
||
Rom 23 April 2005
|
||
- More code cleanup work in the manager
|
||
|
||
clientgui/
|
||
MainDocument.cpp, .h
|
||
|
||
Charlie 24 April 2005
|
||
Mac: Fix screensaver to work properly with password option.
|
||
MacGLUTFix() gets GLUT graphics window pointer correctly,
|
||
sets screensaver window level to 2020 instead of 1000.
|
||
Don't change screensaver blanking window's level. Add blocking
|
||
to main screensaver thread to yield more time to BOINC apps.
|
||
|
||
api/
|
||
macglutfix.m
|
||
clientgui/
|
||
mac/
|
||
mac_saver_module.cpp
|
||
Mac_Saver_ModuleView.m
|
||
|
||
Charlie 25 April 2005
|
||
Mac: screensaver tweaks: banners scroll faster & smoother,
|
||
reduce annoying flashes when screensaver graphics are starting.
|
||
gutil.C - fix compiler warning.
|
||
|
||
api/
|
||
macglutfix.m
|
||
x_opengl.C
|
||
gutil.C
|
||
clientgui/
|
||
mac/
|
||
mac_saver_module.cpp
|
||
|
||
Eric 25 Apr 2005
|
||
GUI fix for platforms without tooltips.
|
||
Typo fix in Makefile.am
|
||
|
||
clientgui/
|
||
Makefile.am
|
||
BOINCTaskCtrl.cpp
|
||
ViewProjects.cpp
|
||
ViewWork.cpp
|
||
|
||
Rom 25 April 2005
|
||
- Don't allow people to continue posting or reading from a thread that has
|
||
already been closed for administrative purposes.
|
||
|
||
html/user
|
||
forum_reply.php
|
||
|
||
Rom 25 April 2005
|
||
- Update the manager so that it'll build against wxWidgets 2.6.0
|
||
|
||
NOTE: You'll need to upgrade to wxWidgets 2.6.0 and make sure that you
|
||
are building the ANSI version of the libraries.
|
||
|
||
clientgui/
|
||
MainDocument.cpp
|
||
MainFrame.cpp
|
||
clientgui/msw/
|
||
taskbarex.cpp, .h
|
||
win_build/
|
||
BOINCGUI.vcproj
|
||
|
||
Charlie 26 April 2005
|
||
Mac: Changes for compatibility with wxMac-2.6.0
|
||
Don't open BOINCManager window if launched automatically at login.
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
mac/
|
||
MacSysMenu.cpp
|
||
MacSysMenu.m
|
||
mac_saver_module.cpp
|
||
mac_build/
|
||
HowToBuildBOINC_XCode.rtf
|
||
|
||
Rom 26 April 2005
|
||
- More code cleanup in the manager.
|
||
- Take care of a couple crashing conditions that occurred after the
|
||
migration to wxWidgets 2.6.0
|
||
- Make the website buttons work again
|
||
- Layout() seems to work better than the call to Fit() to adjust the
|
||
various window locations. So switch all the calls from Fit() to
|
||
Layout() and see if this fixes the Mac scrollbar issue.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
BOINCTaskCtrl.cpp, .h
|
||
Events.h
|
||
MainFrame.cpp
|
||
ViewProjects.cpp
|
||
ViewStatistics.cpp
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
|
||
David 26 April 2005
|
||
- Preliminary checkin for "intermediate upload" feature for CPDN.
|
||
This allows an app to upload a file in the middle of a result.
|
||
- code cleanup in Manager code:
|
||
- Started to get rid of member functions of CMainDocument
|
||
that access elements of PROJECT (????).
|
||
e.g.:
|
||
GetProjectProjectName()
|
||
GetProjectTeamName()
|
||
Rom: please complete this.
|
||
- Started to get rid of functions like
|
||
CViewProjects::FormatProjectName()
|
||
Rom: please complete this
|
||
- ASSERT(NULL != X) -> ASSERT(X)
|
||
(do not undo these - please replace everywhere)
|
||
- Destructors don't need to reset fields.
|
||
TODO: replace the OnDocGetItemText() functions
|
||
with functions that get all items at once
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.h
|
||
app_control.C
|
||
cs_files.C
|
||
clientgui/
|
||
BOINCBaseView.cpp
|
||
BOINCGUIApp.cpp
|
||
BOINCListCtrl.cpp
|
||
BOINCTaskBar.cpp
|
||
BOINCTaskCtrl.cpp
|
||
MainDocument.cpp,h
|
||
MainFrame.cpp
|
||
ViewMessages.cpp
|
||
ViewProjects.cpp,h
|
||
ViewResources.cpp
|
||
ViewStatistics.cpp
|
||
ViewTransfers.cpp,h
|
||
ViewWork.cpp
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
shmem.C,h
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
|
||
Charlie 27 April 2005
|
||
Mac: created installer. Changed working directory from
|
||
user-specific "~/Library/Application Support/BOINC Data"
|
||
to global "/Library/Application Support/BOINC Data".
|
||
Fixed CViewProjects::OnProjectWebsiteClicked for Mac.
|
||
Added progress display to screensaver when no application
|
||
graphics.
|
||
|
||
mac-installer/
|
||
LoginItemAPI.c (new)
|
||
LoginItemAPI.h (new)
|
||
PostInstall.cpp (new)
|
||
postinstall (new)
|
||
postupgrade (new)
|
||
ReadMe.rtf (new)
|
||
License.rtf (new)
|
||
BOINC.pmsp (new)
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
MainFrame.cpp
|
||
mac/
|
||
mac_saver_module.cpp
|
||
|
||
Rom 27 April 2005
|
||
- Make the taskbar work again after the wxWidget conversion to 2.6.0
|
||
- Fix the Windows projects so that they look for the setup.h file in
|
||
correct location.
|
||
|
||
clientgui/msw/
|
||
taskbarex.cpp
|
||
win_build/
|
||
BOINCGUI.vcproj
|
||
|
||
Janus 28 April 2005
|
||
- Updates from Rob Ogilvie:
|
||
- Forum rules apply to rating as well
|
||
- Quoting is now done with blockquotes instead of >
|
||
- Added blockquote to stylesheet and valid html in sanitizer
|
||
- Loads of get_int/get_str corrections
|
||
- Moderators can view hidden threads if going direct by ID
|
||
- Made the special user feature aware of "holes" in the bitfield
|
||
(corrects a potential bug when part of the bitfield isn't specified)
|
||
- Added a 5 sec delay to userw.php in the case where the user does not
|
||
exist. This will in particular force people to not lookup the
|
||
non-existant user 0 hundreds of times per min - which is waste of
|
||
resources (DB and bandwidth).
|
||
|
||
html/
|
||
inc/
|
||
sanitize_html.inc
|
||
forum.inc
|
||
user/
|
||
forum_rate.php
|
||
forum_reply.php
|
||
forum_thread.php
|
||
style-black.css
|
||
style.css
|
||
userw.php
|
||
|
||
Charlie 28 April 2005
|
||
Mac: Clean up XCode project by removing unused libraries
|
||
and frameworks.
|
||
Update build instructions to include screensaver & installer.
|
||
|
||
mac_build/
|
||
HowToBuildBOINC_XCode.rtf
|
||
boinc.pbproj/
|
||
project.pbxproj
|
||
|
||
Rom 28 April 2005
|
||
- Add a timeout to any gui rpc connection attempt, this should get
|
||
around the manager hanging when a firewall is blocking 31416.
|
||
|
||
lib/
|
||
gui_roc_client.C, .h
|
||
|
||
David 28 April 2005
|
||
- debugged intermediate upload feature
|
||
- Got rid of some -1 returns.
|
||
A BOINC function should never return -1
|
||
(or the return value of a system call)
|
||
since this discards info about where the error came from
|
||
- parse_double(): don't accept NaN or +- infinity
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
apps/
|
||
upper_case.C
|
||
client/
|
||
app.C,h
|
||
app_control.C
|
||
client_state.C
|
||
client_types.C,h
|
||
cs_apps.C
|
||
cs_files.C
|
||
gui_rpc_server.C
|
||
lib/
|
||
app_ipc.h
|
||
error_numbers.h
|
||
filesys.C
|
||
mfile.C
|
||
network.C
|
||
parse.C
|
||
|
||
Rom 28 April 2005
|
||
- Adjust the installer so that it will not include the pdb files in future
|
||
releases.
|
||
- Keep previous manager look and feel around.
|
||
|
||
clientgui/archive/
|
||
<Add previous look and feel for reference in case we need them>
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Charlie 28 April 2005
|
||
Mac: Add Bernd's HOST_INFO::host_is_running_on_batteries
|
||
code for Macintosh.
|
||
|
||
client/
|
||
hostinfo_unix.C
|
||
|
||
David 28 April 2005
|
||
- Get rid of a user.update() in the scheduler.
|
||
This updates all fields of the user record,
|
||
possibly overwriting fields updated by the validator
|
||
around the same time.
|
||
Replace it with user.update_field()
|
||
(From Bruce Allen)
|
||
|
||
TODO: there's also a host.update() that needs to be dealt with.
|
||
|
||
sched/
|
||
handle_request.C
|
||
server_types.C,h
|
||
|
||
Charlie 29 April 2005
|
||
Mac: Add precompiled header to XCode project for mgr_boinc
|
||
target to greatly speed up compilation.
|
||
|
||
clientgui/
|
||
mac/
|
||
MacGUI.pch (new)
|
||
|
||
Bruce 29 April 2005
|
||
- Fixed update_average() function to do the right thing when the time
|
||
between successive calls is small (zero seconds):
|
||
|
||
Consider the limit
|
||
as diff->0, using the first-order Taylor expansion of
|
||
exp(x)=1+x+O(x^2).
|
||
So to the lowest order in diff:
|
||
weight = 1 - diff ln(2) / half_life
|
||
so one has
|
||
avg += (1-weight)*(work/diff_days)
|
||
avg += [diff*ln(2)/half_life] * (work*SECONDS_PER_DAY/diff)
|
||
notice that diff cancels out, leaving
|
||
avg += [ln(2)/half_life] * work*SECONDS_PER_DAY
|
||
|
||
lib/
|
||
util.C
|
||
html/
|
||
inc/
|
||
credit.inc
|
||
|
||
Charlie 29 April 2005
|
||
Mac: made path to Installer-info.plist in XCode project relative
|
||
rather than absolute.
|
||
Checked in Installer-info.plist.
|
||
|
||
mac_build/
|
||
Installer-info.plist (new)
|
||
|
||
Rom 29 April 2005
|
||
- Bug Fix: UpdateSelection should be called everytime the listview has
|
||
been refreshed in case a project/result/transfer has changed its
|
||
status which might cause a button change.
|
||
- Bug Fix: Double clicking on the taskbar icon will restore the window
|
||
as well as show it.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp
|
||
BOINCTaskBar.cpp
|
||
|
||
Charlie 29 April 2005
|
||
Mac: Update version to 4.35. Update build instructions.
|
||
|
||
clientgui/
|
||
mac-installer/
|
||
BOINC.pmsp
|
||
mac_build/
|
||
HowToBuildBOINC_XCode.rtf
|
||
Info.plist
|
||
|
||
Janus 30 April 2005
|
||
- Changed rating +/- links to be images instead (more visible)
|
||
Suggested by Eric Myers.
|
||
- Added example images
|
||
- Made "sticky sorting" optional. Users can now ignore sticky posts and
|
||
have posts sorted by time as usual if they like.
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
forum_show.inc
|
||
user/
|
||
edit_forum_preferences_form.php
|
||
edit_forum_preferences_action.php
|
||
img/
|
||
rate_positive.png (new)
|
||
rate_negative.png (new)
|
||
|
||
Bruce 30 April 2005
|
||
- Compile fix for upper_case (was broken under gcc/Linux)
|
||
|
||
apps/
|
||
upper_case.C
|
||
|
||
David 30 April 2005
|
||
- bug fix in scheduler (buffer overrun on user prefs update)
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_shmem.C
|
||
|
||
David 30 April 2005
|
||
- (from Eric Myers)
|
||
Windows: if user holds down control key while in screensaver mode,
|
||
input is handled by the app (and screensaver mode is not exited)
|
||
|
||
api/
|
||
windows_opengl.C
|
||
|
||
David 30 April 2005
|
||
- changed library order in clientgui Makefile
|
||
(from JR Oldroyd; needed for link on FreeBSD)
|
||
|
||
clientgui/
|
||
Makefile.am
|
||
|
||
Bruce 1 May 2005
|
||
- Added a utility function to 'print' a text description of errors
|
||
in error_numbers.h. In the future, when adding a new error number
|
||
to this file, please update boincerror() in util.C to contain a
|
||
short text description of the error.
|
||
|
||
lib/
|
||
error_numbers.h
|
||
util.C
|
||
util.h
|
||
|
||
David 2 May 2005
|
||
- bug fix for intermediate upload feature
|
||
|
||
client/
|
||
app.C
|
||
|
||
Bruce 2 May 2005
|
||
- locality scheduling: if host resources are inadequate for ANY WU,
|
||
assume that they are inadequate for ALL WU. Without this we will
|
||
execute an expensive deterministic search over all WU, looking
|
||
for one that is appropriate. This could be a config option if
|
||
desired, or one might add in an extra search step to find WU with
|
||
appropriate resources. But for now this is the cleanest.
|
||
|
||
sched/
|
||
sched_locality.C
|
||
|
||
Rom 3 May 2005
|
||
- Bug Fix: Global Loc issue with the statistics tab on creation.
|
||
|
||
clientgui/
|
||
ViewStatistics.cpp
|
||
|
||
David 3 May 2005
|
||
- scheduler: fixed a bug where host::update()
|
||
could potentially overwrite a credit update
|
||
happening around the same time.
|
||
Did this by adding a function HOST::update_diff(HOST& initial)
|
||
which does an update only of those fields that have
|
||
changed relative to the given initial values.
|
||
(from Bruce Allen)
|
||
- scheduler: fixed a bug where host_cpid wasn't being maintained properly.
|
||
Caused it to change on each RPC.
|
||
- removed unused "p_calculated" from HOST
|
||
- removed code to parse non-existent fields p_fpop_err etc. in HOST
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
handle_request.C
|
||
server_types.C
|
||
|
||
Bruce 3 May 2005
|
||
- ignore fields p_fpop_err in scheduler requests (still there from
|
||
4.19 core clients) else these generate lots of logfile noise.
|
||
David, please revert if you don't like it.
|
||
- in host page visible to ordinary users, include daily result
|
||
quota info.
|
||
|
||
sched/
|
||
server_types.C
|
||
html/
|
||
inc/
|
||
host.inc
|
||
|
||
Janus 4 May 2005
|
||
- Split forum.inc into two files. One DB related (db_forum.inc) and one
|
||
that has to do with usual forum functions (like showing posts etc).
|
||
|
||
html/inc/
|
||
forum.inc
|
||
db_forum.inc (new)
|
||
|
||
Bruce 4 May 2005
|
||
- log execution times for two cgi scripts (scheduler and
|
||
file_upload_handler)
|
||
- better print format for timezone
|
||
- bug fix: with locality scheduling, permit multiple requests
|
||
to make work for same file. Bug introduced April 11, 2005.
|
||
|
||
sched/
|
||
sched_util.h
|
||
sched_util.C
|
||
sched_timezone.C
|
||
main.C
|
||
sched_send.C
|
||
file_upload_handler.C
|
||
sched_locality.C
|
||
|
||
Jeff 4 May 2005
|
||
- Accounted for the fact that function finite() is prototyped in ieeefp.h
|
||
under solaris and math.h under linux.
|
||
|
||
configure.ac
|
||
lib/
|
||
parse.C
|
||
|
||
David 4 May 2005
|
||
- bug fix in boinc_upload_file() (from Tolu Aina)
|
||
- added forum_preferences.ignore_sticky_posts to schema
|
||
|
||
api/
|
||
boinc_api.C
|
||
db/
|
||
schema.sql
|
||
|
||
Bruce 4 May 2005
|
||
- bug fix so that Unix hosts report their timezones correctly
|
||
taking into account the effect of DST on their localtime.
|
||
|
||
NOTE: hosts that lacked a gmt offset in the tm structure (System V
|
||
with no BSD extensions) had the WRONG SIGN for the timezone.
|
||
This is now fixed. These host types (AIX, Cygwin?) will now have a
|
||
change in sign in their timezone, making it consistent with other
|
||
Unix hosts and with Win32 hosts.
|
||
|
||
- Note that with these changes we adopt the convention that the database
|
||
timezone value is the (Local Standard Time) - (UTC time). This
|
||
quantity only depends upon spatial location on the earth's surface and
|
||
is NOT a function of time.
|
||
|
||
- Change php functions to correctly describe timezone field.
|
||
|
||
client/
|
||
hostinfo_unix.C
|
||
html/
|
||
inc/
|
||
email.inc
|
||
host.inc
|
||
db_ops.inc
|
||
|
||
Rom 4 May 2005
|
||
- Bug Fix: Fix the screensaver on Win9x class of machines.
|
||
- Bug Fix: The help menu needed to include items for the BOINC website
|
||
and manager page.
|
||
- Some code cleanup
|
||
|
||
client/win/
|
||
win_screensaver.cpp
|
||
clientgui/
|
||
Events.h
|
||
MainFrame.cpp, .h
|
||
ViewMessages.cpp
|
||
ViewProjects.cpp
|
||
ViewStatistics.cpp
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
|
||
David 4 May 2005
|
||
- core client: fix bug where sometimes we don't fetch work
|
||
even though a CPU is idle (from John McLeod)
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
|
||
David 4 May 2005
|
||
- limit size of author field in forums (from Rob Ogilvie)
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
user/
|
||
black.css
|
||
style.css
|
||
style-black.css
|
||
|
||
Rom 4 May 2005
|
||
- Update the minimum wxWidgets version we support to 2.6.0.
|
||
|
||
/
|
||
configure.ac
|
||
|
||
Charlie 5 May 2005
|
||
Mac: Modify projects and rebuild with OS 10.3.0 compatibility SDK.
|
||
Rebuild WxMac-2.6.0 library with OS 10.3.0 compatibility SDK.
|
||
Update build instructions. Update version number in various
|
||
*info.plist files. Update ReadMe file. Better logic for avoiding
|
||
annoying flashes in screensaver. Avoid screensaver hang if graphics
|
||
application is non-responsive. Installer: don't require reboot;
|
||
launch BOINC at end of install; refuse to install if OS < 10.3;
|
||
set up BOINC Data directory properly if installed by non-admin user.
|
||
|
||
api/
|
||
macglutfix.m
|
||
clientgui/
|
||
mac/
|
||
mac_saver_module.cpp
|
||
mac_build/
|
||
HowToBuildBOINC_XCode.rtf
|
||
Info.plist
|
||
SystemMenu-Info.plist
|
||
ScrenSaver-Info.plist
|
||
Installer-Info.plist
|
||
boinc.pbproj/
|
||
project.pbxproj
|
||
mac_installer/
|
||
BOINC.pmsp
|
||
PostInstall.cpp
|
||
ReadMe.rtf
|
||
|
||
David 5 May 2005
|
||
- core client: exit if can't write state file
|
||
|
||
client/
|
||
client_state.C
|
||
scheduler_op.C
|
||
|
||
David 5 May 2005
|
||
- fixes for FreeBSD from J.R. Oldroyd
|
||
- BOINC Manager:
|
||
Don't use BOINC_DIAG_REDIRECTSTDERR and BOINC_DIAG_REDIRECTSTDOUT
|
||
on non-Windows
|
||
IsBOINCCoreRunning(): close RPC connection
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
lib/
|
||
network.C
|
||
|
||
David 5 May 2005
|
||
- scheduler: HOST::fix_nans(): use !finite() instead of isnan()
|
||
(to detect infinity as well as NaN)
|
||
- DB_HOST::update_diff(): escape/unescape strings
|
||
- scheduler: escape/unescape strings in a could of update_field()s
|
||
|
||
db/
|
||
boinc_db.C
|
||
db_base.C
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 5 May 2005
|
||
- core client: parse multiple <schedule> tags per line from a master file
|
||
This should fix a minor bug for UMTS users.
|
||
UMTS apparently strips CRLFs from HTML files.
|
||
So UMTS users would see only 1 scheduler from a project,
|
||
even if it has multiple schedulers.
|
||
|
||
client/
|
||
scheduler_op.C
|
||
|
||
David 5 May 2005
|
||
- sort team pages
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
user/
|
||
team_display.php
|
||
|
||
Rom 5 May 2005
|
||
- When running benchmarks, close down and remove science applications
|
||
from memory. If a science application isn't listening to the quit request
|
||
it may not be responding to suspend/resume either which would cause problems
|
||
during the benchmark process.
|
||
- If a science application doesn't shutdown within 10 seconds, kill it.
|
||
- Fix the bug I introduced last night with the view statistics tab.
|
||
- Make suspend_all call atp->preempt() instead of doing the same thing itself.
|
||
- Move the starting benchmark message to a place right before the benchmarks
|
||
start. We were receiving a few process control messages and people might
|
||
interpret that to mean other stuff was going on during the benchmarks.
|
||
|
||
client/
|
||
app.C, .h
|
||
app_control.C
|
||
cs_benchmark.C
|
||
cs_prefs.C
|
||
clientgui/
|
||
ViewStatistics.cpp
|
||
|
||
Eric 05/05/05 Woo Hoo!
|
||
- Modified the BOINC_GETSOCKOPT_TYPE macro so it determines the proper type
|
||
of parameter 5 to getsockopt() by using the compiler.
|
||
The macro was in danger of becoming an ever expanding list of
|
||
case statements, since some platforms
|
||
use socklen_t, others use size_t, and still others use int. Some aren't
|
||
even consistent from OS rev to OS rev.
|
||
- A macro BOINC_SOCKLEN_T is set in config.h to indicate the proper type.
|
||
This is typedef to be boinc_socklen_t in lib/network.h. The special cases
|
||
for __APPLE__ and WIN32 can probably be removed at a later time. Places
|
||
where socklen_t was used have been changed to boinc_socklen_t.
|
||
- Added double inclusion protection to network.h
|
||
- Added libtool.m4 so porters don't need to install libtool.
|
||
- Fixed header order problem in SAH_HEADER_STDCXX which caused problems
|
||
on solaris
|
||
- Added caching of results to SAH_CHECK_NAMESPACES and
|
||
SAH_FUNCS_IN_NAMESPACE
|
||
- Small changes to configure.ac to improve compatibility with earlier
|
||
versions of automake.
|
||
- Added include of <sys/socket.h> to time_stats.C
|
||
- Fixed problem with std_fixes.h when included from C.
|
||
m4/
|
||
libtool.m4
|
||
boinc_getsockopt.m4
|
||
sah_header_stdcxx.m4
|
||
sah_namespace.m4
|
||
client/
|
||
time_stats.C
|
||
gui_rpc_server.C
|
||
ssl_net_xfer.C
|
||
lib/
|
||
network.C
|
||
network.h
|
||
std_fixes.h
|
||
|
||
Charlie 5 May 2005
|
||
Mac installer: Wait until installer quits before launching BOINC.
|
||
mac_installer/
|
||
PostInstall.cpp
|
||
|
||
Charlie 6 May 2005
|
||
Macintosh only: wxProcess::Exists() and wxKill() are unimplemented
|
||
in WxMac-2.6.0 so create our own CBOINCGUIApp::ProcessExists(), use
|
||
it and kill() in CBOINCGUIApp::ShutdownBOINCCore().
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp/h
|
||
|
||
|
||
David 6 May 2005
|
||
- fixes to work fetch policy (from John McLeod)
|
||
- changed names of work-fetch urgency constants to WORK_FETCH_*
|
||
(use common prefix for related symbols)
|
||
|
||
client/
|
||
client_state.h
|
||
client_types.C,h
|
||
cs_scheduler.C
|
||
scheduler_op.C
|
||
|
||
David 6 May 2005
|
||
- prevent users from changing their name to empty string
|
||
(from Rob Ogilvie)
|
||
|
||
html/user/
|
||
edit_user_info_action.php
|
||
|
||
Charlie 7 May 2005
|
||
Mac: Fix problems with window position & size caused by
|
||
calling Maximize(false). If m_bFrameVisible-visible is
|
||
false at startup, don't show & hide window (to eliminate
|
||
annoying flash of window).
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
BOINCTaskBar.cpp
|
||
MainFrame.cpp
|
||
|
||
Bruce 7 May 2005
|
||
- compile fix for HPUX and AIX
|
||
|
||
client/
|
||
hostinfo_unix.C
|
||
|
||
Janus 8 May 2005
|
||
- Security patches and improvements from Rob Ogilvie making it harder
|
||
to misuse the forums.
|
||
- escape all strings before inserting into SQL and check everything else
|
||
- use regex do search and remove images instead of old slow function
|
||
- added a function cleanTextBox that prepares text to be dropped into
|
||
a textarea (replacing < and >). Also added the use of it to the
|
||
reply-page and edit-page.
|
||
- <pre> changes in the stylesheet
|
||
- Added max width on authorcols in forum to css
|
||
- Added nicer style to blockquotes
|
||
- Removed some old code from forum show_post that wasn't used anymore but
|
||
still accessed the database and threw away the result.
|
||
- Added a tiny part of the PayPal donation system from BURP, more parts
|
||
will show up later when they have been rewritten to work with php4
|
||
Please check if the license of the original PayPal script
|
||
(http://opensource.org/licenses/cpl.php) fits with the BOINC license. The
|
||
way I read it there should be no problems (since BOINC is opensource as
|
||
well).
|
||
|
||
html/
|
||
inc/
|
||
db_forum.inc
|
||
forum.inc
|
||
paypal_global_config.php (new)
|
||
user/
|
||
black.css
|
||
forum_edit.php
|
||
forum_reply.php
|
||
style.css
|
||
style-black.css
|
||
white.css
|
||
payment_success.php (new)
|
||
payment_process.php (new)
|
||
|
||
David 8 May 2005
|
||
- work fetch and CPU scheduling fixes (from John McLeod)
|
||
|
||
client/
|
||
client_state.C,h
|
||
client_types.C,h
|
||
cs_scheduler.C
|
||
scheduler_op.C,h
|
||
|
||
David 9 May 2005
|
||
- scheduler: return error (and don't send result)
|
||
if result DB update, WU DB update, or XML mods fail
|
||
(from Ian Hay)
|
||
|
||
sched/
|
||
sched_send.C
|
||
|
||
Rom 9 May 2005
|
||
- Remove last Friday's benchmark checkin and introduce a benchmark startup
|
||
timeout. If an application cannot be shutdown because an application
|
||
fails to shutdown, it'll just skip the benchmarks.
|
||
- Add a new log flag for the cpu scheduler called '<sched_cpu_debug>' so
|
||
that people can debug client-side issues with the scheduler
|
||
- Convert the #ifdef scheduler debug code to log flag calls
|
||
- Fix a CPU scheduling bug where the client thought all the CPU's were idle.
|
||
|
||
client/
|
||
app.C, .h
|
||
app_control.C
|
||
client_msgs.C, .h
|
||
client_state.C
|
||
cs_benchmark.C
|
||
cs_scheduler.C
|
||
log_flags.C, .h
|
||
|
||
Bruce 10 May 2005
|
||
- Forums: added an html/bookmark style link to the header for each message.
|
||
This makes it a bit more convenient to reference a particular message (rather
|
||
than the entire thread) in an email or another thread. Janus, Rob, I hope this
|
||
is OK with you. Feel free to revert if you don't like it.
|
||
- Forums: added credit and recent average credit to the brief description
|
||
of users.
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
|
||
Janus 10 May 2005
|
||
- Reply box on reply page in the forums is now at the top of the page to avoid scrolling
|
||
(From Rob Oglivie)
|
||
|
||
html/user/
|
||
forum_reply.php
|
||
|
||
Rom 10 May 2005
|
||
- work fetch and CPU scheduling fixes (from John McLeod)
|
||
- Convert screen saver debug messages to scoped messages so that everyone
|
||
can see them by adding a flag to log_flags.xml
|
||
|
||
client/
|
||
app_graphics.C
|
||
client_msgs.C, .h
|
||
client_state.C
|
||
cs_scheduler.C
|
||
log_flags.C, .h
|
||
scheduler_op.C
|
||
ss_logic.C
|
||
|
||
Bruce 11 May 2005
|
||
- Eliminate some annoying 'undefined index' errors in PHP log. Note
|
||
that in general the right way to use _GET[] is like this:
|
||
$x=default_value;
|
||
if (isset($_GET["x"])) $x=$_GET["x"];
|
||
This prevents PHP notice-type error messages.
|
||
- Eliminate some annoying undefined variables
|
||
- Typo in download_network.php
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
util.inc
|
||
prefs.inc
|
||
forum_show.inc
|
||
db_forum.inc
|
||
host.inc
|
||
db_ops.php
|
||
user/
|
||
prefs.php
|
||
sample_rss_main.php
|
||
download_network.php
|
||
top_teams.php
|
||
show_host_detail.php
|
||
team_display.php
|
||
top_hosts.php
|
||
top_users.php
|
||
create_account_form.php
|
||
logout.php
|
||
view_profile.php
|
||
|
||
Rom 11 May 2005
|
||
- When adjusting the graphics mode to the application from within
|
||
the application use the acked_graphics_mode instead of the
|
||
current_graphics_mode since the current
|
||
graphics mode is what we would like to be,
|
||
not necessarily what we are.
|
||
|
||
api/
|
||
windows_opengl.C
|
||
|
||
David 11 May 2005
|
||
- scheduler: fixed bug where rpc_seqno wasn't getting updated
|
||
|
||
db/
|
||
boinc_db.h
|
||
sched/
|
||
handle_request.C
|
||
server_types.C
|
||
|
||
Bruce 12 May 2005
|
||
- forums: allow project admin, project developers and forum moderators
|
||
to edit their own posts at any time (not just within one hour).
|
||
- scheduler: if host reaches daily result quota and contacts the scheduler,
|
||
tell it to delay until a random time falling within the first hour
|
||
of the following day.
|
||
Previously the host would be told to delay one hour,
|
||
which could lead to as many as 24 retries in a one-day period.
|
||
|
||
html/
|
||
user/
|
||
forum_edit.php
|
||
sched/
|
||
sched_send.C
|
||
|
||
David 12 May 2005
|
||
- db_dump: don't exit if user lookup fails
|
||
- user web: improve processing of team names (from Rob Ogilvie)
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
util.inc
|
||
user/
|
||
team_create_action.php
|
||
team_display.php
|
||
team_edit_action.php
|
||
sched/
|
||
db_dump.C
|
||
|
||
David 12 May 2005
|
||
- core client: dir_scan() shouldn't skip over all entries
|
||
starting with ".". It should only skip over "." and "..".
|
||
|
||
lib/
|
||
filesys.C
|
||
|
||
David 12 May 2005
|
||
- parse unused ACTIVE_TASK entries to avoid error messages
|
||
|
||
client/
|
||
app.C
|
||
|
||
Rom 12 May 2005
|
||
- Bug Fix: ShutdownSaver() can be called from the data management thread
|
||
in the scrrensaver, so specifically look up the primary window and
|
||
post a quit message there instead of the default window proc of the
|
||
thread, which in our case doesn't exist.
|
||
- Bug Fix: Remove MODE_QUIT from the CC logic and use MODE_HIDE_GRAPHICS
|
||
with is_ss_app to stop the screensaver. Some projects were not giving
|
||
us the MODE_QUIT message and so the screensaver wouldn't shutdown in
|
||
a timely manor.
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
app_graphics.C
|
||
client/win/
|
||
win_screensaver.cpp
|
||
|
||
Charlie 13 may 2005
|
||
Mac: Update build instructions.
|
||
Fix compile error.
|
||
client/
|
||
main.C
|
||
mac_build/
|
||
HowToBuildBOINC_XCode.rtf
|