cocos2d-x-3.3 Dec.12
    [FIX]           Billboard: allow billboard rotate along z axis
    [FIX]           Bundle3D: create aabb for mesh whose aabb does not exist (user custom mesh)
    [FIX]           EditBox: text position and move animation error on iPhone6 Plus
    [FIX]           FileUtils: createDirectory(): doesn't invoke closedir() after opendir on platforms other than WP8/WinRT/Windows

cocos2d-x-3.3-rc2  Dec.5
    [FIX]           C++: use 100% of one core on Windows
    [FIX]           Label: when a label is added to a invisible parent node, app will crash if switching from background
    [FIX]           Label: label will not be shown when using system font on Mac
    [FIX]           Studio reader: replace protocol buffer with flatbuffer 

cocos2d-x-3.3-rc1  Nov.29 2014
    [NEW]           Vec2: added greater than operator
    [NEW]           Tools: Updated cocos console to v1.4 (from 1.2)
    [NEW]           WP8: Win8.1 universal app support

    [FIX]           Audio: `SimpleAudioEngine::sharedEngine()->playBackgroundMusic()` crashed freezen on Lollipop(Android5.0)
    [FIX]           Button: when the dimension of button title is larger than the button, button will scale to fit the dimension of the button title
    [FIX]           Button: when the dimension of button title is larger than the button, button will scale to fit the dimension of the button title
    [FIX]           Camera: does not work correctly when the up is not (0, 1, 0)
    [FIX]           Director: Uses a low-pass filter to diplay the FPS
    [FIX]           DrawNode: drawPoint() may cause crash
    [FIX]           EventKeyboard: can not check right Shift, right Ctrl and right ALT
    [FIX]           GLProgramCache: doesn't release old program with the same key before adding a new one
    [FIX]           GLProgramState: enabled GLProgramState restoring on render recreated on WP8
    [FIX]           Label: label shifting when outline feature enabled
    [FIX]           Label: when applying additionalKerning to a Label that displays a string with only 1 character, the character is shifted
    [FIX]           Label: display incompletely with multiline text with outline feature enabled
    [FIX]           Label: crash if using BMFont but missing corresponding png file
    [FIX]           Lua: logical error in luaval_to_quaternion
    [FIX]           New audio: can not loop on Android 2.3.x
    [FIX]           Random: CCRANDOM_0_1() and CCRANDOM_MINUS_1_1() can be seeded using std::srand(seed)
    [FIX]           Scale9Sprite: will be flipped if both flipX and flipY are false
    [FIX]           Scale9Sprite: if scale and flip property are set at the same time, the result would be wrong
    [FIX]           Scene: setScale() doesn't work as expected
    [FIX]           Sprite3D: did not create attached sprite from cache
    [FIX]           Tests: Sprite Performance Test automation works as expected
    [FIX]           UI: Text: invoke ignoreContentAdatpSize(false) will cause wrong effect
    [FIX]           VideoPlayer: showed in wrong place on Android v2.3.x
    [FIX]           WebView: showed in wrong place on Android v2.3.x
    [FIX]           WP: back key behaviour and Director::getInstance()->end() works not correctly

    [FIX]           Lua-binding: XmlHttpRequest would truncate binary data

cocos2d-x-3.3-rc0  Oct.21 2014
    [NEW]           3d: added light support: direction light, point light, spot light and ambient light
    [NEW]           Added ClippingRectangleNode
    [NEW]           Added AssetsManagerEx, which is more powerful than AssetsManager
    [NEW]           Added a test case of sprite lamp effect
    [NEW]           Animate3D: can create with start frame and end frame
    [NEW]           Audio: new audio supports Mac OS X and Windows
    [NEW]           Application: added openUrl()
    [NEW]           Armature: added getOffsetPoints()
    [NEW]           Lua-binding: added Camera3DTest ,BillBoradTest
    [NEW]           Node: schedule/unschedule lambda functions
    [NEW]           Rect: added merge()
    [NEW]           Spine: update to 2.0.18
    [NEW]           TileMap: added staggered tile map support
    [NEW]           Utils: added getCascadeBoundingBox()
    [NEW]           WP8: enabled screen orientation change handling

    [FIX]           Accelerometer: using Accelerometer will freeze app and then crash on WP8
    [FIX]           Application: getCurrentLanguageCode() always return empty string
    [FIX]           Action: kRepeatForever macro superseded by CC_REPEAT_FOREVER macro
    [FIX]           C++: remove armv7s in VALID_ARCHS for Xcode projects
    [FIX]           Cocos Studio reader: UI animation playing crash if GUI JSON file is loaded again
    [FIX]           Cocos Studio reader: improvement ImageViewReader don't necessary loadTexture when imageFilePath is empty
    [FIX]           EditBox: view rendered in wrong position if click EditBox on iOS 8
    [FIX]           FileUtils: can not remove files/directory on iOS devices
    [FIX]           GLProgram: crashed on some Android devices that do not support more than 8 attributes
    [FIX]           Label: getStringNumLines() may returns wrong result if label is dirty
    [FIX]           Label: can not change opacity if using FNT font
    [FIX]           Label: endless loop if not using system font, and constrained length is less than one character width
    [FIX]           LabelAtlas: opacity do not change when setting parent's opacity
    [FIX]           Lua-bindings: may crash if passing two-dimensional table from lua to c++
    [FIX]           New audio: can not play audio after playing some times on Android
    [FIX]           Node: macro scheduler_selector() superseded by CC_SCHEDULER_SELECTOR(). The same is true for the other schedule_ macros
    [FIX]           Node: unscheduleAllSelectors() deprecated in favor of unscheudleAllCallbacks()
    [FIX]           Node: crashed if remove/add child too quickly when using integrated physics
    [FIX]           TextFieldTTF: will get wrong characters if using Chinese input method on WP8
    [FIX]           TextureCache: memory leak in reloadTexture()
    [FIX]           UI: Button: button remains gray when releasing it, this issue only happened if enable scale9 and only has one texture
    [FIX]           UI: Button: when creating a button with a title only, button content size is not immediately updated
    [FIX]           UI: EditBox: setMaxLength is invalid on mac

cocos2d-x-3.3-beta0  Sep.20 2014
    [NEW]           3d: added `BillBoard`
    [NEW]           ActionManager: added removeAllActionsByTag()
    [NEW]           Audio: added new audio system for iOS and Android
    [FIX]           DrawNode: has as many functions as `DrawPrimitive`
    [NEW]           GLViewProtocol: added getAllTouches()
    [NEW]           Node: added stopAllActionsByTag()
    [NEW]           PhysicsWorld: add setSubsteps() and getSubsteps()
    [NEW]           Renderer: added TriangleCommand
    [NEW]           UI: added `WebView` on iOS and Android

    [FIX]           C++: CMake works for Mac builds
    [FIX]           C++: Reorganized cocos2d/platform folder. Easier to add new platforms
    [FIX]           EditBox: moved to ui:EditBox
    [FIX]           External: ScrollView: scroll view hidden picks up the touch events
    [FIX]           FastTileMap: change indices to short because not all devices support int indices which will prevent drawing tilemap
    [FIX]           FileUtils: can not create and delete directory on wp8
    [FIX]           HttpClient: condition variable sleep on unrelated mutex
    [FIX]           Image: optimize decompress jpg data
    [FIX]           Label: outline effect may be wrong if outline width is big and font size is big too
    [FIX]           MenuItem: memory leak if using menu_selector
    [FIX]           MeshCommand: generate wrong meterial id which will cause problem that only first mesh is drawn
    [FIX]           Node: create unneeded temple `Vec2` object in `setPosition(int, int)`, `setPositionX()` and `setPositionY()`
    [FIX]           Node: skew effect is wrong
    [FIX]           Node: setNormalizedPosition can not take effect if parent position is not changed
    [FIX]           TextureAtlas: may crash if only drawing part of it
    [FIX]           UI: Button: a button can not be touched if it only contains title
    [FIX]           UI: Button: title can not be scaled if a button is scaled

