Skip to content

Commit bc5eae4

Browse files
authored
Fix up docs linking (#1499)
* Fix up docs linking * Missed a colon * Update changelog
1 parent 312a081 commit bc5eae4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+499
-275
lines changed

.github/workflows/continuous-integration.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,4 +161,4 @@ jobs:
161161
- name: Install pystac
162162
run: uv sync --no-dev && uv sync --package pystac-docs --inexact
163163
- name: Check docs
164-
run: uv run make -C docs html SPHINXOPTS="-W --keep-going"
164+
run: uv run make -C docs html SPHINXOPTS="-W --keep-going -n"

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
- Use `application/geo+json` for `item` links ([#1495](https://github.com/stac-utils/pystac/pull/1495))
2323
- Includes the scientific extension in Item's ext interface ([#1496](https://github.com/stac-utils/pystac/pull/1496))
24+
- Fixes all broken documentation links and adds check to CI ([#1499](https://github.com/stac-utils/pystac/pull/1499))
2425

2526
## [v1.11.0] - 2024-09-26
2627

docs/api.rst

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -191,9 +191,7 @@ Serialization
191191
The ``pystac.serialization`` sub-package contains tools used internally by PySTAC to
192192
identify, serialize, and migrate STAC objects:
193193

194-
* :mod:`pystac.serialization.identify`: Tools for identifying STAC objects
195-
* :mod:`pystac.serialization.migrate`: Tools for migrating STAC objects from a previous
196-
STAC Spec version.
194+
* :mod:`pystac.serialization`: Tools for identifying and migrating STAC objects
197195

198196

199197
Validation

docs/api/asset.rst

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
pystac.asset
22
============
33

4-
.. automodule:: pystac.asset
4+
.. autoclass:: pystac.asset.Asset
55
:members:
66
:undoc-members:
77
:noindex:
8+
9+
.. automodule:: pystac.asset
10+
:members:
11+
:undoc-members:
12+
:exclude-members: Asset

docs/api/catalog.rst

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
pystac.catalog
22
==============
33

4-
.. automodule:: pystac.catalog
4+
.. autoclass:: pystac.catalog.Catalog
55
:members:
66
:undoc-members:
77
:noindex:
8+
9+
.. automodule:: pystac.catalog
10+
:members:
11+
:undoc-members:
12+
:exclude-members: Catalog

docs/api/collection.rst

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
pystac.collection
22
=================
33

4-
.. automodule:: pystac.collection
4+
.. autoclass:: pystac.collection.Collection
55
:members:
66
:undoc-members:
77
:noindex:
8+
9+
.. automodule:: pystac.collection
10+
:members:
11+
:undoc-members:
12+
:exclude-members: Collection

docs/api/extensions.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ pystac.extensions
1313

1414
.. autosummary::
1515

16-
datacube.DatacubeExtension
1716
classification.ClassificationExtension
17+
datacube.DatacubeExtension
1818
eo.EOExtension
1919
file.FileExtension
2020
grid.GridExtension
@@ -23,6 +23,7 @@ pystac.extensions
2323
pointcloud.PointcloudExtension
2424
projection.ProjectionExtension
2525
raster.RasterExtension
26+
render.RenderExtension
2627
sar.SarExtension
2728
sat.SatExtension
2829
scientific.ScientificExtension

docs/api/extensions/ext.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
pytac.extensions.ext
2+
====================
3+
4+
.. automodule:: pystac.extensions.ext
5+
:members:
6+
:inherited-members:
7+
:undoc-members:

docs/api/extensions/render.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pystac.extensions.render
2+
========================
3+
4+
.. automodule:: pystac.extensions.render
5+
:members:
6+
:undoc-members:

docs/api/item.rst

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
pystac.item
22
===========
33

4-
.. automodule:: pystac.item
4+
.. autoclass:: pystac.item.Item
55
:members:
66
:undoc-members:
77
:noindex:
8+
9+
.. automodule:: pystac.item
10+
:members:
11+
:undoc-members:
12+
:exclude-members: Item

docs/api/item_collection.rst

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
pystac.item_collection
22
======================
33

4-
.. automodule:: pystac.item_collection
4+
.. autoclass:: pystac.item_collection.ItemCollection
55
:members:
66
:undoc-members:
77
:noindex:
8+
9+
.. automodule:: pystac.item_collection
10+
:members:
11+
:undoc-members:
12+
:exclude-members: ItemCollection

docs/api/link.rst

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
pystac.link
22
===========
33

4-
.. automodule:: pystac.link
4+
.. autoclass:: pystac.link.Link
55
:members:
66
:undoc-members:
77
:noindex:
8+
9+
.. automodule:: pystac.link
10+
:members:
11+
:undoc-members:
12+
:exclude-members: Link

docs/api/pystac.rst

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ Catalog
4444

4545
.. autoclass:: pystac.Catalog
4646
:members:
47+
:inherited-members:
4748
:undoc-members:
4849

4950
CatalogType
@@ -59,6 +60,7 @@ Collection
5960

6061
.. autoclass:: pystac.Collection
6162
:members:
63+
:inherited-members:
6264
:undoc-members:
6365

6466
Extent
@@ -108,6 +110,7 @@ Item
108110

109111
.. autoclass:: pystac.Item
110112
:members:
113+
:inherited-members:
111114
:undoc-members:
112115

113116
Asset
@@ -137,12 +140,14 @@ ItemCollection
137140

138141
.. autoclass:: pystac.ItemCollection
139142
:members:
143+
:inherited-members:
140144

141145
Link
142146
----
143147

144148
.. autoclass:: pystac.Link
145149
:members:
150+
:inherited-members:
146151
:undoc-members:
147152

148153
MediaType
@@ -208,3 +213,14 @@ STACValidationError
208213
~~~~~~~~~~~~~~~~~~~
209214

210215
.. autoclass:: pystac.STACValidationError
216+
217+
TemplateError
218+
~~~~~~~~~~~~~
219+
220+
.. autoclass:: pystac.TemplateError
221+
222+
223+
DeprecatedWarning
224+
~~~~~~~~~~~~~~~~~
225+
226+
.. autoclass:: pystac.DeprecatedWarning

docs/api/serialization/identify.rst

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,20 @@
11
pystac.serialization.identify
22
=============================
33

4+
5+
.. automodule:: pystac.serialization.identify
6+
:members: STACVersionRange, identify_stac_object, identify_stac_object_type
7+
:undoc-members:
8+
:noindex:
9+
10+
11+
.. autoclass:: pystac.serialization.identify.STACVersionRange
12+
:members:
13+
:undoc-members:
14+
:noindex:
15+
16+
417
.. automodule:: pystac.serialization.identify
518
:members:
619
:undoc-members:
7-
:noindex:
20+
:exclude-members: STACVersionRange, identify_stac_object, identify_stac_object_type

docs/api/stac_object.rst

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,19 @@
11
pystac.stac_object
22
==================
33

4-
.. automodule:: pystac.stac_object
4+
.. autoclass:: pystac.stac_object.STACObject
5+
:members:
6+
:undoc-members:
7+
:noindex:
8+
9+
.. autoclass:: pystac.stac_object.STACObjectType
510
:members:
611
:undoc-members:
712
:noindex:
13+
14+
.. automodule:: pystac.stac_object
15+
:members:
16+
:undoc-members:
17+
:exclude-members: STACObject, STACObjectType
18+
19+
.. autoclass:: pystac.stac_object.S

docs/api/summaries.rst

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
pystac.summaries
22
================
33

4-
.. automodule:: pystac.summaries
4+
.. autoclass:: pystac.summaries.Summaries
55
:members:
66
:undoc-members:
77
:noindex:
8+
9+
.. automodule:: pystac.summaries
10+
:members:
11+
:undoc-members:
12+
:exclude-members: Summaries

docs/api/utils.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,7 @@ pystac.utils
44
.. automodule:: pystac.utils
55
:members:
66
:undoc-members:
7+
8+
.. autoclass:: pystac.utils.T
9+
10+
.. autoclass:: pystac.utils.U

docs/api/validation.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,4 @@ pystac.validation
1010

1111
.. automodule:: pystac.validation
1212
:members:
13+
:undoc-members:
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pystac.validation.local\_validator
2+
==================================
3+
4+
.. automodule:: pystac.validation.local_validator
5+
:members:
6+
:undoc-members:
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
pystac.validation.stac\_validator
22
=================================
33

4+
.. autoclass:: pystac.validation.stac_validator.JsonSchemaSTACValidator
5+
:members:
6+
:undoc-members:
7+
:noindex:
8+
49
.. automodule:: pystac.validation.stac_validator
510
:members:
611
:undoc-members:
12+
:exclude-members: JsonSchemaSTACValidator

docs/concepts.rst

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ in the catalog will produce a relative link, based on the self link of the paren
235235
object.
236236

237237
You can make all the links of a catalog relative or absolute by setting the
238-
:func:`Catalog.catalog_type` field then resaving the entire catalog.
238+
:func:`~pystac.Catalog.catalog_type` field then resaving the entire catalog.
239239

240240
.. _rel vs abs asset:
241241

@@ -312,7 +312,7 @@ that you see all API calls.
312312
If you require more custom logic for I/O operations or would like to use a
313313
3rd-party library for I/O operations (e.g. ``requests``),
314314
you can create a sub-class of :class:`pystac.StacIO`
315-
(or :class:`pystac.DefaultStacIO`) and customize the methods as
315+
(or :class:`pystac.stac_io.DefaultStacIO`) and customize the methods as
316316
you see fit. You can then pass instances of this custom sub-class into the ``stac_io``
317317
argument of most object-specific I/O methods. You can also use
318318
:meth:`pystac.StacIO.set_default` in your client's ``__init__.py`` file to make this
@@ -573,7 +573,7 @@ PySTAC package) or older versions (which are hosted at https://schemas.stacspec.
573573
This validation includes any extensions that the object extends (these are always
574574
accessed remotely based on their URIs).
575575

576-
If there are validation errors, a :class:`~pystac.validation.STACValidationError`
576+
If there are validation errors, a :class:`~pystac.STACValidationError`
577577
is raised.
578578

579579
You can also call :meth:`~pystac.Catalog.validate_all` on a Catalog or Collection to
@@ -587,7 +587,7 @@ Validating STAC JSON
587587
--------------------
588588

589589
You can validate STAC JSON represented as a ``dict`` using the
590-
:meth:`pystac.validation.validate_dict` method:
590+
:func:`pystac.validation.validate_dict` method:
591591

592592
.. code-block:: python
593593
@@ -599,7 +599,7 @@ You can validate STAC JSON represented as a ``dict`` using the
599599
validate_dict(js)
600600
601601
You can also recursively validate all of the catalogs, collections and items across STAC
602-
versions using the :meth:`pystac.validation.validate_all` method:
602+
versions using the :func:`pystac.validation.validate_all` method:
603603

604604
.. code-block:: python
605605
@@ -615,15 +615,16 @@ Using your own validator
615615

616616
By default PySTAC uses the :class:`~pystac.validation.JsonSchemaSTACValidator`
617617
implementation for validation. Users can define their own implementations of
618-
:class:`~pystac.validation.STACValidator` and register it with pystac using
619-
:meth:`pystac.validation.set_validator`.
618+
:class:`~pystac.validation.stac_validator.STACValidator` and register it with pystac
619+
using :func:`pystac.validation.set_validator`.
620620

621621
The :class:`~pystac.validation.JsonSchemaSTACValidator` takes a
622-
:class:`~pystac.validation.SchemaUriMap`, which by default uses the
623-
:class:`~pystac.validation.schema_uri_map.DefaultSchemaUriMap`. If desirable, users cn
624-
create their own implementation of :class:`~pystac.validation.SchemaUriMap` and register
622+
:class:`~pystac.validation.schema_uri_map.SchemaUriMap`, which by default uses the
623+
:class:`~pystac.validation.schema_uri_map.DefaultSchemaUriMap`. If desirable, users can
624+
create their own implementation of
625+
:class:`~pystac.validation.schema_uri_map.SchemaUriMap` and register
625626
a new instance of :class:`~pystac.validation.JsonSchemaSTACValidator` using that schema
626-
map with :meth:`pystac.validation.set_validator`.
627+
map with :func:`pystac.validation.set_validator`.
627628

628629
Extensions
629630
==========
@@ -673,7 +674,8 @@ Extension <eo>`, you can access the fields associated with that extension using
673674
the `Adding an Extension`_ section below for details on adding an extension to an
674675
object.
675676

676-
If you don't want to raise an error you can use :meth:`~pystac.Item.ext.has`
677+
If you don't want to raise an error you can use
678+
:meth:`Item.ext.has <pystac.extensions.ext.ItemExt.has>`
677679
to first check if the extension is implemented on your pystac object:
678680

679681
.. code-block:: python
@@ -726,11 +728,9 @@ Adding an Extension
726728
-------------------
727729

728730
You can add an extension to a STAC object that does not already implement that extension
729-
using the :meth:`~pystac.Item.ext.add` method. Any concrete
730-
extension implementations that extend existing STAC objects should have
731-
this method available. The :meth:`~pystac.Item.ext.add` method adds the correct schema
732-
URI to the :attr:`~pystac.Item.stac_extensions` list for the object being
733-
extended.
731+
using the :meth:`Item.ext.add <pystac.extensions.ext.ItemExt.add>` method.
732+
The :meth:`Item.ext.add <pystac.extensions.ext.ItemExt.add>` method adds the correct
733+
schema URI to the :attr:`~pystac.Item.stac_extensions` list for the STAC object.
734734

735735
.. code-block:: python
736736
@@ -927,7 +927,7 @@ in the catalog to have a unique identifier, which is unique across the entire ST
927927
928928
When a link is being resolved from a STACObject that has it's root set, that root is
929929
passed into the :func:`Link.resolve_stac_object <pystac.Link.resolve_stac_object>` call.
930-
That root's :class:`~pystac.resolved_object_cache.ResolvedObjectCache` will be used to
930+
That root's :class:`~pystac.cache.ResolvedObjectCache` will be used to
931931
ensure that if the link is pointing to an object that has already been resolved, then
932932
that link will point to the same, single instance in the cache. This ensures working
933933
with STAC objects in memory doesn't create a situation where multiple copies of the same

docs/conf.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,3 +248,11 @@
248248
# -- Substutition variables
249249

250250
rst_epilog = f".. |stac_version| replace:: {STACVersion.DEFAULT_STAC_VERSION}"
251+
252+
nitpick_ignore = [
253+
("py:class", "Datetime"),
254+
("py:class", "L"),
255+
("py:class", "pystac.summaries.T"),
256+
("py:class", "HREF"), # this one partially works
257+
("py:class", "jsonschema.validators.Draft7Validator"),
258+
]

0 commit comments

Comments
 (0)