Varnish 5.2.1

Varnish Cache is a web application accelerator also known as a caching HTTP reverse proxy. You install it in front of any server that speaks HTTP and configure it to cache the contents. Varnish Cache is really, really fast. It typically speeds up delivery with a factor of 300 - 1000x, depending on your architecture.

Tags cache http proxy
License BSDL-2
State mature

Recent Releases

5.2.121 Nov 2017 18:05 minor feature: Add UBSAN visibility and tighten ASAN up . Teach ASAN where the symbolizer lives. . Also install the llvm package, tsk tsk. . Try again now that llvm is installed. . Enable deging and warnings for the clan-4.0 job. . Expose the hash via bereq,req .hash. . Extend coverage and supress known with UBSAN. . Document what f stands for. . Test bereq,req .hash and some cleanup. . And the actual *req.hash test. . White-space OCD. . Enable LSAN and use-after-scope checks. . More functions to ignore. . And two more. . Plug minor leak when we cancel a loading VCL. . Polish. . Add the TTL, grace and keep to Hit log records. . start generalizing the signal handler. . use an alternative stack for SIGSEGV and test for stack overflow. . This MegaCommit replaces the VSM implementation. . Centralize the compat-defines of MAP_NOSYNC and MAP_HASSEMAPHORE. . Add include for time(3). . Use stat::st_mtime instead of st_mtim for OS/X. . s/ / /. . Polish. . Whitespace OCD. . Update docs. . Restore SIGSEGV and SIGABRT to SIG_DFL in child_signal_handler(). . Test the panic-buffer so we know it works. . Make the new VSM code work with VJails. . Always munmap(2) segments when we delete them. . Dont leak - class. . Document status quo regarding req.backend_hint and restarts. . Spelling. . GC unneeded include. . Minor nits spotted by PC-Lint-Plus test version. . Moving these to vdef.h was a silly idea, they need to come after. . improve ban_cutoff documentation based on a question on -misc. . Test case from #2157. . Free the remaining arguments. . Free struct vjsn. . Always unmap in VSM_Unmap when refs reaches zero. . Initialise screen on startup. . Make sure the panic string is empty. . Initialise the VSC levels. . Compare the state of a pool with the parameters. . Refuse streams that can't be scheduled. . New req_dropped counter similar to sess_dropped. . Give VSL/VSC back their individual VSMs to avoid locking VSM_Status(). . Minor flexelinter
4.1.915 Nov 2017 07:05 minor feature: make Tcheck a macro so assertions fail with more helpful __FILE__ and? . Make req reachable from the pipe code. . build after recent merge. . A `cmd` feature for custom shell-based checks. . Iterate without an extra variable. . Don't skip all tests depending on features. . Fail tests which ask for features we have not heard about. . Make life easier for vim/syntastic users. . Revert to wrlock to avoid vd- vbm trampling. . Use "none" to disable authentication. . Backport m00025.vtc. . vut clients: consistently mark all . . Mark some more non-literal options. . Let varnishhist see the backend side and add some profiles. . remove duplicate init. . draw a y axis scale. . refresh period: missing option, sub-second, allow inc/dec. . timebend option: allow to specify how fast time passes. . Move the profile definition into a tbl file and generate the docs fro?. . Forgot to include client/backend profile info in the man page. . try to help the release manager. . typo. . put options in phonebook order again. . remove extra in the usage. . more typos. Typo. . Polish. . Whitespace and format OCD. . Be consistent wrt vsl_ts locking. . Only update timestamp if we got a timestamp. . Revert "Add missing break to switch.". . Check the pthread functions returns in varnishhist. . Stop incorrectly reporting overflow on zeroed ws. . Go to v_b_e if we get a 304 without INM/IMS. . Lock when a backend is moved between lists. . Be consistent wrt vsl_ts locking. . redundant error message. . typo: actually save LIBS in save_LIBS. . When test-compiling to check for jit, also use CFLAGS and LIBS. . remove unused __VA_ARGS__. . Improve wording of do_stream documentation. . Counter documentation for sess_herd. . Further improve do_stream documentation. . The parameter's name is timeout_linger. . Add script to run Coverity. . Pointlessly a resource-leak in bail-out path, spotted by Coverity. . Make a workspace deging output more usable. . Check ma
5.2.016 Sep 2017 03:25 minor feature: Remove unneeded #include. Make VSC not own the VSM it operates on. No quoting needed. Yeah, so I forgot: includes in.h files is still a bad idea. Spell __FreeBSD_version correctly. Argument constification polishing. Add necessary include. Add necessary include. Remove old decode. Add necessary #include. decorate with prototypes. First part of VSC API rework to capitalize on VSM improvements. Try to get the VSM ownership right. Rototill the last bit of the VSC-api and simplify varnishstat_curses. Only react on kill(2) if process doesn't exist. Change the jail-API so we can get the vsm dir permissions right. Properly implement VSC_Destroy(). Only use the kill(pid,0) test to detect dead process if it has. Make vxp_test at least compile, while pondering if it should be removed. Add VSM_NOPID environment variable to disable pid-based tests. bring back mlock() of vsm mappings. Some progress with the vsm docs for new world order. Remove blob operations from vmod-de. Update the travis-ci build. Rewrite the.map file and only expose LIBVARNISHAPI_2.0. Fail the test if we panic when stopping the child. Clean up and systematize our blessed vmod's Makefile.am. Dont filter VMOD symbols just yet. Update stale comment. Pack prototypes in the order they are used. Whitespace OCD. Simplify VUT options initialization. Help flexelint find the path of this VUT_Arg call. Assert when an optarg is expected. Remove the VUT_g_Arg special case. Merge VUT signal handlers together. Move the sigaltstack init to a generic THR_Init() and use it for all ?. try to stabilize this test. De-boilerplate the "normal" vmods in the tree. Now filter the vmods symbols, and make libvmod_deexercise the. Ignore req.ttl when keeping track of epired objects. Build generated sources before anything else. VMOD blob tests: add vcl.discard to test freeing cached encodings of. VMOD blob: correct a special case in object finalization. Move the cli buffer to VSB. Test case for #2422. Staticize. We don't actually have VM
5.2.0-rc209 Sep 2017 20:45 minor feature: rename - this function is specific to the hash. vrt_hash_blob: fail gracefully for out-of-workspace conditions. set the sigaltstack for each thread - SunOS needs it. Use a separate segment for the sigaltstack. Make SunCC happy. VMOD blob: explicitly cast negative int8_t constants. remove unused variable from auto-generated code. VMOD blob: increase workspace for a couple of vtc tests. VMOD blob: use sentinel values that are strictly signed char in the. Remove blob operations from vmod-vtc. Whitespace. Polish. Add missing changelogs. Correct function names on diagnostic messages. Always initialise vd- dname. Accept a negative TTL with purge.soft. Polish. Whitespace OCD. Minor flexelintery. Accommodate older python version. Remove irrelevant limits that were caused by VSC. Drop the incestous relationship between VSM and VSC, and stack. Whitespace OCD. Don't fail at jailing if vcache user does not exist. Prepare for 5.2.0-rc1 release.
5.2.0-rc105 Sep 2017 20:45 minor feature: First babystep of the new selfdocumenting VSC counters. Also move VSC::LCK to The New World Order. Move VBE stats to New World Order. Move the remaining VSC's to The New World Order. We need VSM_Alloc() for test c00083 for now. Add a tiny JSON parser for private use by libvarnishapi. Try to solaris compile nit. Revert deging which snug into previous commit. Take the 'zero' element out of the VSC structures again, and syntax. polish. Polish for sunos compiler. make check under osx while VSC work is ongoing. Run Nicolas Seriot's JSON test-cases. Retire the VSC_Mgt() and VSC_Main() functions. Polish a little bit. building with sanitizers. Update and some housekeeping. Correct check. And now using the correct variable, tsk tsk. Polish for flexelint. Join the long-doc strings with " n". Confine the VSC_C structs to vsc.c. Privatize VSC_level_desc_ VSC_type_desc_ and VSC_desc_ to vsc.c. Simplify. Remove the unused type_desc. File more bits off the VSC api. Internalize the VSC levels, and expose a function to increase/decrease. Support for optional Summing function. This file is now surplus to requirements. Hide struct dstat from vmods. For now substitute VSC_main for dstat. We will circle back to this. Make options control what is emitted. Make vsctool.py produce the VSC.rst doc. Make C11 _Static_assert() available if we have it. Use _Static_assert to ensure we know how the struct is packed. Check VSC parameters harder. Use -match instead of -expect. Add :order: parameters to match vsc_types.h ordering. Retire the old VSC field definitions entirely. Never trust the values of VSC-counters: They are mmap'ed in other. Fold generated lines. Rename VSM_common to CVSM and hide it from vmods. Forgot to add this one. Move VSC_ Alloc Destroy () into common. destroy arguments. Add the new VSM writer bits. Not used yet. Include stdint. Corrected grammar for install.rst. Typo. Remove duplicated test. Undefined behaviour is undefined. Always initialise err. If pipe'ing, unset any exis
5.1.303 Aug 2017 16:05 minor feature: Move the VMOD caching from worker to master to avoid too many. Check -T and -M arguments sooner. Ok, not quite _that_ early, we need to have access to SHM. Typo. an off-by-one error in the place-holder VSLbin(). Deal with WINDOWS_UPDATES on streams. Hold lock over h2req- vsl. Improve test coverage. Send a PROXY v1 line with backend probes. Send PROXY v2 LOCAL header with probes. Tautological assert. Client delivery decides solely whether to set client response 304. More coverage. Log all received frames, even if we throw them away. Make H2_F_ a self-describing object and ditch the enum. Add transmit properties to the frame descriptors. Due to the incompetent H2 protocol design, we also need to keep track of. Overhaul H2 Settings handling. Missed these in previous commit. Don't use symbolic names for flags, GCC and Sun's C-compiler are. Make this test jail-compatible. v1 actually forwards traffic for v2. Document the change regarding 304 responses and pass in What's New fo?. Update docs in spots to use the hit-for-miss and -pass terminology. Update hit-for-miss/-pass terminology in the long description for n_o?. hit-for-miss/-pass terminology OCD in vtc varnishtest lines. hit-for-miss/-pass terminology in the comments of builtin.vcl. Introduce VSC stat cache_hitmiss, to count hits on hit-for-miss. Document changes to varnishlog and varnishstat regarding hit-for-miss?. More test coverage. Ok, drop that test, it's not portable. Add "-hdrlen ". Add a deoption for setting bogus H2 settings so VTC's dont. Test H2 Continuation headers. Move H2 Rx buf onto srq- ws. The beginnings of a TX-scheduling facility. Update docs for *.uncacheable in generate.py regarding hit-for-miss/-?. race in the VSL segment counter initialization. Revive use of the VSL HitPass tag. Add SLT tag HitMiss to log hits on hit-for-miss objects. Simplify the H2:body delivery. Document the use of HitMiss and HitPass in VSL in What's New for 5.1. Add an HFP record example. This test requires 64bits. Miss
4.1.729 Jun 2017 03:25 minor feature: Ignore missing reason in probe responses. typo in lib/libvarnish/vtim.c. Adapt r02069.vtc to 4.1. Only root can jail. Corrected grammar for install.rst. If pipe'ing, unset any existing Connection headers. Polish. Further cleanup. Rework the shell command, so that expected exit code and pattern to. Add regexp matching support to the shell command. Shuffle things around in prep for upcoming work. Add record-presupport to varnishncsa. Polish. More cleanup. Polish. More cleanup. add WS_Assert_Allocated: assert that ws- s f. an off-by-one error in WS_Assert_Allocated(). Make param::nuke_limit a total count of nukes allowed for each. Add 1764 to the changelog. Switch to globbing on the whole string. Ident and type are optional. Rework -f option. Add 2320 to the changelog. Allow newlines in long strings to sendhex. Remember to reset the workspace. add 2219 to changelog. Document varnish. Add -stop doc, and be more detailed. Add a vsl_catchup varnishtest function. Make -vsl_catchup bail on test-failure or child death. Update changelog. Prepare for 4.1.7-beta1 release. Prevent storage backends name collisions. the std.getenv example. Add extra locking to protect the pools list and refcounts. Don't panic on a null ban. Update changelog. Prepare for 4.1.7 release.
4.1.627 Apr 2017 08:45 minor feature: Remove ancient outdated comment. Add another new output formatter. typo. Minor. distcheck on FreeBSD and possible other BSDs. Add a bunch of protective asserts on vcl- conf, to help flush out. Insist that tests start out with the magic string "varnishtest :white?. Remove initial line feed. Remove superflous calls to WS_Assert(). Mostly whitespace OCD. dont panic on pthread_cond_timedwait being interrupted. document the default probe. allow whitespace and comments before the varnishtest marker. Revert "Remove initial line feed.". document what the default backend is. Remove unneeded checks. Add a VSL variant that takes uses stdarg(3). Make std.log() work from vcl_ init,fini . Make std.syslog() work from vcl_ init,fini . Add #1924 to changelog. invalidate the cli_fd of dead varnishds. Save the VCL syntax version, we will need it later on. Clarify the help text for d_opt/-d. Eliminate a NULL pointer with empty (apart from comments and. Log an error if we fail to get storage. Minor OCD here and there. Correct instructions to disable THP permanently. Adopt to 4.1. Improve output on PRIV_TASK/TOP in init/fini. Implement atomic creation of output files. Output to the correct file name. Create the temporary files in the same dir. At least one platform has a backtrace(3) which returns -1 in a size_t?. Make the santity check of backtrace(3) returns even more robust. This shows why having both BE and LE test-boxes is important. With FreeBSD 10.3 on a BeagleBone PCRE JIT explodes in the pcre_study(). Check pcre_study() is working in configure. Simplify r01941.vtc a bit. comment. Add -h and use different exit status. Exit with 0 if -h was used. Correct parameter name. Finally some instructions for building on SmartOS (for a start). typo. Add forgotten link. In probes treat a poll timeout as a recv error. Dump more VCL info in panic, and add a general macro for checking. Teach VSB_quote() to hexdump. All zero bits will be elided to "0x0...0". Only... hexdumps if they are longer t
5.1.209 Apr 2017 02:45 minor feature: This assert will not hold in all error situations. Add a H1 testcase which exercises the single like of code which. Allow EPIPE in VTCP_Check(). Add a xport- req_fail() for H2. sync VRB_Ignore() comment with reality. Add panic function for vrt vmod _privs. Also release the req0. Move a bunch of SES_ functions to cache_transport.h, they are not. to and better test-coverage of exception paths in H2 upgrade. Generalize HPACK length encoding. Add a couple of commits to try to catch #2257. I want to find this vtc when grepping for waitinglist. Do all of the vfc setup and init in one place and only when needed. If the client workspace is almost, but not quite exhaused, we may. FlexeLinting: Avoid cpp macro argument names inside strings. Flexelinting: initialize variable flexelint cannot see through. Add parenthesis to clearify code. Do not update mgt's mirrored VCL temp state on child temp state failures. Log VSM/VSL errors in varnishtest. Add a vsl_catchup varnishtest function. Tune for 32 bit machines also. Merge branch 'master' of github.com:varnishcache/varnish-cache. Negative SIZE to de.workspace_allocate() now means. Add testcase for #2275. Don't append newline for varnishtest -p. Use the new "allocate all but" de.workspace_allocate() feature. Change/simplify the V1L logic for chunked encoding. Put a priority block in a HEADERS frame. Make -vsl_catchup bail on test-failure or child death. Try to push H2 into even weirder corners. Handle RST_STREAM on completed streams. Give this test 8 bytes more to succeed in. Avoid sign-extension in hexdump. A LOT more H2 plumbing. How to report signal panics. Slightly more coverage. Whitespace OCD. attempt to get more helpful reports. no deinfo packages on packagecloud.io. Support multi-lib systems for out-of-tree builds. Log the remote address to make it easier to cross-ref to VSL. When the client abandons a fetch we the connection to the. Check backend existence when reading proxy_header. It is more robust to wait for the clie
5.1.118 Mar 2017 09:45 minor feature: Back to trunk. in H1 session cleanup. One more H1 session cleanup and a lot more asserts. Explain why 5.1.1 is necessary. Prepare for 5.1.1 final.
5.1.017 Mar 2017 17:25 minor feature: Dogfooding. try to stabilize this test. Revert "Document VRT_ipcmp wrt bumping VRT API version". Move "older version" VRT changes where they belong. Inaugurate ongoing VRT changes after 5.0. Use fd() throughout, take 2. Restore regression test for #2184. Restore missing newline (follow up to 497b076). Attempt a succinct explanation of test gunzip. Use fd() throughout, take 3. Introduce a ZERO_OBJ macro similar to bzero. Polish. add WS_Assert_Allocated: assert that ws- s f. Keep track of WS_Assert_Allocated. Make this test less sensitive to scheduling order. Allow user defined sub 's to return without specifing a handling. Reintroduce hit-for-pass with new and better syntax: Track VRT_hit_for_pass. Add a couple of (needless) asserts for Coveritys sake. Introduce a `vxid` LHS for VSL queries. s/VXID/vxid/. Use code litterals for the grouping modes. Document vxid VSL queries. Ignore HUB and PIPE signals before starting child. Typo. Rename t.vcl to bad.vcl. Test multiple -f options for varnishd. Test multiple -f options with a bad VCL. Test multiple -f options with an empty value. Move minimal reponses to the transport level and use them for H1 100/?. Send 100-continue after vcl_recv or when caching the request body. cases when we do not want to send a 100 Continue. Add std.late_100_continue to postpone sending a 100 Continue response. Plug leak. Give more room to slower platforms. Uneeded returns are unneeded. Also add more delay for the first varnishd. Add missing newline, move thread/errno info after backtrace. Point out upper-case characters, I'm sure this will be a common mistake. Forgot this part of last commit. Remove duplicated asserts. Ignore upper/lower case when comparing header names. Make a hole through H2 POST. Add a deoption to slow down acceptor threads so that we. Polish. Allow and ignore a leading '-' on cli commands. Implement varnishd -I . Add test case for -I cli_file. Use different workdirs to avoid old SHMfiles confusing varnishadm. Don't start va
4.1.5-beta210 Feb 2017 08:25 minor feature: Mention the join character. Allow INT and REAL to be negative. Increment fetch_failed for all causes. Insert space around '+' and '-' in generated C code. Update devicedetect.vcl to current upstream. beresp.backend.ip is only available while the connection is open. Document workuser and minor improvements. Update changelog. Repair formatting mistake. Prepare for 4.1.5-beta2 release.
4.1.5-beta104 Feb 2017 12:45 minor feature: Add an assert preventing buffer overflows. buffer overflow in HTC_RxInit on workspace exhaustion. Increase delay in r02035.vtc. Whitespace after colon is optional. Unbreak test from incomplete backport. Disable Nagle's algorithm on the backend as well. Limit VSL size to 4G-1b. race condition on HTTP1 session step counter. Correct number. Update changelog. Update changelog again. Revert "Limit VSL size to 4G-1b". Make 4.1 compile on !linux again. Document default timeout for varnishtest. Handle comparison between backend and different things. vsm_free (never incremented). Clarify r formatter wrt multiple Host headers. Change assert to proper error message and test it. Clarify description of fetch_failed counter. vmoddir when using --preat configure time. Update changelog. Prepare for 4.1.5-beta1 release.
4.1.402 Dec 2016 23:45 minor feature: Changelog entry for 1883. Remove temporary directory iff called with -C. Add changelog entry for #1869. Add changelog entry for #1918. Polish. Correct ParseError output. Method names should start with a period. Be more clear wrt function vs method. Add changelog entry for #1885. Add varnishncsa backend mode to changelog. Add #1912 to changelog. Backfill with forgotten changelog entries. Don't allow partial allocation of stevedore space for ESI. req- task members must be set in case we get onto the waitinglist. Add #1928 to changelog. Truncate output if it's wider than 12 chars. Add #1855 to the changelog. Don't emit multiple Age or Accept-Ranges headers. Add #1955 to the changelog. Add 1806 to changelog. check for overrun before looking at the next vsm record. Add 1873 to changelog. Add #1847 (https_scheme) properly to changelog. Correctly handle HTTP/1.1 EOF response. missing Wait_HeapDelete. Current SmartOS also has epoll(), so we need to prefer ports. Remove implicit line feed when using formatfile. Add support for TCP Fast Open extension. Allow VCL set Last-Modified to be used for I-M-S processing. Bring changelog up to speed. Backfill more changelog entries. Make it more easily readable on Github. Update copyright. Clarified the documentation on vsm_overflow ed . Invert desc/explanation in varnish-counters.7. Update instructions on port change with systemd. Add an "expect_pattern" verb, which expects a "01234567012345...". Update to 4.1 vtc syntax. Add missing call to VSL_Match. Spelling. Introduce barriers in varnishtest. Barriers can be cyclic but not like semaphores. Barriers can only be created on the top thread. Implement socket barriers (shared between processes). Teach vmod-dehow to sync with varnishtest. the socket. Add vtc barriers to changelog. Enable make clean target in man/. Use the proper VSL record. Method names should start with a period. minor leak spotted by Coverity Scan. Turn false-positive INCOMPL macros into WRONG ones. varnishtest barrier
4.0.402 Dec 2016 06:25 minor feature: Remove duplicated line. reference. Start ignoring lower case ctags file. clarify that we will not see piped connections ever again. Harden vtcp_sa_to_ascii. Bail out on workspace exhaustion in VRT_IP_string. Delay allocating log line data until it's known to be needed in varni?. Keep two trees in varnishtop, one for order and one for uniqueness. remove some unused declarations. add VCL_BYTES for vmods. Oops, forgot this bit of previous commit. Try again to make server.hostname and server.identity available. add std.strstr. Nitpicks. Use a bigger buffer for the stdout/stderr to avoid annoying. Revert "Tweak size-sensitive test case for 32bit systems". Don't mix const and non-const pointers. This should make jenkins happ?. If workspace_thread is not be big enough to hold all the objcore poin?. Ensure that we never call a VDP with a zero length unless we are done. Make a dedicated cleanup function for req- vary_? to match the. Prepare for 4.0.2-rc1 release. Prevent a segfault on varnish reconnect in the varnishstat hitrate. Add list of changes. Remove incorrect changelog entry. Update copyright statement. Unhide vcl.show from 'help' output, it was hidden due to overzealous. varnishlog -k argument. Prepare 4.0.2. Add forgotten to list. Only override CFLAGS on RHEL6. a cornercase related to empty pass objects. Check for multiple Content-Length headers. Make it possible to receive resphdrs and respbody separately. a couple of for the detached rx*body functions. Add a defacility to force a WRW_Flush after the headers. Don't needlessly throw away Content-Length from backend, but assume. Delay HSH_Complete() until the storage sanity functions has finished. Document -v param in vcl.show. Document how comments work in VCL. Spelling. document bereq.uncacheable and beresp.uncacheable. document keep. document some more object variables. make bereq.uncacheable read-only outside backend_fetch. Include the Varnish version on panic. vcl_pass might return fetch, not pass. Skip the arg
4.1.4-beta326 Nov 2016 07:25 minor feature: ban lurker: the olist can be empty when all bans got dup'ed. Zero overflow VSM allocations. Correctly handle EOF responses with HTTP/1.1. Only accept C identifiers as acls. Changelog entry for 1883. Remove temporary directory iff called with -C. Add changelog entry for #1869. Add changelog entry for #1918. Polish. Correct ParseError output. Method names should start with a period. Be more clear wrt function vs method. Add changelog entry for #1885. Add varnishncsa backend mode to changelog. Add #1912 to changelog. Backfill with forgotten changelog entries. Don't allow partial allocation of stevedore space for ESI. req- task members must be set in case we get onto the waitinglist. Add #1928 to changelog. Truncate output if it's wider than 12 chars. Add #1855 to the changelog. Don't emit multiple Age or Accept-Ranges headers. Add #1955 to the changelog. Add 1806 to changelog. check for overrun before looking at the next vsm record. Add 1873 to changelog. Add #1847 (https_scheme) properly to changelog. Correctly handle HTTP/1.1 EOF response. missing Wait_HeapDelete. Current SmartOS also has epoll(), so we need to prefer ports. Remove implicit line feed when using formatfile. Add support for TCP Fast Open extension. Allow VCL set Last-Modified to be used for I-M-S processing. Bring changelog up to speed. Backfill more changelog entries. Make it more easily readable on Github. Update copyright. Clarified the documentation on vsm_overflow ed . Invert desc/explanation in varnish-counters.7. Update instructions on port change with systemd. Add an "expect_pattern" verb, which expects a "01234567012345...". Update to 4.1 vtc syntax. Add missing call to VSL_Match. Spelling. Introduce barriers in varnishtest. Barriers can be cyclic but not like semaphores. Barriers can only be created on the top thread. Implement socket barriers (shared between processes). Teach vmod-dehow to sync with varnishtest. the socket. Add vtc barriers to changelog. Enable make clean target in man/. Use
4.0.4-beta125 Oct 2016 23:45 minor feature: Update references to vcl_error. Spelling. Remove duplicated line. reference. Start ignoring lower case ctags file. clarify that we will not see piped connections ever again. Harden vtcp_sa_to_ascii. Bail out on workspace exhaustion in VRT_IP_string. Delay allocating log line data until it's known to be needed in varni?. Keep two trees in varnishtop, one for order and one for uniqueness. remove some unused declarations. add VCL_BYTES for vmods. Oops, forgot this bit of previous commit. Try again to make server.hostname and server.identity available. add std.strstr. Nitpicks. Use a bigger buffer for the stdout/stderr to avoid annoying. Revert "Tweak size-sensitive test case for 32bit systems". Don't mix const and non-const pointers. This should make jenkins happ?. If workspace_thread is not be big enough to hold all the objcore poin?. Ensure that we never call a VDP with a zero length unless we are done. Make a dedicated cleanup function for req- vary_? to match the. Prepare for 4.0.2-rc1 release. Prevent a segfault on varnish reconnect in the varnishstat hitrate. Add list of changes. Remove incorrect changelog entry. Update copyright statement. Unhide vcl.show from 'help' output, it was hidden due to overzealous. varnishlog -k argument. Prepare 4.0.2. Add forgotten to list. Only override CFLAGS on RHEL6. a cornercase related to empty pass objects. Check for multiple Content-Length headers. Make it possible to receive resphdrs and respbody separately. a couple of for the detached rx*body functions. Add a defacility to force a WRW_Flush after the headers. Don't needlessly throw away Content-Length from backend, but assume. Delay HSH_Complete() until the storage sanity functions has finished. Document -v param in vcl.show. Document how comments work in VCL. Spelling. document bereq.uncacheable and beresp.uncacheable. document keep. document some more object variables. make bereq.uncacheable read-only outside backend_fetch. Include the Varnish version on panic. vcl_pass
4.1.4-beta214 Oct 2016 04:05 minor feature: Add an entry to the changelog. Stop cleaning the svg files. a ESI+gzip corner case which had escaped notice until now. Add missing description. Update changelog. Revive the backend_conn counter. Sync changelog. Maintain `-d` behaviour when log is overrun and reacquired. Release memory instead of crashing on malformed ESI. Add simple error checking in ESI processing. Add a SLT_BackendStart log tag, and log address and port on backend req. Backend mode in varnishncsa. (insignificant) memory leak with mal-formed ESI directives. Extended formatters in varnishncsa. New format of VSL formatter in varnishncsa. Tiny doc for varnishncsa. Postpone calling VBT_wait until after V1P_Process. ban lurker: the olist can be empty when all bans got dup'ed. Zero overflow VSM allocations. Correctly handle EOF responses with HTTP/1.1. Only accept C identifiers as acls. Changelog entry for 1883. Remove temporary directory iff called with -C. Add changelog entry for #1869. Add changelog entry for #1918. Polish. Correct ParseError output. Method names should start with a period. Be more clear wrt function vs method. Add changelog entry for #1885. Add varnishncsa backend mode to changelog. Add #1912 to changelog. Backfill with forgotten changelog entries. Don't allow partial allocation of stevedore space for ESI. req- task members must be set in case we get onto the waitinglist. Add #1928 to changelog. Truncate output if it's wider than 12 chars. Add #1855 to the changelog. Don't emit multiple Age or Accept-Ranges headers. Add #1955 to the changelog. Add 1806 to changelog. check for overrun before looking at the next vsm record. Add 1873 to changelog. Add #1847 (https_scheme) properly to changelog. Correctly handle HTTP/1.1 EOF response. missing Wait_HeapDelete. Current SmartOS also has epoll(), so we need to prefer ports. Remove implicit line feed when using formatfile. Add support for TCP Fast Open extension. Allow VCL set Last-Modified to be used for I-M-S processing. Bring changelog up
5.0.017 Sep 2016 20:39 major feature: Documentation updates, especially the what's new and upgrade sections. Via: header made by Varnish now says 5.0. VMOD VRT ABI level increased. vcl obj.(ttl age grace keep) is now readable in vcl_deliver. Latest devicedetect.vcl imported from upstream. New system wide VCL directory: /usr/share/varnish/vcl/ std.integer() can now convert from REAL. Issues fixed: 2086 - Ignore H2 upgrades if the feature is not enabled. 2054 - Introduce new macros for out-of-tree VMODs 2022 - varnishstat -1 -f field inclusion glob doesn't allow VBE backend fields 2008 - Panic: Assert error in VBE_Delete() 1800 - PRIV_TASK in vcl_init/fini