cocos2d-x-3.3alpha0  Aug.28 2014
    [NEW]           3D: Added Camera, AABB, OBB and Ray
    [NEW]           3D: Added better reskin model support
    [NEW]           Core: c++11 random support
    [NEW]	        Core: Using `(std::notrow)` for all the `new` statements
    [NEW]           Desktop: Added support for applicationDidEnterBackground / applicationWillEnterForeground on desktop
    [NEW]           Device: added setKeepScreenOn() for iOS and Android
    [NEW]           EventMouse: support getDelta, getDeltaX, getDeltaY functions
    [NEW]           FileUtils: add isDirectoryExist(), createDirectory(), removeDirectory(), removeFile(), renameFile(), getFileSize()
    [NEW]           FileUtilsApple: allow setting bundle to use in file utils on iOS and Mac OS X
    [NEW]           Image: support of software PVRTC v1 decompression
    [NEW]           Lua-binding: added release_print that can print log even in release mode
    [NEW]           Physics Integration: can invoke update in demand
    [NEW]           Renderer: Added primitive and render primitive command, support passing point, line and triangle data
    [NEW]           Renderer: Added method for custom precompiled shader program loading on WP8
    [NEW]           Renderer: Added consistent way to set GL context attributes
    [NEW]           RenderTexture: add a call back function for saveToFile()
    [NEW]           RotateTo: added 3D rotation support
    [NEW]           ScrollView: added `setMinScale()` and `setMaxScale()`
    [NEW]           Sprite3D: added setCullFace() and setCullFaceEnabled()
    [NEW]           Sprite3D: added getBoundingBox() and getAABB()
    [NEW]           SpriteFrameCache: load from plist file content data
    [NEW]           utils: added gettime()
    [NEW]           UI: Added UIScale9Sprite
    [NEW]           UI: ui::Button: support customize how much zoom scale is when pressing a button
    [NEW]           UI: ui::PageView: added `customScrollThreshold`, could determine the swipe distance to trigger a PageView scroll event
    [NEW]           UI: ui::TextField: support utf8
    [NEW]           UI: ui::TextField: support set color and placeholder color
    [NEW]           UI: ui::Widget: support swallowing touch events
    [NEW]           Text: added getter and setter for TextColor

    [FIX]           EditBox: font size is not scaled when GLview is scaled on Mac OS X
    [FIX]           EditBox: began/end events not work
    [FIX]           Label: can not set charmap after it is created
    [FIX]           Label: setTextColor does not have any effect on Mac OS X
    [FIX]           Label: result of LabelTTF::getBoundingBox() is wrong
    [FIX]           Label: can not set outline color correctly if using system font on iOS
    [FIX]           Label: character edge will be cut a little if character size is small
    [FIX]           LabelBMFont: result of LabelBMFont::getBoundingBox() is wrong
    [FIX]           ListView: can not insert an item in specific position, it is added at bottom
    [FIX]           LoadingBar: position is changed if changing direction
    [FIX]           ParticleSystem: effect is wrong if scene scaled
    [FIX]           ParticleSystemQuad: setTotalParticles() can't set a value larger than initialized value
    [FIX]           PhysicsBody: return wrong bitmask
    [FIX]           Scale9Sprite: new added sprite will be hidden
    [FIX]           Slider: if the UISlider is faded, the slide ball won't fade together
    [FIX]           Sprite: will turn black if opacity is set other than 255 and be added into SpriteBatchNode
    [FIX]           TableView: can handle touch event though its parents are invisible
    [FIX]           TextField: can not use backspace to delete a character
    [FIX]           Widget: may crash if remove itself in touch call back function
    [FIX]           Widget: not support cascaded opacity and cascaded color by default
    [FIX]           VideoPlayer: memory leak on iOS
    [FIX]           VideoPlayer: video frame size is not calculated correctly on iOS
    [FIX]           VideoPlayer: video player not showing on iOS if it's not in FullScreen mode

    [FIX]           Others: can not import java library shift by engine correctly when using Eclispe on Android
    [FIX]           Others: optimize FPS control algorithm on Android

    [FIX]           Lua-binding: replace dynamic_cast to std::is_base_of in object_to_luaval

    [3rd]           fbx-conv: complex FBX model support which is useful for reskin, multiple meshes and multiple materials support

cocos2d-x-3.2  Jul.17 2014
    [NEW]           Node: added getChildByName method for get a node that can be cast to Type T
    [NEW]           FileUtils: could add search path and resolution order path in front

    [FIX]           Animation3D: getOrCreate is deprecated and replaced with Animation3D::create
    [FIX]           Animate3D: setSpeed() accept negative value, which means play reverse, getPlayback and setPlayBack are deprecated
    [FIX]           EditBox: can not set/get text in password mode on Mac OS X
    [FIX]           Game Controller: joystick y value inversed on iOS
    [FIX]           GLView: cursor position is not correct if design resolution is different from device resolution
    [FIX]           Label: color can not be set correctly if using system font on iOS
    [FIX]           LabelTTF: may lost chinese characters on linux
    [FIX]           Lua-binding: support UIVideoPlayer
    [FIX]           Node: setRotation3D not work based on anchor point
    [FIX]           Node: modify regular of enumerateChildren, now it just searchs its children
    [FIX]           Physics integration: body shape will be wrong when using negative value to scale
    [FIX]           ScrollViewDelegate: make the scrollView delegate methods optional
    [FIX]           Setup.py: will crash on windows because of checking `zsh`
    [FIX]           SpriteBatchNode: opacity can not work
    [FIX]           Sprite3D: may crash on Android if playing animation and replace Scene after come from background
    [FIX]           UIwidget: opacity is wrong when replace texture
    [FIX]           UIRichText: will crash when using utf8 string and the length exceed specified length
    [FIX]           UIText: can not wrap words automatically
    [FIX]           UITextField: keyboard can not hide if touching space outside of keyboard
    [FIX]           UITextField: can not wrap words automatically
    [FIX]           UIVideoPlayer: can not exit full screen mode on Android

    [FIX]           Others: don't release singleton objects correctly that are needed in the whole game, which will be treated
    as memory leak when using VLD.
    [FIX]           Others: compiling error when building for iOS 64-bit devices with Xcode6 beta3


