Create account / Log in

VASSAL 3.3.0-beta1 Released

Topics related to the main Vassal engine.

Moderators: uckelman, Tim M

VASSAL 3.3.0-beta1 Released

Postby uckelman » April 27th, 2020, 9:05 pm

VASSAL 3.3.0-beta1 released

The VASSAL Team is happy to announce the release of VASSAL 3.3.0-beta1.


IMPORTANT

* This is a beta release. Things may be broken which worked in 3.2.17. If you find a bug introduced since 3.2.17, please report it.

* If you save a module, game, or log in VASSAL 3.3, you will NOT be able to open it afterwards with VASSAL 3.2. We recommend keeping a backup copy of any pre-3.3 files you plan to modify in 3.3 until you've verified that everything works to your satisfaction.

* Some modules containing custom drawing code may render incorrectly on HiDPI displays. If you are the maintainer of such a module, let us know and we can advise you about what needs updating for 3.3 in your code. (We are aware already that VASL has this problem and are working with its maintainers to update it.)

Download

Linux
Mac OS X
Windows
Other
Source code

New in 3.3.0-beta1

Features:

* 12557: Compatibility with Java 9+: VASSAL 3.2 would not run with anything newer than Java 8. VASSAL 3.3 now requires Java 9 or later.

* 12558: Bundle Java with VASSAL: The Linux, Mac, and Windows packages now include Java 13. It is no longer necessary to install Java separately when using one of these packages.

* 12559: HiDPI support: VASSAL now has support for displays with a high pixel density (e.g., Retina displays). On such displays, you should now see correctly sized interface elements and sharper image rendering.

Bug fixes:

* 12556: Mass Piece Definer does not sort image names

For changes prior to 3.3.0-beta1, see the change log.

Please report all bugs in 3.3.0-beta1 even if they are bugs which you've already reported against other versions. We take your bug reports seriously---they're the reason we've been able to fix so many bugs.

Minimum Requirements

VASSAL 3.3 requires Java 9 or later.

Help us test

Should you find any problems/oddities/bugs, please tell us so that we can
fix them for a future release of VASSAL.

Report bugs here in the Technical Support & Bugs category at the VASSAL forums or by email to bugs@vassalengine.org.


Cheers,

The VASSAL Team
User avatar
uckelman
Site Admin
 
Posts: 8564
Joined: December 10th, 2007, 9:48 am
Location: Durham, England

Re: VASSAL 3.3.0-beta1 Released

Postby slimy » April 28th, 2020, 9:40 am

I have a Debian buster machine. I get the following:

Code: Select all
nicholas@leonhartsberger:~/VASSAL/VASSAL-3.3.0-beta1$ ./VASSAL.sh
Error: dl failure on line 603
Error: failed /home/nicholas/VASSAL/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so, because /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /home/nicholas/VASSAL/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so)
nicholas@leonhartsberger:~/VASSAL/VASSAL-3.3.0-beta1$ java -version
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Debian-3deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Debian-3deb10u1, mixed mode, sharing)
nicholas@leonhartsberger:~/VASSAL/VASSAL-3.3.0-beta1$ uname -a
Linux leonhartsberger 4.19.0-8-amd64 #1 SMP Debian 4.19.98-1 (2020-01-26) x86_64 GNU/Linux
nicholas@leonhartsberger:~/VASSAL/VASSAL-3.3.0-beta1$ ls -l /lib/x86_64-linux-gnu/libm.so.6
lrwxrwxrwx 1 root root 12 May  1  2019 /lib/x86_64-linux-gnu/libm.so.6 -> libm-2.28.so
nicholas@leonhartsberger:~/VASSAL/VASSAL-3.3.0-beta1$ dpkg -S /lib/x86_64-linux-gnu/libm.so.6
libc6:amd64: /lib/x86_64-linux-gnu/libm.so.6
nicholas@leonhartsberger:~/VASSAL/VASSAL-3.3.0-beta1$ dpkg -l libc6:amd64
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
ii  libc6:amd64    2.28-10      amd64        GNU C Library: Shared libraries



I guess I'll just have to wait until Debian catches up with libc6 version 2.29. :D

Quick question: If this version bundles java, why does it have Java minimum version 9 as a requirement?
slimy
 
