insightsengineering / tlg-catalog

A catalog of Tables, Listings and Graphs (TLGs) created with NEST R packages
https://insightsengineering.github.io/tlg-catalog/
Other
20 stars 8 forks source link

Allow stable / devel via quarto conditional content #192

Closed pawelru closed 7 months ago

pawelru commented 10 months ago

The current state of code is working only for devel mode and stable is red for a while. I have been thinking how to allow both stable and devel profile on the same codebase (and avoid creating separate stable and devel git branches that we already agreed it would be difficult to maintain) and I came up with quarto conditional content based on profile used.

This summarise into more or less this:

::: {.content-visible when-profile="stable"}
pkg::foo_deprecated(...)
:::

::: {.content-visible when-profile="development"}
pkg::bar
:::

Then after release of a given package we will remove stable and make devel unconditional. We have to include this check in our release template. We might help ourselves and provide additional comments what packages are affected.

Please assess if it would make sense in our case and if yes - please implement so that we will have both stable and devel passing. Please also correct min version of dependent packages as per stable and not devel.

edelarua commented 10 months ago

Hi @pawelru, This seems like a great solution! I have reverted the package dependencies to the latest released version of each but some of the changes that have been made since the releases (mainly the teal module fixes) will need to be reverted and converted to use this method to fix the catalog rendering. Since the DESCRIPTION file lists package dependencies for the stable version, is the devel version automated to use the latest development versions of each package dependency instead of the specified versions?

Changes since package releases that should only be applied within the devel version: https://github.com/insightsengineering/tlg-catalog/pull/160

pawelru commented 10 months ago

Since the DESCRIPTION file lists package dependencies for the stable version, is the devel version automated to use the latest development versions of each package dependency instead of the specified versions?

Yes - that's correct. For each profile we install appropriate versions of nest packages before rendering. For devel profile we are using staged deps and for stable - r-universe.

some of the changes that have been made since the releases (mainly the teal module fixes) will need to be reverted and converted to use this method to fix the catalog rendering.

That's exactly what I was thinking of. We need to correct these articles to support both stable and devel. This does not neccessarily means full revert but rather restore removed/changed codes and have both versions supported.

pawelru commented 10 months ago

If it happens that this is no longer needed (because e.g. teal packages will be released (hence a new stable version)) then please just document this for the future how to behave

edelarua commented 7 months ago

This was resolved after the last CRAN releases, with the method detailed above used to resolve these issues since.