Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relase csfml 2.2 (or 2.1.1) ? #50

Closed
eleweek opened this issue Jan 1, 2015 · 44 comments
Closed

Relase csfml 2.2 (or 2.1.1) ? #50

eleweek opened this issue Jan 1, 2015 · 44 comments

Comments

@eleweek
Copy link

eleweek commented Jan 1, 2015

Hi, csfml 2.1 is incompatible with sfml 2.2 due to changes in blending mode stuff. This commit in masetr fixes the problem: d6849a3

I'm trying to update sfml 2.1 -> sfml 2.2 so it can build on yosemite with homebrew:

Homebrew/legacy-homebrew#35279

However I'm having trouble with the csfml 2.1 <-> sfml 2.2 incompatibility.

I think it would be nice to have compatibility between latest stable csfml and sfml releases. So I suggest making a stable release of csfml(if this is possible)

@LaurentGomila
Copy link
Member

Do you really think that we were waiting for someone to open an issue, to release CSFML 2.2? 😕

There's currently nobody to maintain CSFML (and SFML.Net). Any help will be appreciated though.

@eleweek
Copy link
Author

eleweek commented Jan 5, 2015

Do you really think that we were waiting for someone to open an issue, to release CSFML 2.2?

Well... yes? Seriously though, I assumed that maybe you weren't aware of this incompatibility because nobody bothered to report it.

There's currently nobody to maintain CSFML (and SFML.Net). Any help will be appreciated though.

I can't commit long-term, but if there are issues in code that need to be fixed, I'll be happy to help.

@LaurentGomila
Copy link
Member

There's no "issue" to fix currently, the latest modifications to SFML just need to be ported.

@oprypin
Copy link
Member

oprypin commented Jan 6, 2015

CSFML is extremely important, because more than half of bindings to other languages depend on it (including the one I've just finished).

@eXpl0it3r
Copy link
Member

The question you should be researching is: What needs to be updated before bumping the version number?
Besides the version number, CSFML seems to build fine with SFML 2.2 (or even SFML master).

@oprypin
Copy link
Member

oprypin commented Jan 6, 2015

upVector, requestFocus, sfSoundRecorder_setProcessingInterval, BlendMode, changes in fonts int->float, window focus, strikethrough are what I found by scrolling through git diff CSFML-2.1/include CSFML-master/include.

And SFML was changed too radically (every single line?) to scan it like that 😢
find -exec dos2unix {} \; seems to allow me to use diff as I hoped.

@oprypin
Copy link
Member

oprypin commented Jan 6, 2015

So I've published the changes in header files between [C]SFML 2.1 and 2.2

@LaurentGomila
Copy link
Member

Very nice, thanks 😃

@zsbzsb
Copy link
Member

zsbzsb commented Feb 8, 2015

I am working on finishing the last few changes.... but I dunno what you are talking about blending modes for. CSFML (and SFML.NET) have had those changes for a while now.

And my todo list...

CSFML

underline position/thickness #56
font info #58
joystick info #59
sound recorder start/bool return #57
sound recorder devices #57
sensor api #62
touch api #63
sensor and touch events #65
color int constructor SFML/SFML#722 - after 2.2

@LaurentGomila
Copy link
Member

color int constructor SFML/SFML#722

If you also apply modifications pending for 2.3, we won't be able to release a clean CSFML/SFML.Net 2.2. Make all the 2.2 updates, then we release the bindings, and after that you can start working on newer modifications.

@zsbzsb
Copy link
Member

zsbzsb commented Feb 24, 2015

Alright, I was just adding it there so I didn't lose track of it.

@zsbzsb
Copy link
Member

zsbzsb commented Feb 24, 2015

This can be closed once #53 is merged.

@oprypin
Copy link
Member

oprypin commented Feb 24, 2015

I see some unaddressed changes: Sensor, Touch, Http.
https://gist.github.com/0c9b87f1301c9cc3103d#file-sfml-diff

@zsbzsb
Copy link
Member

zsbzsb commented Feb 26, 2015

#50 (comment)

So.... checklist is done. Verify it with @BlaXpirit's header diff. https://gist.github.com/BlaXpirit/0c9b87f1301c9cc3103d#file-sfml-diff

Can we merge and then tag 2.2 now? 😈

@LaurentGomila
Copy link
Member

Is everything ok for everyone?

Can we merge

Merge what?

@zsbzsb
Copy link
Member

zsbzsb commented Feb 26, 2015

Merge what?

#53

@oprypin
Copy link
Member

oprypin commented Feb 26, 2015

My bindings to another language work well with 2.2. Tried some new functions, no problems at all.

@LaurentGomila
Copy link
Member

Let's wait a few more days for last minute fixes. Bump me if I forget.

@zsbzsb
Copy link
Member

zsbzsb commented Feb 26, 2015

Let's wait a few more days for last minute fixes.

At first I was going to reply with sad face, but now I realized we need at least 2 more fixes. We need to add a function for relative touch position to a render window and now SFML/SFML#806 (#67)

Bump me if I forget.

Will do. :)

