Commit f33f2869 authored by Ole Streicher's avatar Ole Streicher

New upstream version 2.0.0

parent d5b07d71
2.0.0 (2018-04-19)
------------------
- Astropy-specific tags have moved to Astropy core package. [#359]
- ICRSCoord tag has moved to Astropy core package. [#401]
- Remove support for Python 2. [#409]
- Create ``pytest`` plugin to be used for testing schema files. [#425]
- Add metadata about extensions used to create a file to the history section of
the file itself. [#475]
- Remove hard dependency on Astropy. It is still required for testing, and for
processing ASDF-in-FITS files. [#476]
- Add command for extracting ASDF extension from ASDF-in-FITS file and
converting it to a pure ASDF file. [#477]
- Add command for removing ASDF extension from ASDF-in-FITS file. [#480]
- Add an ``ExternalArrayReference`` type for referencing arrays in external
files. [#400]
- Improve the way URIs are detected for ASDF-in-FITS files in order to fix bug
with reading gzipped ASDF-in-FITS files. [#416]
- Explicitly disallow access to entire tree for ASDF file objects that have
been closed. [#407]
- Install and load extensions using ``setuptools`` entry points. [#384]
- Automatically initialize ``asdf-standard`` submodule in ``setup.py``. [#398]
- Allow foreign tags to be resolved in schemas and files. Deprecate
``tag_to_schema_resolver`` property for ``AsdfFile`` and
``AsdfExtensionList``. [#399]
- Fix bug that caused serialized FITS tables to be duplicated in embedded ASDF
HDU. [#411]
- Create and use a new non-standard FITS extension instead of ImageHDU for
storing ASDF files embedded in FITS. Explicitly remove support for the
``.update`` method of ``AsdfInFits``, even though it didn't appear to be
working previously. [#412]
- Allow package to be imported and used from source directory and builds in
development mode. [#420]
- Add command to ``asdftool`` for querying installed extensions. [#418]
- Implement optional top-level validation pass using custom schema. This can be
used to ensure that particular ASDF files follow custom conventions beyond
those enforced by the standard. [#442]
- Remove restrictions affecting top-level attributes ``data``, ``wcs``, and
``fits``. Bump top-level ASDF schema version to v1.1.0. [#444]
1.3.3 (2018-03-01)
------------------
......
This diff is collapsed.
This diff is collapsed.
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/core/asdf-1.1.0"
title: |
Top-level schema for every ASDF file.
description: |
This schema contains the top-level attributes for every ASDF file.
tag: "tag:stsci.edu:asdf/core/asdf-1.1.0"
type: object
properties:
asdf_library:
description: |
Describes the ASDF library that produced the file.
$ref: "software-1.0.0"
history:
description: |
A log of transformations that have happened to the file. May
include such things as data collection, data calibration
pipelines, data analysis etc.
anyOf:
# This is to support backwards compatibility with older history formats
- type: array
items:
- $ref: "history_entry-1.0.0"
# This is the new, richer history implementation that includes
# extension metadata.
- $ref: "#/definitions/history-1.1.0"
additionalProperties: true
# Make sure that these two metadata fields are always at the top of the file
propertyOrder: [asdf_library, history]
# This contains the definition of the new history format, which includes
# metadata about the extensions used to create the file.
definitions:
history-1.1.0:
type: object
properties:
extensions:
type: array
items:
- $ref: "extension_metadata-1.0.0"
entries:
type: array
items:
- $ref: "history_entry-1.0.0"
...
......@@ -45,5 +45,5 @@ properties:
type: object
default: {}
requiredProperties: [name, data]
additionalProperties: false
\ No newline at end of file
required: [name, data]
additionalProperties: false
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/core/extension_metadata-1.0.0"
title: |
Metadata about specific ASDF extensions that were used to create this file.
tag: "tag:stsci.edu:asdf/core/extension_metadata-1.0.0"
type: object
properties:
extension_class:
description: |
The fully-specified name of the extension class.
type: string
package:
description: |
The name and version of the package that contains the extension.
$ref: "software-1.0.0"
required: [extension_class]
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/core/externalarray-1.0.0"
tag: "tag:stsci.edu:asdf/core/externalarray-1.0.0"
title: Point to an array-like object in an external file.
description: |
Allow referencing of array-like objects in external files. These files can be
any type of file and in any absolute or relative location to the asdf file.
Loading of these files into arrays is not handled by asdf.
examples:
-
- Example external reference
- |
!core/externalarray-1.0.0
datatype: int16
fileuri: aia.lev1_euv_12s.2017-09-06T120001Z.94.image_lev1.fits
shape: [4096, 4096]
target: 1
type: object
properties:
fileuri:
type: string
target:
anyOf:
- type: integer
- type: string
datatype:
type: string
shape:
type: array
items:
anyOf:
- type: integer
minimum: 0
required: [fileuri, target, datatype, shape]
additionalProperties: true
...
......@@ -29,5 +29,5 @@ properties:
items:
$ref: "software-1.0.0"
requiredProperties: [description]
additionalProperties: true
\ No newline at end of file
required: [description]
additionalProperties: true
......@@ -31,5 +31,5 @@ properties:
Specification)[http://semver.org/spec/v2.0.0.html].
type: string
required: [name, author, homepage, version]
additionalProperties: true
\ No newline at end of file
required: [name, version]
additionalProperties: true
......@@ -105,4 +105,4 @@ properties:
default: {}
additionalProperties: false
requiredProperties: [data]
required: [columns]
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/affine-1.2.0"
tag: "tag:stsci.edu:asdf/transform/affine-1.2.0"
title: >
An affine transform.
description: |
Invertibility: All ASDF tools are required to be able to compute the
analytic inverse of this transform.
allOf:
- $ref: "transform-1.1.0"
- type: object
properties:
matrix:
description: |
An array of size (*n* x *n*), where *n* is the number of axes,
representing the linear transformation in an affine transform.
anyOf:
- $ref: "../core/ndarray-1.0.0"
- $ref: "../unit/quantity-1.1.0"
- type: array
items:
type: array
items:
type: number
minItems: 2
maxItems: 2
minItems: 2
maxItems: 2
translation:
description: |
An array of size (*n*,), where *n* is the number of axes,
representing the translation in an affine transform.
anyOf:
- $ref: "../core/ndarray-1.0.0"
- $ref: "../unit/quantity-1.1.0"
- type: array
items:
type: number
minItems: 2
maxItems: 2
required: [matrix]
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/airy-1.2.0"
tag: "tag:stsci.edu:asdf/transform/airy-1.2.0"
title: |
The Airy projection.
description: |
Corresponds to the `AIR` projection in the FITS WCS standard.
See
[zenithal](ref:http://stsci.edu/schemas/asdf/transform/zenithal-1.1.0)
for the definition of the full transformation.
allOf:
- $ref: "zenithal-1.1.0"
- type: object
properties:
theta_b:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
description: |
The latitude $\theta_b$ at which to minimize the error, in
degrees.
default: 90
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/bonne_equal_area-1.2.0"
tag: "tag:stsci.edu:asdf/transform/bonne_equal_area-1.2.0"
title: |
Bonne's equal area pseudoconic projection.
description: |
Corresponds to the `BON` projection in the FITS WCS standard.
The pixel-to-sky transformation is defined as:
$$\phi &= \frac{\pi}{180^\circ} A_\phi R_\theta / \cos \theta \\
\theta &= Y_0 - R_\theta$$
where:
$$R_\theta &= \mathrm{sign} \theta_1 \sqrt{x^2 + (Y_0 - y)^2} \\
A_\phi &= \arg\left(\frac{Y_0 - y}{R_\theta}, \frac{x}{R_\theta}\right)$$
And the sky-to-pixel transformation is defined as:
$$x &= R_\theta \sin A_\phi \\
y &= -R_\theta \cos A_\phi + Y_0$$
where:
$$A_\phi &= \frac{180^\circ}{\pi R_\theta} \phi \cos \theta \\
R_\theta &= Y_0 - \theta \\
Y_0 &= \frac{180^\circ}{\pi} \cot \theta_1 + \theta_1$$
Invertibility: All ASDF tools are required to provide the inverse of
this transform.
allOf:
- $ref: "pseudoconic-1.1.0"
- type: object
properties:
theta1:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
description: |
Bonne conformal latitude, in degrees.
default: 0
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/conic-1.2.0"
title: |
Base class of all conic projections.
description: |
In conic projections, the sphere is thought to be projected onto the
surface of a cone which is then opened out.
In a general sense, the pixel-to-sky transformation is defined as:
$$\phi &= \arg\left(\frac{Y_0 - y}{R_\theta}, \frac{x}{R_\theta}\right) / C \\
R_\theta &= \mathrm{sign} \theta_a \sqrt{x^2 + (Y_0 - y)^2}$$
and the inverse (sky-to-pixel) is defined as:
$$x &= R_\theta \sin (C \phi) \\
y &= R_\theta \cos (C \phi) + Y_0$$
where $C$ is the "constant of the cone":
$$C = \frac{180^\circ \cos \theta}{\pi R_\theta}$$
allOf:
- $ref: "transform-1.1.0"
- type: object
properties:
direction:
enum: [pix2sky, sky2pix]
default: pix2sky
sigma:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
description: |
$(\theta_1 + \theta_2) / 2$ where $\theta_1$ and $\theta_2$
are the latitudes of the standard parallels, in degrees.
default: 0
delta:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
description: |
$(\theta_1 - \theta_2) / 2$ where $\theta_1$ and $\theta_2$
are the latitudes of the standard parallels, in degrees.
default: 0
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/conic_equal_area-1.2.0"
tag: "tag:stsci.edu:asdf/transform/conic_equal_area-1.2.0"
title: |
Alber's conic equal area projection.
description: |
Corresponds to the `COE` projection in the FITS WCS standard.
See
[conic](ref:http://stsci.edu/schemas/asdf/transform/conic-1.2.0)
for the definition of the full transformation.
The transformation is defined as:
$$C &= \gamma / 2 \\
R_\theta &= \frac{180^\circ}{\pi} \frac{2}{\gamma} \sqrt{1 + \sin \theta_1 \sin \theta_2 - \gamma \sin \theta} \\
Y_0 &= \frac{180^\circ}{\pi} \frac{2}{\gamma} \sqrt{1 + \sin \theta_1 \sin \theta_2 - \gamma \sin((\theta_1 + \theta_2)/2)}$$
where:
$$\gamma = \sin \theta_1 + \sin \theta_2$$
Invertibility: All ASDF tools are required to provide the inverse of
this transform.
$ref: "conic-1.2.0"
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/conic_equidistant-1.2.0"
tag: "tag:stsci.edu:asdf/transform/conic_equidistant-1.2.0"
title: |
Conic equidistant projection.
description: |
Corresponds to the `COD` projection in the FITS WCS standard.
See
[conic](ref:http://stsci.edu/schemas/asdf/transform/conic-1.2.0)
for the definition of the full transformation.
The transformation is defined as:
$$C &= \frac{180^\circ}{\pi} \frac{\sin\theta_a\sin\eta}{\eta} \\
R_\theta &= \theta_a - \theta + \eta\cot\eta\cot\theta_a \\
Y_0 = \eta\cot\eta\cot\theta_a$$
Invertibility: All ASDF tools are required to provide the inverse of
this transform.
$ref: "conic-1.2.0"
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/conic_orthomorphic-1.2.0"
tag: "tag:stsci.edu:asdf/transform/conic_orthomorphic-1.2.0"
title: |
Conic orthomorphic projection.
description: |
Corresponds to the `COO` projection in the FITS WCS standard.
See
[conic](ref:http://stsci.edu/schemas/asdf/transform/conic-1.2.0)
for the definition of the full transformation.
The transformation is defined as:
$$C &= \frac{\ln \left( \frac{\cos\theta_2}{\cos\theta_1} \right)}
{\ln \left[ \frac{\tan\left(\frac{90^\circ-\theta_2}{2}\right)}
{\tan\left(\frac{90^\circ-\theta_1}{2}\right)} \right] } \\
R_\theta &= \psi \left[ \tan \left( \frac{90^\circ - \theta}{2} \right) \right]^C \\
Y_0 &= \psi \left[ \tan \left( \frac{90^\circ - \theta_a}{2} \right) \right]^C$$
where:
$$\psi = \frac{180^\circ}{\pi} \frac{\cos \theta}
{C\left[\tan\left(\frac{90^\circ-\theta}{2}\right)\right]^C}$$
Invertibility: All ASDF tools are required to provide the inverse of
this transform.
$ref: "conic-1.2.0"
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/conic_perspective-1.2.0"
tag: "tag:stsci.edu:asdf/transform/conic_perspective-1.2.0"
title: |
Colles' conic perspecitve projection.
description: |
Corresponds to the `COP` projection in the FITS WCS standard.
See
[conic](ref:http://stsci.edu/schemas/asdf/transform/conic-1.2.0)
for the definition of the full transformation.
The transformation is defined as:
$$C &= \sin \theta_a \\
R_\theta &= \frac{180^\circ}{\pi} \cos \eta [ \cot \theta_a - \tan(\theta - \theta_a)] \\
Y_0 &= \frac{180^\circ}{\pi} \cos \eta \cot \theta_a$$
Invertibility: All ASDF tools are required to provide the inverse of
this transform.
$ref: "conic-1.2.0"
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/constant-1.2.0"
tag: "tag:stsci.edu:asdf/transform/constant-1.2.0"
title: >
A transform that takes no inputs and always outputs a constant
value.
description: |
Invertibility: All ASDF tools are required to be able to compute the
analytic inverse of this transform, which always outputs zero values.
allOf:
- $ref: "transform-1.1.0"
- type: object
properties:
value:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
required: [value]
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/cylindrical_equal_area-1.2.0"
tag: "tag:stsci.edu:asdf/transform/cylindrical_equal_area-1.2.0"
title: |
The cylindrical equal area projection.
description: |
Corresponds to the `CEA` projection in the FITS WCS standard.
The pixel-to-sky transformation is defined as:
$$\phi &= x \\
\theta &= \sin^{-1}\left(\frac{\pi}{180^{\circ}}\lambda y\right)$$
And the sky-to-pixel transformation is defined as:
$$x &= \phi \\
y &= \frac{180^{\circ}}{\pi}\frac{\sin \theta}{\lambda}$$
Invertibility: All ASDF tools are required to provide the inverse of
this transform.
allOf:
- $ref: "cylindrical-1.1.0"
- type: object
properties:
lambda:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
description: |
Radius of the cylinder in spherical radii, default is 0.
default: 0
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/cylindrical_perspective-1.2.0"
tag: "tag:stsci.edu:asdf/transform/cylindrical_perspective-1.2.0"
title: |
The cylindrical perspective projection.
description: |
Corresponds to the `CYP` projection in the FITS WCS standard.
The pixel-to-sky transformation is defined as:
$$\phi &= \frac{x}{\lambda} \\
\theta &= \arg(1, \eta) + \sin{-1}\left(\frac{\eta \mu}{\sqrt{\eta^2 + 1}}\right)$$
And the sky-to-pixel transformation is defined as:
$$x &= \lambda \phi \\
y &= \frac{180^{\circ}}{\pi}\left(\frac{\mu + \lambda}{\mu + \cos \theta}\right)\sin \theta$$
Invertibility: All ASDF tools are required to provide the inverse of
this transform.
allOf:
- $ref: "cylindrical-1.1.0"
- type: object
properties:
mu:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
description: |
Distance from center of sphere in the direction opposite the
projected surface, in spherical radii.
default: 0
lambda:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
description: |
Radius of the cylinder in spherical radii, default is 0.
default: 0
%YAML 1.1
---
$schema: "http://stsci.edu/schemas/yaml-schema/draft-01"
id: "http://stsci.edu/schemas/asdf/transform/linear1d-1.0.0"
tag: "tag:stsci.edu:asdf/transform/linear1d-1.0.0"
title: >
A one dimensional line model
description: >
A one dimensional line model
type: object
properties:
slope:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
description: Slope of the straight line.
intercept:
anyOf:
- $ref: "../unit/quantity-1.1.0"
- type: number
description: Intercept of the straight line.