cocos2d-x-3.2rc0  Jul.7 2014
    [NEW]           FastTMXTiledMap: added fast tmx, which is much more faster for static tiled map
    [NEW]           GLProgramState: can use uniform location to get/set uniform values
    [NEW]           HttpClient: added sendImmediate()
    [NEW]           Label: support setting line height and additional kerning of label that not using system font
    [NEW]           Lua-binding: Animation3D supported
    [NEW]           Lua-binding: UIEditor test cases added
    [NEW]           Lua-binding: UI focus test cases added
    [NEW]           Node: added getName(), setName(), getChildByName(), enumerateChildren()
    and addChild(Node* node, int localZOrder, const std::string &name)
    [NEW]           Node: physical body supports rotation
    [NEW]           Sprite3D: support c3b binary format
    [NEW]           utils: added findChildren() to find all children by name
    [NEW]           Value: added operator == !=


    [FIX]           Armature: blend func has no effect
    [FIX]           Armature:  crashed when remove armature in frame event
    [FIX]           Animation3D: doesn't load original pose, which leads to wrong effect if not playing animation
    [FIX]           Animation3D: animation for unskined bones lost
    [FIX]           FileUtils: getStringFromFile may return a unterminated string
    [FIX]           Lua-binding: Sequence:create will cause drop-dead issue
    [FIX]           Lua-binding: lua-tests can’t be loaded on 64 bits iOS devices and Linux
    [FIX]           Node: Node::setScale(float) may not work properly
    [FIX]           Physics integration: child node can move with its father
    [FIX]           Physics integration: support scale
    [FIX]           Sprite3D: 20% performance improved, simplify shader, use VAO and batch draw
    [FIX]           Studio support: NodeReader may cause crash
    [FIX]           UIButton: doesn't support TTF font
    [FIX]           UIButton: `getTitleColor()` doesn't equal to the value set by `setTitleColor()`
    [FIX]           UIListView: addEventListener can not work
    [FIX]           UIListView: element position is changed a little when you click and up a list view without move
    [FIX]           UIListView: element will respond to item_end event when end of scrolling a list view
    [FIX]           UIVideo: crash when try to remove videoView(STATE_PLAYBACK_COMPLETED) on android
    [FIX]           WP8: crash of utils::captureScreen()

cocos2d-x-3.2-alpha0 Jun.17 2014
    [NEW]           Console: add a command to show engine version
    [NEW]           Node: added setter/getter for NormalizedPosition(). Allows to set positions in normalized values (between 0 and 1)
    [NEW]           Scene: Added createWithSize() method
    [NEW]           TextField: added getStringLength()
    [NEW]           TextureCache: added unbindImageAsync() and unbindAllImageAsync()
    [NEW]           utils: added captureScreen()
    [NEW]           UIText: added shadow, outline, glow filter support
    [NEW]           Sprite3D: support 3d animation
    [NEW]           Animation3D: 3d animation

    [FIX]           Application.mk: not output debug message in release mode on Android
    [FIX]           Android: 3d model will be black when coming from background
    [FIX]           Android: don't trigger EVENT_COME_TO_BACKGROUND event when go to background
    [FIX]           Cocos2dxGLSurfaceView.java: prevent flickering when opening another activity
    [FIX]           Director: Director->convertToUI() returns wrong value.
    [FIX]           GLProgram: not abort if shader compilation fails, just return false.
    [FIX]           GLProgramState: sampler can not be changed
    [FIX]           Image: Set jpeg save quality to 90
    [FIX]           Image: premultiply alpha when loading png file to resolve black border issue
    [FIX]           Label: label is unsharp if it's created by smaller font
    [FIX]           Label: Label's display may go bonkers if invoking Label::setString() with outline feature enabled
    [FIX]           Label: don't release cached texture in time
    [FIX]           Label: calculated height of multi-line string was incorrect on iOS
    [FIX]           Lua-binding: compiling error on release mode
    [FIX]           Lua-binding: Add xxtea encrypt support
    [FIX]           Node: setPhysicsBody() can not work correctly if it is added to a Node
    [FIX]           Node: state of _transformUpdated, _transformDirty and _inverseDirty are wrong in setParent()
    [FIX]           Node: _orderOfArrival is set to 0 after visit
    [FIX]           Other: link error with Xcode 6 when building with 32-bit architecture
    [FIX]           RenderTexture: saveToFile() lost alpha channel
    [FIX]           Repeat: will run one more over in rare situations
    [FIX]           Scale9Sprite: support culling
    [FIX]           Schedule: schedulePerFrame() can not be called twice
    [FIX]           ShaderTest: 7 times performance improved of blur effect
    [FIX]           SpriteFrameCache: fix memory leak
    [FIX]           Texture2D: use image's pixel format to create texture
    [FIX]           TextureCache: addImageAsync() may repeatedly generate Image for the same image file
    [FIX]           WP8: will restart if app goes to background, then touches icon to go to foreground
    [FIX]           WP8: will be black if: 1. 3rd pops up a view; 2. go to background; 3. come to foreground
    [FIX]           WP8: project name of new project created by console is wrong
    [FIX]           WP8: missing texture after app switch

    [3RD]           curl: will crash if use https request on iOS simulator
    [3RD]           curl: update OpenSSL to v1.0.1h

cocos2d-x-3.1.1 May.31 2014
    [FIX]           GLProgramState: restores states after coming from background

cocos2d-x-3.1  May.24 2014
    [FIX]           EventKeyboard::KeyCode: key code for back button changed from KEY_BACKSPACE to KEY_ESCAPE
    [FIX]           Label: may crash when using outline effect
    [FIX]           Label: using outline and invoking 'Director::setContentScaleFactor' cause label show nothing
    [FIX]           ProgressTo: will start from 0 when it reaches 100
    [FIX]           Physics integration: may crashes if remove bodies at physics contact callback
    [FIX]           UIWidget: copyProperties() lost copy some properties
    [FIX]           WP8: orientation is not correct when it is set to portrait
    [FIX]           WP8: fix for precompiled shaders and precompiled headers
    [FIX]           WP8: template supports orientation

cocos2d-x-3.1-rc0 May.18 2014
    [NEW]           Cocos2dxActivity: Adds a virtual method to load native libraries.
    [NEW]           Directory Structure: reorder some files within the cocos/ folder
    [NEW]           Sprite3D: a node that renders 3d models
    [NEW]           EditBox: support secure input on Mac

    [FIX]           ControlButton: cascade opacity and color error
    [FIX]           Director: twice calling of onExit
    [FIX]           Math: Vector2->Vec2, Vector3->Vec3, Vector4->Vec4, Matrix->Mat4
    [FIX]           GLProgram: uniform CC_Texture0 is pre-defined by cocos2d. MUST NOT be defined in shaders
    [FIX]           GLProgramState: Supports multitexturing
    [FIX]           Studio:ActionObject: correct TotalTime of ActionObject
    [FIX]           Studio: FrameData::copy doesn't copy `isTween` property

cocos2d-x-3.1-alpha1 May.9 2014
    [NEW]           Animate: Dispatch a custom event after an animation frame is displayed
    [NEW]           GLProgram: Easy to customize uniforms and attributes by using the new class GLProgramState
    [NEW]           Template: cpp project support Eclipse c++ project
    [NEW]           UI: add navigation support
    [NEW]           UI: add a widget to play video
    [NEW]           VS: support VS 2013

    [FIX]           Audio: pause sound automatically when go to background on Android
    [FIX]           Director: remove keepData and releaseData
    [FIX]           Label: label is unsharp if it's created by system font with small size on iOS & Mac OS X
    [FIX]           Label: Label created with system font is still visible when its opacity is 0
    [FIX]           Label: Label created with system font havs black border on WP8/WINRT
    [FIX]           Lua: A potential crash in the bindings of sp.SkeletonAnimation.setAnimation
    [FIX]           Lua: Lua template should fail to launch on lua error
    [FIX]           ParticleSystem: Particles can be created without a texture
    [FIX]           ParticleSystem: yFlippedCoord behavior fixed.
                      Added cocos2d/tools/particle to fix particles that were based on the old (broken) behaviour
    [FIX]           Setup.py: Added SDK / NDK detection based on PATH
    [FIX]           UIText: support TTF
    [FIX]           Value: all types share the same union to reduce memory usage

