raduprv / Eternal-Lands

http://www.eternal-lands.com
Other
158 stars 57 forks source link

Coordinating the next release #137

Closed pjbroad closed 2 years ago

pjbroad commented 3 years ago

We have a full client update coming that includes maps updates (from @feeltheburn) and a server update (from @raduprv). This will be the next major version bump. We've been holding off major changes to the client code so but have the exciting prospect of #132 (from @gvissers) so we need to decide whether to merge that so we can test fully before the release. I'm in favour of merging #132 but what do others think? Are there other changes should we consider?

pjbroad commented 2 years ago

On Android the tab maps are find, not as shape but still readable.

Are we waiting on anything else at this point? Can we finally do this? ;)

Looks like it, I'm doing RC build and will upload them shortly.

feeltheburn commented 2 years ago

Okay, if they aren't good enough we can try again later with an updated build for it with some better quality images that'll keep the build below 100M.

It's the pixel-size limitations of dds files that make me wanna switch to jpg. We have 1024x1024 in the main client, the android ones are 512x512. There's no in-between for dds. With jpg we could do 800x800 or so and likely stay well under the client size limit.

But if they work as-is, we can discuss that later. I'd rather get the client out.

pjbroad commented 2 years ago

@feeltheburn Just realised the data pack does not contain the standard TTF fonts. I'll do a pull request containing them now.

feeltheburn commented 2 years ago

DOH! Okay, I'll get a new pack out shortly.

(For anyone running an rc build: Keep in mind that they won't show the updated inventory images on any server, as they haven't been updated server-side.)

pjbroad commented 2 years ago

Merge request done.

feeltheburn commented 2 years ago

https://el-db.com/tempstuff/196release/el_data-196.zip

Data pack is updated.

@gamil-zirak - note the data update. The change is the added /fonts/ directory in the data pack, so you only need add that to any build you're doing.

raduprv commented 2 years ago

Before the update, I'd like for many people to test the binaries for at least a week. This also gives me some time to settle some personal issues (my dad has covid and he is not very well). So once we have the binaries for all the platforms, we should post the links on the forum (after I upload them).

feeltheburn commented 2 years ago

These binary tests would have to still be done with 1.9.5's data files, of course, the map differences would be very problematic otherwise (unless used on Test server only). So just a binary file that can be plopped in to replace the user's current one, or a full build using the old 1.9.5 data.

Many have already been using bluap and Ben's updated builds for quite a while so I doubt we'll see any problems.

But of course we can hold off and plan for next weekend (tentatively) for the personal issues regardless.

raduprv commented 2 years ago

Yes, we can ask people to test the new binaries with the old data. Every small change can cause some issues. The new Android client should also be tested, not a lot of people tested it before.

pjbroad commented 2 years ago

@raduprv sorry to hear about your father, I hope he gets better soon.

I'm currently building and uploading packages to the 1.9.6.RC release on github. I've included full packages with the new data pack and just executables for Linux and executable+dll packages for Windows. I'll do the Android build next then add some explanatory text to the release information.

brunoramoslu commented 2 years ago

I have tested the .sh installer on a clean installation of Debian and there is a bug when /home/user/.local/share/applications folder does not exist the script is installing the desktop file directly in /home/user/.local/share/applications. This means that location is not a folder but instead the .desktop file itself. I'm writing this on my mobile so cannot attach a log.

20211107_161817.jpg

brunoramoslu commented 2 years ago

Not sure this is related to the release, but in the test server #ach is returning an error.

Unkown: #ach

feeltheburn commented 2 years ago

Not sure this is related to the release, but in the test server #ach is returning an error.

Unkown: #ach

The Test server is VERY far behind the main server, I think it's from the days of 1.9.3.

ach came after that, so that's an expected result. As long as it works on Main, it's okay.

gamil-zirak commented 2 years ago

One heads-up for anyone that's running a 1.9.6 binary with the 1.9.5 data: any custom or unofficial files in ~/.elc/updates/1_9_5 will no longer be loaded. If you're inviting other's to test, it may be a good idea to give them a warning that this is expected and not a bug.

pjbroad commented 2 years ago

I have tested the .sh installer on a clean installation of Debian and there is a bug when /home/user/.local/share/applications folder does not exist the script is installing the desktop file directly in /home/user/.local/share/applications.

Thanks for finding that, I've fixed the script and uploaded a new version of the installer package.

feeltheburn commented 2 years ago

One heads-up for anyone that's running a 1.9.6 binary with the 1.9.5 data: any custom or unofficial files in ~/.elc/updates/1_9_5 will no longer be loaded. If you're inviting other's to test, it may be a good idea to give them a warning that this is expected and not a bug.

We may wanna tell them to rename 1_9_5 to 1_9_6.

That would be good for testing as well, making sure custom files still work.

gamil-zirak commented 2 years ago

We may wanna tell them to rename 1_9_5 to 1_9_6.

That would be good for testing as well, making sure custom files still work.

I'd done that so that I wouldn't lose my nice Burned maps. I can confirm that custom files still work.

pjbroad commented 2 years ago

All the release candidate builds for Linux, Windows and Android are done. See the 1.9.6.0-rc1 release.

feeltheburn commented 2 years ago

@bendoughty Can we get a mac rc build (with 1.9.5 data, just update the binary)?

We need to emphasize only binary updates for using on Main, and any with 1.9.6 data should be marked for use on Test server only. (Cleanup work of height tiling is done on pretty much every non-instance map and will result in mapwalking hell, on almost every main map, not just the stuff listed in the change log post.)

bendoughty commented 2 years ago

@feeltheburn Certainly, though unfortunately I am currently away and the earliest I will be able to get this done is Friday morning.

So I don’t leave you entirely empty handed until then: Feedback on the interim builds I share with my inner circle has been good, and I haven’t had any reports of problems.

feeltheburn commented 2 years ago

With that then, perhaps go ahead and announce the test binaries using 1.9.5 data for Win and Linux and give it a week or so, announce Mac ones on Friday, which'll still give them a few days?

raduprv commented 2 years ago

I posted on the forums: http://www.eternal-lands.com/forum/index.php?/topic/61661-eternal-lands-196-release-candidate/

gvissers commented 2 years ago

I have added a last minute change at the request of Learner: certificates can now also be loaded from the updates directory, allowing updates of the server certs without troubling the user (if they enable auto-updates). It's not worth rebuilding the test binaries over, though, as it only adds a single directory to the list. This should be merged into the OL client branch at some point, though.

pjbroad commented 2 years ago

You may have seen a few commits mostly fixing scaling issues for the language, rules and new character windows. I've also hopefully improved how the on-screen keyboard is opened on Android; fixing a chat window issue in passing. I really hope that's it and we can release soon. Do we want another RC?

raduprv commented 2 years ago

At least for Android, yes, because it's harder to do updates for it.

feeltheburn commented 2 years ago

'Tis been quiet of late... Will we be able to make 1.9.6 and early Xmas bonus? ;)

raduprv commented 2 years ago

The Android client was what set us back a little. Now that it seems to be solved, we can resume the process. Bluap, can you please give me a final Android version for release? I will upload it on Playstore, and see if there are any issues.

feeltheburn commented 2 years ago

Yeah, I just wasn't sure if the issues were resolved. Been watching the forum threads.

Yay, hopefully time to rock this, then. :)

pjbroad commented 2 years ago

The Android client was what set us back a little. Now that it seems to be solved, we can resume the process. Bluap, can you please give me a final Android version for release? I will upload it on Playstore, and see if there are any issues.

I was just squeezing in some improvements to the window positioning and scaling, mostly for Android. That's done now. There does appear to be an issue that backup is not working on at least newer Android versions (I've not changed the manifest file settings). I'd like to see if I can fix that, probably this weekend, but I'll aim to do builds anyway if I can't. Hopefully we can wait another few days?

raduprv commented 2 years ago

Sure, no problem, take your time!

pjbroad commented 2 years ago

Sure, no problem, take your time!

I've uploaded the Android RC 5 build to github.

pjbroad commented 2 years ago

Shall we do the release? If agreed, I put the release label in place and we can do a final set of builds.

raduprv commented 2 years ago

Yes, I think we are ok for a release! Please let me know after you finished all the builds.

pjbroad commented 2 years ago

All the Windows and Linux builds are available on the release page.

@bendoughty let me know when have build against the 1.9.6.0 tag then I'll add it it the page.

raduprv commented 2 years ago

Eh, I knew we'll have some fun with google play. Firstly: "Your app currently targets API level 29 and must target at least API level 30 to ensure it is built on the latest APIs optimized for security and performance. Change your app's target API level to at least 30. " Also, make sure the app version in the manifest is 1.1.3

pjbroad commented 2 years ago

The API change is fine. I set the manifest "versionName" to "1.9.6.0 release" to match the desktop client. AFAIK its is just a string used in the application information. If we change the manifest, the client version will still be 1.9.6. Is 1.1.3 your preference or a play store requirement?

raduprv commented 2 years ago

It's a requirement, you can't have two apks with the same version.

raduprv commented 2 years ago

Oh, I mean it is better to increment it to the next number I used for the Android version, because we might have an update to it if there are issues and the Android updates are separate from main client updates.

pjbroad commented 2 years ago

I think the actual version number in the manifest is is the "versionCode" an integer. I didn't know what you last set set to so I've updated it to 10 which allowed me to manually install my APK over the playstore version. I think that is the value that needs updating and so should be fine as is. The "versionName" is just a string so we can add what ever additional information to it we wish should a separate update be needed. If at all possible, I'd rather not have to modify the client source then maintain use a special version number for the android client. I'd really like to merge the android branch into master after this release.

raduprv commented 2 years ago

Oh, yes. I had version code 6 in the last release. However, in the google play console I see the versionName.

There is no need to modify the source to show the android specific version in the client. It is more for us. But I guess we can try the version you put (1.9.6) and see if there are any issues.

pjbroad commented 2 years ago

OK, thanks. I've updated the APK file. The only change is "targetSdkVersion=30" in the manifest.

raduprv commented 2 years ago

Thanks! New problem now :/ You uploaded an APK with an invalid signature (learn more about signing). Error from apksigner: ERROR: MIN_SIG_SCHEME_FOR_TARGET_SDK_NOT_MET: Target SDK version 30 requires a minimum of signature scheme v2; the APK is not signed with this or a later signature scheme

pjbroad commented 2 years ago

OK. I can see the same error if I try to verify the signature.

DOES NOT VERIFY
ERROR: Target SDK version 30 requires a minimum of signature scheme v2; the APK is not signed with this or a later signature scheme

So I should know if I have fixed it. I'm trying to find out more.

pjbroad commented 2 years ago

I've updated the APK file. The only change is I've resigned with apksigner and it now verifies OK:

Verified using v1 scheme (JAR signing): true
Verified using v2 scheme (APK Signature Scheme v2): true
Verified using v3 scheme (APK Signature Scheme v3): true
Verified using v4 scheme (APK Signature Scheme v4): false
Verified for SourceStamp: false
Number of signers: 1

Hopefully that fixes the error.....

raduprv commented 2 years ago

Great, I released the new version on Android, waiting for Google's review.

pjbroad commented 2 years ago

Fantastic!

bendoughty commented 2 years ago

@pjbroad I'll get to work on the macOS build now, shouldn't be too long. I'll send you a link to the app bundle and updated framework pack as soon as I am done. 😊

feeltheburn commented 2 years ago

Great, I released the new version on Android, waiting for Google's review.

Is this complete with 1.9.6 data/maps? Which means all the other clients get updated with the server and...?

Zomg a release? :-D

I'll get the moderator invasion map info page updated for them for when the update happens. (Nothing to wait on here.)

Note there's a big event planned on Sunday (8pm gmt) so any release should probably be worked around that. http://www.eternal-lands.com/forum/index.php?/topic/61666-christmas-giveaway-2021/

pjbroad commented 2 years ago

Just a quick sanity check. On the test server, it looks like the item images ID have not yet been update. I presume that will be done at some stage and for the main sever too when that gets its update for the release.

bendoughty commented 2 years ago

@pjbroad The macOS build is done and the links are on their way!