0.163		2023-10-24	T. R. Wyant
    Track Celestrak response to non-existent catalogs.

    Space Track options to celestrak() now warn on every use.

    Fix missed changes to Mike McCants' new web site.

0.162		2023-05-31	T. R. Wyant
    Track Mike McCants' move to new web site.

0.161		2023-04-16	T. R. Wyant
    Space Track options to celestrak() warn on first use.

0.160		2023-03-09	T. R. Wyant
    Remove spaceflight() and all supporting code.

0.159		2022-12-21	T. R. Wyant
    Add Celestrak supplemental catalog ast (AST Space Mobile). This is
    currently only Bluewalker 3, but I assume the Bluebirds will go here

0.158		2022-10-05	T. R. Wyant
    Implement new Celestrak API. Add options --format and --query to
    celestrak() and celestrak_supplemental(). Deprecate Space Track
    options on celestrak().

    Drop celestrak() code involving the 'direct' attribute. The
    retained code assumes direct => 1.

0.157		2022-09-10	T. R. Wyant
    Method spaceflight() now dies.

0.156		2022-08-02	T. R. Wyant
    t/complete.t should skip, not fail, if no /dev/tty.

    Track changes in necessary Celestrak error detecton

    Add command completion.

0.155		2022-07-17	T. R. Wyant
    Track changes in Celestrak Supplemental API.

0.154		2022-06-30	T. R. Wyant
    Convert celestrak_supplemental() TLE data to new API.  Additional
    functionality based on the new API to follow. Of course, this is
    what I said last year when I converted celestrak(). The RMS and
    Match data still use the old API.

0.153		2022-05-20	T. R. Wyant
    CelesTrak Indian ASAT Debris data set retired.

0.152		2022-03-30	T. R. Wyant
    Add match data to celestrak_supplemental.  This is accessed with the
    --match option.  This option may not be specified with the --rms

0.151		2022-03-08	T. R. Wyant
    The deprecated spaceflight() method now warns on every use.  It also
    returns a 403 error, since the web site it scrapes has gone the way
    of the dodo.

0.150		2022-02-20	T. R. Wyant
    Convert celestrak() to new API.  Additional functionality based on
    this API to follow.

0.149		2022-01-22	T. R. Wyant
    Add Celestrak Iridium Next supplemental element catalog

0.148		2021-11-28	T. R. Wyant
    Add Celestrak catalog 1982-092 (Russian ASAT debris)

    Add Celestrak catalogs for historical debris events

    Add celestrak option 'observing_list'.  If this is true, and the
    'direct' attribute is false, you get back the observing list stored
    on Celestrak, rather than the Space Track TLEs specified by the
    observing list.

    Use https: for Celestrak.

commit 64bce81410add91be6b014cda3b39cd8b18871a2
Author: Tom Wyant <wyant@cpan.org>
Date:   Tue Nov 16 10:48:11 2021 -0500


0.147		2021-09-08	T. R. Wyant
    Warn on first use of deprecated spaceflight() method.  It does not
    work anyway since the underlying web site has gone away.

0.146		2021-07-06	T. R. Wyant
    Update AMSAT URL.

    Correct generation of 'provides' metadata.  Thanks to Favio Poletti
    for blogging
    and ultimately to Joel Berger for the pointer to

0.145		2021-03-25	T. R. Wyant
    Allow identity file to have .gpg suffix.  This is for the benefit of
    the vim-gnupg plugin, and potentially other such things.

    Refactor authortest into three, so that I can run the
    optional-modules tests without generating stub files.

0.144		2021-03-07	T. R. Wyant
    Add rt.cpan.org back to bug reporting methods. Long live RT!

    Document retirement of NASA Human Space Flight web site, and its
    effect on this package.

    Any access of iridium_status_mccants is now fatal

    Get prerequisites up to snuff and add xt/author/prereq.t to ensure
    they stay that way.

    Add Celestrak catalog 'gnss'.

0.143		2021-01-09	T. R. Wyant
    Add Travis CI testing.

    Switch bug reporting to GitHub. R.I.P. rt.cpan.org

    Add 'Swarm' to Celestrak catalog names.

0.142		2020-09-24	T. R. Wyant
    Add Telesat to Celestrak Supplemental catalog