Posts: 149
Joined: March 27th, 2020, 9:03 am

Re: VASSAL 3.3.0-beta1 Released

Postby Rhett » April 28th, 2020, 11:32 am

I got this on my Linux Mint

Code: Select all
./VASSAL.sh
Error: dl failure on line 603
Error: failed /data/Personal/Games/VASSAL/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so, because /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /data/Personal/Games/VASSAL/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so)


Version of libc6

Code: Select all
dpkg -l libc6:amd64
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                          Version             Architecture        Description
+++-=============================-===================-===================-=========================
ii  libc6:amd64                   2.27-3ubuntu1       amd64               GNU C Library: Shared libraries


Will just wait for version 2.29 then. Thank you for the work done.
Rhett
 
Posts: 30
Joined: March 18th, 2014, 9:32 am

Re: VASSAL 3.3.0-beta1 Released

Postby uckelman » April 28th, 2020, 2:00 pm

slimy wrote:I have a Debian buster machine. I get the following:

Code: Select all
nicholas@leonhartsberger:~/VASSAL/VASSAL-3.3.0-beta1$ ./VASSAL.sh
Error: dl failure on line 603
Error: failed /home/nicholas/VASSAL/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so, because /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /home/nicholas/VASSAL/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so)



The problem here is that the bundled version of Java was linked against a newer glibc than Debian 10 has. That's aggravating, as it means there's probably no way we can bundle Java on Linux in a way which will work for everyone.

Quick question: If this version bundles java, why does it have Java minimum version 9 as a requirement?

This is because the "other" package doesn't bundle Java with it.
User avatar
uckelman
Site Admin
 
Posts: 8564
Joined: December 10th, 2007, 9:48 am
Location: Durham, England

Re: VASSAL 3.3.0-beta1 Released

Postby slimy » April 28th, 2020, 2:15 pm

uckelman wrote:
slimy wrote:I have a Debian buster machine. I get the following:

Code: Select all
nicholas@leonhartsberger:~/VASSAL/VASSAL-3.3.0-beta1$ ./VASSAL.sh
Error: dl failure on line 603
Error: failed /home/nicholas/VASSAL/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so, because /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /home/nicholas/VASSAL/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so)



The problem here is that the bundled version of Java was linked against a newer glibc than Debian 10 has. That's aggravating, as it means there's probably no way we can bundle Java on Linux in a way which will work for everyone.



I am pretty sure this is overcomeable. That's the whole point of dynamic libraries. And even if it worked one day it would be broken by any upgrade. For example: https://sourceware.org/legacy-ml/glibc- ... 00012.html

uckelman wrote:
Quick question: If this version bundles java, why does it have Java minimum version 9 as a requirement?

This is because the "other" package doesn't bundle Java with it.


Then surely this requirement should be made more specific.
slimy
 
Posts: 149
Joined: March 27th, 2020, 9:03 am

Re: VASSAL 3.3.0-beta1 Released

Postby uckelman » April 28th, 2020, 2:57 pm

Thus spake slimy:
> >
> > The problem here is that the bundled version of Java was linked
> > against a newer glibc than Debian 10 has. That's aggravating, as it
> > means there's probably no way we can bundle Java on Linux in a way
> > which will work for everyone.
> >
>
> I am pretty sure this is overcomeable. That's the whole point of dynamic
> libraries. And even if it worked one day it would be broken by any
> upgrade. For example: https://sourceware.org/legacy-ml/glibc- ...
> 00012.html[1]

I'm not compiling Java, nor do I want to, so doing this isn't on the table.

--
J.
User avatar
uckelman
Site Admin
 
Posts: 8564
Joined: December 10th, 2007, 9:48 am
Location: Durham, England

Re: VASSAL 3.3.0-beta1 Released

Postby Skotkolr » April 28th, 2020, 4:08 pm

Joel,
Maptools at rptools have overcome this and bundled java with the program, perhaps you could have a look at their code and see what they did to get it running.
I have the same issue as posted above:

Error: dl failure on line 603
Error: failed /home/scott/Desktop/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so, because /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by /home/scott/Desktop/VASSAL-3.3.0-beta1/jre/lib/server/libjvm.so)
User avatar
Skotkolr
 
