Oolite test release 1.70

Discussion and announcements regarding the Mac port… er, original version of Oolite.

Moderators: winston, another_commander

User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Post by JensAyton » Tue Dec 04, 2007 10:41 am

Debug.oxp for Oolite 1.70 is now available. Removed, buggy

Documentation forthcoming, but in short, it does what DebugMenu.oxp did for Oolite 1.69, only better, and also adds an integrated interactive JavaScript console. (This can also be used to issue legacy scripting commands to the player, in the form “:: script_method”.)

The OXP also enables support for external JavaScript consoles on all platforms, but since no external consoles exist (except a simplistic command-line one for OS X only), I’m posting this in the Mac thread.

User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Post by JensAyton » Tue Dec 04, 2007 5:48 pm

This time for real: Debug.oxp for Oolite 1.70 is now available, with some docs.

User avatar
winston
Pirate
Pirate
Posts: 731
Joined: Mon Sep 27, 2004 10:21 pm
Location: Port St. Mary, Isle of Man
Contact:

Post by winston » Wed Dec 05, 2007 8:26 am

What's required for the console?

User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Post by JensAyton » Wed Dec 05, 2007 9:53 am

The console is based around a TCP protocol, documented here. The fun part is that it’s based around XML plists, for the convenience of Oolite. At the time I implemented it, I believed Apple’s CoreFoundation library, which implements plist support, was portable, but this appears to be… not quite the case. Anyhow, there’s a CoreFoundation-based command-line implementation in the repo at tools/simpleDebugConsole. I’ve also started on a Python implementation based on Twisted.

The client side of the protocol implemented in Oolite is known to work under Windows when communicating with a Mac running the simpleDebugConsole.

User avatar
winston
Pirate
Pirate
Posts: 731
Joined: Mon Sep 27, 2004 10:21 pm
Location: Port St. Mary, Isle of Man
Contact:

Post by winston » Wed Dec 05, 2007 3:18 pm

Why not make it simple plain text, and have Oolite listen, then you can just use telnet? (Or PuTTY on Win32 given the dreadfulness of the Win32 telnet client)

User avatar
Wiggy
Deadly
Deadly
Posts: 219
Joined: Fri Jan 21, 2005 1:12 pm
Location: London, Engerland

Post by Wiggy » Wed Dec 05, 2007 4:15 pm

Woo yay! Thanks for all your hard work.

Throw in a fat man in suit, and Christmas has come early. :lol:
You came in that? You're braver than I thought!

User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Post by JensAyton » Wed Dec 05, 2007 5:42 pm

winston wrote:Why not make it simple plain text, and have Oolite listen, then you can just use telnet? (Or PuTTY on Win32 given the dreadfulness of the Win32 telnet client)
Because that’s more work while supporting the same feature set. Ease of maintenance on Oolite’s side is the priority.

(Also, making Oolite the server would make reporting early issues more problematic.)

Edit: also, Oolite is quite frankly so full of bugs, strange interactions and other potential security concerns (combined with file I/O) that I wouldn't want to be responsible for having open to the intertubes.

User avatar
JensAyton
Grand Admiral Emeritus
Grand Admiral Emeritus
Posts: 6657
Joined: Sat Apr 02, 2005 2:43 pm
Location: Sweden
Contact:

Post by JensAyton » Wed Dec 05, 2007 6:30 pm

*bustles back into room*

Furthermore, fourthly, plain text in a telnet-friendly sense would be insufficient to capture the semantics of the data already exchanged between the console script and the integrated console at the time the TCP protocol was suggested.

User avatar
winston
Pirate
Pirate
Posts: 731
Joined: Mon Sep 27, 2004 10:21 pm
Location: Port St. Mary, Isle of Man
Contact:

Post by winston » Wed Dec 05, 2007 6:56 pm

Fair enough. (Note in the case of Oolite doing the listening, you can bind to 127.0.0.1 then you don't expose anything to the intertubes.)

Locked