Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Discuss the source code and development of Spring Engine in general from a technical point of view. Patches go here too.

Moderator: Moderators

Post Reply
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by abma »

we are preparing the 86.0 release (mostly a bugfix release).

some of the changes:

* add unitsync python (sub-)module ( https://github.com/spring/pyunitsync )
* fix mismatched feature colvol matrices
* fix two heap-corruption bugs
* [MT] Fix desync
* fix demotool compile #2913
* fix unused hotkeys blocking further ones in the queue
* BeamLasers could hit but not damage units using per-piece colvols
* fix stacktrace in log is cut of
* IsolationMode: use ENV{SPRING_DATADIR} & config's SpringData: before even windows used $HOME syntax, now it uses correct %HOME% windows syntax!
* use OS functions to replace EnvVars in datadir paths: before even windows used $HOME syntax, now it uses correct %HOME% windows syntax!
* fix Intel GPU detection
* Config: add support for a new optional safemodeValue, which is used when spring is started with --safemode (note config values still override it, only defaults change)

full changelog

See the Testing Release Wiki pagefor general info about how to obtain the release, and an archive of all testing releases since the last stable one.

Bugs and issues
Report in this thread or on Mantis.
Remember to attach infolog.txt as file, if you crash!
Last edited by abma on 17 Jan 2012, 00:46, edited 1 time in total.
User avatar
Licho
Zero-K Developer
Posts: 3803
Joined: 19 May 2006, 19:13

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by Licho »

What does this mean
"use OS functions to replace EnvVars in datadir paths:"

Does SpringData in env still work on windows?
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by abma »

"use OS functions to replace EnvVars in datadir paths (+ logic change!)

important logic change: before even windows used $HOME syntax, now it uses correct %HOME% windows syntax!"
Does SpringData in env still work on windows?
i don't know, i didn't test/change it.
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by gajop »

The Windows and non-Windows syntaxes are really just batch and *sh syntaxes, right?
Btw, why is isolation mode using ENV variables - isn't the whole point of isolation mode to have (portable) installs which are separate from system wide installs?
I do recall reading it was causing problems for people, but I'm not sure I understand if this is supposed to fix it or not.
User avatar
jK
Spring Developer
Posts: 2299
Joined: 28 Jun 2007, 07:30

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by jK »

gajop wrote:The Windows and non-Windows syntaxes are really just batch and *sh syntaxes, right?
see msdn's ExpandEnvironmentStrings and manpage of wordexp (those are used now)
gajop wrote:Btw, why is isolation mode using ENV variables - isn't the whole point of isolation mode to have (portable) installs which are separate from system wide installs?
Those vars are user/packager defined, don't artificially limit their usage when there is no need to. The idea behind IsolatedMode is it to separate game installs. It is _not_ to limit Spring to a single folder, which would limit the usage of the mode to never used case. Extending IsolatedMode to multiple (user!!!) IncludeDirs opens the usage of the mode for multiversion engine installs and much more
User avatar
koshi
Lobby Developer
Posts: 1059
Joined: 14 Aug 2007, 16:15

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by koshi »

gajop wrote:It is _not_ to limit Spring to a single folder, which would limit the usage of the mode to never used case
Only if you ignore my comments, but that's not really important.
I however I agree with https://github.com/spring/spring/commit ... ent-867729
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by gajop »

Imo, isolated mode shouldn't be looking at any global variables, but it could be configured to use outside maps/mods folders in it's .springrc. I think that's what most content/lobby devs are trying to point out.
Not sure if you can use .springrc or something similar to set runtime ENV variables, or if you'd need/want that, but I guess that would also be acceptable.
So what's the current state regarding that? Is it still looking in the globally defined variables (stuff in windows environment settings, /etc/profile ~/.bashrc and whatnot) or not?
User avatar
knorke
Posts: 7971
Joined: 22 Feb 2006, 01:02

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by knorke »

I downloaded spring_{develop}85.0.1-53-g9b6cffe_minimal-portable.7z
spring.exe crashed when I click lobby or springsettings in the menu:
Image
(happens in 85.0 too: http://springrts.com/mantis/view.php?id=2887)
infolog still seems incomplete...
http://pastebin.com/2nDWcUeT
Funnily "start the lobby" actually launched a springlobby v0.120
Appearently it found
C:\Dokumente und Einstellungen\TP\Eigene Dateien\My Games\Spring\engine\0.82.7\springlobby.exe
god knows what game install/downloader/lobby created a spring install there.
Deleting the whole folder and it no longer crashes and no lobby starts.

* fix two heap-corruption bugs
* fix unused hotkeys blocking further ones in the queue
if that refers to placing buildings and transporters, those seem fixed which is very nice. (tested building and loading/unloading transports for 60min game time at high speed and did not crash)
unitgroups work too.
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by Forboding Angel »

jK wrote:
gajop wrote:The Windows and non-Windows syntaxes are really just batch and *sh syntaxes, right?
see msdn's ExpandEnvironmentStrings and manpage of wordexp (those are used now)
gajop wrote:Btw, why is isolation mode using ENV variables - isn't the whole point of isolation mode to have (portable) installs which are separate from system wide installs?
Those vars are user/packager defined, don't artificially limit their usage when there is no need to. The idea behind IsolatedMode is it to separate game installs. It is _not_ to limit Spring to a single folder, which would limit the usage of the mode to never used case. Extending IsolatedMode to multiple (user!!!) IncludeDirs opens the usage of the mode for multiversion engine installs and much more
Okiedoke...

So how do I use it? Currently I :
SET SPRING_ISOLATED=1

What do I need to do now to end up with what I had before (Spring locked to it's current directory)?
Google_Frog
Moderator
Posts: 2464
Joined: 12 Oct 2007, 09:24

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by Google_Frog »

Is the exact version 85.0.1-53-g9b6cffe particularly important? I just test with the latest version but if there is a good reason I'll test this one.
User avatar
Licho
Zero-K Developer
Posts: 3803
Joined: 19 May 2006, 19:13

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by Licho »

Isolated mode needs to look at env variables for those reason:

1) In multiengine scenario, data folder is not within engine folder. Even if its portable, tree structure differs (ZKL puts engines into engine folder in portable folder root)

2) there is no way to tell unitsync folder except for environment variable (which it ignores atm due to some bug ;-)

3) if you start older version of spring or dedicated with the isolated commandline parameters, it ends because it does not know them.

