Skip to content

Commit

Permalink
7.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
olliNiinivaara committed Aug 7, 2024
1 parent e76fda6 commit 7aa2178
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 38 deletions.
39 changes: 5 additions & 34 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,37 +52,8 @@ atlas use GuildenStern
- step 2: atlas use GuildenStern


## Release notes, 7.1.0 (2024-06-10)

- All threads are initialized when their server is started (instead of when they are first used), making the system more [fail-fast](https://en.wikipedia.org/wiki/Fail-fast_system)
- \- is an accepted char in header field names
- WebSocketServer code clean-up: WebSocketContext removed; opcode not anymore visible to end users
- Minor fixes and improvements

## Release notes, 7.0.0 (2024-06-01)

### StreamingServer has been merged to HttpServer
- *receiveInChunks* iterator renamed to *receiveStream*
- *maxrequestlength* renamed to *bufferlength*
- newHttpServer does not anymore take *hascontent* parameter, but instead:
- newHttpServer takes *contenttype* parameter:
- *Compact* (the default mode): Equivalent to previous hasContent=true mode, where whole request body must fit into the buffer
- *NoBody*: Equivalent to previous hasContent=false mode, for optimized handling of requests like GET that do not have a body
- *Streaming*: Equivalent to previous StreamingServer, where you have to read the body yourself using the *receiveStream* iterator
- *startDownload-continueDownload-finishDownload* combo renamed to *replyStartChunked-replyContinueChunked-replyFinishChunked*

### Header processing streamlined
- *parseHeaders* and *parseAllHeaders* obsoleted
- newHttpServer takes *headerfields* parameter, listing header fields that you need
- in request handlers *http.headers* StringTableRef is automatically populated with needed header key-value pairs

### New MultipartServer
- handles *multipart/form-data* for you as neatly parsed
- operates in streaming manner, allowing huge uploads without blowing up RAM

### Improvements to websockets
- If you do not accept a connection (reply *false* in *upgradeCallback*), a HTTP 400 reply is now automatically sent before the socket is closed
- PONG is now automatically replied to PINGs, *sendPong* proc is removed
- default reply values changed, now *timeoutsecs* = 10, *sleepmillisecs* = 10
- if all in-flight receivers are blocking, now suspends for (*sleepmillisecs* * in-flight receiver count) milliseconds
- fixed *isMessage* bug
## Release notes, 7.2.0 (2024-08-07)

- Compatibility with ARM architecture
- Bug fix: getUri etc. in the new compact http server mode
- Bug fix: failed read in the new compact http server mode
4 changes: 2 additions & 2 deletions docs/7/guildenstern/guildenserver.html
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ <h1 class="title">guildenstern/guildenserver</h1>
<details open>
<summary><a class="reference reference-toplevel" href="#10" id="60">Consts</a></summary>
<ul class="simple simple-toc-section">
<li><a class="reference" href="#GuildenSternVersion" title="GuildenSternVersion = &quot;7.1.0&quot;">GuildenSternVersion</a></li>
<li><a class="reference" href="#GuildenSternVersion" title="GuildenSternVersion = &quot;7.2.0&quot;">GuildenSternVersion</a></li>

</ul>
</details>
Expand Down Expand Up @@ -371,7 +371,7 @@ <h1><a class="toc-backref" href="#8">Vars</a></h1>
<h1><a class="toc-backref" href="#10">Consts</a></h1>
<dl class="item">
<div id="GuildenSternVersion">
<dt><pre><a href="guildenserver.html#GuildenSternVersion"><span class="Identifier">GuildenSternVersion</span></a> <span class="Other">=</span> <span class="StringLit">&quot;7.1.0&quot;</span></pre></dt>
<dt><pre><a href="guildenserver.html#GuildenSternVersion"><span class="Identifier">GuildenSternVersion</span></a> <span class="Other">=</span> <span class="StringLit">&quot;7.2.0&quot;</span></pre></dt>
<dd>


Expand Down
2 changes: 1 addition & 1 deletion guildenstern.nimble
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version = "7.1.0"
version = "7.2.0"
author = "Olli"
description = "Modular multithreading HTTP/1.1 + WebSocket server framework"
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion guildenstern/guildenserver.nim
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const GuildenSternVersion* = "7.1.0"
const GuildenSternVersion* = "7.2.0"

# Guildenstern
#
Expand Down

0 comments on commit 7aa2178

Please sign in to comment.