cocos2d-x-3.1-alpha0 May.1 2014
     [NEW]          Android: Adds support for get response when Activity's onActivityResult is triggered
     [NEW]          Core: Adds RefPtr<T> smart pointer support
     [NEW]          Label: supports auto-culling
     [NEW]          Math: New unified math library that supersedes Kazmath, CCGeometry and CCAffine*
     [NEW]          Test: Adds a sample for making a outline sprite by using a custom shader

     [FIX]          Application: Application::run returns wrong value on Mac platform
     [FIX]          Build scripts: Improved cmake files for Linux, and Android.mk for Android
     [FIX]          Image: saveToImage may cause memory leak
     [FIX]          Lua: cc.pGetAngle may return wrong value
     [FIX]          Network: HttpRequest uses std::function as callback
     [FIX]          Particle: The effect of particle loaded from CocosBuilder is incorrectly
     [FIX]          ParticleSystem: particle direction in verticality is opposite when "configName" has value and "yCoordFlipped" is -1
     [FIX]          Physics: PhysicsSprite's transform couldn't be updated
     [FIX]          Value: default value changed to false
     [FIX]          WP8: Some bug fixes

cocos2d-x-3.0 Apr.23 2014
     [NEW]          Lua: add `RichText` test cases
     [NEW]          EditBox: Added missing Text Font and Placeholder feature for Mac platform

     [FIX]          cocos console: Zipalign the apk generated with release mode
     [FIX]          Director: Application crashes on closing if CC_ENABLE_CACHE_TEXTURE_DATA is enabled
     [FIX]          Image: memoery leak
     [FIX]          Image: crashes when save a jpg file
     [FIX]          Lua: 'EditBox' can't response 'changed','ended' and 'return' event on Windows
     [FIX]          Lua: new project will crash on iOS 5.1 devices
     [FIX]          Others: compiling error when CC_LABELBMFONT_DEBUG_DRAW or CC_LABELATLAS_DEBUG_DRAW is enabled

     [3rd]          libcurl: support ssl again on iOS

cocos2d-x-3.0rc2 Apr.15 2014
     [NEW]          Event: Adds `EventListener::setEnabled/isEnabled` to support enable/disable event listeners
     [NEW]          GLView: Added createWithFullscreen overloaded method for selecting monitor and setting video mode

     [FIX]          Android: Cocos2dxHelper.runOnGLThread() can't work
     [FIX]          Animation: Added 'loops' parameter to Animation::createWithSpriteFrames
     [FIX]          Audio: can not resume after pausing on windows
     [FIX]          Audio: stopalleffect lead to stop background music on WP8
     [FIX]          Audio: play effect may lead to memory leak on WP8
     [FIX]          CocoStudio: Potential crash in SceneReader::createNodeWithSceneFile
     [FIX]          Control: ControlButton can't swallow touch event
     [FIX]          Event: Removing and re-adding an event listener will trigger an assert
     [FIX]          Event: A potential crash when unregistering listener right after its registration
     [FIX]          Event: EventDispatcher::setDirtyForNode doesn't consider node's children
     [FIX]          FileUtils: 'isFileExist' doesn't consider SearchPaths and ResolutionOrders
     [FIX]          Image: The result of 'malloc' is incompatible with type 'unsigned char *' in Image::saveImageToPNG
     [FIX]          JNI: doesn't cache classloader which may cause crash on Android devices with 4.2 or upper version
     [FIX]          Network: HTTPClient reports 2xx status codes as errors
     [FIX]          Lua: Added ScriptHandlerMgr::destroyInstance to avoid memory leak
     [FIX]          Physics: Skips one frame when delta time is equal to zero
     [FIX]          Physics: PhysicsShapeEdgeChain::init() always return false
     [FIX]          Setup: Force updating environment variables in setup.py
     [FIX]          Value: A potential memory leak in value's default constructor

cocos2d-x-3.0rc1 April.2 2014
     [NEW]          Application: Adds getCurrentLanguageCode() which returns iso 639-1 language code
     [NEW]          cocos2d::extension::ScrollView: Elastic bounce back effect support
     [NEW]          Constructor: Added CC_CONSTRUCTOR_ACCESS macro to re-define constructor/initXXX methods to 'public' access.
     [NEW]          Label: Added new methods 'set(Anti)AliasTexParameters' for enabling/disabling antialias

     [FIX]          Android: Reloaded texture is not shown if it has the mipmap
     [FIX]          Android: Application may become black at first time entering on some devices
     [FIX]          Audio: Stopped music could also be resumed on iOS
     [FIX]          CCBReader: Wrong logic in CCBAnimationManager::moveAnimationsFromNode
     [FIX]          CocoStudio: ActionObject memory leak in ActionManagerEx::initWithDictionary
     [FIX]          Console: initialize some variables that are not initilized in destructor
     [FIX]          Console: refactor 'upload' command, encode file with base64, detach 'upload' from main loop
     [FIX]          EventDispatcher: Potential crashes in EventDispatcher while using SceneGraphPriroity listeners
     [FIX]          FileUtils: addSearchResolutionsOrder doesn't check whether there is a 'slash' at the end of path
     [FIX]          FileUtils: Boolean value could not be written to specified plist file
     [FIX]          GLView: Can't receive touchEnded event when mouse up outside of window on desktop platforms
     [FIX]          Image: Some functions and variables in Image class is private, it should be protected
     [FIX]          Label: Crash if label's type is STRING_TEXTURE and label->sortAllChildren is called
     [FIX]          Label: Display incorrect of multi-line label if invoking 'getLetter'
     [FIX]          Label: Default Anchor point isn't in middle and shadow offset doesn't consider contentScaleFactor
     [FIX]          Label: Label's color is incorrect if it's created by font name
     [FIX]          Label: Missing letters if using old LabelTTF and running on iPhone 64bit simulator(device)
     [FIX]          Label: Refactor implementation of label's shadow
     [FIX]          Label: Stroke was not 'outside stroke' for Label which is generated by 'Font name'
     [FIX]          Label: Wrong logic in Label::setFontAtlas
     [FIX]          Label: Read file more than once for label created by different font size
     [FIX]          Label: Getting wrong rectangle by LabelTTF(LabelBMFont)::getBoundingBox.
     [FIX]          Label: Possible crash if invoking FontAtlasCache::purgeCachedData
     [FIX]          LuaBinding: Adds `addCustomHandler` in the ScriptHandlerMgr
     [FIX]          LuaBinding: Upgrading LuaSocket to the latest version
     [FIX]          Menu: Added missed scaleZ feature in ScaleTo and ScaleBy.
     [FIX]          Network: Implements 'SIODelegate::fireEventToScript' method to integrate JSB event handling with the original native code.
     [FIX]          Network: WebsocketTest crashes on win32, mutex varible may be deleted while it's still locked
     [FIX]          ParticleSystem: Particle will stop animating if it was removed and re-added to another node
     [FIX]          ParticleSystem: Set particle visible to false then set to true cause crashes
     [FIX]          Physics: Incorrect function invocation in PhysicsBody::setAngularVelocityLimit
     [FIX]          Physics: PhysicsBody::setGravityEnable doesn't work correctly sometimes
     [FIX]          Physics: PhysicsBody moves randomly when switch foreground/background
     [FIX]          Physics: Refactors PhysicsDebugDraw
     [FIX]          Tests: Memory leak in CocosDenshionTest
     [FIX]          Texture2D: Support to update partial texture
     [FIX]          Tools: The apk generated with release mode in cocos-console can't be installed
     [FIX]          UI: Widget::addNode is confused, need to add ProtectedNode to remove addNode API.
     [FIX]          UI: Adding HBox, VBox layouts, refactoring 'doLayout' function

     [3RD]          Chipmunk: Upgraded to v6.2.1
     [3RD]          libwebsockets: Upgraded to v1.23