Env variables dont have to be global, ZKL sets them only for the process, they dont change anything user or global bound.
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by gajop »

Licho wrote: Env variables dont have to be global, ZKL sets them only for the process, they dont change anything user or global bound.
Rather, env variables must not be global if spring is run in isolated mode.
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by Forboding Angel »

You can use setx to make them global, but in all honestly, that would potentially cause huge problems for any other spring game install (mitigated by the fact that you could unset those vars easily using the same method for setting them).

Someone answer my question!
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by abma »

@Forb:

this is how it should work:
https://github.com/spring/spring/blob/d ... ater.h#L28

so
"SET SPRING_ISOLATED=1"

should be still fine... (jk, please correct me if not)
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by abma »

@knorke:

can you please retry with >= 85.0.1-64-g33e8343 if the logfiles are still cut of on crash?
User avatar
knorke
Posts: 7971
Joined: 22 Feb 2006, 01:02

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by knorke »

that link is 404. should it be that specific version or simply newest?
eg http://springrts.com/dl/buildbot/defaul ... ortable.7z
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by abma »

knorke wrote:that link is 404.[/url]
i posted before the buildslave has build + uploaded... (now it isn't 404 any more)

you posted ~0:17, upload was at ~0:19... so.. doh! my plan didn't work, you were to fast.

so please try again :)
abma
Spring Developer
Posts: 3798
Joined: 01 Jun 2009, 00:08

Re: Engine Testing - 16. January 2012 (85.0.1-53-g9b6cffe)

Post by abma »

Post Reply

Return to “Engine”