0.141		2020-08-17	T. R. Wyant
    Attribute url_iridium_status_mccants now warns on all accesses. In
    the first release after February 15 2021 all accesses will be fatal,
    and it will be dropped from the list returned by attribute_names().

    Remove prototypes from testing subroutines defined in t/*.t and

0.140		2020-07-11	T. R. Wyant
    Add Celestrak Supplemental catalog for Planet.

    Update canned status table for decay of

    - Iridium 96

0.139		2020-03-29	T. R. Wyant
    Add Celestrak Supplimental catalog for OneWeb.

0.138		2020-02-18	T. R. Wyant
    Add Celestrak catalog 'oneweb'.

0.137		2020-02-04	T. R. Wyant
    Use of McCants' Iridium status now throws exception, per deprecation

0.136		2020-01-15	T. R. Wyant
    Remove Celestrak supplemental Starlink 3 pre-launch TLE catalog.
    Kelso took it down once the launch occurred.

0.135		2020-01-06	T. R. Wyant
    Add Celestrak supplemental Starlink 3 pre-launch TLE catalog.

    Update canned status table for decay of

    - Iridium 97

0.134		2019-12-24	T. R. Wyant
    Document 'TBA' as valid OBJECT_TYPE in modeldef.

    Rework Space Track -exclude query logic and add -include. If both
    are specified, -include rules.

    Move modeldef script to tools/

0.133		2019-11-21	T. R. Wyant
    Add celestrak_supplemental() 'starlink' dataset

    Eliminate redirects in POD URL links.

0.132		2019-08-05	T. R. Wyant
    Update canned status table for decay of

    - Iridium 61

0.131		2019-07-20	T. R. Wyant
    Fix broken POD links, and add test to ensure they stay fixed.
    Further deprecate McCants' Iridium status. This is really moot,
    since as of July 10 2019 his Iridium status page is 404. It was last
    seen by me June 9 2019.

    Correct the test suite's check for whether Mike McCants' web site is

0.130		2019-06-05	T. R. Wyant
    Add Celestrak Starlink catalog.

0.129		2019-05-19	T. R. Wyant
    Update canned status table for decay of

    - Iridium 46
    - Iridium 54

0.128		2019-04-14	T. R. Wyant
    Update canned status table for decay of

    - Iridium 55
    - Iridium 58
    - Iridium 64
    - Iridium 95

    Do Space Track tests with dummy data by default. You can test live
    by setting environment variable SPACETRACK_TEST_LIVE to a true

0.127		2019-03-21	T. R. Wyant
    Update canned status table for decay of

    - Iridium 14
    - Iridium 32
    - Iridium 59
    - Iridium 60
    - Iridium 91

0.126		2019-02-12	T. R. Wyant
    Add satnogs to known Celestrak catalogs.

0.125		2019-02-02	T. R. Wyant
    Update canned status table for decay of

    - Iridium 90

0.124		2019-01-03	T. R. Wyant
    Update canned status table for decay of

    - Iridium 31
    - Iridium 35

0.123		2018-11-29	T. R. Wyant
    Skip data tests in t/query_spacetrack.t on fetch error. Also skip
    the fetch if it returns a 500. This completes the test work started
    in version 0.121.

0.122		2018-11-13	T. R. Wyant
    Update canned status table for decay of

    - Iridium 52
    - Iridium 62
    - Iridium 83
    - Iridium 84

0.121		2018-10-26	T. R. Wyant
    Update canned status table for decay of

    - Iridium 11
    - Iridium 20

    Skip data tests on fetch error. All tests but t/query_spacetrack.t
    also skip the fetch if it returns a 500.

0.120		2018-10-17	T. R. Wyant
    RT 127371 Dependency problem when bulding with Module::Build.
    Thanks to Slaven Rezic for finding this (unlike many dependency
    problems it does NOT manifest when run against a base Perl
    installation) and reporting it in such detail that all I had to do
    was pick an implementation. CPAN TESTERS RULE!

    Add Celestrak catalogs 'active' and 'analyst'. 'Active' seems to be
    satellites actually in service, based on correlating this list with
    the Iridium status list. 'Analyst' seems not to be real satellites,
    and may be pathological test cases.

    Update canned status table for decay of

    - Iridium 15
    - Iridium 56
    - Iridium 70

0.119		2018-10-08	T. R. Wyant
    Update canned status table for decay of

    - Iridium 10
    - Iridium 53
    - Iridium 86

0.118		2018-09-27	T. R. Wyant
    Update canned status table for decay of

    - Iridium 40
    - Iridium 50

0.117		2018-09-06	T. R. Wyant
    Update canned status table for decay of

    - Iridium 12
    - Iridium 47
    - Iridium 76

0.116		2018-08-29	T. R. Wyant
    Update canned status table for decay of

    - Iridium 18
    - Iridium 66
    - Iridium 98

0.115		2018-08-18	T. R. Wyant
    Update canned status table for decay of

    - Iridium 80

0.114		2018-07-30	T. R. Wyant
    Update canned status table for decay of

    - Iridium 41

0.113		2018-07-23	T. R. Wyant
    Update canned status table for decay of

    - Iridium 65
    - Iridium 81

0.112		2018-07-15	T. R. Wyant
    Update canned status table for decay of

    - Iridium 67
    - Iridium 75

0.111		2018-06-16	T. R. Wyant
    Update canned status table for decay of

    - Iridium 68

0.110		2018-06-04	T. R. Wyant
    Update canned status table for decay of
    - Iridium 37
    - Iridium 21
    - Iridium 25
    - Iridium 72

    Fix portability issue in eg/sh_script. Thanks to Thomas Klausner for
    picking up on this.
    Added -identity as valid option for script/SpaceTrack.

0.108		2018-05-08	T. R. Wyant
    Iridium 13 decayed. Canned status update.

0.107		2018-04-27	T. R. Wyant
    Update canned status for decay of Iridium 94.

0.106		2018-04-16	T. R. Wyant
    Iridium 19 decayed April 7 2018. Canned status update.

    Use Browser::Open for help if webcmd is '1'. Other true values are
    deprecated and will eventually result in errors.

0.105		2018-04-05	T. R. Wyant
    Add 'identity' to canned help text.

    Launch meta::cpan for help if webcmd attribute set.

    Iridium 23 decayed March 28 2018. This necessitates updating all
    the canned Iridium status tables.

    Kelso marks Iridiums 12, 13 & 76 partly operational.

    Replace reference names with manifest constants. That is, replace
    'ARRAY' by ARRAY_REF, where ARRAY_REF is 'ref []'. And so on.

    Kelso marks Iridium 94 as spare.

0.104		2018-02-22	T. R. Wyant
    Add Celestrak Planet Labs & Spire Global datasets

    Canned status updates for decay of Iridiums 3, 43, and 49.
    Iridium 49 decay Feb 13 2018.

    Normalize names of Iridium satellites in canned status table by
    removing leading zeroes.

0.103		2018-01-16	T. R. Wyant
    Iridium 34 decayed January 8 2017. So marked in canned status.

0.102		2017-12-30	T. R. Wyant
    Iridium 6 decayed December 23 2017. Update canned Space Track status
    for this.

    Update Sladen Iridium status web page scraper for changes in web

0.101		2017-12-07	T. R. Wyant
    Make 'decayed' internal status override anything from external
    sources. The idea is that the canned table is from Space Track, and
    therefore authoritative as to whether a satellite is actually

    Iridium 8 decayed.

    Sladen tweaks web page; scraper change needed.

    Further deprecate Iridium status from McCants.  Mike McCants has
    announced that he is no longer maintaining his Iridium status. The
    first use of his Iridium status will now generate a warning.  In a
    further 6 months there will be a warning on every use, and 6 months
    after that it will become fatal.

0.100		2017-10-12	T. R. Wyant
    Added Iridium status decayed ('[D]', portable status is 3 --

    Add iridium_status() format 'spacetrack'. Space Track has no idea
    whether a given satellite is in service or not, but does know
    whether it has decayed. So the status reported for a given OID is
    from Celestrak if it has it and the satellite is still in orbit.
    If a satellite is not in the Celestrak data but Space Track reports
    it as still in orbit, its status will be unknown ('[?]'), and its
    portable status will be tumbling.

    Add a hard-wired internal Iridium status table having the Space
    Track data. This is used to supplement data from other sources,
    since they typically drop a satellite once it has decayed.

    Add iridium_status() option -raw, which reports statuses
    un-supplemented by Celestrak or canned data to the extent this is
    possible. This option can be specified either command-line style
    (i.e. '-raw') or in a leading hash ref (i.e. '{ raw => 1 }'). This
    is in support of generating the above hard-wired table.

    Add script 'tools/all_iridium_classic', which queries Space Track
    for all Iridium satellites, and reports the status of the
    original-design Iridiums. This is for generating the canned status
    tables in Astro::SpaceTrack and Astro::Coord::ECI::TLE.

    Remove tests for iridium_status( 'mccants' ), since this is both
    unmaintained and deprecated.

0.099		2017-05-24	T. R. Wyant
    Deprecate McCants' Iridium status.

0.098		2017-03-15	T. R. Wyant
    Move SpaceTrack script from bin/ to script/

    Don't 'use Exporter qw{ import };'. Instead, subclass Exporter.

    eval() autoflush() in test routines, requiring 'IO::Handle' first.

0.097		2017-02-09	T. R. Wyant
  Add Celestrak catalogs 'iridium-NEXT' and 'ses'.

0.096		2017-01-15	T. R. Wyant
  Ditch 'use base'.
    Astro::SpaceTrack is no longer a subclass of Exporter. Instead
    import() was imported into its name space.
    In the case of the inc/ files, 'use base' was replaced by a 'use' of
    the appropriate module, followed by assignment to @ISA.

  Have relevant author tests use identity file.

  Document the use of environment variable CI_GPG to get gpg2 even
    though gpg is also installed.

0.095		2016-11-07	T. R. Wyant
  Support Config::Identity file. Both the file and Config::Identity are
    optional. The file name is spacetrack.id (MSWin32 and VMS) or
    .spacetrack-identity (anything else) in the user's home directory.
    The file itself can be GnuPG encrypted.

  Rod Sladen Iridium status update.

0.094		2016-08-07	T. R. Wyant
  Implement Kelso Iridium status '[B]' as spare, and implement all
    other status codes documented on the Celestrak web site.

  Update copyright date returned by banner().

0.093		2016-01-20	T. R. Wyant
  Make t/query_iridium_status_*.t skip rather than fail if the server is

  Add GitHub repository to metadata.

0.092		2015-05-27	T. R. Wyant
  Add new Space Track catalog "files" (canned queries, really). These

0.091		2015-04-15	T. R. Wyant
  Add dependency on Mozilla::CA in hope to quash some of the CPAN
    testers CERT errors.

  Simplify the -last5 handling code. Rather than defaulting it and then
    removing it if unneeded, just insert it only if the query class ends
    up being 'tle_latest'.

  Fix a problem with bad Space Track queries being generated under
    certain circumstances if TLE data were being requested and class
    'tle' (rather than 'tle_latest') was being used to satisfy them. The
    problem seems to have been the leakage of extraneous data from the
    -last5 option (even if defaulted) into the REST query.
    Thanks to Vidar Tyldum for finding this rather abstruse problem and
    running it to ground.

0.090		2015-02-11	T. R. Wyant
  Add CPF data to celestrak_supplemental().

0.089		2015-01-06	T. R. Wyant
  Supply missing initialization in JSON code. This was a problem only
    if no data were returned, and maybe then only under restricted and
    poorly-understood corcumstances.

  Fix warnings in McCants' Iridium status code under Perl 5.21.7 and up.
    With this Perl, sprintf() started complaining about extraneous

  Add new spacetrack() catalogs bright_geosynchronous, human_spaceflight
    and well_tracked_objects. The first two correspond to Space Track
    curated queries; the last does not, but is based on their Face Book
    entry for December 3 2014, and represents objects that can not be
    assigned to a country or launch site.

  Fix option hash validation warning in spacetrack(). This affected
    catalog 'payload'.

  Fix exception in names() when an unsupported argument is passed. The
    desired functionality was to return a 404 error, which is now
    implememted and documented.

  Change verify_hostname default back to true, since it appears that
    Perl is accepting Mike McCants' Cert again.

0.088		2014-08-31	T. R. Wyant
  Properly apply Space Track default fetch options when the options were
    passed to a Space Track search method in a hash reference, rather
    than command-line style.

0.087		2014-08-29	T. R. Wyant
  Use global variable $SPACETRACK_DELAY_SECONDS to control the delay
    between Space Track queries. This is initialized from environment
    variable SPACETRACK_DELAY_SECONDS if it is true; otherwise it is
    initialized to 3.

  Throttle Space Track queries to 1 every 3 seconds.  Space Track
    announced August 19 2014 that they intend to throttle queries to
    less than 20 per minute per user as of September 22 2014.  They seem
    to have jumped the gun though, since throttling seems necessary now.

  Remove all RCS-specific functionality.  This includes making -rcs do
    nothing. On August 18 2014 Space Track started returning 0 for RCS,
    instead going for "small," "medium," and "large" in a new JSON
    field.  The -rcs option is now deprecated, and being put through the
    usual deprecation cycle.

  Set default value of verify_hostname attribute to false. This is
    because Perl does not accept Mike McCants' GoDaddy certificate. The
    default can be overridden using environment variable
    SPACETRACK_VERIFY_HOSTNAME if it is defined.

  Remove all references to obsolete spacetrack() canned queries
    full_fast and geosynchronous_fast in the documentation. The queries
    themselves are long gone.

  Prepare for removal of the RCSVALUE datum in Space Track's satcat
    data, which is announced for August 18 2014.

  Add 'prompt' attribute.

  Add ISS data to celestrak_supplemental.

  Support the various Space Track data formats. This involves providing
    a -format option, with values corresponding to the Space Track
    formats, plus 'legacy' (the default) to provide what is essentially
    the Version 1 data format. The old -json option is equivalent to
    -format json.

0.086		2014-04-26	T. R. Wyant
  Eliminate ugly warning generated when searching Space Track if
    -start_epoch or -end_epoch options are specified.

  Eliminate use of each() built-in.

0.085		2014-03-20	T. R. Wyant
  When mccants() and friends return data from cache, fabricate
    Last-Modified header with file modification date.

  Bypass mccants() cache test for installation, since it seems to fail
    sporadically, and the data appear to be unaffected.

  Try to address test failures in mccants() under older Windows (plus
    one under FreeBSD) due to unseekability of the handle produced by
    open my $fh, '+<', \( $resp->content() );

  Fix problem in the login() method detecting a Space Track login

  Add method mccants() to access TLE, magnitude, and RCS data mainteined
    by Mike McCants on his web site. Because these do not get updated
    that often, there is a 'file' option which, if specified, caches the
    results and fetches them from the web only if the cache is stale.

  Add 'file' option (as above) to amsat() and celestrak_supplemental().

  Add cache_hit() and associated machinery to determine whether
    information came from the web or from a file.

  Add information on celestrak() catalog 'argos'.

  Factor the query tests into multiple files, so they can run in

0.084		2014-01-01	T, R, Wyant
  Have celestrak() and celestrak_supplemental() return error status if
    the argument is undefined.

  Drop deprecated spacetrack() catalogs full_fast and

  Add celestrak_supplemental() catalog 'ses'.

  Remove support for environment variables SPACETRACK_REST_RANGE_OPERATOR

0.083		2013-11-23	T. R. Wyant
  Add Space Track search option -comment. This adds the Comment field to
    the satcat results returned by the search_* methods.

0.082		2013-11-08	T. R. Wyant
  Use O-O version of Getopt::Long to parse command-style options, to
    prevent configuration leaking in (or out). This requires
    Getopt::Long 2.39.

  Validate options passed as a hash reference, at least for unexpected
    keys. The previous version simply ignored these, but I decided I
    wanted feedback to the caller. It is a warning for now, but will
    eventually become fatal.

  Environment variable SPACETRACK_SKIP_OPTION_HASH_VALIDATION can be set
    to suppress the warning.

0.081		2013-10-21	T. R. Wyant
  Add object status 'TBA' (added by Space Track October 1 2013). This
    _should_ only affect the -exclude option.

  Delete commented-out code that goes back to the v1 interface.

  Build queries using standard names and data represenations, rather
    than Space-Track-specific ones. This change _should_ not affect the

0.080		2013-10-05	T. R. Wyant
  Correct failures in t/query.t due to incorrect URL being used to see
    if Mike McCants' web site is actually available.

0.079		2013-10-02	T. R. Wyant
  Try to handle failures due to the U. S. government shutdown so that
    they do not cause test failures. They're still errors, though, just
    forced to 402 Payment required.

0.078		2013-09-28	T. R. Wyant
  Fix attempt to modify read-only variable in t/query.t.

  Strip out all code that refers to version 1 of the Space Track API.

  Remove all reference to the Celestrak 'sts' catalog or the Human
    Spaceflight 'shuttle' catalog.

  Silence uninitialized value warning in t/spacetrack_request.t under
    older Perls.

0.077		2013-07-15	T. R. Wyant
  Make it an error to set space_track_version to 1. Eliminate all
    documentation of the version 1 API, and make version 2 documentaion
    not refer to API version. Code for the version 1 API will be removed
    in subsequent releases.

0.076		2013-07-01	T. R. Wyant
  Deprecated spacetrack() queries (the *_fast ones) become fatal.

  Document intent to remove support for environment variables
    in the first release after January 1 2014.

  Install the SpaceTrack script by default.

  Eliminate prompting for whether to install SpaceTrack. The -y and -n
    options are still available.

  Move the SpaceTrackTk script to the eg/ directory.

  Eliminate Win32 and VMS specific code in the installers.

  Document the desupport of the Space Track version 1 interface as of
    this release.

  No longer test version 1 of the Space Track interface, since it is
    scheduled to stop working.

0.075		2013-06-14	T. R. Wyant
  Document that the Space Track version 1 API will be shut down July 16

  Emit a warning any time the space_track_version attribute is set to 1.
    This warning can not be suppressed by 'no warnings qw{ deprecated }'.

  Add Beidou navigation satellites to the list of named element sets
    available via the celestrak() method.

0.074		2013-05-12	T. R. Wyant
  Make the value returned by launch_sites( { json => 1 } ) under the v2
    interface conform to the documentation. I was really sloppy with
    this and returned the raw JSON (which was an array ref) when the
    docs called for (and I really wanted) the JSON for a hash ref.

0.073		2013-02-21	T. R. Wyant
  Move Space Track REST interface to production web site.

  Deprecate the version 1 Space Track interface.

0.072		2013-02-17	T. R. Wyant
  Make default value of space_track_version attribute 2.

0.071		2013-02-16	T. R. Wyant
  Attempts to retrieve Space Shuttle data (via celestrak('sts') or
    spaceflight('shuttle') now cause exceptions. Retrieval of historical
    data from Space Track should still work as before.

  Convert the REST version of the launch_sites() method to use the new
    launch_site data instead of canned data.

  Space Track dropped RCSSOURCE from class satcat of the REST interface.
    This revision eliminates all references to this field.

0.070		2012-12-26	T. R. Wyant
  Add notification that I plan to change the way Makefile.PL and
    Build.PL decide whether to install executables July 1 2013.

  Add method favorite() to access the Space Track 'Favorites'
    functionality. This only works for the Space Track version 2

  Add to the spacetrack() method for version 2 of the interface those
    bulk data catalogs which are represented by 'Global Favorites'.

  Add 'YUN' (Yunsong, DPRK) to hard-coded list of launch sites returned
    by the Space Track REST interface.

  Re-instate the use of hour, minute, and second spacifications in
    -start_epoch and -end_epoch for the Space Track REST interface.

  Go back to using OID ranges in the retrieve() method if the Space
    Track REST interface is being used.

  Document environment varoables SPACETRACK_REST_RANGE_OPERATOR and
    SPACETRACK_REST_FRACTIONAL_DATE, so users can get themselves going
    again if there are further glitches in the related functionality.

  Add method celestrak_supplemental() to retrieve the supplemental TLEs
    not derived from SpaceTrack.

  Correct bug in celestrak() method, in which the Space Track REST
    options were being parsed when they should not have been. This was
    really two bugs: use of get() rather than getv() to check the Space
    Track version, and failure to check the 'direct' attribute.

0.069		2012-11-09	T. R. Wyant
  Do not pass the time portion of a date/time query to the Space Track
    REST interface, since it seems not to handle it (though I thought it
    did at one time).

0.068		2012-10-26	T. R. Wyant
  Retract use of ranges when fetching from Space Track REST interface by
    OID, since it appears this is not stable yet.

0.067		2012-10-25	T. R. Wyant
  Document a new Celestrak "direct-fetch only" data set, 2012-044, which
    represents the explosion of a Breeze-M upper stage (2012-044C) on
    October 16 2012.

  Re-instate the use of ranges when fetching a number of OIDs via the
    Space Track REST interface, since they are supported now.

  Fix bug that allowed Kelso's Iridium status to "bleed through" into
    the McCants status data.

0.066		2012-10-15	T. R. Wyant
  Add methods country_names() and launch_sites(), to return the
    expansions of the relevant abbreviations in either tabular form or
    JSON. Under space_track_version == 2, launch_sites() is hard-coded,
    since this information is not available under the REST interface.

  The box_score() method now takes option -json, to return the data in
    JSON format. If space_track_version == 1, the JSON is made up from
    the tabular data.

0.065		2012-10-09	T. R. Wyant
  Retract the merging of names from observing lists (in celestrak() and
    file()) in REST queries, since we can now get them direct from the
    REST interface in all cases. This was introduced in 0.062, with the
    statement that it was temporary.

  Don't use OID ranges in REST queries, since they do not work in
    combination with comma-separated lists.

  Change the size of a retrieve() batch to 200, since larger queries
    seem to be faster.

  Add method update(). This works with the REST interface only, and
    therefore ignores the space_track_version setting. It takes as its
    argument the name of a JSON file containing TLE data, and updates it
    using '/FILE/>...'. The return is whatever format you want.

  Make the REST options work with the spacetrack() method.

  Enable the -sort and -descending options on REST queries. These were
    previously hard-wired (to -sort epoch -descending) because of
    problems early in the beta, which seem to be solved.

  Recode the REST versions of spacetrack( 'full' ) and spacetrack(
    'geosynchronous' ) to go through class satcat to eliminate bodies
    that have decayed. Provide 'full_fast' and 'geosynchronous_fast' for
    those who like to live dangerously. The last two are considered
    experimental, and may be retracted.

  Get the object name from field OBJECT_NAME when using the Space Track
    REST interface, in all cases.

  Make use of the new TLE_LINE0 field in the tle and tle_latest classes
    to have the version 2 retrieve() method return common names.

  INCOMPATIBLE CHANGE: In JSON output, the object name is now in field
    OBJECT_NAME. Previously there was no object name in the tle data,
    and I was hammering it into field SATNAME, since that is where it
    was in the satcat data.

  Give spacetrack_query_v2() the ability to add header pragmas if it
    discovers it was called from outside the Astro::SpaceTrack name
    space.  It adds 'spacetrack-type = modeldef' if the query is
    'basicspacedata => "modeldef"', and 'spacetrack-type = orbit' if the
    query is 'basicspacedata => "query", class => 'tle'" or '... class
    => "tle_latest"'.

  Change attribute verify_hostname's default value to true again, since
    Space Track says they have their act together.

  Correct documented name of class used to retrieve current TLE data
    using the Space Track REST interface. It's 'tle_latest', not

0.064		2012-09-05	T. R. Wyant
  Add REST support for as many of the spacetrack() bulk data sets as I
    can figure out. The analysis is in Astro::SpaceTrack::BulkData.

  The default -status for a REST query is now 'onorbit'. The default for
    version 1 queries remains 'all'.

  Space Track REST queries now use the 'tle_latest' class unless
    historical data are needed, as indicated by use of -start_epoch,
    -end_epoch, -since_file, or some -status other than 'onorbit'.

  Add 'time' and 'olist' meta-commands to the shell() method. The latter
    is experimental, and may go away.

  Eliminate superfluous REST queries issued by search_name() and
    search_oid(). These were introduced in 0.060_07.

  Suppress appending of '--rcs' to the common name by the REST interface
    when RCSVALUE is null.

  Fix problem with merging names from an observing list into JSON REST

0.063		2012-08-29	T. R. Wyant
  Imposed Space Track REST cookie expiration of an hour. The cookie
    appears to come with no expiration, but the docs say it's only good
    for about 2 hours.

  Followed change to representation if International Launch Designator
    (INTLDES) in Space Track REST class tle. It was yyyy-lllp, but is
    now yylllp, just like Space Track version 1.

0.062		2012-08-25	T. R. Wyant
  Fix the joining of JSON data when one of the lists is empty.

  Have the celestrak() and file() methods supply common names from their
    sources if the with_name attribute is true and the
    space_track_version attribute is 2. This functionality will be
    retracted when (and if) the Space Track REST interface becomes
    capable of supplying NASA-format TLEs.

  Document the fact that Space Track has deprecated bulk data downloads,
    and plans to remove them in October 2012. This will break the
    spacetrack() method.

  Use more recent datas for launch date and historical query tests in
    t/query.t, since it seems that Space Track purged the version 2 TLE
    database on August 24 2012.

0.061		2012-08-15	T. R. Wyant
  Reinstate the headings returned by -notle searches done with
    space_track_version set to 1. These were lost in version 0.060_09.

  When the space_track_version attribute is 2, implement the -exclude
    search option in terms of the OBJECT_TYPE field rather than by
    simulating the version 1 exclusion rules in the client. This can
    mean different search results depending on the interface used (e.g.
    Westford needles are debris under v1, but payload under v2), but
    since the change seems to be deliberate on the part of Space Track,
    I am following it.

0.060_12	2012-08-07	T. R. Wyant
  Turn on autoflush in t/query.t to try to prevent overwriting of

  Have the REST version of retrieve() issue multiple queries if the
    number of OIDs is over 50.

  Add the ability to handle OID ranges to the REST versions of
    retrieve() and search_oid().

  Have the output of names( 'spacetrack' ) depend on the value of the
    space_track_version attribute.

  Have the shell() method extract redirections from the command line
    before un-quoting and un-escaping the data, so that we have a way to
    force something that looks like a redirection to be taken as an

  Add ':' to the list of 'safe' characters when URI-escaping arguments
    to the Space Track REST interface. Percent-encoded colons seemed to
    stop working some time between 13:15 and 19:15 GMT on July 27 2012.
    Un-encoded colons go through fine.

  Accept ':' as well as '/' as punctuation between username and password
    in environment variable SPACETRACK_USER.

  Have t/query.t try to load Term::ReadKey. If successful, it uses it to
    turn off password echoing. If not successful, it adds '(ECHOED)' to
    the prompt.

  Fix problem associating RCS data with TLEs when using version 1 of the
    Space Track interface and the OID in the search results is less than
    five digits.

  Change default value of verify_hostname attribute to false. And about

  Add attribute 'pretty' to reqest that JSON text (and potentially
    others) be pretty-formatted.

  Expose the name of the Space Track session cookie as an attribute.
    This is one of those attributes which have distinct values for each
    value of space_track_version.

  Have the parser for the retrieve() -start_epoch and -end_epoch options
    accept time of day as well as just date. Pass time of day to the
    server when using the Space Track REST interface.

  Further deprecate celestrak( 'sts' ) and spaceflight( 'shuttle' ) so
    that they give a warning every time they are used.

  If both -json and -rcs are in effect, return RCSSOURCE as well as

  Have the attribute_names() method take account of the fact that the
    'cookie_expires' attribute does not exist if the space_track_version
    attribute is set to 2.

  Ignore the -sort and -descending retrieve() options when using the
    Space Track REST interface. As things now stand, I have to force the
    equivalent of -sort=epoch -descending when retrieve()-ing multiple
    OIDs to get sane results.

  Add a -json retrieve() option, valid only if the REST interface is in
    use. This also works with celestrak() and file() if the
    space_track_version attribute is 2, but with celestrak() the usual
    restrictions on retrieve() options apply.

  Retrieve TLEs for multiple OIDs in a single call to the Space Track
    REST interface.

  Require HTTP::Status 6.03, because I can't forebear to use the
    "teapot" status for testing purposes.

  Expose spacetrack_query_v2(), which is our lowest-level interface to
    Space Track version 2.

  Use JSON rather than YAML for serialization in (e.g.)
    t/spacetrack_request.t, since the former is now a requirement, but
    the latter never was.

  Bit-mapped the unsupported dump_headers attribute.

  Eliminated the unsupported debug_url attribute.

  Implement epoch selection of TLEs via the Space Track REST interface.

  Run all the Space Track REST arguments through URI::Escape, which has
    been added as a requirement.

  Try to detect Space Track login failure due to a host verification
    problem, and recommend setting the verify_hostname attribute false.

  Correct erroneous skip() outside SKIP: block in t/query.t.

  Add JSON as dependency. It's used by the Space Track V2 interface.

  Provide access to Space Track v2 REST interface, which is currently in
    beta. This involves adding attribute space_track_version. Attributes
    cookie_expires, domain_space_track, and session_cookie now have
    separate values for each possible value of space_track_version.
    Due to limitations of the version 2 interface, bulk data downloads
    throw an exception, and the with_name attribute is ignored by

  Add a logout() method, which deletes all the session cookies. I
    considered having it only delete the session cookie for the current
    space_track_version, but decided that this was too confusing.

  Fix problem with Astro::SpaceTrack file() method passing its options
    hash to the retrieve() method as an OID. This was probably
    introduced in version 0.020.

  Bump Test::More requirement from 0.88 to 0.96 so I can do subtests.

  Add method content_interface, which returns the version of the Space
    Track interface use to fetch the data. If Space Track was not
    involved, returns undef.

  Add verify_hostname option to SpaceTrackTk settings window. Add
    'Settings ...' button to login screen.

0.060		2012-06-09	T. R. Wyant
  Add Astro::SpaceTrack attribute verify_hostname. This controls the
    corresponding SSL option for LWP::UserAgent. By default it is true,
    but can be made false to deal with invalid (or at least
    unrecognized) certificates,

0.059		2012-06-02	T. R. Wyant
  Get rid of YAML::Any in favor of YAML. They are both in the same
    distro, and YAML does not suffer from deprecation warnings.

0.058		2012-02-22	T. R. Wyant
  Use GET rather than POST to implement Astro::SpaceTrack box_score(),
    since 'POST' gives undefined errors during testing. Sometimes.

0.057		2012-01-22	T. R. Wyant
  Further deprecate the Astro::SpaceTrack celestrak( 'sts' ) and
    spaceflight( 'shuttle' ) functionality by having them display a
    warning on first use. The next step (warning on every use) will be
    taken on or after July 22 2012.

  Expand ranges passed to the search_oid() method, since the Space Track
    API does not support them.

  Bring Changes file into compliance with Test::CPAN::Changes. Add
    author test xt/author/changes.t to be sure it remains so.

0.056		2011-12-18	T. R. Wyant
    Validate search options -exclude and -status even if they come in
	through the API in a hash, not just if they come in as
	command-line-style arguments.

0.055		2011-11-28	T. R. Wyant
    Update copy of GNU GPL in LICENSES/Copying to have current FSF

    Require Test::More 0.88 for testing.

    Remove the Space Shuttle option from the SpaceTrackTk 'Human Space
        Flight' dialog.

0.054		2011-07-21	T. R. Wyant
    With the end of the U.S. Space Shuttle program, deprecate the
        celestrak() 'sts' catalog and the spaceflight() 'SHUTTLE'
	argument. The latter now does nothing, so we will not get 404
	errors when the web page goes away.

0.053		2011-07-04	T. R. Wyant
    Correct the URL for Mike McCants' Iridium status web page.

0.052		2011-04-12	T. R. Wyant
    Add attribute scheme_space_track_attribute, defaulting to 'https'.
	Also added LWP::Protocol::https as a dependency. Both in
	response to USSTRATCOM going to a secure server some time in the
	last 24 hours. Thanks to Thomas Wehr for diagnosing this, and
	reporting both problem and solution.

0.051		2011-02-10	T. R. Wyant
    Correct check for non-existent attribute in Astro::SpaceTrack getv()

    Update documentation of Mike McCants' status codes.

0.050		2010-10-12	T. R. Wyant
    _Really_ properly default the 'sort' retrieve option. Honest.

0.049		2010-09-26	T. R. Wyant
    Properly default the 'sort' retrieve option when options are
	specified as a hash reference rather than as command-style

0.048		2010-09-18	T. R. Wyant
    Correct skip counts in t/query.t. Add xt/author/query_skip_sites.t
        to try to ensure they don't get out of whack again.

0.047		2010-09-17	T. R. Wyant
    Add Astro::SpaceTrack method getv() to do what get() should have
	done -- return the attribute value without wrapping it in an
	HTTP::Response object.

    Add the -rcs option to the Astro::SpaceTrack search_*() methods, to
	request that the radar cross-section data be hacked into the
	name line of the TLE, in the same way that the effective date is
	for Human Space Flight TLEs.

    Complete rewrite of SpaceTrackTk, to incorporate all (or at least
	the great majority) of the modern bells and whistles.

    Update banner text to try to make clear that only Space Track
	requires registration before use.

    Update documentation to show all content_types.

    Drop requirement for Params::Util.

    Require Perl 5.6.2, since that is the earliest version I have  a
	prayer of actually supporting.

    Move author tests from xt/ to xt/author.

0.046		2010-03-28	T. R. Wyant
    Add methods search_decay(), search_oid(), and box_score().

    Replace '' with undef in the array returned by the search_* methods
	in list context. The HTTP::Response returned by these methods
	is unchanged.

    Add -notle option to the search_* methods. This causes them to
        return the results of the search, rather than going on to
	retrieve the TLEs. The results are one entry per line with
	fields tab-delimited, and whitespace compressed and trimmed
	front and back. No change in the list returned in list context,
	except for the whitespace massaging.

0.045		2010-03-01	T. R. Wyant
    Redo README to be more like the CPAN-recommended organization and

    Move developer tests to xt/, and run them with Build target
        authortest, supplied by inc/My/Module/Build.pm. The author tests
        are not supported with make.

    Split off the data acquisition tests from t/basic.t into t/query.t.
        Both these, plus xt/celestrak_datasets.t and xt/executable.t
        were rewritten to use Test::More 0.40, which is now required for
        building (or at least testing!) the package.

    Make some of the tests in t/query.t TODO, since they require
        historical data, and Space Track seems to have had a database

    Convert all code to the CPAN-recommended license scheme. Update all
        copyrights while I was at it.

    Make the version of all production code in the package (including
        Astro::SpaceTrack::Parser, which was previously unversioned) to
        be the same as the package itself.

    Update the counts for the various debris events that are documented
        in Astro::SpaceTrack.

0.044		2009-09-03	T. R. Wyant
    Get rid of YAML dump in Build.PL, that was carelessly left in
        after I convinced Module::Build not to insert itself as
        required for configuration (because I also distribute

0.043		2009-09-01	T. R. Wyant
    Add the retrieve() options to search_id(), which never had them

    Test the request arguments generated for each of the Space Track
	methods, to try to make sure we do not lose them again.

0.042		2009-08-30	T. R. Wyant
    Add the retrieve() options back to Space Track search requests.
	These were lost in version 0.035 when Perl::Critic compliance
	was added. Thanks to Thomas Wehr for finding this.

0.041		2009-08-18	T. R. Wyant
    Add ability to parse effective date from NASA Human Spaceflight.
        Add this to line 0 of the NASA TLE as --effective date_text.
        This is optional, and done only if '-effective' is passed
	to the spaceflight() method. The reason this was done was to
	support the 'effective' attribute of Astro::Coord::ECI::TLE.
	Thanks to Thomas Wehr for reporting the problem this addresses,
	and T. S. Kelso for explaining what was needed to fix it.

0.040		2009-04-22	T. R. Wyant
    Suppress undefined value warnings generated when username and
	password are set via 'set' rather than via the relevant
	environment variables when the object is instantiated.

0.039		2009-03-09	T. R. Wyant
    Document Celestrak 'direct-fetch-only' data sets
	'cosmos-2251-debris' and 'iridium-33-debris'.
    Fix 'spaceflight' retrieval test, which failed if all NASA's
	orbital elements had epochs in the future.

0.038		2009-02-13	T. R. Wyant
    Correct parsing of Rod Sladen's Iridium status web page to
	track the way he recorded the demise of Iridium 33.

    Correct '## no critic' entries to put parens around names of
	policies to be disabled.

    Update t/perlcriticrc.

0.037		2009-01-01	T. R. Wyant
    Retract copyright year test in t/basic.t

    Update version and copyright in Astro::SpaceTrack. No other

0.036		2008-12-31	T. R. Wyant
    Revise Celestrak retrieval status check to get (hopefully) a
	better indication of what happened when retrieval failed.

    Add dependency on Params::Util 0.012; use _INSTANCE from that
	module, rather than eval{$thing->isa($class)}.

    Use IO::File rather than FileHandle to open files.

    Include t/critic.t (Test::Perl::Critic) and t/perlcriticrc
	in distribution, but only test if environment variable

    Remove '## no critic' flags in code, which are not needed at
	the desired severity (--stern) if run with the distributed
	t/perlcriticrc file.

0.035		2008-12-23	T. R. Wyant
    When using Rod Sladen's data for Iridium status, mark all
	'failed' iridiums as tumbling, whether or not there is
	a 't' next to their numbers. This makes the Sladen data
	consistent with Mike McCants' (as of 22-Dec-2008) and
	T. S. Kelso's.

    Bring all code up to perlcritic --stern (sometimes by
	declaring exceptions)

    Restructure Build.PL and Makefile.PL to better accomodate
	the installed version of Module::Build or

    Add minimum Perl version to 'requires' key in Build.PL.
	Not done in Makefile.PL because ExtUtils::MakeMaker
	does not seem to like it.

    Include t/celestrak_datasets.t, t/executable.t,
	t/iridium_status.t, t/manifest.t, and
	t/spacetrack_datasets.t in distribution, but only run
	them if environment variable DEVELOPER_TEST is true.

    Move changes from Astro::SpaceTrack pod to Changes file.

    t/basic.t will now display net errors where generated and
	(hopefully) appropriate.

0.034		2008-11-24	T. R. Wyant
    Eliminate use of UNIVERSAL::isa as a function.

    Add 'Pragma spacetrack-source = ' header to all methods
	that return TLEs or Iridium status, saying where
	the data came from.

    Add content_source() method to access spacetrack-source

    Try for less bad test coverage. Good coverage awaits a
	rewrite of the shell() method.

0.033		2008-09-30	T. R. Wyant
    Fix Build.PL -y (and -n)

    Add iridium_status('sladen') to scrape Rod Sladen's Iridium
	Constallation Status web page.

    Add attribute 'url_iridium_status_sladen'.

0.032		2008-07-06	T. R. Wyant
    More graceful failure when unable to parse Space Track data.

0.031		2007-12-21	T. R. Wyant
    Fix embedded modifier bug, exposed by the fixing of the
	corresponding Perl bug (id=22354) in 5.10.0 -- or 5.9.0
	actually. Thanks to Andy Lester's article:
	which tipped me off before I had to discover the problem
	for myself.

    Fixed dependencies in Makefile.PL and Build.PL.

    Went back to prompting for executables in Makefile.PL and
	Build.PL, as a way to handle apparant ActiveState build
	failure because both they and I were running pl2bat.bat.

    Enhance ExtUtils::MakeMaker version detection in Makefile.PL,
	since ActiveState is apparantly deploying a Perl 5.10
	with a development version of that module.

0.030		2007-10-24	T. R. Wyant
    Add Celestrak 'sts' data set name to catalog.

    Different error text for data sets in catalog but 404 and data sets
	not in catalog and 404.

0.029		2007-10-13	T. R. Wyant
    Add Celestrak galileo and sbas data set names to catalog.

    Document celestrak data set names, or at least how to get them and
	in general how they are formed.

    Trap and error out on invalid spacetrack() data set numbers.

    Add data set numbers to spacetrack() help.

    Document how to get the current spacetrack data set names and
	numbers, and what happens if they renumber.

    Trap case where 'get' is called without an argument.

    Have 'shell' method interpret 'show' as 'get', and special-case
	'get' without arguments to display all attributes. Document

0.028		2007-05-15	T. R. Wyant
   Interpret missing spacetrack() catalog as a failure,
     even though the request succeeds.

   Ditto missing Space Track retrieve() data.

   Add 'fallback' attribute to cause celestrak() to fall
     back to using Celestrak data if Space Track data
     are not available.

   Clear session cookie when username or password change.

0.027		2007-01-30	T. R. Wyant
   Add ability to search by on-orbit status ('onorbit',
     'decayed', or 'all'), and to exclude 'debris' and
     'rocket' (bodies).

   Tweak docs.

   Update copyright.

0.026		2006-11-06	T. R. Wyant
   New location for Mike McCants' Iridium status page.

   New attributes url_iridium_status_kelso and
     url_iridium_status_mccants so users are not dead
     in the water if this happens again.

0.025		2006-10-19	T. R. Wyant
   Recognize new Kelso Iridium status '[+]' = working.

   Make Makefile.PL not run Build.PL with old MakeMaker.

   Retract kluge to Build.PL, which is no longer needed.

0.024		2006-09-12	T. R. Wyant
   No substantive changes to this module, but retracted
     t/pod_spelling.t, and tried to make Build.PL work with
     ActiveState's build system.

0.023		2006-09-08	T. R. Wyant
   Added spaceflight() pseudo-catalogs 'iss' and 'station'.

   Have spaceflight() return NO_RECORDS on failure, not

   Have attribute_names() return list ref in scalar context.

   Add attribute iridium_status_format; have iridium_status()
     use this to decide who to access and what format to
     return, including support for the new Celestrak status

   Have iridium_status() return parsed data with 'portable'
     status if called in list context.

0.022		2006-07-20	T. R. Wyant
   Documentation corrections.

0.021		2006-07-13	T. R. Wyant
  Add -all qualifier to spaceflight().

  Add search_date().

0.020		2006-07-01	T. R. Wyant
  Add the retrieve() qualifiers to spaceflight().

  Add the attribute_names() method.

  Tweak docs, correct spelling.

0.019		2006-06-11	T. R. Wyant
  Added the retrieve() options to celestrak() and file().

0.018		2006-05-30	T. R. Wyant
  Added amsat() method.

0.017		2006-04-27	T. R. Wyant
  Added retrieve() options.

0.016		2006-02-11	T. R. Wyant
  Added content types 'help' and 'get', so -filter
    does not supress output.

  Added iridium_status, & content type 'iridium-status'.

0.015		2006-02-01	T. R. Wyant
  Added webcmd attribute, and use it in help().

0.014		2006-01-28	T. R. Wyant
  Added filter attribute.

  Jocky the Term::ReadLine code yet again.

0.013		2005-11-21	T. R. Wyant
  Added spaceflight() method.

  Added "All rights reserved." to banner() output.

  Spiffed up the documentation.

0.012		2005-11-04	T. R. Wyant
  Added support for number ranges in retrieve(), to
    track support for these on www.space-track.org.

  Added max_range attribute for sanity checking.

0.011		2005-10-30	T. R. Wyant
  Added 'Pragma: spacetrack-type = orbit' header to
    the response for those methods that return orbital
    elements, if the request in fact succeeded.

  Added content_type() method to check for the above.

  Played the CPANTS game.

  Added "All rights reserved." to copyright statement.

0.010		2005-10-14	T. R. Wyant
  Added the 'direct' attribute, to fetch elements
    directly from celestrak. And about time, too.

0.009		2005-09-17	T. R. Wyant
  Only require Term::ReadLine and create interface if
    the shell() method actually called.

0.008		2005-07-19	T. R. Wyant
  Consolidate dump code.

  Have file() method take open handle as arg.

  Modify cookie check.

  Add mutator, accessor for cookie_expires,

0.007		2005-04-15	T. R. Wyant
  Document attributes (under set() method)

  Have login return actual failure on HTTP error. Used
    to return 401 any time we did not get the cookie.

0.006		2005-04-08	T. R. Wyant
  Added search_id method.

  Made specimen scripts into installable executables.

  Add pseudo-tilde expansion to shell method.

0.005		2005-04-02	T. R. Wyant
  Proofread and correct POD.

0.004		2005-03-30	T. R. Wyant
  Added file() method, for local observing lists.

  Changed Content-Type header of spacetrack () response
    to text/plain. Used to be text/text.

  Manufactured pristine HTTP::Response for successsful
    login call.

  Added source method, for passing the contents of a file
    to the shell method

  Skip username and password prompts, and login and
    retrieval tests if environment variable
    AUTOMATED_TESTING is true and environment variable
    SPACETRACK_USER is undefined.

0.003		2005-03-26	T. R. Wyant
  Initial release to CPAN.