Change Log
0.5.0
-
UPGRADE:
- upgrade luasocket to 3.0-rc1.
- add luainspect lib.
-
IMPROVE: make installation better, improve installation shell.
- offer an unique install.sh instead of install_ubunutu.sh and install_centos.sh.
- except fundamental packages from linux distro, such as "git", "zip" and some building tools, all other packages can be installed without online. This can save much time.
- the install.sh supports parameters, ex. user can set the path of installation.
-
IMPROVE: offer all new wiki docs by Sphinx project in ".rst" format.
- the new wiki can be outputed in many file formats, such as html, pdf, latex, etc.
- it is easy to generated with make tools.
- the wiki docs in html format is released with Quick Server, in "docs/" dir.
-
CHNAGE: almost all Quick Server codes are refactored.
- new architecture, all modules with "Server" in name are refactored to "Connect".
- package mechanism, all functions is offerd as package.
- Http and WebSocket modules are refactored, inheriting from "ConnectBase".
- new broadcast mechanism.
- adjust options in config.lua, more simple, more better.
- new maintain and manager shells.
- monitor the processes of Quick Server at any time, and the status can be shown in web.
0.4.0
- UPGRADE: From Openresty 1.7.2.x to 1.7.7.x.
- IMPROVE: make install_ubunutu.sh better in order that user can install Quick Server convenienty, and fix some bugs in it.
- create a symbol link for nginx, after Openresty installation.
- Add option "--no-check-certificate" for each "wget" command.
- "status_quick_server.sh" shell file should be copied to installation directory while installation is finished.
- Change those shell tools director, move them from "/opt" to installation path.
- Add a new shell tool named "restart_nginx_only.sh" in order to restart nginx processes.
- Add a parameter for install_ubuntu.sh for specifying installation path insted of absolute path.
- Quick Server configure files, including "redis.conf" and "nginx.conf", are modified automatically via "sed" tool.
- FEATURE: Support plugin mechanism.
- Add some methods into "cc" framework, "load" and "bind" etc, for package file(lua file).
- Give two plugin examples: "Ranklist" and "ChatRoom", converted from "RanklistAction" and "ChatAction".
- Add simple functionality tests for above plugins.
- IMPROVE: Add a demo action named "HelloworldAction"
- include a simple method "/sayhello" to show "hello world".
- there are two other methods "addandcount" and "sayletters" to show how to write a function with plugins.
- Add "helloworld" client which supports both html and websocket.
- CHANGE: delete install_mac.sh. The installation of mac env will be supported in next version.
- OTHER MINOR CHANGES:
- IMPROVE: upgrade Quick Server wiki.
- BUGFIX: when deploying lua codes defined by user, the target directory in Quick Server shoule be created.
- IMPROVE: The target directory in Quick Server can be configured via "luaRepoPrefix" in config.lua for deploying lua codes defined by user.
- CHANGE: obsolete the old interface of uploading user codes.
- IMPROVE: Add two sql files: "base.sql" and "pre_condition.sql" in conf/sql for configuring MySql.
- CHANGE: don't need to set "root" privilege in nginx conf file.
- IMPROVE: Add README file for each sub-dir.
- CHANGE: change some shells which are used to encapsulate "nginx" command in "openresty/nginx".
0.4.0-rc0
- FEATURE: Add an new action "SessionAction" to generate session_id for user.
- FEATURE: adjust many interfaces in RanklistAction.
- Each interface calling needs checking session_id.
- "Add" interface can generate a uid according to the nickname when user calls it first time.
- the format of uid is "nickname+numbers" in order to keep each uid unique.
- score, remove, getrank and getrevrank should get key from param "uid".
- "GetRevRank" also replies score.
- "GetRankAction" also return socre.
- "AddAction" can return a percent to indicate "rank/total", in other words, it's the user's positiono in a ranklist.
- Add some test cases for RanklistAction.
- BUGFIX: if a redis command fails, it replies an int 0 not a string "0".
0.3.9
- FEATURE: implement a ranklist with friendship based on social network platform.(only support Weibo now)
- FEATURE: Each interface calling needs checking session_id.
- FEATURE: ADD some test cases for FriendshipAction.
- BUGFIX: table.length() method in function.lua moduel.
0.3.8
- FEATURE: implement chatting room, ChatAction module.
- Add a new sub-table as the configuration for ChatAction in config.lua.
- assign an user to a channel automatically.
- Add some tests cases for ChatAction.
- IMPROVE: remove BeginSession interface.
- IMPROVE: optimize some lua codes in the initialization of mysql and redis.
0.3.7
- FEATURE: implement user login function through Cocochina platform.
- FEATURE: when invoking the service of Quick Server via either http or WebSocket, to verify session ID is needed.
- IMPROVE: implment user.uploadcodes action instead of "user/codes" web interface. The original http interface "user/codes" will be obsoleted in next release.
- OTHER MINOR CHANGES:
- BUGFIX: fix some bugs in http.lua and url.lua.
- CHANGE: add a configuration into nginx.conf for DNS server.
- IMPROVE: Write a new shell named "status_quick_server.sh" to show the status of Quick Server processes.
- IMPROVE: implement two functions to release mysql and redis connections.
- IMPROVE: After installation, server/config.lua should not be compiled in order to be configured by user conveniently.
- BUGFIX: fix a slight mistake in urlencodeChar() of functions.lua.
- BUGFIX: the param "value" of Ranklist.Add is allowed to be a string.
- BUGFIX: fix the version of luajit in "compile_bytecode.sh", change it to "luajit-2.1.0-alpha".
- IMPROVE: StoreObj returns a id which don't includes "/" symbol definitely.
- IMPROVE: change the level of error() in the method "throw" of debug.lua in order to make error messge more concise.
0.3.6
- UPGRADE: OpenResty 1.4.1 to 1.7.2.
- IMPROVE: support accessing user-defined codes via WebSocket besides HTTP.
- BUGFIX: fix LUA_PATH of index-cleaner script.
- DOCS: improve wiki in Chinese based on github wiki.
- CHANGE: Quick Server is released in bytecode generated by Luajit via Docker. And modify shell script in Ubuntu for some installation errors.
0.3.5
- IMPROVE: Adjust directory structure of project, make it more simpler and cleaner.
- FEATURE: Integrate lua-resty-http with quick-server.
- BUGFIX: Fix and mend some confinguration in nginx.conf.
0.3.1
- BUGFIX: There should be an "actions" sub-dir in root of user-defined codes.
- BUGFIX: Allow the type of response of HTTP is "string".
- IMPROVE: Support case-insensitive uri.
0.3.0
- IMPROVE: refactor the implemnet of user-defined function, supporting sub-dir structure deployment.
0.2.0
- FEATURE: Support user-defined function via uploading lua codes by users themselves.
- FEATURE: Support Http protocol for invoking interfaces.
- FEATURE: Docker becomes a new way which users can choose for installation besides shell script.
0.1.0
- FEATURE: Support Object Store based on MySql 5 with JSON format.
- FEATURE: Support Index in Object Store.
- FEATURE: Implement Ranklist function based on Redis.
- FEATURE: All interfaces is based on WebSocket protocol.