cocos2d-x-3.0rc0 March.14 2014
[All]
     [NEW]          Action: RotateBy supports 3D rotations
     [NEW]          Bindings: Using python to automatically generate script bindings
     [NEW]          ccConfig.h: removed support for CC_TEXTURE_ATLAS_USE_TRIANGLE_STRIP
     [NEW]          Console: Added command: 'autotest run|main|next|back|restart'.
     [NEW]          Console: Added 'resolution', 'projection' commands. Improved API
     [NEW]          Console: Added more commands: director resume|pause|stopanimation|startanimation.
     [NEW]          Console: Added command: 'touch tap|swipe' to simulating touch events.
     [NEW]          Console: Added command: 'upload filename filesize' to upload a file to writable path.
     [NEW]          Director: Displays 'Vertices drawn' in the stats. Useful to measure performance.
     [NEW]          GLProgram: initWithVertexShaderByteArray() -> initWithByteArrays()
     [NEW]          GLProgram: initWithVertexShaderFilename()a -> initWithFilenames()
     [NEW]          GLProgram: addAttribute() -> bindAttributeLocation()
     [NEW]          Label: can custom shadow and outline size
     [NEW]          Label: LabelTTF was re-implemented as a wrapper of Label
     [NEW]          Node: Added set/get Position3D() and set/get Rotation3D()
     [NEW]          Node: Calculates rotation X and Y correctly.
     [NEW]          Node: set/get VertexZ() -> set/get PositionZ()
     [NEW]          Node: setRotationX() -> setRotationSkewX()
     [NEW]          Node: setRotationY() -> setRotationSkewY()
     [NEW]          Node: visit() and draw() new arguments: Renderer, parentTransform, and whether or not the parentTransform has changed since the last frame
     [NEW]          Language: Added Dutch support
     [NEW]          Sprite: Added auto-culling support. Performance increased in about 100% when many sprites are outside the screen
     [NEW]          Setup.sh: added script to set up environment needed for cocos2d-x
     [NEW]          Scheduler: Added new API [ schedule(std::function, ...), schedule(member_func, ...) ], deprecated the old API [ scheduleSelector(member_func, ...) ]
     [FIX]          Action: FadeIn and FadeOut behaviours is incorrect if it doesn't start from an edge value( 0 or 255)
     [FIX]          Array: crash when invoking initWithObjects()
     [FIX]          Action: Merge cocostudio/CCActionXxx to CCAction
     [FIX]          Bindings: Adds a macro to disable inserting script binding relevant codes
     [FIX]          Bindings: Supports 'setTimeout' and 'setInterval' in JSB
     [FIX]          Bindngs: Exposes the missing data structures of Spine to JS
     [FIX]          Bindings: cc.BuilderReader.load( path, null, parentSize ); was not allowed
     [FIX]          Console: crashes on Windows
     [FIX]          ControlButton: Crash if it was removed from parent in its callback
     [FIX]          CocoStudio: Logical error in 'TriggerObj::detect()'
     [FIX]          Director: Crash if invoking Director::end() on WINDOWS
     [FIX]          Director: setAnimationInterval has not effect on Mac
     [FIX]          EditBox: position would not be updated if its parent's position changed
     [FIX]          EditBox: Voice recognition input would cause crash on ios7
     [FIX]          EGLView: renamed to GLView, no longer a singleton, easier to customize
     [FIX]          EventDispatcher: removeAllEventListeners() remove event listeners used internally, make textures not reload on Android when come from background
     [FIX]          EventDispatcher: dispatchEventToListeners() causes "out of range" exception
     [FIX]          Image: s3tc compressed textures with no mipmaps fail to be loaded
     [FIX]          Label: A string which only contains CJK characters can't make a line-break when it's needed
     [FIX]          Label: Character would not be aligned on the baseline when label using distance field
     [FIX]          Label: Color and opacity can't take effect
     [FIX]          Label: Font size passed to new Label didn't consider 'contentScaleFactor'
     [FIX]          Label: loading custom fonts from ttf file fails on windows
     [FIX]          Label: LabelAtlas::setColor takes no effect
     [FIX]          MotionStreak: Added unimplemented position getter/setter
     [FIX]          Node: setAdditionalTransform receives a pointer and not a const reference
     [FIX]          Node: setRotation() moves opposite when node has a physics body
     [FIX]          Node: Can not use Node::setPhysicsBody to reset a physics body
     [FIX]          Object: Object -> Ref, and remove unneeded functions
     [FIX]          Other: Removes samples except testcpp|testjavascript|testlua. Moves sample games to `cocos2d/samples` repo
     [FIX]          Physics integration: Improves physical performance
     [FIX]          Physics integration: PhysicsContact::_contactData may be double freed.
     [FIX]          Physics integration: PhysicsShapeBox::getSize returns wrong value.
     [FIX]          ParticleSystemQuad: setTotalParticles() can not set a value larger than initialized value
     [FIX]          Renderer: Expand textureID bit from 18bits to 32bits. Resolves probably crash on Linux / Android
     [FIX]          RenderTexture: save screen with RenderTexture got unexpected result
     [FIX]          RenderTexture: saveToFile() can't write png file correctly
     [FIX]          Spine: spine::Skeleton would not be updated after being re-added to scene
     [FIX]          Sprite: not work as expected when CC_SPRITE_DEBUG_DRAW is 1
     [FIX]          Scheduler: Thread deadlock if new functions are added in callback of Scheduler:: performFunctionInCocosThread
     [FIX]          Tests: EditBoxText crashes on Win32 when being clicked many times
     [FIX]          Tests: ChipmunkTest bounding box for debugging couldn't be shown
     [FIX]          Tests: CocoStudioGuiTest/LabelBMFontTest crashes
     [FIX]          Tests: Particle test/AddAndRemove test crashes
     [FIX]          Tests: RenderTextureTest not drawn when coming from background
     [FIX]          Tests: LabelTTFMultiline show nothing on mac
     [FIX]          Timer::cancel always call Director::getInstance()->getScheduler() even in another Scheduler
     [FIX]          Tests: Potential crash by switching repeatly between HttpClientTest, WebSocketTest, SocketIOTest
     [FIX]          Tests: State is changed to RESUME when game comes back to foreground if pause button was clicked in Interval Test
     [FIX]          TMXLayer: Removing child from TMXLayer may cause crash
     [FIX]          TMXObjectGroup: Object values (x, y, width and height) from TMXObjectGroup are incorrect
     [FIX]          TMXXMLParser: Refactored the codes of parsing pure xml layer format for tilemap
     [FIX]          TMXXMLParser: 'y' value is parsed incorrectly
     [FIX]          UI: Changes namespace from 'cocos2d::gui' to 'cocos2d::ui'.
     [FIX]          UI: Supports RichText
     [FIX]          Vector: Object which isn't in Vector would also be released when invoking Vector::eraseObject.
     [FIX]          Websocket: Potential crash when websocket connection closes.
     [FIX]          Websocket: No callback is invoked when websocket connection fails
     [FIX]          Xcode 5.1: Added Xcode 5.1 to build arm64 version, but can not require socket module in lua, will fix it soon
     [3RD]          Kazmath: Upgraded to latest version of Kazmath


