No AS binary packages

Started by
6 comments, last by AgentC 10 years, 3 months ago

I see a bad point of using AS when developing a game : most of the linux distros ( if not all ) haven't got angelscirpt library packaged . What I have to do is to inject all the AS source code into my project and build with my project's make files , which has obvious cons . On OpenSuse there is packaging service done by users ( called BuildService ) and only there I found some old version of AS lib .I am not affiliated with packaing community of any distro. What would have to happen to distro maintainers so they watch out and package every new version of AS ? Maybe you should start reminding mianteiners that many poeple would LOVE to have AS in proper repositories to be included ...

Advertisement

Usually for a package to be maintained there has to be someone who is up for the job of maintaining said package.

If you wan't a particular package maintained, and no one else is maintaining it, then you can do it yourself.

Edites so its more visible. If you don't understand what might possibly have lead to putting a ' in want, just think about it.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

No IDea >>wan't<< does mean .

I just wanted to say someone should rock the distro maintainers so they keep AS in repos.

And I'm saying its not the job of the distro maintainers but particular package maintainers. You're "rocking" the wrong people.

If you're going to start asking for stuff you could at least know how the system works.


No IDea >>wan't<< does mean .
Just think about it.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

I believe the problem is that AngelScript is not a feature complete library yet. Every month or two I release new versions with changed or additional features that may or may not break backwards compatibility. To have standard distributions the package maintainers would have to distribute each of the 50+ officially released versions, so that each application can point to the version they use.

This is a very different situation than what is for libraries such as zlib, libpng, or lua, that are already feature complete since many years back and only receive binary compatible updates (security fixes, optimizations, etc).

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

Hi, I really hoped to get some answer from AS's maintainer and it's great smile.png,

Your newer and newer version keeps compiler unwise people from getting build http://sourceforge.net/p/opendungeons/git/commit_browser . There is always compiler flag or code construct which must be changed , that's why I am keep asked to move away from AS and hardcode tmp into C++ what's in scripts or fix it somehow . The verison 2 28 0 is quite misleading -- it suggests quite mature project while it;s not .

http://www.angelcode.com/angelscript/downloads.html suggests there is often major version switch , that is as I suppose, compatiblity breaking with the previous ones. If you could change your model , to keep one major version with binary ( or interface compatiblity or how would you call it ) between minor versions of each parent major version ....

To have standard distributions the package maintainers would have to distribute each of the 50+ officially released versions, so that each application can point to the version they use.

No, I try to keep pace with the newest AS , so why other software devels do the same ? Why not insist to have working last two, three versions - 2.28 2 27 and 2 26 ?

EDIT : Another argument : having sent OD's sources to a package maintainer, he remarked : Whaatt you bring the AS into your sources ?! Why you just link to a dynamic library ;) ???

If your definition of 'mature' means that the libraries interface cannot evolve anymore, then I guess AngelScript isn't mature yet (even after 10+ years of development). But if your definition of 'mature' is how many successful projects use AngelScript and how long it's been available then AngelScript is really quite mature. Guess, which definition of 'mature' I use. ;)

Most developers that use AngelScript keep a copy of the version they integrate, they even check-in the source code in their own repository. This removes any dependency on my repository and avoids confusion when other users download your project (as it will include the exact version of AngelScript you're using). The developer is then also in full control when he wants to upgrade to the latest version of AngelScript, or if he'd rather continue using an older version. Some developers upgrade with every new release (usually it is just a couple of tweaks to the existing code), others only upgrade every couple of years (and usually have a little more work).

On the topic of version numbering. The 1st digit is the major version. I'll only change this to 3 when I'm ready to take the step to remove old functionality (and breaking script compatibility). The 2nd digit is the interface version. I change this everytime there is a change to the interface (though usually it is just an additional parameter, or method, or similar). The 3rd digit is for releases that doesn't change the interface, but implement something new. On some occasions I've also used a final letter, without changing the numbers. This is when releasing only bug fixes, without any other changes.

I try to avoid changing the interface all the time. Normally I hold off on features that change the interface until I have a couple of different ones that I can release together, but I cannot stop it all together as then I'll soon run out of options to evolve the library. I also definitely will not maintain 2 parallel versions. That would only lead to even more confusion and would take away from my already too few available hours to work on the library.

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

I would say the package maintainer is just ignorant of the different types of libraries there can be (ie. like Andreas said not everything is as stable as zlib). Actually the best way to ensure the compatibility of your binary (the final released game) is to depend on just a minimal set of system libraries and statically link everything else, which would go for libraries like AngelScript, Bullet, SDL2 etc. which are under constant development.

If on the other hand your primary target at this point is other developers and source distribution you could just make your build script fetch the correct versions of 3rd party libraries. However in my personal work I've found myself often customizing them (AngelScript included) so I have no option but to just slap everything into my own repository and I'm happy that way.

This topic is closed to new replies.

Advertisement