I agree that the BOINC API needs to have some sort of version testing interface. Just using the Client Version Number and a lookup table outside the API interface is doable now, but there would be some heavy lifting to build the table with information valid from V4 to V-Current.

General principals that should be followed for an API numbers interface

1. The Version Numbers API should return an xml structure.
-- PRINTABLE ASCII aka ASCII-6 should be the encoding standard (written as ASCII-8, to the file system).
-- No oddball control chars permitted! Ding!
-- It should all be "strings" not binary encoded data, conserving memory is not that hyperimportant here.

2. You should not have to use the Version Numbers API [at all] if there is some wrapper-centric reason that makes it impossible. -- The API versions xml structure should also be rendered as a static readable file in each project's data or binary working area.

3. The Version Number API should itself have version numbers, and should have expansive enough in its data structure to cope with Beta testing of modifications of the API. Vaguely like ... { struct API_nums { {array ["Version", "API", "nums", hex_string(CRC32-mpeg())]; } } ...

4. As far as I can tell, it is too late to patch the API to add in some mechanism for version numbers support. Having set aside nonsense values in the API to return version numbers could be considered, but where or how the version numbers would be returned is beyond my imagining. This is the Kuldge solution, and it is not a pretty one.



-----Original Message----- From: Raistmer the Sorcerer
Subject: [boinc_dev] Feature request: to add BOINC API versioning



Please implement BOINC API versioning in the way it done for BOINC client releases. This will allow to link scientific apps vs known API set with known features and issues.






_______________________________________________
boinc_dev mailing list
[email protected]
http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
To unsubscribe, visit the above URL and
(near bottom of page) enter your email address.

Reply via email to