@zsbzsb
Copy link
Member

zsbzsb commented Feb 28, 2015

Everything is done, so lets plan on doing the version change merge on Sunday (March 1st)?

@zsbzsb
Copy link
Member

zsbzsb commented Mar 2, 2015

Bump me if I forget.

📍

@zsbzsb
Copy link
Member

zsbzsb commented Mar 3, 2015

@LaurentGomila this is now a formal bump. I propose that you have forgotten about this and as your friendly neighborhood programmer I have decided to remind you. CSFML 2.2 is complete so #53 can now be merged. 😉

@LaurentGomila
Copy link
Member

I haven't forgotten, I'm just very busy with real life problems. I should have left a word here, sorry.

@zsbzsb
Copy link
Member

zsbzsb commented Mar 3, 2015

Well take your time, don't let me rush you or anything. If you have other stuff happening IRL that should take priority.

@eleweek
Copy link
Author

eleweek commented Mar 3, 2015

Thank you very much! Could you please comment here when a tarball will be available on http://www.sfml-dev.org/download/csfml/ ?

@zsbzsb
Copy link
Member

zsbzsb commented Mar 3, 2015

Working on builds now. Expect within a few days. 😉

@eleweek
Copy link
Author

eleweek commented Mar 3, 2015

👍 Awesome, thank you!

@eXpl0it3r
Copy link
Member

Till things are collected and I've more time to update everything, feel free to test these Windows build:

@mantognini
Copy link
Member

OS X is here: http://1drv.ms/1Khhx0d

@zsbzsb
Copy link
Member

zsbzsb commented Mar 5, 2015

Just until @eXpl0it3r can get all this on the website. Here is CSFML 2.2 compiled with gcc on linux.

Linux x86
Linux x64

@LaurentGomila
Copy link
Member

Windows builds are switched, 32 is 64 and 64 is 32.

And I don't see any dependency to a C runtime (msvcrt for VC++, or whatever for gcc), how were they compiled?

The OS X release doesn't contain the documentation.

Everything else looks ok 👍

@zsbzsb
Copy link
Member

zsbzsb commented Mar 5, 2015

And I don't see any dependency to a C runtime (msvcrt for VC++, or whatever for gcc), how were they compiled?

I asked @eXpl0it3r if he was going to compile them to use static std libs. Reason being because that is how they were done in the previous releases. Also GCC was used if I am not mistaken.

Also here is OS X with the docs added.

@LaurentGomila
Copy link
Member

The strange thing is that if you check the older releases, they all depend directly on MSVCRT.dll. And I think it is the right way, static standard library for DLLs that interact with each others can only end in a crash.

And sorry for the 32/64 bits thing, everything's correct, my bad.

@zsbzsb
Copy link
Member

zsbzsb commented Mar 5, 2015

As far as I know MSVCRT is the Microsoft Visual C Runtime and is included in the base OS. Reason being is that it is a C library and the names aren't mangled so its not specific per compiler / release. So static libs to the MSVC compiler means static C++ runtime and doesn't include the C runtime. Maybe there is a way to force it to compile statically to that runtime also, I don't know right now.

Update, look what I found and here too.

The other is the msvcrt.dll (with no numbers in the file name) in System32 folder, which is intended to be used ONLY by the OS itself since some time ago. And applications should never replace/reinstall it. However, some applications do link to it, for some reasons like to remove the extra dependencies to install. But be aware that it is not guaranteed to be available in future Windows version.

@LaurentGomila
Copy link
Member

So they were compiled with gcc and static runtime? @eXpl0it3r?

I thought in this case they would be bigger, but they are even smaller than my previous builds with VC++ 😐

@eXpl0it3r
Copy link
Member

I had like no time to build stuff, so I didn't test anything. Feel free to run a test with VS and GCC.

I compiled stuff with VS 2010 and link the runtime lib statically.

@zsbzsb
Copy link
Member

zsbzsb commented Mar 5, 2015

I tested your builds @eXpl0it3r and they work just fine.

@eXpl0it3r
Copy link
Member

With GCC as well?

@zsbzsb
Copy link
Member

zsbzsb commented Mar 5, 2015

I dropped them into a SFML.NET project and to test them - didn't try linking. :/

@eXpl0it3r
Copy link
Member

@mantognini Previously there was the description "Clang - universal 32+64-bit (OS X 10.8+, compatible with C++11 and libc++)" should I keep this?

@mantognini
Copy link
Member

Good catch. It should now read "Clang - universal 32+64-bit (OS X 10.7+, compatible with C++11 and libc++)".

@eXpl0it3r
Copy link
Member

@eleweek
Copy link
Author

eleweek commented Mar 9, 2015

Yay! Thank you all!

@LaurentGomila
Copy link
Member

Thank you very much @eXpl0it3r 👏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants