<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hi Hilaire,</p>
    <p>This looks very useful!</p>
    <div class="moz-cite-prefix">On 2026-03-19 6:00 PM, Hilaire
      Fernandes via Cuis-dev wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:ecb473d2-7a91-48ec-8068-02b1f29323a2@free.fr">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <p><font size="4">And for the record, the counter part to read
          back:</font></p>
      <pre><font size="4">restoreFromCompressedFile: aFileEntry
    ^ aFileEntry readStreamDo: [ :fileStream | | uncompressed |
        uncompressed := (GZipReadStream on: fileStream) upToEnd.
        self unStream: (self unStream: uncompressed)]</font></pre>
      <p><font size="4"><br>
        </font></p>
      <p><font size="4">Don't ask me why the double unStream:...</font></p>
    </blockquote>
    <p><font size="4">It is because you're streaming twice too.</font></p>
    <p><font size="4">I'd rather prefer</font></p>
    <p><font size="4">dumpOnCompressedFile: aFileEntry object: anObject<br>
            "Warning: If the file given by aFileEntry exists, it will be
        overwritten."<br>
                <br>
            aFileEntry forceWriteStreamDo: [ :fileStream | | compressor
        |<br>
                compressor := GZipWriteStream on: fileStream.<br>
                compressor nextPutAll: (self streamedRepresentationOf:
        anObject).<br>
                compressor close]</font></p>
    <p><font size="4">and</font></p>
    <p><font size="4">restoreFromCompressedFile: aFileEntry<br>
            ^ aFileEntry readStreamDo: [ :fileStream | | uncompressed |<br>
                uncompressed := (GZipReadStream on: fileStream) upToEnd.<br>
                self unStream: uncompressed]</font></p>
    <p><font size="4">If you agreen, I can push these to the Compression
        package.</font></p>
    <p><font size="4">Thanks,</font></p>
    <blockquote type="cite"
      cite="mid:ecb473d2-7a91-48ec-8068-02b1f29323a2@free.fr">
      <pre class="moz-signature" cols="72">-- 
<a class="moz-txt-link-freetext" href="http://mamot.fr/@drgeo"
      moz-do-not-send="true">http://mamot.fr/@drgeo</a></pre>
      <br>
      <fieldset class="moz-mime-attachment-header"></fieldset>
    </blockquote>
    <pre class="moz-signature" cols="72">-- 
Juan Vuletich
<a class="moz-txt-link-abbreviated" href="http://www.cuis.st">www.cuis.st</a>
github.com/jvuletich
researchgate.net/profile/Juan-Vuletich
independent.academia.edu/JuanVuletich
patents.justia.com/inventor/juan-manuel-vuletich</pre>
  </body>
</html>