Posts: 53
Joined: October 8th, 2017, 4:31 am
Location: Sarasota, Florida

Re: VASSAL 3.3.0-beta1 Released

Postby uckelman » April 28th, 2020, 4:53 pm

Thus spake Skotkolr via messages:
> Joel,
> Maptools at rptools have overcome this and bundled java with the
> program, perhaps you could have a look at their code and see what they
> did to get it running.

I took a look through the git repo for MapTool and didn't find where
the bundling happens.

Are you sure they've found a solution, rather than just bundling a
rather old version of Java?

--
J.
User avatar
uckelman
Site Admin
 
Posts: 8564
Joined: December 10th, 2007, 9:48 am
Location: Durham, England

Re: VASSAL 3.3.0-beta1 Released

Postby Skotkolr » April 28th, 2020, 5:19 pm

Check out the "FAT" version. IE the .jar, that may have some clue as it does not require any java be installed.
of course you may be on the right track for the version bundled, but at least it works, at 52.7 mb size I just don't believe it has a whole java bundled.
User avatar
Skotkolr
 
Posts: 53
Joined: October 8th, 2017, 4:31 am
Location: Sarasota, Florida

Re: VASSAL 3.3.0-beta1 Released

Postby uckelman » April 28th, 2020, 5:42 pm

Thus spake Skotkolr via messages:
> Check out the "FAT" version.

I don't see anything like that. Can you point me to it?

--
J.
User avatar
uckelman
Site Admin
 
Posts: 8564
Joined: December 10th, 2007, 9:48 am
Location: Durham, England

Re: VASSAL 3.3.0-beta1 Released

Postby Skotkolr » April 28th, 2020, 6:00 pm

https://www.rptools.net/
the link to download is titled .jar
User avatar
Skotkolr
 
Posts: 53
Joined: October 8th, 2017, 4:31 am
Location: Sarasota, Florida

Re: VASSAL 3.3.0-beta1 Released

Postby uckelman » April 28th, 2020, 6:05 pm

Thus spake Skotkolr via messages:
>
> Check out the "FAT" version. IE the .jar, that may have some clue as it
> does not require any java be installed.
> of course you may be on the right track for the version bundled, but at
> least it works, at 52.7 mb size I just don't believe it has a whole java
> bundled.

I checked the the symbols in libjvm.so contained in maptool-1.8.0-x86_64.rpm:

$ nm opt/maptool/lib/runtime/lib/server/libjvm.so | grep -Po 'GLIBC_.*' | sort -u
GLIBC_2.2.5
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.6
GLIBC_2.7

So, my guess was correct: They "solved" the problem by linking Java against
a glibc so ancient that no one could possibly still be using somehting
older. Glibc 2.7 was released in October 2007.

There's no JVM in the big .jar.

So... yeah. We're not bundling Java with the Linux builds and I'm going to
update VASSAL.sh to do a version check and print an error message if you're
not running Java 9 or later.

--
J.
User avatar
uckelman
Site Admin
 
Posts: 8564
Joined: December 10th, 2007, 9:48 am
Location: Durham, England

Re: VASSAL 3.3.0-beta1 Released

Postby Skotkolr » April 28th, 2020, 6:19 pm

Ok
User avatar
Skotkolr
 
Posts: 53
Joined: October 8th, 2017, 4:31 am
Location: Sarasota, Florida

Re: VASSAL 3.3.0-beta1 Released

Postby uckelman » April 28th, 2020, 7:15 pm

Try 3.3.0-svn9369 on Linux: http://www.vassalengine.org/~uckelman/t ... ux.tar.bz2

This no longer bundles Java on Linux, but instead the launch script checks for Java 9 or later.
User avatar
uckelman
Site Admin
 
Posts: 8564
Joined: December 10th, 2007, 9:48 am
Location: Durham, England

Re: VASSAL 3.3.0-beta1 Released

Postby Rhett » April 28th, 2020, 10:15 pm

3.3.0-svn9369 works on my Linux Mint.

Code: Select all
$java -version
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-2ubuntu218.04)
OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-2ubuntu218.04, mixed mode, sharing)
Rhett
 
Posts: 30
Joined: March 18th, 2014, 9:32 am

Next

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 1 guest

cron