cocos2d-x-3.0beta2 Jan.24 2014
[All]
     [NEW]          Full screen support for desktop platforms.
     [NEW]          Adds performance test for EventDispatcher.
     [NEW]          Adds performance test for Containers(Vector<>, Array, Map<K,V>, Dictionary).
     [NEW]          DrawNode supports to draw triangle, quad bezier, cubic bezier.
     [NEW]          Console: added the 'textures', 'fileutils dump' and 'config' commands
     [NEW]          GLCache: glActiveTexture() is cached with GL::activeTexture(). All code MUST call the cached version in order to work correctly
     [NEW]          Label: Uses a struct of TTF configuration for Label::createWithTTF to reduce parameters and make this interface more easily to use.
     [NEW]          Label: Integrates LabelAtlas into new Label.
     [NEW]          Node: Added `setGlobalZOrder()`. Useful to change the Node's render order. Node::setZOrder() -> Node::setLocalZOrder()
     [NEW]          Renderer: Added BatchCommand. This command is not "batchable" with other commands, but improves performance in about 10%
     [FIX]          event->stopPropagation can't work for EventListenerTouchAllAtOnce.
     [FIX]          Uses unified `desktop/CCEGLView.h/cpp` for desktop platforms (windows, mac, linux).
     [FIX]          Bindings-generator supports Windows again and remove dependency of LLVM since we only need binary(libclang.so/dll).
     [FIX]          Removes unused files for MAC platform after using glfw3 to create opengl context.
     [FIX]          Wrong arithmetic of child's position in ParallaxNode::addChild()
     [FIX]          CocoStudio: TestColliderDetector in ArmatureTest can't work.
     [FIX]          CocoStudio: The order of transform calculation in Skin::getNodeToWorldTransform() is incorrect.
     [FIX]          Crash if file doesn't exist when using FileUtils::getStringFromFile.
     [FIX]          If setting a shorter string than before while using LabelAtlas, the effect will be wrong.
     [FIX]          Label: Memory leak in FontFreeType::createFontAtlas().
     [FIX]          Label: Crash when using unknown characters.
     [FIX]          Label: Missing line breaks and wrong alignment.
     [FIX]          Label: Corrupt looking characters and incorrect spacing between characters
     [FIX]          Label: Label:color and opacity settings are invalid afeter these these properties changed: 1)text content changed 2)align style changed 3)max line width limited
     [FIX]          Label: Crash when using unknown characters
     [FIX]          Console: log(format, va_args) is private to prevent possible resolution errors
     [FIX]          Configuration: dumpInfo() -> getInfo()
     [FIX]          ControlSlider doesn't support to set selected thumb sprite.
     [FIX]          ControlButton doesn't support to set scale ratio of touchdown state.
     [FIX]          Particles: Crash was triggered if there is not `textureFileName`section in particle plist file.
     [FIX]          Renderer: Uses a float as key with only the depth. Viewport, opaque are not needed now
     [FIX]          Renderer Performance Fix: QuadCommand::init() does not copy the Quads, it only store a reference making the code faster
     [FIX]          Renderer Performance Fix: Sprite and SpriteBatchNode (and subclasses) has much better performance
     [FIX]          Renderer Performance Fix: When note using VAO, call glBufferData() instead of glBufferSubData().
     [FIX]          Renderer Performance Fix: Doesn't sort z=0 elements. It also uses sort() instead of stable_sort() for z!=0.
     [FIX]          Sprite: removed _hasChildren optimization. It uses !_children.empty() now which is super fast as well
     [FIX]          Tests: Sprites Performance Test has 4 new tests
     [FIX]          TextureCache: getTextureForKey and removeTextureForKey work as expected
     [FIX]          TextureCache: dumpCachedTextureInfo() -> getCachedTextureInfo()
     [FIX]          Websocket doesn't support send/receive data which larger than 4096 bytes.
     [FIX]          Object: Remove _retainCount
     [FIX]          ParallaxNode: Coordinate of Sprite may be wrong after being added into ParallaxNode
     [FIX]          Crash if there is not `textureFileName`section in particle plist file
     [FIX]          Websocket cannot send/receive more than 4096 bytes data
     [FIX]          TextureCache::addImageAsync can't load first image
     [FIX]          ControlSlider: Can not set "selected thumb sprite"
     [FIX]          ControlSlider: Can not set "scale ratio"
     [FIX]          Crash when loading tga format image
     [FIX]          Keyboard pressed events are being repeatedly fired before keyboard is released
[Android]
     [FIX]          Background music can't be resumed when back from foreground
     [FIX]          ANR (Application Not Responding) appears on android 2.3 when pressing hardware button.
[lua binding]
     [NEW]          Can bind classes that have the same class names but different namesapces
     [FIX]          Use EventDispatcher to update some test cases
     [FIX]          sp.SkeletonAnimation:registerScriptHandler should not override cc.Node:registerScriptHandler
[javascript binding]
     [NEW]          Bind SAXParser
     [FIX]          Pure JS class that wants to inherite from cc.Class will trigger an irrelevant log
     [FIX]          Mac and iOS Simulator should also use SpiderMonkey which was built in RELEASE mode
     [FIX]          Crash when running JSB projects on iOS device in DEBUG mode
     [FIX]          Crash when Firefox connects to JSB application on Mac platform.
[Desktop]
     [NEW]          Support fullscreen
[Linux]
     [FIX]          "Testing empty labels" in LabelTest crashes.
[Mac]
     [FIX]          Removes unused files after using glfw3 to create opengl context
[Win32]
     [FIX]          Compiling error when using x64 target
     [FIX]          Tests: TestCpp works with CMake
     [FIX]          Bindings-generator supports Windows again and remove dependency of LLVM since it only needs binary of libclang

cocos2d-x-3.0beta Jan.7 2014
[All]
     [NEW]          New label: shadow, outline, glow support
     [NEW]          AngelCode binary file format support for LabelBMFont
     [NEW]          New spine runtime support
     [NEW]          Add templated containers, such as `cocos2d::Map<>` and `cocos2d::Vector<>`
     [NEW]          TextureCache::addImageAsync() uses std::function<> as call back
     [NEW]          Namespace changed: network -> cocos2d::network, gui -> cocos2d::gui
     [NEW]          Added more CocoStudioSceneTest samples.
     [NEW]          Added UnitTest for Vector<T>, Map<K, V>, Value.
     [NEW]          AngelCode binary file format support for LabelBMFont.
     [NEW]          New renderer: Scene graph and Renderer are decoupled now.
     [NEW]          Upgrated Box2D to 2.3.0
     [NEW]          SChedule::performFunctionInCocosThread()
     [NEW]          Added tga format support again.
     [NEW]          Adds UnitTest for Template container and Value class
     [FIX]          A Logic error in ControlUtils::RectUnion.
     [FIX]          Bug fixes for Armature, use Vector<T>, Map<K, V> instead of Array, Dictionary.
     [FIX]          Used c++11 range loop(highest performance) instead of other types of loop.
     [FIX]          Removed most hungarian notations.
     [FIX]          Merged NodeRGBA to Node.
     [FIX]          Potential hash collision fix.
     [FIX]          Updates spine runtime to the latest version.
     [FIX]          Uses `const std::string&` instead of `const char*`.
     [FIX]          LabelBMFont string can't be shown integrally.
     [FIX]          Deprecates FileUtils::getFileData, adds FileUtils::getStringFromFile/getDataFromFile.
     [FIX]          GUI refactoring: Removes UI prefix, Widget is inherited from Node, uses new containers(Vector<T>, Map<K,V>).
     [FIX]          String itself is also modified in `String::componentsSeparatedByString`.
     [FIX]          Sprites with PhysicsBody move to a wrong position when game resume from background.
     [FIX]          Crash if connection breaks during download using AssetManager.
     [FIX]          OpenAL context isn't destroyed correctly on mac and ios.
     [FIX]          Useless conversion in ScrollView::onTouchBegan.
     [FIX]          Two memory leak fixes in EventDispatcher::removeEventListener(s).
     [FIX]          CCTMXMap doesn't support TMX files reference external TSX files
     [FIX]          Logical error in `CallFuncN::clone()`
     [FIX]          Child's opacity will not be changed when its parent's cascadeOpacityEnabled was set to true and opacity was changed
     [FIX]          Disallow copy and assign for Scene Graph + Actions objects
     [FIX]          XMLHttpRequest receives wrong binary array
     [FIX]          XMLHttpRequest.status needs to be assigned even when connection fails
     [FIX]          TextureCache::addImageAsync may load a image even it is loaded in GL thread
     [FIX]          EventCustom shouldn't use std::hash to generate unique ID, because the result is not unique
     [FIX]          CC_USE_PHYSICS is actually impossible to turn it off
     [FIX]          Crash if connection breaks during download using AssetManager
     [FIX]          Project_creator supports creating project at any folder and supports UI
