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

Prepare for teachbooks v0.2.0 #131

Open
wants to merge 22 commits into
base: release
Choose a base branch
from

Conversation

rlanzafame
Copy link
Member

@rlanzafame rlanzafame commented Mar 9, 2025

Should be only small changes related to external content and teachbooks package in general

Issue #132 created to make sure the way caching works is properly defined and assign it to @Tom-van-Woudenberg

@rlanzafame
Copy link
Member Author

@Tom-van-Woudenberg I still miss a space dedicated to the teachbooks package and i think it would be good to include it in this PR since we will then be telling people to consider use of the external content feature which relies on teachbooks.

Can I add something general back in?

It won't be long, I think the key things it should do in the manual are:

  1. point out that it exists
  2. list the features that are incorporated in it
  3. provide very simple guidance on how it should be used, and by whom (i.e., if you are using GH online don't worry, etc)
  4. the feature button on a page where the feature is implemented in teachbooks can link back to the new description

I think it kind of makes sense as a subpage to the overview page, but I can also see it being a subsection on the overview page. What do you think?

@Tom-van-Woudenberg
Copy link
Member

Tom-van-Woudenberg commented Mar 9, 2025

@Tom-van-Woudenberg I still miss a space dedicated to the teachbooks package and i think it would be good to include it in this PR since we will then be telling people to consider use of the external content feature which relies on teachbooks.

With #121 we effectively splitted the teachbooks package in the manual in it's different functionalities (which makes sense as it's part of the features part). That these features happen to be part of the teachbooks package might be a bit irrelevant for most readers.

Can I add something general back in?

If you feel there's a need for it, go ahead.

  1. provide very simple guidance on how it should be used, and by whom (i.e., if you are using GH online don't worry, etc)

Isn't this already described at the pages of the individual features?

I think it kind of makes sense as a subpage to the overview page, but I can also see it being a subsection on the overview page. What do you think?

I don't immediately know where it should be placed. Maybe the best place would be the teachbooks readme itself (so not in the manual). I'm not that fond of a subpage of the overview page: I think it might be a confusing structure. Maybe the best place is indeed a subsection of the overview page, which would also allow us to explain the other types (what is a sphinx extension, iframe, got reusable action, etc.)

@rlanzafame
Copy link
Member Author

@Tom-van-Woudenberg last commit is WIP so don't worry about content too much. just checking if you are ok with a teachbooks page at the end of the Part (instead of a subsection on overview page). this prevents the link from breaking. i think this is the best way forward since i can't think of a way to get the teachbooks.md page to build automatically without having it in the TOC and without messing with the autobuild command. there is in default JB the exclude pattern thing to NOT build pages...but in this case what i need is and include page. maybe an idea for a new future feature?

@Tom-van-Woudenberg
Copy link
Member

Tom-van-Woudenberg commented Mar 22, 2025

teachbooks page at the end of the Part (instead of a subsection on overview page).

@rlanzafame, I'm not sure about whether it makes sense to place this as a separate page. For inexperienced users the feature part is now ordered based on functionalities, 'teachbooks python package' might be unexpected. Maybe we can place this as a chapter on the overview page (that's what I meant with subsection) and make a teachbooks-page under the current URL which just redirects to that chapter? I've created a separate pull request (to merge into this one) for it: #143

I think we have to accept that this URL is broken, as the broken URL is less important than a layout that makes sense for inexperienced users

Copy link
Member

@Tom-van-Woudenberg Tom-van-Woudenberg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few comments, see general comment on broken URL thing...

@@ -15,7 +15,7 @@ When creating books, you might want to reuse material from other people or from
Previously, this book feature was implemented using [submodules](../external/Nested-Books/README.md), but the implementation was more difficult to use. Despite this, submodules are still a widely used Git feature that can be very useful for book authors, so check out the [submodules page](../external/Nested-Books/README.md) to learn more, especially if the External TOC tool does not satisfy your needs. Submodules have a few additional features not (yet) implemented using the External TOC.

```{warning}
The External TOC features are not incorporated in the new deploy book workflow yet (this will happen once the workflow specifies `teachbooks>=0.2.0`).
The External TOC features are incorporated in `v0.2.0` of the TeachBooks package. If you are using a TeachBooks Template book or our deploy-book-workflow this will become part of your book builds in GitHub Actions as the cache for your book expires (typically around 1 week after not editing your book branch). We do not expect it to cause issues with existing books, but if it does, you can use the following in your requirements file: `teachbooks<0.2.0`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have never warned people about updates and relevant caching in the past for the other tools (which are no different in this perspective).

Maybe this warning shouldn't be in the manual, but only in the announcement on teachbooks.io. Or we could remove the warning after a week. I think it can be kinda complicated for some users and giving the explicit explanation might do more harm than good on these very-easy-to-implement feature pages

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'We do not expect it to cause issues with existing books, but if it does, you can use the following in your requirements file: teachbooks<0.2.0.' If we really don't expect it, couldn't we just leave this out?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good points, I'll adapt this and get back to you once I have a chance to read the stuff in #132

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

update note about external toc
2 participants