New Upstream Release - cl-chunga

Ready changes

Summary

Merged new upstream version: 20220906.gite7dc536 (was: 20220222.git7836609).

Resulting package

Built on 2023-06-10T21:40 (took 12m11s)

The resulting binary packages can be installed (if you have the apt repository enabled) by running one of:

apt install -t fresh-releases cl-chunga

Diff

diff --git a/debian/changelog b/debian/changelog
index 85b74a4..f53f10a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,12 @@
-cl-chunga (20220222.git7836609-2) UNRELEASED; urgency=medium
+cl-chunga (20220906.gite7dc536-1) UNRELEASED; urgency=medium
 
+  [ Sébastien Villemot ]
   * Remove myself from Uploaders
 
- -- Sébastien Villemot <sebastien@debian.org>  Sat, 10 Jun 2023 13:44:32 +0200
+  [ Debian Janitor ]
+  * New upstream release.
+
+ -- Sébastien Villemot <sebastien@debian.org>  Sat, 10 Jun 2023 21:28:55 -0000
 
 cl-chunga (20220222.git7836609-1) unstable; urgency=medium
 
diff --git a/input.lisp b/input.lisp
index bed1b13..f5f89a6 100644
--- a/input.lisp
+++ b/input.lisp
@@ -80,6 +80,8 @@ something in the buffer.  Otherwise we poll the underlying stream."
   (cond ((chunked-stream-input-chunking-p stream)
          (or (chunked-input-available-p stream)
              (fill-buffer stream)))
+        ((eq (chunked-input-stream-eof-after-last-chunk stream) :eof)
+         nil)
         (t (listen (chunked-stream-stream stream)))))
 
 (defmethod fill-buffer ((stream chunked-input-stream))
@@ -137,6 +139,8 @@ extensions) and returns the size."
                        (slot-value stream 'chunk-trailers) (with-character-stream-semantics
                                                              (read-http-headers inner-stream))
                        input-limit 0)
+                 (when (chunked-input-stream-eof-after-last-chunk stream)
+                   (setf (chunked-input-stream-eof-after-last-chunk stream) :eof))
                  ;; return NIL
                  (return-from fill-buffer))
                 ((> chunk-size (length input-buffer))
@@ -152,7 +156,10 @@ extensions) and returns the size."
   "Reads one byte from STREAM.  Checks the chunk buffer first, if
 input chunking is enabled.  Re-fills buffer is necessary."
   (unless (chunked-stream-input-chunking-p stream)
-    (return-from stream-read-byte (read-byte (chunked-stream-stream stream) nil :eof)))
+    (return-from stream-read-byte
+      (if (eq (chunked-input-stream-eof-after-last-chunk stream) :eof)
+          :eof
+          (read-byte (chunked-stream-stream stream) nil :eof))))
   (unless (chunked-input-available-p stream)
     (unless (fill-buffer stream)
       (return-from stream-read-byte :eof)))
@@ -167,7 +174,9 @@ it until enough data was read.  Works directly on the underlying
 stream if input chunking is off."
   (unless (chunked-stream-input-chunking-p stream)
     (return-from stream-read-sequence
-      (read-sequence sequence (chunked-stream-stream stream) :start start :end end)))
+      (if (eq (chunked-input-stream-eof-after-last-chunk stream) :eof)
+          0
+          (read-sequence sequence (chunked-stream-stream stream) :start start :end end))))
   (loop
    (when (>= start end)
      (return-from stream-read-sequence start))   
diff --git a/packages.lisp b/packages.lisp
index b2afd3d..c2eb731 100644
--- a/packages.lisp
+++ b/packages.lisp
@@ -64,5 +64,6 @@
            :syntax-error
            :token-char-p
            :trim-whitespace
-           :with-character-stream-semantics))
+           :with-character-stream-semantics
+           :chunked-input-stream-eof-after-last-chunk))
            
diff --git a/streams.lisp b/streams.lisp
index 280867d..4867c4d 100644
--- a/streams.lisp
+++ b/streams.lisp
@@ -67,7 +67,11 @@ might be encountered at the end of a chunked stream.")
                      :documentation "Whether we expect to see
 CRLF before we can read the next chunk-size header part from the
 stream.  \(This will actually be the CRLF from the end of the
-last chunk-data part.)"))
+last chunk-data part.)")
+   (signal-eof :initform nil
+               :accessor chunked-input-stream-eof-after-last-chunk
+               :documentation "Return EOF after the last chunk instead
+of simply switching chunking off."))
   (:documentation "A chunked stream is of this type if its
 underlying stream is an input stream. This is a subtype of
 CHUNKED-STREAM."))
@@ -128,4 +132,4 @@ binary stream."
                         'chunked-input-stream)
                        ((output-stream-p stream)
                         'chunked-output-stream))
-                 :real-stream stream))
\ No newline at end of file
+                 :real-stream stream))

Debdiff

File lists identical (after any substitutions)

No differences were encountered in the control files

More details

Full run details