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

Release version 2.56 #182

Closed
5 tasks done
Dovyski opened this issue Oct 14, 2013 · 17 comments
Closed
5 tasks done

Release version 2.56 #182

Dovyski opened this issue Oct 14, 2013 · 17 comments
Milestone

Comments

@Dovyski
Copy link
Member

Dovyski commented Oct 14, 2013

This issue lists all tasks we need to finish in order to ship version _2.56_.

  • Test current build, merging pull requests with any regression fix;
  • Update CHANGELOG file;
  • Merge dev into master
  • Update flixelcommunity.org with lastest build info;
  • Spread the word and celebrate :D 🍰
@Dovyski
Copy link
Member Author

Dovyski commented Oct 14, 2013

I've just sent two pull requests with regression fixes: #181 and #180. I've tested the current dev branch against three of my games:

Excluding the regressions I've fixed, Flixel Community worked pretty fine out of the box (it even helped me find a non-existent frame in a sprite). Congrats everyone!

@WingEraser
Copy link

Run Mode before you release. It doesn't run as expected.

@Dovyski
Copy link
Member Author

Dovyski commented Oct 14, 2013

@WingEraser We will and thanks for all the feedback and help! I didn't have time to check your pull requests or Mode , but it's on my list.

@IQAndreas
Copy link
Member

Update CHANGELOG file;

Picture me saying this like a 6-year-old who was just told to clean his room: "Do we have to?"

Since we don't have any new features (pretty much only bugfixes), can't we just point users to the list of commits? ;)

But if a changelog is needed (and I would actually be glad to do the dirty work and write it), I have been playing around with labels and milestones in such a way that it should be as simple as going through this list and copying the information over:

Also, how detailed should a changelog be? New features are always good to include, but a list like "The following 42 bugs were fixed:" isn't all that useful to someone who never ran into any of them, or someone wanting to update to the new Flixel version and want to see if they need to change their own code in any way.

@Dovyski
Copy link
Member Author

Dovyski commented Oct 15, 2013

Run Mode before you release. It doesn't run as expected.

Mode's menu does not work because we set moves = false in FlxText. I've fixed that in #180, but @moly pointed out that FlxObject documentation states that FlxText has moves defaulted to false.

If we decide to keep moves untouched in FlxText (the original buggy behavior), we must update FlxObjects documentation to reflect that.

Since we don't have any new features (pretty much only bugfixes), can't we just point users to the list of commits? ;)

I see your point, but that's not polite :D Personally I always look at the changelogs to check if everything I use will continue to work, or to have a minimum understanding of what has changed. We don't need a changelog listing all bugs that were fixed, we can condense them, e.g.:

Fixed several bugs regarding FlxTilemap

If a developer gives Flixel Community a try and it doesn't work for his game, the changelog will give him a hint: "Oh, I use FlxTilemap, maybe they have changed something I was relying on". That's the real meaning of a changelog for me.

But if a changelog is needed (and I would actually be glad to do the dirty work and write it), I have been playing around with labels and milestones in such a way that it should be as simple as going through this list and copying the information over:

That's perfect! We can condense issues targeting the same class, such as the FlxTilemap I previously described.

@IQAndreas
Copy link
Member

This is the gist of the changelog. I still need to clean it up and make it look a bit prettier. Also, there are a few last changes on their way.

Do you guys have any thoughts? Anything that should be moved/removed?


New Features

Add properties numFrames and maxFrames to FlxSprite #174
Add new FlxTween class #114
Add function to trigger full-screen support (not complete) #74
Make FlxG.log() able to split out arrays using FlxU.formatArray() #74
Add optional ColorMap parameter to FlxTilemap.bitmapToCSV() #74

Improvements

Prevent being able to set a FlxSprite to an invalid frame #174
Prevent errors if destroy() is called twice #153
Log error if invalid Bitmap passed to FlxG.addBitmap() #127
FlxG.sort() won't crash if a property is not found #116
Log error if invalid custom particle class is passed to FlxEmitter #95
Prevent being able to pass null to FlxObject.add() #87
FlxObjects will now stop when they reach the end of a path #85
Remove several FlashBuilder/FDT warnings
Remove migration warnings if published with Flash IDE #76
Add super.destroy() to all overridden destroy() methods #73
Add http:// prefix if user did not in FlxPreloader.goToMyURL() #71

Performance Improvements

No need to fill a camera twice if not blending alpha #143
Remove small performance issue in FlxG.addBitamp() #96
Refactored FlxObject::preUpdate() to remove uneccessary code #82

Bugfixes

Fix FlxGroup#maxSize #184
Fix documentation for FlxText#moves #180
Fix FlxSprite.drawLine() incorrect behavior when full transparency set in color #173
Fix FlxTilemap.overlapsWithCallback calls callback when no overlapping #166
Fix FlxCamera "jitters" when following a target #134
Fix FlxText and problem with camera zoom #119
Fix Mouse.as doesn't like negative cursor offsets mixed with native Flash #117
Major cleanup and bug fixing of FlxSound #114, #103, #101, #92, #80
Fix FlxObject#(overlaps|overlapsAt) checking only first element of FlxGroup #109
Fix FlxTilemap not clearing variables before loadMap #102
Fix overlapProcessed isn't properly cleared in FlxQuadTree #100
Fix FlxTilemap ignoring last tiles if startingIndex > 0 #99
Add missing usage of particleClass in FlxEmitter #95
Fix FlxTilemap.ray() result value always null #84
Fix FlxU.round() giving incorrect results for negative numbers #79
Fix FlxU.formatArray() includes first element twice #77
Fix health only initialized in FlxSprite, should have been in FlxObject #74
Fix incorrect value for moves in FlxTileblock and FlxTilemap #70

