TS-2361: improve regex_remap plugin loading semantics

The location of the regex_remap configuration is not well-defined
if it is a relative path. Either it will be found in the current
directory (which is undefined), or a hard-coded global directory
will be used.

This change always uses the absolute path if an absolute path is
provided. If a relative path is provided, then we load that relative
to the configured Traffic Server configuration directory.
TS-2360 Fix usage of TSMimeHdrFieldValueStringGet() in some plugins.

This also adds Sphinx docs for the TSMimeHdrFieldValueStringGet() and
family of APIs. Finally, it also adds a regression test for the -1
IDX argument.
Added TS-2360.
TS-2360 Improve the example slightly, but it is still an example
TS-2364: Introduce slice notation to field syntax in log format

Now, we have two kind of field syntax in log format:
(1) simple syntax: '%<field>', for example: %<cqu>
(2) container field, syntax: '%<{field}container>',
    for example: %<{Referer}cqh>.

This patch introduces slice notation to field syntax, so that we can easy to
limit the length of filed's output. With slice notation, the filed syntax will
looks like:
(1) '%<field[start:end]>'
(2) '%<{field}container[start:end]>'

In both forms, slice notation can be omitted, which means the whole field.

But with one limitation: slice notation makes sense only when the field is
string type and it shouldn't be ip/timestamp which are converted to
string from integer.

We can see the syntax of slice notation from Python, Golang, it's pretty
simple:
  [start:end] //items start through end-1
  [start:]    //items start through the rest of the array
  [:end]      //items from the beginning through end-1
  [:]         //the whole array(by default)

For example,
  '%<cqup>'       //the whole characters of <cqup>.
  '%<cqup>[:]'    //the whole characters of <cqup>.
  '%<cqup[0:30]>' //the first 30 characters of <cqup>.
  '%<cqup[-10:]>' //the last 10 characters of <cqup>.
  '%<cqup[:-5]>'  //everything except the last 5 characters of <cqup>.

Signed-off-by: Yunkai Zhang <qiushu.zyk@taobao.com>
TS-2352: refine THREAD_ALLOC feature

1) Move the definition of "ProxyAllocator xxxx" in EThread class to its
   parent Thread class, so that all threads can feel free to use
   THREAD_ALLOC feature.

2) Disable THREAD_ALLOC when enable reclaimable-freelist as reclaimable
   freelist has implemented thread-local pool.

Signed-off-by: Yunkai Zhang <qiushu.zyk@taobao.com>
set the tracker_event to NULL if we cancelled the event.
fix linking traffic_api_cli_remote on ubuntu
Add a new field: '%<chp>', "client_host_port" to LogFormat

Signed-off-by: Yunkai Zhang <qiushu.zyk@taobao.com>
TS-1468: Check vary and accept headers on non-200 responses in cache
TS-2327: TSRedirectUrlSet does not perform DNS lookup of redirected OS
TS-2374: abort the producer to avoid httpsm hung if none of it`s
consumer is alive.
Add CHANGES for TS-2379
TS-2360: Update TSMimeHdrFieldValueStringGet docs
convert CRLF->LF, make sure it never happens again

we add a git attributes to make sure that text files are stored
git-internally as LF. This way we avoid conflicts betweent Unix and
Windows (yes, some of our developers sometimes use Windows).

Additionally, I remove the executable flag from files that don't need to
be executed.
Change these two bad boys from DOS line feeds to real one...
Renamed the git repos to track the major release number. This only
applies for v4 and v5, v3.2 has to stay as is.
Add a README for Jenkins jobs management
TS-2377: install man pages as part of the build

Add options to conf.py to tell us the man pages for each section,
because AFAICT there's no portable way to set automake variables
from shell output commands. We also teach conf.py to test for a
current sphinx version at configure time.

Wire up sphinx to the man page install and test for the sphinx
version pretty aggressively at configure time. Distro packaging
seems prety variable, so I think it's best to be conservative.
This is causing major, major problems with branches which wants to auto convert the old versions