Artanis NEWS --- history of user-visible changes.
Copyright (C) 2015-2024
"Mu Lei" known as "NalaGinrut" <mulei@gnu.org>
See the end for copying conditions.

Please send bug reports to bug-artanis@gnu.org.

Changes in 0.0.2
* Notable changes
Updated for GNU project.

Changes in 0.0.3
* Notable changes
Fixed several bugs.
Support JSONP.

Changes in 0.1.0
* Notable changes
MVC support.
Migration support.
Optimized uploading for speed.
Command line tools.
Fixed many bugs.
Add several test cases.

Changes in 0.1.1
* Notable changes
Added debug-mode, which can reload modules/specified files on the fly.
Added inotify support.
Fixed several bugs.
Updated manual.

Changes in 0.1.2
* Notable changes
Rewrited session management. Now support three new backends simple/file/db.
Added HTML template caching.
Fixed several bugs.
Updated manual.

Changes in 0.2
* Notable changes
Brand new server core Ragnarok based on delimited continuations.
Good multi-core support.
Efficient static file uploading and downloading.
Fixed many bugs.

Changes in 0.2.1
* Notable changes
Make Ragnarok server core more robust.
Updated manual.
fixed argument passing bug when calling artanis-log.
fixed: catch exceptions before calling page handler and avoid to stop the server.
elaborated exception handling while uploading.
fixed many exceptions handling issues in Ragnarok.
fixed: catch I/O exceptions in reader and writer to close connection properly.
fixed: throw cookie for debug while encounter an invalid cookie.
fixed: search session id from cookies list in rc.
fixed exception throwing while spawning sessions.

Changes in 0.2.2
* Notable changes
Failed release.

Changes in 0.2.3
* Notebale changes
Fixed many bugs.
Enable strict URI checking for Ragnarok.
Make better exception throwing.
Upgrade irregex to v0.9.6.
Update guile-json to 0.6.0.
Create .gitkeep to make sure the empty folders could be git traced properly.
Websocket support (Preliminary).
Support LibreJS.

Changes in 0.2.4
* Notable changes
Fixed wrong continuations capturing in Ragnarok.
static-page-emitter can be specified dir now.
Fixed to avoid crash when encounter bad request.
Fixed support query parameters without value.
Fixed make sqlite3 work.
Fixed avoid bash_completion if it's uninstalled.

Changes in 0.2.5
* Notable changes
Fixed crash bug caused by improper connection shutdown.
Added new interface for better handling of uploading files.
Added tests of the new uploading interface.
Support request connection timeout.
Replaced old base64 implementation with industria version, the old one has critical bug.
Fixed typo in admin.tpl to make sure blog example work.
Changed generated migration filename from filename_timestamp.scm to timestamp_filename.scm, this will be helpful for terminal completion.
Rewrite authentication module to avoid side-effects.
Support Fibers server engine.
Use SHA256 as the default HMAC

Changes in 0.2.6
* Notable changes
Replace md5 with a better version from Gran Weinholt <goran@weinholt.se>, this fixed strange bugs in previous implementation.
Fixed wrong DESTDIR path.

Changes in 0.3
* Notable changes
Failed release.

Changes in 0.3.1
* Notable changes
- Support Websocket named-pipe
- Authentication use HMAC
- Support optional third-party server-core
- Support Redis
- Fixed FD leaking in server-core
- Ragnarok will not quit when encountered exceptions
- Support DB timeout reconnecting
- :from-post supports json-mapping
- Added create --upgrade command to upgrade old config to new one with comments
- added inline docs to generated artanis.conf
- Redis as session backend
- Fixed inconsistent design in cookies
- Fixed tons of bugs

Changes in 0.3.2
* Notable changes
- redirect-to API supports extra headers
- Fiter null string when generating SQL
- Migration cache was removed since it's useless now
- Fix misc bugs in migration
- Enhanced Models API
- If no models defined then it throws warning
- Boolean option supports `disable'
- Fix socketfile data connection
- Thanks "Christopher Baines <mail@cbaines.net>"
- Fix wrong length of Websocket frame
- Register default sigint handler before run
- Fixed bugs in upload module
- Fix wrong HEADER in upload client
- Fix file description leaking after the file was uploaded

Changes in 0.4
* Notable changes
- New auto authentication shortcut #:with-auth
- Fix bugs in upload module
- Add OPTIONS method
- Add new mode to #:auth to authenticate from POST automatically
- Add drop mode to :session shortcut
- Add --refresh to `work' command
- Fix exception printing to prevent quit
- If the rule didn't initialize the oht then it'll throw exception
- Support mmap file I/O
- Fix wrong methods parsing
- Schedule when parsing big mfds
- Fix wrong 404 status generation
- Fix wrong route.cache generation
- Fix to avoid crash when client was closed suddenly
- Fix the crash bug when very beginning in main-loop a client was closed
- Fix named-pipe missed msg when client was closed
- Support inexclusive websocket named-pipe
- Fix several bugs in websocket module
- Update template render to support FreeJS announcement
- Fix cookies removing
- Fix hostname display
- Fix to use basename of redirect path to avoid 500 error
- Add dynamic sys page rendering
- Fix ssql: SQL string literals should be surrounded by single-quote

Changes in 0.4.1
* Notable changes
- Add RESTful API generator
- Polish sendmail module
- Refactor command module for better reusing
- Add missing 'art migrate create'

Changes in 0.5
* Notable changes
- Support Guile-3
- Use libnss for hash algorithms
- Fix cookies to work
- Fix ssql for SQL standard

Changes in 0.5.1
* Notable changes
- Fix cookies
- Fix redirect-to to use host.name if set
- Remove useless valid field in session
- Show 'art create' options in auto complete
- Support js hash

Changes in 0.6
* Notable changes
- Add (artanis client)
- Fix many bugs in DB operations
- Fix cookie expires

Changes in 1.0.0
* Notable changes
- Drop integrated guile-json, guile-redis
- Fix js loading with manifest
- Add #:unsigned to exception list for PostgreSQL and SQLite3
- Add DELETE/PUT to (artanis client)
- Move route cache .route to tmp dir (for Guix)
- Fix generate-kv-from-post-qstr
- Solve global access elegantly with parameter
- Fix to use new string hash API with nss
- Fix tmp directory auto-regeneration (for Guix)
- Fix epoll issue on Aarch64
- Fix fatal bug in session
- Update manual for Models
- Update THANKS

Changes in 1.1.0
* Notable changes
- Add i18n
- Add server.workers
- Move out tmp dir (for Guix)
- Fix autoload in debug mode
- Fix request-ip thrown issue
- Add default 408 handler
- Update manual
- Update THANKS

