I've now changed the format on github to the one Howard proposed, updating the data on http://nodatime.org/tzvalidate (still uploading) and the various tools.
Now that we (by default) include all the data available before the cutoff point (2035 by default) this hopefully removes at least some of the concerns Paul raised earlier, too.

I'm trying to give all the tools a common command line interface:

-s: source (where required)
-f: from year (first year to show transitions for; defaults to "before any transitions are likely to be recorded")
-t: to year (year to stop showing transitions; defaults to 2035)
-z: zone (if specified, only a single zone is shown)

(I don't know exactly who cares about my progress on this, but I thought it wouldn't hurt to keep the list up to date...)

Jon

On 19 July 2015 at 01:54, Howard Hinnant <howard.hinnant@gmail.com> wrote:
On Jul 18, 2015, at 6:25 PM, Paul Eggert <eggert@cs.ucla.edu> wrote:
>
> Jon Skeet wrote:
>> In Noda Time, if I don't find a rule leading "into" the  transition period, I take the name of the first rule with no daylight savings.
>> zic appears to implement equivalent behaviour
>
> Yes, that's the intent.

I’ve updated my parser with this behavior:

https://github.com/HowardHinnant/date/commit/618cd7be060b02a923af60c0eb866a6cbd630a96

And here is the updated validation file for 2015e:

http://howardhinnant.github.io/tzdata2015e-tzvalidate.txt.zip

The only difference I’m now seeing from Jon’s:

http://nodatime.org/tzvalidate/tzdata2015e-tzvalidate.zip

is associated with years 1904 and prior, which Jon has already explained.

Thanks Jon and Paul for the explanation of the lookup rules for when one "falls off the front.”

I have one suggestion for the validation file:

Some timezones have no transition period and are labeled like so:

EST
Fixed: -05:00:00 EST

My recommendation is to change this to:

EST
Initially:           -05:00:00 standard EST

And furthermore have every timezone do this.  For example:

Europe/Amsterdam
Initially:           +00:19:32 standard LMT
1834-12-31T23:40:28Z +00:19:32 standard AMT
1916-04-30T23:40:28Z +01:19:32 daylight NST
...

instead of:

Europe/Amsterdam
1834-12-31T23:40:28Z +00:19:32 standard AMT
1916-04-30T23:40:28Z +01:19:32 daylight NST
...

Howard