[Android]
     [NEW]          build/android-build.sh: add supporting to generate .apk file
     [NEW]          Bindings-generator supports to bind 'unsigned long'.
     [FIX]          XMLHttpRequest receives wrong binary array.
     [FIX]          'Test Frame Event' of TestJavascript/CocoStudioArmatureTest Crashes.
     [FIX]          UserDefault::getDoubleForKey() doesn't pass default value to Java.
[iOS]
     [FIX]          Infinite loop in UserDefault's destructor
[Windows]
     [NEW]          CMake support for windows.
[Bindings]
     [NEW]          Support CocoStudio v1.2
     [NEW]          Adds spine JS binding support.
     [FIX]          Don't bind override functions for JSB and LuaBining since they aren't needed at all.
     [FIX]          The order of onEnter and onExit is wrong.
     [FIX]          The setBlendFunc method of some classes wasn't exposed to LUA.
     [FIX]          Bindings-generator doesn't support 'unsigned long'
     [FIX]          Potential hash collision by using typeid(T).hash_code() in JSB and LuaBinding
[Lua binding]
     [NEW]          New label support
     [NEW]          Physcis integrated support
     [NEW]          EventDispatcher support
     [FIX]          CallFuncND + auto remove lua test case have no effect
     [FIX]          Lua gc will cause correcsponding c++ object been released
     [FIX]          Some lua manual binding functions don't remove unneeded element in the lua stack
     [FIX]          The setBlendFunc method of some classes wasn't exposed to LUA
[Javascript binding]
     [FIX]          `onEnter` event is triggered after children's `onEnter` event

cocos2d-x-3.0alpha1 Nov.19 2013
[all platforms]
     [DOC]          Added RELEASE_NOTES and CODING_STYLE.md files
     [FIX]          Texture: use CCLOG to log when a texture is being decoded in software
     [FIX]          Spine: fix memory leaks
     [FIX]          fixed a memory leak in XMLHTTPRequest.cpp
     [FIX]          removeSpriteFramesFromFile() crashes if file doesn't exist.
     [FIX]          Avoid unnecessary object duplication for Scale9Sprite.
     [FIX]          create_project.py does not rename/replace template projects completely.
     [FIX]          Could not set next animation in CCBAnimationCompleted callback.
     [FIX]          The Node's anchor point was changed after being added to ScrollView.
     [FIX]          Refactored and improved EventDispatcher.
     [FIX]          EventListeners can't be removed sometimes.
     [FIX]          When parsing XML using TinyXML, the data size has to be specified.
     [FIX]          Parameter type: const char* -> const string&
     [FIX]          Armature: many bug fixed, add more samples, add function to skip some frames when playing animation
     [FIX]          Configuration of VAO in runtime
     [FIX]          Webp Test Crashes.
     [FIX]          TransitionScenePageTurn: z fighting
     [FIX]          AssetsManager: Adding test whether the file directory exists when uncompressing file entry,if does not exist then create directory
     [FIX]          CCBReader: To set anchor point to 0,0 when loading Scale9Sprite
     [FIX]          OpenGL Error 502 in Hole Demo
     [FIX]          AssetsManager: downloading progress is not synchronized with actual download
     [FIX]          SpriteFrameCache: memory leak when loading a plist file
     [FIX]          removeSpriteFramesFromFile() crashes if file doesn't exist
     [FIX]          EditBox: can't click the area that outside of keyboard to close keyboard
     [FIX]          CCBReader: can not set next animation in AnimationCompleted callback
     [FIX]          Node's anchor point was changed after being added to ScrollView
     [FIX]          EventDispather: refactor method and fix some bugs
     [FIX]          EventListner: cann't be removed sometimes
     [FIX]          UserDefault: didn't set data size when parsing XML using TinyXML
     [FIX]          Webp test crashed
     [FIX]          CCHttpClient: The subthread of CCHttpClient interrupts main thread if timeout signal comes.
     [NEW]          Arm64 support.
     [NEW]          Added Mouse Support For Desktop Platforms.
     [NEW]          Point: Adds ANCHOR_XXX constants like ANCHOR_MIDDLE, ANCHOR_TOP_RIGHT, etc.
     [NEW]          Sprite: Override setScale(float scaleX, float scaleY)
     [NEW]          External: added | operator for Control::EventType
     [NEW]          Android & iOS screen size change support
     [NEW]          GLProgram: setUniformLocationWithMatrix2fv, setUniformLocationWithMatrix3fv
     [NEW]          Color[3|4][B|F]: comparable and explicit convertible
     [NEW]          Contorl::EventType add | operation
     [NEW]          Performance Test: Sprite drawing
     [NEW]          Adjusted folder structure
     [NEW]          Added tools to simplify upgrading game codes from v2.x to v3.x
     [FIX]          Added virtual destructors on Interfaces
[Android]
     [FIX]          Added EGL_RENDERABLE_TYPE to OpenGL attributes
     [FIX]          Fixed application will crash when pause and resume.
     [FIX]          Clear NoSuchMethodError Exception when JniHelper fails to find method id
     [FIX]          Fixed crash when backging from background
     [FIX]          LabelTTF: crashed when setting dimension input height value less than the height of the font and the input width value is 0
     [FIX]          Changed data type of 'char' to signed as default
     [NEW]          Added xlargeScreens="true" to supports-screens
     [NEW]          Added build/android-build.py to build all Android samples, and remove all build_native.sh/cmd
     [NEW]          Added build_native.py to build template projects, and remove build_native.sh/cmd
     [NEW]          Added Cocos2dxHelper.runOnGLThread(Runnable) again
     [NEW]          Added support for orientation changed
     [NEW]          Disabled CDT Builder on Eclipse
[Mac]
     [FIX]          Removed unused CCLOG() from GL initialization
     [FIX]          HttpClientTest: crash
[iOS]
     [FIX]          Can't click the area that outside of keyboard to close keyboard when using EditBox.
     [NEW]          Added support for orientation changed
[Linux]
     [NEW]          Used CMake to build linux projects.
     [FIX]          Closed X display after getting DPI on Linux.
[Win32]
     [FIX]          Last test case of OpenglTest crashed
[Desktop]
     [FIX]          Trigger onKeyReleased only after the key has been released.
     [NEW]          Added mouse support
