Amos Jeffries [Tue, 5 Aug 2008 06:39:39 +0000 (18:39 +1200)]
Automatic Translation of .PO and Error Pages
This patch embeds the process of creating pre-translated error templates
from .po
* installs/uninstalls base templates for failover backup if no
translation is to be done.
* Adds dependency on translation toolkit po2html for 'make dist' target.
* Adds 'make translate' target
* Adjusts 'make all' to do translation.
* Adds --without-po2html configure option to optionally skip the
translation step unless explicitly asked for ('make translate').
* Installs translated files properly, and skips silently if missing.
* Un-installs translated files, and skips silently if missing.
Amos Jeffries [Mon, 4 Aug 2008 14:40:22 +0000 (02:40 +1200)]
Fix snapshot MD5 symlinks
For some unknown time the MD5 symlinks used to generate web page links
have been pointing at the source file the MD5 was calculated from
not the MD5 itself.
Amos Jeffries [Fri, 1 Aug 2008 04:24:20 +0000 (16:24 +1200)]
Generate daily langpack tarball
Following the daily dist build this is supposed to bundle all existing
translations into a langpack tarball for distribution.
Squid releases are bundled with their own most-current translations as at
release date. Daily snapshots included.
This bundling is only intended to be built for the HEAD release as a
a drop-in replacement for any error pages bundled per-release with
Squid 2.6 and later.
TODO: auto-translation patch still to merge will generate current
translations for this to work with. At present it only has the old legacy
folders, but should still operate correctly on those.
OpenBSD 4.3 shares the old FreeBSD behavior of limiting the 'non-standard'
(according to them) in6_addr.s6_* fields to only Kernel-visible.
It is in fact non-RFC usage, becoming standard via common use.
Author: Mark Nottingham <mnot@pobox.com>
Bug #2376: Round-Robin becomes unbalanced when a peer dies and comes back
When a peer goes down and then comes back, its round-robin counters aren't
reset, causing it to get a disproportionate amount of traffic until it "catches
up" with the rest of the peers in the round-robin pool.
If it was down for load-related issues, this has the effect of making it more
likely that it will go down again, because it's temporarily handling the load
of the entire pool.
Normally, this isn't a concern, because the number of requests that it can get
out-of-step is relatively small (bounded to how many requests it can be given
before it is considered down -- is this 10 in all cases, or are there corner
cases?), but in an accelerator case where the origin has a process-based
request-handling model, or back-end processes are CPU-intensive, it is.
This patch resets the counters each time a peer changes state.
Author: Francesco Chemolli <kinkie@squid-cache.org>
Merge Cache Manager Update branch
Overall view of the changes:
- cachemanager is now a singleton
- list of actions is now a Vector (still not ideal, but at least it
preserves layering)
- added object-based action management interface to cachemgr.
old-style c interface is still available (via method overload)
- cachemgr initialization functions have been moved to each modules'
Init call or (where applicable) constructor. This has the effect of
reducing each module's interface, and to get rid of some module
frameworks' extra initialization work
- fixed tests to work with the new framewor (including the creation of
a small stub in tests/)
- added some documentation
What I left off is:
- change the actionslist from a Vector to a sorted linked-list (need
the generic linked-list class first)
Windows port: Fix mswin_check_ad_group build error on MinGW and Cygwin
The w32api currently available on MinGW and Cygwin is not complete, and
lacks the needed AD functions for mswin_check_ad_group.
This add to config.test the check for the availability of the needed functions.
icap_access curently treats AUTH_REQUIRED ACL results as a
false-negative 'fail' result. This is not the desired behavior,
but is not bad enough to be treated as an actual bug at this point.
Henrik Nordstrom [Fri, 11 Jul 2008 19:32:10 +0000 (21:32 +0200)]
Remove the --disable-carp option, keeping the CARP code always compiled in
this configure option was a relic from the time when CARP was very intrusive,
requiring --enable-carp to be compiled and then chainging parent relations.
The current CARP implementaiton is very non-intrusive and by default enabled
(but not active unless used in squid.conf). There isn't really any good reason
to why one should use --disable-carp today.
TestBed: Add master test scripts and some control files
This adds the ./test-builds.sh script which runs over an optional OS
specific control build and a set of layered configurations.
Usage: bash ./test-builds.sh [os-name]
Currently supported OS: debian, ubuntu
A sub-level build script is also added as the main engine of this system.
It takes a pair of control files and attempts a clean build of squid.
Logging as much of the build output as possible for manual oversight.
The component control files are a set of files providing configure options
and environment settings for the build. Their design and use is detailed in:
http://wiki.squid-cache.org/Features/CodeTestBed