Page 1 of 1
OXP Update manager
Posted: Sun Nov 15, 2009 5:17 pm
by Sisela Ytheleus
I would like to inspire an add-on tool for OOLITE.
Most OOLITE users might have collected a large number of OXPs.
So it should become a problem getting all OXPs up to date.
OOLITE could include a kind of update manager or a simple function that checks out for new available updates of OXPs.
Posted: Sun Nov 15, 2009 6:39 pm
by Cmdr James
This has been discussed, and someone has created an OXP manager. The problem is that there is no official mechanism for working out what version an OXP is, or a standard place to get them from, so it isnt clear how to implement the update checking.
Posted: Mon Nov 16, 2009 8:06 am
by Chaky
I believe you're talking about me..
and, no, I didn't make the manager. I am making some sort of OXP verification tool..
Regarding an update manager... well.. the programming for such tool would be nothin short of AI (and I'm not talking about OXP AI).
There is no centralized database that could make such tool remotely possible. Arguably, EliteWiki could be one, but with the contents changing all the time, it is practically impossible for a scripted tool to be remotely reliable. I mean, I wouldn't be convinced without checking wiki for myself.
And script... it would literarly need to "understand" the contents of each page. I don't see any other reliable way for automatic OXP updating.
As I said.. it would have to be AI.
Posted: Mon Nov 16, 2009 8:54 am
by Cmdr James
I tihnk I was talking about
http://wiki.alioth.net/index.php/OXPConfig
I tihnk it could be done, by adopting a naming convention, and automated checking of the wiki for new files with a namew patern matching, but still, it wont happen.
Posted: Tue Nov 17, 2009 3:19 am
by Chaky
Cmdr James wrote:I tihnk it could be done, by adopting a naming convention, and automated checking of the wiki for new files with a namew patern matching, but still, it wont happen.
... which would fail if, say, someone updated OXP on his/her Box.net account and added in description "I've fixed some bugs..".
The link to file would be the same, and the only evident change would be in the description... and that is one big grey area from script perspective.
Posted: Tue Nov 17, 2009 9:15 am
by Cmdr James
Its not perfect, but it could be done.
We could, for example have an optional file in an OXP that contains a URL to be checked, and then maybe test an md5 to detect changes, something like that.
Take a look, for example at the way eclipse (the IDE) does updates, it would certainly be possible to implement something that would work, and would allow for files hosted in arbitrary locations.
Of course anything like this would need some development effort, and buy in from OXP authors. So I stand by my assertion that its possible, but that its not going to happen any time soon.
To be honest, it would be a nice first step for all oxps to be named with a version number in the filename so its easy to check which you have against the most receont.
Posted: Tue Nov 17, 2009 10:43 am
by Kaks
There's the added complication that box.net doesn't seem to have direct links to files, all you get are links to an html page that contains the javascript that will eventually fetch the real file.
Unless we can figure out a way around that, it's not going to be possible to do any automatic checks on any of the box.net files. (most free file hosting sites have got a similar problem)
Posted: Tue Nov 17, 2009 12:05 pm
by Chaky
http://www.box.net/index.php?rm=box_dow ... ghkefshhib
I probbably mentioned earlier that I'm making that OXP checking tool in WinBatch..With that langage one is capable of doing pretty much anything that can be done manually.
For instance, I can make it open up IE, go to certain site and parse the source of that site.
Only problem is that it would all be visible, since networking capabilities of WB are practically 0.
Posted: Tue Nov 17, 2009 12:16 pm
by Commander McLane
Doesn't really work. Clicking on your link above produces:
Posted: Tue Nov 17, 2009 12:20 pm
by Chaky
Works for me... must be because I have an account there...
Posted: Tue Nov 17, 2009 12:24 pm
by Commander McLane
Guess so. While I have an account at box.net, I wasn't currently logged in.
Posted: Tue Nov 17, 2009 1:06 pm
by PhantorGorth
Commander McLane wrote:Doesn't really work. Clicking on your link above produces:
I use dropbox and that does allow direct links.
Posted: Wed Nov 18, 2009 6:02 pm
by lfnfan
Lots of discussion and a proposed solution here about how to get an automatically-generating table of oxps and their version numbers, driven by the Wiki.
https://bb.oolite.space/viewtopic.php?t= ... e&start=30
I guess once (if) that is done, it would be much more straight forward to script an OXP update checker (which I think would be very cool).
Posted: Sat Jan 23, 2010 3:44 pm
by amix
What about a two part convention for any new/updated OXP?
For an "Example World" OXP the filename would be:
oxp-example-world-1.01.oxp
The archive would be:
oxp-example-world-1.01.zip|bz2|7z|etc.
with a README named:
"oxp.example-world-1.01.txt"
Code: Select all
Example World OXP Readme
Name : Example World OXP
Version : 1.01
Status : beta (exp, rel)
Author(s) : Example Author <email@host>
Support : URL
License : code: BSD
models: CC
etc.
Description :
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Notes: foo bar batz
Following a proposal for an identification file, that resides in the OXPs root and could be scanned by the main program:
Code: Select all
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<oxp-registration>
<!-- status: rel=release, exp=experimental, beta=beta -->
<name version="1.01" status="rel">Example World OXP</name>
<link rel="download" href="http://example.org/example-oxp.zip"/>
<!-- online manual, etc. -->
<link rel="support" href="http://example.org/example-oxp.html"/>
<!-- email is optional (spam & privacy)-->
<module name="scripting" author="" email="" license="">
<module name="textures & models" author="" email="" license="">
<description>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</description>
<requires name="" href="" version=""/>
<notes>foo bar batz</notes>
</oxp-registration>
I think XML is nice, because it can be easily vaildated on every platform with open source tools, XSD can be used to transofrm it, should something to the spec change and it is easily editable/creatable by users (aka human readable).
An update scanner now would need to only scan this xml file and all should be fine, from thits side. Just some conventions to keep and that should make it pretty easy, no?