1. 20 Dec, 2019 6 commits
    • Guillaume Quintard's avatar
      513ae61b
    • Guillaume Quintard's avatar
      [cci] switch to py3-sphinx for alpine · cf7259b5
      Guillaume Quintard authored
      cf7259b5
    • Martin Blix Grydeland's avatar
      Log using SLT_Notice on condfetch streaming delay · 9bf8e871
      Martin Blix Grydeland authored
      Log a notice message when delaying a conditional fetch and the stale
      template object is still streaming.
      9bf8e871
    • Martin Blix Grydeland's avatar
      Add a SLT_Notice VSL tag · 4c5aba28
      Martin Blix Grydeland authored
      This VSL tag will be used for informational messages related to
      exceptional handling of requests.
      4c5aba28
    • Martin Blix Grydeland's avatar
      Conditional fetch wait for streaming stale object · 98dc20f4
      Martin Blix Grydeland authored
      Wait for the stale object to become fully fetched, so that we can catch
      fetch errors, before we unbusy the new object. This serves two
      purposes. First it helps with request coalescing, and stops long chains of
      IMS-updated short-TTL objects all streaming from a single slow body
      fetch. Second it makes sure that all the object attributes are complete
      when we copy them (this would be an issue for ie OA_GZIPBITS).
      
      This patch OBE's r01646.vtc, and slightly patches r01648.vtc to expect a
      503 instead of a 200 and a broken connection on the failing client.
      
      Fixes: #3089
      98dc20f4
    • Dridi Boukelmoune's avatar
      Avoid loose vocabulary around VCL sub · 17457b48
      Dridi Boukelmoune authored
      The code base and documentation refer to ``sub`` symbols as:
      
      - subroutines
      - functions
      - methods
      - procedures
      - callbacks
      
      This change focuses on always referring to them as subroutines in the
      documentation. During this documentation sweep, there were a lot of
      false positives since VCL, VMODs and HTTP also share that vocabulary
      and I may have missed false negatives, especially for generated bits
      of documentation.
      
      Some parts of the documentation were not touched on purpose: upgrade
      notes and changelogs of past releases, PHK random outbursts, etc.
      
      Now that the documentation is hopefully taken care of the same needs
      to happen in the code base, starting with user-facing error messages
      and then data structures names, function names etc.
      
      There will be however one exception. Anything referring to the scope
      of a subroutine, but being worded as if it referred to the subroutine
      itself will use scope instead.
      
      As this will touch a lot of code, it will be done incrementally, much
      like this change focused on non-generated documentation (and VCC files
      don't count as generated in this context).
      
      I also fixed RST formatting issues I noticed during my sweep.
      
      Better diff with the --word-diff --ignore-all-space options.
      17457b48
  2. 19 Dec, 2019 4 commits
  3. 18 Dec, 2019 1 commit
    • Dridi Boukelmoune's avatar
      Improve the VCL recursive sub calls error message · db0baa74
      Dridi Boukelmoune authored
      Before:
      
          ...called from "foo"
          ('<vcl.inline>' Line 5 Pos 27)
                  sub bar { call foo; }
          --------------------------#--
      
      After:
      
          ...called from "bar"
          ('<vcl.inline>' Line 5 Pos 24)
                  sub bar { call foo; }
          -----------------------###---
      
      This fixes the "called from" part of the message to refer to the caller
      instead of the callee, and underlines the symbol token instead of the
      semi-colon.
      db0baa74
  4. 17 Dec, 2019 3 commits
  5. 16 Dec, 2019 14 commits
  6. 15 Dec, 2019 1 commit
  7. 13 Dec, 2019 4 commits
  8. 12 Dec, 2019 4 commits
  9. 11 Dec, 2019 3 commits
    • Dridi Boukelmoune's avatar
      Rename obscure symbol variables · 6d1a3028
      Dridi Boukelmoune authored
      Every time I read this code I fail to remember which symbol is which, so
      from now on the instance symbol will be called isym, the object symbol
      osym and the method symbols msym.
      6d1a3028
    • Dridi Boukelmoune's avatar
      Whitespace OCD · 1a6a6e8e
      Dridi Boukelmoune authored
      They fit within 80 columns.
      1a6a6e8e
    • Dridi Boukelmoune's avatar
      Omit the separator in VCC functions extra arguments · 12a16117
      Dridi Boukelmoune authored
      Instead, the comma is emitted when there is indeed an extra argument.
      
      This change was initially submitted in #3147 and is needed when the
      extra argument may vary for a given symbol. More specifically, when
      a method symbol may be shared by several instance symbols, it becomes
      really difficult to find a spot where that extra comma might be added.
      
      Removing it from the extra argument itself makes this easier once we
      reach the point where method symbols are unique (per object) instead
      of repeated (per instance).
      12a16117