All Versions
19
Latest Version
Avg Release Cycle
42 days
Latest Release
1400 days ago
Changelog History
Page 2
Changelog History
Page 2
-
v2.5.1 Changes
April 23, 2019Added function ngxCachedPid to return the worker's PID cached in Nginx core.
-
v2.5.0 Changes
February 08, 2019- ๐ New features
- The normal synchronous and all asynchronous content handlers are expected to return a list of optional HTTP response headers (type ContentHandlerResult gets the 4th field).
- The aforementioned kinds of content handlers can now return authentic Nginx-styled responses (such as 502 Bad Gateway; see section Tips and tricks in README.md).
- ๐ Bug fixes
- All asynchronous Haskell handlers get proper masking against asynchronous exceptions, which is especially important for service handlers in presence of asynchronous exceptions from service hooks.
- The API exceptions were not accessible for using in the standalone approach.
- Other
- Minor improvements and optimizations.
- ๐ New features
-
v2.4.1 Changes
January 25, 2019- ๐ท Added exception WorkerProcessIsExiting to signal services that Nginx is shutting down. This has replaced ThreadKilled that was used formerly in order to prevent erroneous handling of unexpectedly thrown ThreadKilled.
- All API exceptions now derive Eq.
-
v2.4.0 Changes
January 16, 2019- ๐ท Added API exceptions RestartWorkerProcess and FinalizeHTTPRequest. The latter can be used from Haskell asynchronous variable handlers to quickly finalize the HTTP request.
- A minor improvement in the content handler: do not send HTTP header Content-Type when the response does not contain a body.
- Package ngx-export-tools version 0.4.3.0. Functions terminateWorkerProcess, restartWorkerProcess, and finalizeHTTPRequest now make use of the corresponding API exceptions from package ngx-export 1.6.3, and therefore are effectively restricted in the sense of calling context: a worker process can be terminated or restarted only from a Haskell service, while an HTTP request can be finalized only from a Haskell asynchronous variable handler.
-
v2.3.1 Changes
December 24, 2018Package ngx-export-tools version 0.4.2.2.
-
v2.3.0 Changes
December 07, 2018- ๐ท Added a new exception TerminateWorkerProcess that can be used for graceful termination of an Nginx worker process when initialization of a service fails.
- Package ngx-export-tools version 0.4.0.0.
- Now single-shot services run exactly two times which lets using them in a proper initialization / cleanup flow.
- Added a number of combinators to facilitate creation of specialized services. They allow distinguishing between ignition and deferred services.
-
v2.2.1 Changes
November 26, 2018- Package ngx-export: upgraded Cabal version constraint.
- Package ngx-export-tools version 0.3.1.0: names of the storages for custom types now contain the name of the service which makes it possible to use the same configuration type in multiple services.
-
v2.2.0 Changes
November 09, 2018- ๐ Bug fixes
- Do not start Nginx worker if there are mismatches between roles and implementations in any of Haskell handlers being loaded. For example, when a handler of type IOYY is exported from a Haskell code with ngxExportAsyncIOYY, but gets loaded in Nginx configuration with directive haskell_run which is suitable for synchronous tasks only. Before this fix, such cases were not always detectable, which could lead to segfaults in Nginx workers during runtime.
- Accept only absolute paths for file locks in directive haskell_service_var_in_shm.
- Other
- Package ngx-export-tools version 0.3.0.0. New typed readers with support for reading a pointer to the Nginx request object. More examples in haddock docs.
- ๐ Bug fixes
-
v2.1.1 Changes
October 24, 2018Many bug fixes and improvements in module NgxExport.Tools.