Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DM-43801: Add towncrier support #101

Merged
merged 10 commits into from
Aug 27, 2024
4 changes: 4 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
## Checklist

- [ ] Ran Jenkins
- [ ] Added a release note for user-visible changes to `docs/changes`
33 changes: 33 additions & 0 deletions docs/CHANGES.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
:html_theme.sidebar_secondary.remove:

Felis 27.0.0 2024-04-17
=======================

New Features
------------

- Added option for setting TAP_SCHEMA index in ``load-tap`` command. (`DM-43683 <https://rubinobs.atlassian.net/browse/DM-43683>`__)
- Added option for creating a schema's database if it does not exist when running the ``create`` command. (`DM-43108 <https://rubinobs.atlassian.net/browse/DM-43108>`__)
- Added setting of log level and output file in the CLI (`DM-43040 <https://rubinobs.atlassian.net/browse/DM-43040>`__)
- Created a validator that will look for redundant datatype specifications.
This is activated from the command line with the ``--check-redundant--datatypes`` flag. (`DM-41247 <https://rubinobs.atlassian.net/browse/DM-41247>`__)

API Changes
-----------

- Added a new ``metadata`` module for generating SQLAlchemy ``MetaData`` from a schema.
This replaces the old module that was used in the ``create`` command for initializing the database. (`DM-43079 <https://rubinobs.atlassian.net/browse/DM-43079>`__)
- Made columns nullable by default in the Pydantic data model. (`DM-43753 <https://rubinobs.atlassian.net/browse/DM-43753>`__)
- Refactored the ``tap`` module to use the Pydantic data model. (`DM-42935 <https://rubinobs.atlassian.net/browse/DM-42935>`__)
- Moved database utilities into a separate package and refactored them. (`DM-44721 <https://rubinobs.atlassian.net/browse/DM-44721>`__)

An API Removal or Deprecation
-----------------------------

- Removed JSON-LD commands from the CLI and removed ``pyld`` from ``requirements.txt``. (`DM-43688 <https://rubinobs.atlassian.net/browse/DM-43668>`__)
- Removed outdated modules. (`DM-43597 <https://rubinobs.atlassian.net/browse/DM-43597>`__)

Documentation Improvements
--------------------------

- Updated Felis documentation infrastructure. (`DM-43787 <https://rubinobs.atlassian.net/browse/DM-43787>`__)
21 changes: 21 additions & 0 deletions docs/changes/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
Recording Changes
=================

This directory contains "news fragments" which are small files containing text that will be integrated into release notes.
The files can be in restructured text format or plain text.

Each file should be named like ``<JIRA TICKET>.<TYPE>`` with a file extension defining the markup format.
The ``<TYPE>`` should be one of:

* ``feature``: New feature
* ``bugfix``: A bug fix.
* ``api``: An API change.
* ``perf``: A performance enhancement.
* ``doc``: A documentation improvement.
* ``removal``: An API removal or deprecation.
* ``misc``: Changes that are of minor interest.

An example file name would therefore look like ``DM-30291.misc.rst``.

You can test how the content will be integrated into the release notes by running ``towncrier build --draft --version=V.vv``.
``towncrier`` can be installed from PyPI or conda-forge.
4 changes: 2 additions & 2 deletions docs/documenteer.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ package = "lsst-felis"

[sphinx]
disable_primary_sidebars = [
"**/index",
"changelog",
"index",
"CHANGES",
"dev/internals",
]
extensions = [
Expand Down
12 changes: 9 additions & 3 deletions docs/index.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#####
:html_theme.sidebar_secondary.remove:

Felis
#####
=====

Felis provides a system for describing astronomical data catalogs with a user-friendly YAML data format.
It covers not only the metadata required to create database schemas, but also a wide range of additional
Expand All @@ -9,8 +10,13 @@ While developed for the `Vera C. Rubin Observatory <https://rubinobservatory.org
framework for describing its `Science Data Model Schemas <https://github.com/lsst/sdm_schemas>`__, Felis is
designed to be general enough to be used by any astronomical data provider.

#############
Documentation
#############

.. toctree::
:maxdepth: 2
:maxdepth: 1

user-guide/index
dev/internals
Change Log <CHANGES.rst>
7 changes: 6 additions & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ felis = "felis.cli:cli"
[tool.towncrier]
package = "felis"
package_dir = "python"
filename = "docs/felis/CHANGES.rst"
filename = "docs/CHANGES.rst"
directory = "docs/changes"
title_format = "felis {version} {project_date}"
issue_format = "`{issue} <https://jira.lsstcorp.org/browse/{issue}>`_"
Expand All @@ -87,6 +87,11 @@ felis = "felis.cli:cli"
name = "Bug Fixes"
showcontent = true

[[tool.towncrier.type]]
directory = "doc"
name = "Documentation Improvements"
showcontent = true

[[tool.towncrier.type]]
directory = "perf"
name = "Performance Enhancement"
Expand Down
Loading