[Javascript binding]
     [FIX]          Fixed a memory leak in ScriptingCore::runScript()
     [FIX]          sys.localStorage.getItem() does not support non-ascii string.
     [FIX]          cc.Scheduler.schedule(target, func) without repeat argument couldn't repeat schedule forever on device.
     [FIX]          CCBReader can't play sequence automatically in JSB.
     [FIX]          Wrong convention to jsval in cccolor4f_to_jsval and cccolor3b_to_jsval
     [FIX]          sys.localStorage: doesn't support non-ascii string
     [FIX]          BuilderReader: can't play sequence  automatically
     [FIX]          Wrong conversion to javal in cccolor4f_to_jsval and cccolor3b_to_jsval
     [NEW]          main.js -> cocos2d-jsb.js
     [NEW]          Remote debugging using Firefox, "step into" can not work
     [NEW]          Added binding for Node::setScale(float, float)
     [NEW]          Impvoved armature binding
     [NEW]          Added CocoStudio releated binding codes: gui, scene parser, and add corresponding samples
[Lua Binding]
     [NEW]          Added Armature lua binding and added test samples.
     [NEW]          Added LuaObjectBridge & LuaJavaBridge to simplify invoking objective-c codes and java codes from lua
     [NEW]          Added CocoStudio releated binding codes: gui, scene parser, and add corresponding samples
     [NEW]          Added AssetsManager binding and corresponding sample
     [NEW]          Added XMLHttpRequest lua binding and corresponding sample

cocos2d-x-3.0alpha0 @Sep.19 2013
[all platforms]
     [FIX]          TargetAction::reverse() works as expected
     [FIX]          Fixed crash in OpenGLTest
     [FIX]          Fixed logic when passing an empty std::vector to WebSocket::init()
     [FIX]          Fixed crash in ParticleSystemQuad due to improper deletion of VBO and VAO
     [FIX]          Point::isSegmentIntersect() returns correct value
     [FIX]          Improved UTF8 response code in XmlHttpRequest
     [FIX]          Observers with the same target and name but different sender are the same observer in NotificationCenter
     [NEW]          Added ATITC format support
     [NEW]          Better integration with physics engine
     [NEW]          New Event Dispatcher: supports Keybaord, Touches, Accelerometer, Custom events. Added Tests as well
     [NEW]          New Label code: Faster and more efficient than previous code
     [NEW]          Added S3TC support
     [NEW]          Added a method to get duration of timeline for CCBAnimationManager class
     [NEW]          Array is compatible with STL containers.
     [3RD]          Upgraded SpiderMonkey to Firefox v23
[Android]
     [FIX]          Fixed When lock screen or entering background and resume the application textures from pvr.ccz file become black
     [FIX]          Fixed Stroke font color
     [NEW]          Uses Native Activity
[iOS]
     [FIX]          Status bar can be hidden on iOS 7
     [FIX]          Added iOS7 icons to templates and tests
[Mac OS X]
     [NEW]          iOS and Mac tempaltes were merged into one single Xcode project file.
     [NEW]          Added Lua template
[JavaScript bindings]
     [FIX]          CCBReader is able to set properties to owner if 'owner var' is setted
     [FIX]          Fixed crash when extending cc.ScrollView in JS
     [FIX]          cc.registerTargettedDelegate supports pure js object as its target
     [FIX]          Fixed memory leak in the binding glue code of cc.FileUtils.getStringFromFile(getByteArrayFromFile)
     [NEW]          Added bindigns for Sprite::getDisplayFrame(), ControlButton callback and RemoveSelf
[Lua bindings]
     [NEW]          Bind Sprite::getDisplayFrame()


cocos2d-x-3.0alpha0-pre @Jul.30 2013
[all platforms]
     [FIX]      #2124: Image::initWithImageFileThreadSafe is not thread safe
     [FIX]      #2230: Node::onEnterTransitionDidFinish was called twice when a node is added in Node::onEnter
     [FIX]      #2237: calculation offset in font rendering
     [FIX]      #2303: missing precision when getting strokeColor and fontFillColor
     [FIX]      #2312: WebSocket can not parse url like "ws://domain.com/websocket"
     [FIX]      #2327: implement Node::isScheduled
     [FIX]      #2338: ccbRootPath is not passed to sub ccb nodes
     [FIX]      #2346: OpenGL error 0x0502 in  TextureAtlas::drawNumberOfQuads
     [FIX]      #2359: Sprite will become white block when using ControlSwitch
     [FIX]      #2361: some bug fixed of the Set class
     [FIX]      #2366: text shadow
     [FIX]      #2367: ClippingNode works differently on different platforms
     [FIX]      #2370: Pivotjoint constructor and pointQueryFirst in Space class will return false instead of invalid shape object
     [FIX]      #2381: ControlSwitch wasn't displayed correctly when adding more than one switch
     [FIX]      #2384: The submenu of ExtensionTest in TestCpp can't scroll
     [FIX]      #2386: ClippingNode works wrongly when being set as a child
     [FIX]      #2396: Scale9Sprite::setInsetLeft/XXX can't work for rotated sprite frame
     [FIX]      #2401: LabelBMFont crashes in glDrawElements of CCTextureAtlas::drawNumberOfQuads randombly
     [FIX]      #2410: Black screen appears on android randomly
     [FIX]      #2411: Opacity option for shadow in CCLabelTTF is not working
     [FIX]      #2406: Color and Opacity of Scale9Sprite will not be changed when it's added to NodeRGBA and run with FadeIn/Out actions
     [FIX]      #2415: Warning of AL_INVALID_NAME and AL_INVALID_OPERATION in SimpleAudioEngineOpenAL.cpp
     [FIX]      #2418: Unused spriteframes also need to be removed when purgeCachedData
     [FIX]      #2431: Potential crash when loading js files
     [FIX]      #2229: Explicitly initialising CCAcceleration structure
     [FIX]      #2234: Add destructor to CCGLBufferedNode
     [Feature]  #2232: adding Norwegian language support
     [Feature]  #2235: Ability to save/retrieve CCData into/from CCUserDefault
     [Feature]  #2250: add support for std::function<> in CCMemuItem and CCCallFunc
     [Feature]  #2273: Hardware keyboard support
     [Feature]  #2278: Adds CALLBACK_0, CALLBACK_1 and CALLBACK_2 macros for MenuItems
     [Feature]  #2279: Updates chipmunk2d to v6.1.5
     [Feature]  #2283: Adds Polish language support
     [Feature]  #2289: Uses clone() pattern for actions
     [Feature]  #2332: Adding project for QtCreator
     [Feature]  #2364: Adds DrawPrimitives::DrawSolidCircle
     [Feature]  #2365: Adds Rect::unionWithRect
     [Feature]  #2385: Implemented pitch, pan and gain for SimpleAudioEngine
     [Feature]  #2389: Adding cookie support for HttpClient
     [Feature]  #2392: Adds append() function for String class
     [Feature]  #2395: Adds Scale9SpriteTest for TestCpp
     [Feature]  #2399: Adds SocketIO support
     [Feature]  #2408: Adds String::componentsSeparatedByString function for splitting string
     [Feature]  #2414: Bindings-generator could bind std::function<> argument
     [Refactor] #2129: Removes Hungarian notation from ivars. Removes CC and cc prefixes from name classes and free functions.
     [Refactor] #2242: Enables c++11
     [Refactor] #2300: Using clone() pattern instead of 'copyWithZone' pattern
     [Refactor] #2305: Use std::thread instead of pthread
     [Refactor] #2328: ETC support for all platforms
     [Refactor] #2373: C
