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

Fix/update template to match latest Greene Lab template #46

Merged
merged 177 commits into from
Jul 2, 2024

Conversation

matthuska
Copy link
Collaborator

Update to the latest version of the Greene Lab template we are using. This was a hell of a job, manually resolving the merge conflicts.

vincerubinetti and others added 28 commits July 15, 2022 14:02
…improvements (#127)

- temporarily track which plugin source came from with `_plugin` and `_input`, then ignore `exit()` when it is a metasource to address #121. delete these keys before exporting.
- better error catching for various error-prone points
- make logging and `.get()` fallbacks better
- make `exit()`s happen at end of loop with `will_exit` flags, instead of stopping in the middle so users can see all entries that cause problems at once
- rerun auto-cite and regenerate cache keys due to renaming of internal `_plugin` and `_input` keys
- change "message" in exception catching to "e" to match convention
- update docs to reflect above
- add the ability to run auto-cite workflow periodically, or on demand (through the github website interface), but comment out
- increase timeout for auto-cite workflow
- better citation date handling and fallbacks
- truncate non-rich citation authors
See changelog for high level, user-facing changes.

- docker python install changes. pin watchdog version, turn off unneeded
caching.
- docker entrypoint changes. run cite process immediately, ensure no
simultaneous runs.
- first time setup fixes. don't parse config.yaml as yaml, instead
customize with string replacement to preserve key order and comments.
- add title and link fallbacks to citation component
- fix start/end markers for blog post excerpts, and remove special
characters from hidden search attribute
- change member page from col layout to float
- add multi-line option to regex_scan liquid plugin (to support
start/end marker bug above)
- add new regex_strip liquid plugin to strip all special characters from
string
- card, code, portrait, post excerpt css fixes
- fix testbed image links
- (re)include user pr template
- fix versioning workflow to correctly parse and split changelog
- add show-title and show-subtitle site config options
- include site subtitle in description meta tag
See greenelab/lab-website-template#177 .
v1.1.1 introduced a regression in `first-time-setup.yaml` when clearing
the `gh-pages` branch. I wanted to make the command simpler -- to simply
delete everything in the folder -- but I didn't think it through enough.
[There is a safeguard to prevent the command from
working](https://unix.stackexchange.com/questions/369530/rm-refusing-to-remove-or-directory-skipping),
and also even if it did work it would delete the `.git` folder which
would break things. Thus, this version reverts the command to how it was
before, manually specifying each `.` folder.
Closes #181 and #180 
Closes #179 

- fix typo in first-time-setup.yaml
- fix versioning workflow tag/release
- tweak some cite.py and _plugins comments
- add commented out `continue` for if user wants to discard sources that
have ids that can't be cited by Manubot, per #186 discussion
- clean Manubot title/authors/publisher/etc output. trim whitespace and
filter.
- fix citation, portrait, and float css

The tagging/releasing step is now reverted to [how I had it in
v1.1.0](https://github.com/greenelab/lab-website-template/pull/166/files#diff-67cc7f4d3d06063e6239e59de699c4a2c768ba544777ded6aa22ab45aa0ad24a),
just using `ncipollo/release-action` for both the tag and the release,
and removing `mathieudutour/github-tag-action`. Idk why I keep going
back and forth. I guess the last time I tried using just `ncipollo` it
didn't work? But it seems to be working now (links ephemeral):

https://github.com/vincerubinetti/lwt-test/pull/2
https://github.com/vincerubinetti/lwt-test/releases/tag/v1.1.4

---------

Co-authored-by: vincerubinetti <[email protected]>
- explicitly list cite process cache files in gitignore
- add default values for all `.get()` calls for extra safety and also to
indicate expected type
- change `id` to `_id` in plugins. this was done in the main `cite.py`
script in v1.1.1 but i missed it in the plugins.
- fix dangerous memoize/cache bug where cache key doesn't include the id
of the metasource currently being cited, which affects the output
- orcid plugin: update api to v3
- orcid plugin: fix bug where all ids for single source were being
included. instead, find most recent doi, and fallback to other id type
if not available.
- orcid plugin: keep a few details from api for ids that aren't citable
by manubot
- allow `format_date` util func to accept numeric timestamp (returned
from orcid api)
- tweak member bio page
- various cite process tweaks
- add traceback logging of running plugins
- change variable names for clarity and consistency
- add generic "safe get" function as suggested by Faisal last pr
- use generic safe get in place all of all gets. helps fix bug due to
orcid api sometimes returning none types for certain fields, and other future bugs.
Unpins all cite process python packages from their exact versions, pins
them to **major versions**. This ensures users will be on the latest
versions of packages, without breaking changes (assuming the packages
follow semver properly), and without having to constantly update their
template version (which can be a pain).

Closes #210 
Addresses #211 

FOR THE TEMPLATE MAINTAINER(S)

New template version checklist:

- [x] I have updated CITATION and CHANGELOG as appropriate.
- [x] I have updated lab-website-template-docs as appropriate.
- [x] I have checked the testbed as appropriate.

---------

Co-authored-by: vincerubinetti <[email protected]>
- add discussion templates. be more aggressive requiring fields.
- update to latest version of all github actions (checking for breaking
changes)
- add debug step to each workflow to allow ssh access in
- fix site.location vs page.url bug (see issue)
- add html-proofer plugin to check for broken images and links, disabled
by default because it adds a lot of time to hot-reload, but set
explicitly as false in config so users can easily flip it on
- update bundler version and re-bundle gems
- add "remove" option for cite-process that allows a user to remove a
source from a metasource. e.g., an ORCID returns a source that the user
doesn't want on their site, so in their sources.yaml they put the id and
remove: true.
- by default, ignore sources that manubot can't cite if they're from
metasources (see changelog)
- add markdownify to more component params
- fix bug in citation (and other) components where when lookup is blank,
first entry in list is always chosen
- make use of newly widely available CSS container queries
- remove compilation-time wrapping of tables because it breaks nested
tables, and is not (practically) possible to support them in the same
way. replace with run-time js plugin for wrapping.
- upgrade font awesome and improve loading mechanism
- fix header title/subtitle CSS bug reported by @Maruuka 
- add "image" param to post excerpt component, so blog posts can have
thumbnails
- fix bug that prevents manual passing of tags to tag component
- add heading 5/6 styles/support
- tweak dark mode plugin
- various style tweaks

New template version checklist:

- [x] I have updated CITATION and CHANGELOG as appropriate.
- [x] I have updated lab-website-template-docs as appropriate.
- [x] I have checked the testbed as appropriate.
- [x] I have tested changed workflows on a freshly generated and forked
repo.
- fix bug where literal yaml date object doesn't get parsed correctly
- fixes addition of site.url by gh-actions workflow

New template version checklist:

- [x] I have updated CITATION and CHANGELOG as appropriate.
- [x] I have updated lab-website-template-docs as appropriate.
- [x] I have checked the testbed as appropriate.
Closes #250 
Closes #256 
Closes #260 
Closes #258

- adds `affiliation` to member portrait component
- simplify portrait component code/css
- make tag de-dupe behavior the same as search de-dupe. normalize to
lower-kebab-case.
- expand list of manubot-supported id types for falling back to orcid
api details
- change order and type of preferred ids from orcid

---------

Co-authored-by: Faisal Alquaddoomi <[email protected]>
Co-authored-by: vincerubinetti <[email protected]>
@matthuska matthuska merged commit 4feacde into main Jul 2, 2024
@matthuska matthuska deleted the fix/update-template branch July 2, 2024 11:54
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.

4 participants