Should these be in the changelog?

Move source to src folder
Remove documentation (only include it in release builds)
Add generate-asdoc.sh and generate-swc.sh utilities
Add .gitignore

@Dovyski
Copy link
Member Author

Dovyski commented Oct 15, 2013

That's great, well done! About your last question, I think it's important to include these entries:

Move source to src folder
Remove documentation (only include it in release builds)

@Dovyski
Copy link
Member Author

Dovyski commented Nov 15, 2013

We are almost there! :D

As soon as we review and merge the last pending pull request (regarding the offset by 1 in STYLE_LOCKON), we can focus on the tasks here. Flixel Community website is ready (I've made a small facelift), only the download links are "wrong" (we must merge dev into master before I can fix them).

@IQAndreas
Copy link
Member

dev merged into master at 98f01d3

Now I just need to (sorry it's taking so long, there were bugs in the automatic build script which for some reason weren't appearing when I ran it last time).

@IQAndreas
Copy link
Member

It is complete!!

There are two ways we could release Flixel (I uploaded files to both so we can play around with them and see what we like):

The old way

As I have done before, I pushed everything to the following repo:

Each "category" can be found in a separate branch (and GitHub also generates download links for each type):

  • release - Contains everything, the source code, the SWC, and the documentation, all in one archive (view, ZIP)
  • bin - Contains the compiled SWC of that flixel version (since it is in a repo, it can be added as an easy-to-update submodule like in the sandbox (view, DOWNLOAD)
  • docs - Contains the flixel documentation. We should either copy this over to or add it as a submodule in the website (view, ZIP)

I'm rather proud of the fact that I make all of these by editing the version number in the utils/config file and run utils/build-complete-flixel-release.sh, all the generating and uploading is done automagically. (source)

The new way

See the following page (and the necessary links can be found on that page, though I can't seem to add descriptions to the downloads):

It's fancy, and clear, plus it looks nice when you have a list of all available releases (though I still need to add the binaries etc to the other versions):

Sadly, this way requires some manual fiddling, however, when combined with the automated scripts I have been using, the amount of manual work is still very minimal. I might even be able to hook into the GitHub API and upload the files automatically there too.

@IQAndreas
Copy link
Member

The final bug has been fixed and merged. Now all that is left is the website and cake.

After some consideration, I think I will scrap the "old" way of doing things and instead use GitHub's new release system. I can handle some manual uploading.

I haven't uploaded the latest builds yet, however, the links to them will be identical to the links currently on the release page (so you can go ahead and add the links to the site, and they will still be valid after I replace the old builds):

@IQAndreas
Copy link
Member

Done! Flixel v2.56 builds have been uploaded:

@Dovyski
Copy link
Member Author

Dovyski commented Nov 18, 2013

Website updated, all set, it's time to celebrate! 🎉

Congratulations to everyone involved! It took us some time to discuss all those issues (and iron out all their bugs), but we did it. Now it's time to dive for more awesome features!

And the so promised cake 😃

1006p78-slice-cake-l

@WingEraser
Copy link

😄 Now forum announcement and let Adam know about it.

@greysondn
Copy link

I think I have two pulls from the previous version, with the old layout (assuming the change actually happened)... GIT has the ability to resolve merges where files have relocated last I checked and I offered to update those once the release happened as a base for work others wished to do (and to complete work in them).

Would it help the community for me to handle the merge from upstream down to my changes and then submit changes back upstream in those requests?

Perhaps this isn't the best place to ask.

Edit:

I went ahead and made an attempt at #160. Granted those changes aren't overly significant anyhow. It's untested code, however, and may have unintentionally created a mess. The change is making problems in my fork, which doesn't surprise or upset me overly much. Just makes me feel tired.

#169 is on my todo list.

I'll be busy until early December due to the holiday and the need to cram work into our schedule immediately after it. But I guess here's a sign of life to show that my inept, long-winded, and often silly self is still here wanting to help 🐺

Edit2:

Yay on the new incremental, by the way, ladies and gentlemen 👍

@IQAndreas
Copy link
Member

But I guess here's a sign of life to show that my inept, long-winded, and often silly self is still here wanting to help

And it is appreciated! It is normal for many (and I must confess I have been guilty of this myself) to send an issue or pull request to a project, then disappear without it being resolved properly. Kudos to you for sticking around. :)

I just apologize that I'm putting you through so much extra work having to re-do the commits, but just say the word and I will give a hand.

@IQAndreas
Copy link
Member

I started a thread on the Flixel forums:

Let me know I should adjust the title or any of the content.

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

4 participants