PlaneShift
Support => Mac OSX Specific Issues => Topic started by: Cha0s on November 17, 2005, 05:54:43 am
-
I have good news and bad news. I\'ll start with the bad news:
Subsequent versions of Updater.jar will not support Mac OS 10.3.x and below. This has come about due to Java 1.4.2 being unsupported in OS 10.3.x (I have heard rumors of a \"special\" 1.5.0 running on 10.3, but I\'m not sure how accurate these are). What this means is that for 10.3.x users, Updater.jar is frozen at this release and will probably not be changed again. I am continuing to offer the download from the Guide through a second link.
Now why is this good? I have more features available to me. In addition, there is much better zip handling (Java-side. My code remains the same ;) ). There happens to be a specific feature that I added with this update, and that is the proxy. You can now set the proxy feature in updaterconfig.xml and connect through a proxy. Hopefully this will help those who download through a proxy.
Also, I\'ve added the less-important feature that allows you to get a list of files being downloaded in the console (or Terminal with -listfiles if you\'re running in -nogui mode).
Now, before you get all worked up 10.3.x users, let me assure you that the short-term effects of this change are very few. I doubt there will be any major changes to Updater.jar for months. Hopefully, by that time we\'ll all be on 10.4.x. If there are any major bugs found in the old version, I will of course do my best to fix them, but little things and new features will probably not be added. Sorry for any inconvenience, but I\'m hoping that this will be a beneficial change overall.
P.S. Feel free to post comments here.
P.P.S. While I\'m at it, I\'ll also open the floor to requests for new features or implementation of particular options in the updaterconfig.xml file.
-
hmm.. i dunno. i would have gotten 10.4 but there is a widly known bug to do with the connections on that OS. i t doesnt recognise your coinnections and wont let you onto the internet. so im sticking with 10.3 until somthing a bit more stable is released..
-
My son just got a new iBook with 10.4 and hasn\'t had any problems getting on the internet, or playing PlaneShift.
-
Originally posted by dying_inside
hmm.. i dunno. i would have gotten 10.4 but there is a widly known bug to do with the connections on that OS. i t doesnt recognise your coinnections and wont let you onto the internet. so im sticking with 10.3 until somthing a bit more stable is released..
Have you checked that it still exists in 10.4.3, which was released 2-3 weeks ago? There were a lot of network-related bug fixes in the latest update.
Are you sure it would have affected your system anyway? There are an enormous number of people running Tiger that have absolutely no problems connecting to the internet, so it\'s obviously only a small proportion of set-ups that are/were affected. I\'ve certainly had no problems with it at all. I thought Panther was a lot more bug-laden.
-
By the way, Cha0s, trying to run the latest Updater.jar is giving the following error:
Exception in thread \"main\" java.lang.UnsupportedClassVersionError: Updater (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
I\'m running OS X 10.4.3, including the latest Java update from yesterday.
Are you using Java 1.5.0 methods again? You only mentioned 1.4.2 in your post here. If it\'s intentional, however, then you should probably make a sticky about how to switch Java versions. Java 1.5 is not the default java version in Tiger and you\'re going to get a zillion users experiencing the same error.
-
I was under the impression (from the Apple website) that it would request the correct JVM if the default didn\'t work. Apparently not, it seems.
Try following the instructions here (http://docs.info.apple.com/article.html?artnum=302412) and see if that works. If so, I\'ll link it. If not, I\'ll create a shell script to do it. It\'s actually not that hard. ;)
-
Howdy,
I take this means with OS 10.2.x will be sticking with the updater.jar we already have.
-
Yes. I\'m sorry for the inconvenience, but I want to make Updater.jar as powerful as possible. Hopefully you\'ll be able to get 10.4 soon. :)
-
Originally posted by wain
Originally posted by dying_inside
hmm.. i dunno. i would have gotten 10.4 but there is a widly known bug to do with the connections on that OS. i t doesnt recognise your coinnections and wont let you onto the internet. so im sticking with 10.3 until somthing a bit more stable is released..
Have you checked that it still exists in 10.4.3, which was released 2-3 weeks ago? There were a lot of network-related bug fixes in the latest update.
Are you sure it would have affected your system anyway? There are an enormous number of people running Tiger that have absolutely no problems connecting to the internet, so it\'s obviously only a small proportion of set-ups that are/were affected. I\'ve certainly had no problems with it at all. I thought Panther was a lot more bug-laden.
aah ok. thats good to know. well I might get it if I scrape up the money heh.
-
The updater works fine once the default version has been set to J2SE 5.0.
For anyone else reading this, you simply run Java Preferences.app, which is found in Applications/Utilities/Java/J2SE 5.0/ . In that program, go to Java Application Runtime Settings at the bottom of the General tab, and switch the order of the Java versions so that J2SE 5.0 is first.
-
Ok, good to know. I\'ll link that in my guide later today (assuming I remember :P ). Thanks for checking it out. :)
-
Just updated my Mac to 10.4.3 from 10.3.9. followed guide and all working fine thanks ChaOs. :))
-
Yay, good news! Thanks for the update. Good to know that there are no inherent problems with the guide/updater. See you in Planeshift!
P.S. I\'ve added a new command line argument for the Updater... at last... \"-help\" (or \"-h\" if you prefer). It will give you a summary of all available commands. I also added \"-compare\" (explained in the help text).
EDIT: I have triumphed! After some help from EE converting my messy raw hash into the hash Planeshift uses, I now have added hash-checks for all files under 10k (at DaveG\'s suggestion). No more will you have stupid errors like that dang port problem in this last update. Rejoice!
-
Updated wife\'s Mac with Video Card (type, VRAM): GeForce4 MX, 64 MB, from 10.3.9. to 10.4.3. At last she can join game :)) . Not all good news though still phew graphic problems and crashing a lot, working on it, thanks again ChaOS. :))
-
Glad things are going well. I\'ll email dfryer about the graphics problem and hope for a solution soon!
-
(http://img384.imageshack.us/img384/9214/picture15mb.th.png) (http://img384.imageshack.us/my.php?image=picture15mb.png)
to show graphics, ran update again no crashes so far. :))
After a lot of testing load GUI at start takes 3to 4 mins map joins the same, and crashes 50/50 towords end of load GUI at start up, also crash if i try to get tria from inventry and if i click on guild flag it crash. Hope this helps.
I have a console log zipped but daunt no haw to send it to you ChaOS ?
-
Woo! After using the new updater, I can finally run psclient again. Thanks Cha0s :)
-
wain: great!
r.guppy: email it to ctta0s @t gmail D0T com
Note that the zero in \"ctta0s\" actually is a zero.
-
Sent it to you and little note hope it helps. :))
-
Sent it to dfryer. By the way, could you remind Pip to update her specs in the User System Specs sticky? Thanks.
P.S. I\'ve added a new command to Updater.jar: \"-mir \" allows you to pick the mirror you want it to try first when running from the command line.
-
Have updated my specs, thanks.
-
Two notes: First, I\'ve updated the \"old\" version of Updater.jar (Updater-old.jar) to include all of my changes/bug fixes up to this point (except proxies, of course). This means that all the 10.2 and 10.3 users have hashes!
Second, dfryer seems to have fixed the 10.3/nVIDIA bug. You should see this fix in the next update. :)
EDIT: Updater.jar and Updater-old.jar have both been updated so as to be able to update themselves! Joy. :)
-
I ran the updater (reg) after being told that my version of PS was wrong.
Tried it again after the updater ran and got same message.
Ran updater.jar and for the heck of it, I tried pssetup and it worked.
I than ran psclient and got on. PS still has problems but was able to play until it crashed.
Thank you ChaOs and DFreyer for all your work. Oh when I got on I heard that Linux was down.
-
Good the hear Felix! And yes, dfryer did fix pssetup. :)
In other news, Updater.jar and Updater-old.jar have been updated again. Those who downloaded Updater.jar yesterday when I made my announcement about the auto-update can simply run Updater.jar to get the new Updater.jar. Note that there was a bug in Updater-old.jar that screws up self-updating which has been fixed in this version. You\'ll have to download manually this time. This update, in addition to addressing the aforementioned bug (as well as a few others) adds the mirror selection option to the GUI as well as moving around the GUI a bit and adding a new command, -noselfupdate, which tells the updater to not check for updates to itself and carry on updating as usual.
Note: if you haven\'t noticed, I\'ve worked out a system for co-distributing Updater.jar and Updater-old.jar together. This costs be about 10-15 minutes of extra time (plus debug time, which can add up), but is overall not too much of burden. In the long run, i.e. a year or two, I will probably drop Updater-old.jar... So thinking ahead, make it your New Year\'s resolution to upgrade to 10.4. :)
-
Using the latest version of Updater.jar, I forced it to use mirror 3 (nice feature, btw!). It said:
Using mirror 3.
Downloading zipped repository
Unzipping repository
Error getting zip entries from file.
Update failed at 12/01/2005: 21:03:01.
So, it appears that mirror 3 is still corrupt. This is the same error it\'s been giving me for many weeks.
Also a trivial nitpick;)... It seems to be using the US date system (month/day/year) despite the fact that my system is set to use day/month/year. I wonder if that\'s a bug with Apple Java, or if it\'s something you\'ve hard coded?
-
Interesting. Mirrors 2-4 work fine for me. Could you run it from Terminal with -debugmode and tell me the output you get there?
As for the date thing, yes that is hard-coded. I\'m looking into an option to fix it. If I remember, I\'ll probably include it in today\'s update (yes, I\'m on a three-day streak. :) ).
-
I\'m actually not sure how to run Updater.jar from the command line any more.
It seems that the java command line interpreter still assumes Java 1.4.2 by default, regardless of what version was set by the Java Preferences utility. I can\'t find an Apple document on how to correct that.
-
Part 2b of the Guide should do it. ;) And I haven\'t finished the update yet, so don\'t go rushing off to download it or anything... :P
EDIT: Updater updated to include a Quit button and a few bug fixes. Also, date/time strings should be displayed correctly based on your area (i.e. day before month in Europe), though I\'m not guaranteeing anything...
-
Originally posted by Cha0s
Part 2b of the Guide should do it. ;)
Unfortunately, the script file mentioned in part 2b doesn\'t seem to be working. I followed exactly what part 2b said to do. When I click run, it just opens a new terminal window, with no request for a password or anything. And nothing is changed.
However, I manually executed the script instructions (which is actually much simpler than all the hassle of downloading and running the script anyway!), and got the shell Java interpreter to execute Updater.jar. Yay.
When trying to update from mirror 3, it gives the following errors:
Freya:/Applications/Planeshift3D Wayne$ java -jar Updater.jar -mir 3 -debugmode
Debug mode on.
Proxy not active.
java.lang.Exception: Proxy not active.
at Updater.getConfiguration(Updater.java:459)
at Updater.main(Updater.java:314)
java.util.zip.ZipException: error in opening zip file
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.(ZipFile.java:203)
at java.util.zip.ZipFile.(ZipFile.java:84)
at Updater.unzip(Updater.java:1829)
at Updater.getRepository(Updater.java:822)
at Updater.access$3000(Updater.java:29)
at Updater$3.run(Updater.java:697)
at java.lang.Thread.run(Thread.java:613)
-
Assuming that updaterconfig.xml is the correct file, the parameters for mirror 3 are:
Just thought I should add that, in case your settings are different.
BTW, would it be a hassle to wrap your JAR file as an application bundle before distribution? It seems that Jar Bundler does most of the work for you, and it\'d save a lot of troubles at the user end (version changing, etc.), and make the application a lot more Mac-like. The core .jar file would still be pure Java, and therefore remain cross-platform, it\'s just the wrapper that\'s Mac-specific.
-
I\'ll look into wrapping it into a .app file, though my Cocoa skills aren\'t great. ;)
As for Mirror 3... I have no idea why it doesn\'t work... What does \"java -version\" return?
The script seems to be a permissions issue... I\'ve modified the Guide to just have the user type out the commands.
-
Originally posted by Cha0s
I\'ll look into wrapping it into a .app file, though my Cocoa skills aren\'t great. ;)
Thanks! I\'m not sure you need to know much about Cocoa, though, as Jar Bundler creates a Java app bundle. A small Cocoa app is added to that, but I get the impression that Jar Bundler creates that for you. The documentation begins at:
http://developer.apple.com/documentation/Java/Conceptual/Jar_Bundler/index.html
The JVMVersion property to set in Info.plist (either 1.5+ or 1.5*) is discussed at:
http://developer.apple.com/documentation/Java/Conceptual/JavaPropVMInfoRef/Articles/JavaDictionaryInfo.plistKeys.html#//apple_ref/doc/uid/TP40001969
As for Mirror 3... I have no idea why it doesn\'t work... What does \"java -version\" return?
Where is the zip file downloaded to? Is it deleted afterwards? If not, I can take a direct look at it and see what\'s wrong.
Version info:
Freya:~ Wayne$ java -version
java version \"1.5.0_05\"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_05-83)
Java HotSpot(TM) Client VM (build 1.5.0_05-48, mixed mode, sharing)
-
wain: Well, I looked into JARBundler and I was happy at first, but I\'ve come across an issue that makes it not worth it in my mind. That issue is that I\'ll have to customize some of the code specifically for this change. I\'ll need to figure out whether the user is using the JAR or the app and then do different things based on this information. It\'s easier to leave it as a simple JAR archive for now.
As for getting the zip file... run Updater.jar with \"-debugmode\" from Terminal (it\'ll download a new updater for you, and yes, it\'ll keep the argument when it relaunches). I just made a little change that enables you to get your hands on the zip file. The file should end up in the directory \"updatertemp\" in your PS folder. Just update as usual and when you\'re done, check out that folder.
Everyone: I am once again opening the floor to critiques and suggestions on Updater.jar. Aside from an application bundle, what new features would you like to see in Updater.jar? My only rule for posting requests is that you justify your request with a reason. That said, request away! :)
-
OK, I found the repository.zip file. The broken one downloaded from mirror 3 is consistently 195467 bytes (I downloaded it multiple times to check). In contrast, the functioning respository from mirror 2 is 617824 bytes.
I also analysed the bad repository, although the analysis is rather redundant, given the obvious truncation of the file:
$ zip -T repository.zip
zip warning: missing end signature--probably not a zip file (did you
zip warning: remember to use binary mode when you transferred it?)
zip error: Zip file structure invalid (repository.zip)
________________________
$ unzip -v repository.zip
Archive: repository.zip
End-of-central-directory signature not found. Either this file is not
a zipfile, or it constitutes one disk of a multi-part archive. In the
latter case the central directory and zipfile comment will be found on
the last disk(s) of this archive.
unzip: cannot find zipfile directory in one of repository.zip or
repository.zip.zip, and cannot find repository.zip.ZIP, period.
________________________
$ zip -F repository.zip
zip: reading repository.xml
zip warning: repository.zip would be truncated.
Retry with option -qF to truncate, with -FF to attempt full recovery
-
Well, I downloaded both repositories myself and I\'m getting them both to be 617824 bytes, exactly. Something odd must be going on with your connection to mirror 3. *shrugs* I honestly have no idea why it\'s doing that... :\\
-
Mirror 3 has been more unpredictable tonight, with the file truncating at all sorts of different sizes. I can reproduce this with a browser as well: if I download http://www.psmirror.org/psupdater/repository.zip , the download terminates early, but it acts as though it completed. This is reproducible in both Firefox and Safari.
I also tried at work today (in Firefox) and the file downloaded properly. The differences are that at work I use Win XP, and am on a high speed network. At home, I run Tiger and am on 56 kbps dialup. I wonder if it\'s the network speed... maybe the mirror doesn\'t handle slow connections very well... Or maybe the download termination glitches are regular, and the slower you are the more likely you are to experience one. Just guessing :)
-
Interesting. I have high-speed, so I wouldn\'t notice... Could you be able to some more in depth testing perhaps? Talad would probably be interested if you can come up with any conclusive results.
EDIT: No one has any requests? Come on, there\'s gotta be something you want to see in Updater.jar... :D
-
All web browsers I tested (Safari, Firefox, IE and Lynx) prematurely terminate the download from that mirror. The download speed doesn\'t decrease before it terminates, so it\'s not like a connection is dropping out... It\'s just zipping along and suddenly it says it\'s finished.
I also looked through the mirror and tried to download some other large files (png as well as zip). They also terminated prematurely, so it\'s not just that one file, nor is it just zip files.
Unfortunately none of the browsers I tested give any further diagnostic info as to why this happens. Nor does Updater.jar in diagnostic mode. psmirror.org doesn\'t seem to be an ftp server, so I can\'t even test it using an ftp client.
So unless you know some way of building download diagnostics into Updater.jar, I\'m stumped :(
Do you know what http server or file sharing software they\'re using on that site? I can\'t even see a reference to that. At least if I knew that, I could search for similar issues.
Cheers :)
-
Update: I tried again to download the file from psmirror.org, this time with a third-party client called iGetter. That client manages to download it eventually, but only because it\'s persistent. A number of times during the download it gave network error warnings that it couldn\'t obtain the file segment (presumably at this point, other programs terminate the download). But unlike other methods, it didn\'t assume the file was truly complete, and therefore continues to request it.
I also used the command line FTP, and it terminates the download prematurely, too. Unfortunately the debug option gives no errors. It lists the psmirror.org server as \"Apache\", but gives no version number at all. I wonder if that means it\'s a really old version...
Again, both download methods worked fine with the other mirrors.
I wonder if the server on psmirror.org has a severely low timeout setting. That would explain the problem with a 56 kbps modem.
-
This is possible. The mirrors are provided for free, so perfection isn\'t required necessarily. Talad will likely want to hear about this and I think you enough info now to send him a PM. Hopefully he\'ll be able to resolve the issue.