1. 30 Dec, 2021 1 commit
  2. 29 Dec, 2021 1 commit
  3. 21 Dec, 2021 1 commit
  4. 20 Dec, 2021 2 commits
  5. 19 Dec, 2021 5 commits
  6. 18 Dec, 2021 1 commit
  7. 16 Dec, 2021 1 commit
  8. 15 Dec, 2021 1 commit
    • Dridi Boukelmoune's avatar
      doc: Sort VCL variables alphabetically · 948cf26d
      Dridi Boukelmoune authored
      They are grouped by categories and that hasn't changed, and the order
      of groups haven't changed. All occurrences of foo.* variables are sorted
      alphabetically instead of approximately by relationship between each
      other.
      
      Inside the first group, variables are now ordered based on the PROXY
      protocol diagram:
      
      - client
      - server
      - remote
      - local
      
      A note was added and is hopefully visible enough to maintain this order.
      
      You can verify that nothing changed:
      
          $ COMMIT=<this-commit-hash>
          $ git show $COMMIT~:doc/sphinx/reference/vcl_var.rst |
            sed '/^$/d' |
            sort |
            sha1sum
          3400130e88c0456b3bc779b9dfeeff09e130efa3
          $ git show ${COMMIT}:doc/sphinx/reference/vcl_var.rst |
            sed '/^$/d ; /.. NOTE:/d' |
            sort |
            sha1sum
          3400130e88c0456b3bc779b9dfeeff09e130efa3
      
      Use whatever alternative to sha1sum your system may provide.
      948cf26d
  9. 14 Dec, 2021 11 commits
  10. 13 Dec, 2021 4 commits
    • Dridi Boukelmoune's avatar
      6613cca6
    • Dridi Boukelmoune's avatar
      param: Infrastructure for deprecated aliases · c6e3d6b5
      Dridi Boukelmoune authored
      With this change, we can formalize the renaming of a parameter while
      maintaining the old name temporarily for compatibility.
      
      A deprecated alias can be set with either param.set or the -p option,
      but won't be listed by:
      
      - param.show [-j]
      - param.show [-j] changed
      - param.show -l
      
      Only an explicit param.show for the name of the alias will provide a
      minimal documentation with a deprecation notice and the current value.
      In the manual, there is only a deprecation notice. The rationale is
      that administration tools shouldn't pick them up when enumerating the
      parameters.
      
      Since we currently don't have deprecated parameters, this can only be
      tested manually, for example:
      
          PARAM_ALIAS(vcl_dir, vcl_path)
      
      To ensure that we don't break this, we could consider having a perpetual
      deprecated parameter.
      c6e3d6b5
    • Dridi Boukelmoune's avatar
      param: Comment OCD · 66ecc836
      Dridi Boukelmoune authored
      66ecc836
    • Dridi Boukelmoune's avatar
      95b10d1b
  11. 10 Dec, 2021 2 commits
  12. 07 Dec, 2021 1 commit
    • Dridi Boukelmoune's avatar
      vcc: set BODY [+]= STRINGS|BLOB · cb446a38
      Dridi Boukelmoune authored
      This reuses the stringform concept and introduces a similar bodyform
      flag for STRINGS and BLOB types. We can now assign either a STRING or
      a BLOB to [be]resp.body, without breaking the VRT ABI and API. In fact,
      the VRT API now uses a void* C type for the BODY VCL type and finds
      which type to use based on enum lbody_e.
      
      The enum completely changed but macros were added to maintain the API,
      and because of this change, enum lbody_e literals are formatted in two
      steps. As a result the BODY type grew another noindent flag. It prevents
      the insertion of white space between the LBODY_{ADD,SET}_ prefix and the
      type name suffix (BLOB or STRANDS).
      cb446a38
  13. 06 Dec, 2021 1 commit
  14. 03 Dec, 2021 2 commits
  15. 02 Dec, 2021 2 commits
  16. 01 Dec, 2021 4 commits
    • Poul-Henning Kamp's avatar
      Off by one error · 10749ffe
      Poul-Henning Kamp authored
      10749ffe
    • Poul-Henning Kamp's avatar
      5ba919d7
    • Dridi Boukelmoune's avatar
      ws: Tie workspace logs to their transactions · 588d5c45
      Dridi Boukelmoune authored
      That is, when it's a request or backend transaction, otherwise it's
      still logged with VXID 0. The goal is to allow a correlation between
      VCL statements and their workspace footprint by sharing the same
      transaction instead of being split between raw and vxid scopes. That
      kind of debugging becomes possible when the workspace debug flag is
      used and VCL_trace records are not masked.
      
      Given the verbosity of both workspace and trace logs, we would need
      new tools to process transactions for this purpose and until we can
      link everything we have a chicken-egg problem.
      
      This change does not go all the way and relies on the thread-local
      worker reference to opportunistically log into its VSL buffer when
      it has one. When the workspace is initialized, the buffer may not
      be ready yet, so some logs may still end up raw. What's likely going
      to be missing is workspace early initialization and teardown: in other
      words before and after VCL execution, which should be good enough for
      the purpose of debugging workspace operations in VCL tasks.
      588d5c45
    • Dridi Boukelmoune's avatar
      wrk: Opportunistic logging in a worker's VSL buffer · f9f2a865
      Dridi Boukelmoune authored
      Since its primary usage will be workspace logs, workers can be
      initialized earlier to offer even more opportunity for logging.
      f9f2a865