Releases: tldr-pages/tldr
Client specification v2.2: New cache asset URLs, 10 years of TLDR pages
Calling all maintainers of both clients and tldr alike!
Since the previous v2.1 release, a lot of work has been going on behind the scenes to improve tldr
and how we publish and distribute assets.
Important
With this release, we are introducing a newer version of client specification with a major change to the asset URLs to use GitHub releases (to replace the existing method of providing assets via the https://tldr.sh domain).
Changelog π
- Removed redirect text from the caching section (#12133) (thanks @sbrl)
- Updated asset URLs to use GitHub releases (#12158) (thanks @acuteenvy)
- Add requirement to disambiguate triple-brace placeholders (#12158) (thanks @acuteenvy)
- Add notice to deprecate the old asset URLs (#12452) (thanks @acuteenvy)
Change in Asset URLs
Previously, we distributed assets via GitHub pages hosted in a combined Git repository for both the website and the assets artifacts. Which introduced multiple issues with maintenance and size constraints, after multiple discussions like #12048, we concluded that GitHub releases are the ideal candidate to publish the ZIP, PDF and checksum assets in a rewriteable way.
This client specification release requires all clients to update their cache URLs to the new GitHub release URLs. The updated caching section is attached below for reference:
If appropriate, it is RECOMMENDED that clients implement a cache of pages. If implemented, clients MUST download the entire archive either as a whole from https://github.com/tldr-pages/tldr/releases/latest/download/tldr.zip or download language-specific archives in the format
https://github.com/tldr-pages/tldr/releases/latest/download/tldr-pages.{{language-code}}.zip
(e.g. https://github.com/tldr-pages/tldr/releases/latest/download/tldr-pages.en.zip). The English archive is also available from https://github.com/tldr-pages/tldr/releases/latest/download/tldr-pages.zip.
Caution
Prior to version 2.2, the client specification stated that clients MUST download archives from https://tldr.sh/assets. This method is now deprecated, and will be removed in the future.
Caching SHOULD be done according to the user's language configuration (if any), to not waste unneeded space for unused languages. Additionally, clients MAY automatically update the cache regularly.
10 years of TLDR pages π
We're thrilled to announce that the TLDR pages project celebrated its tenth anniversary this past December, marking a decade since @rprieto's initial commit. What began with a focus on osx
(macOS) has blossomed over the years into a comprehensive resource spanning multiple platforms, with thousands of pages added.
With its expanding reach across the FOSS scene, TLDR Pages owes its success to the countless contributors and maintainers who have dedicated their time and expertise to the project. Thank you for your invaluable contributions. Here's to another ten years of making knowledge accessible and empowering command-line users globally!
Client specification v2.1: Escaping placeholder syntax and automatic platform detection
Calling all maintainers of both clients and tldr alike!
Since the previous v2.0 release, substantial work has been going on behind the scenes to improve tldr
, spanning from new platform additions to adding l10n support for tldr book.
With this minor release, we are introducing a newer version of client specification with multiple fixes to existing sections.
Changelog π
- Add requirement to support escaping the placeholder syntax in certain pages (#10730) (thanks @acuteenvy)
- Add suggestion to detect new platforms added to the relevant
pages
directory automatically (#11523) (thanks @kbdharun)
Updates
Platform additions: BSD π»
We have added support for FreeBSD, NetBSD and OpenBSD platforms to the pages
directory. Currently, it contains a small subset of package manager commands. If you use any BSD platform-specific commands, we suggest creating a PR to add them to the subdirectories. (thanks @mrusme, @acuteenvy)
PDF changes
Tldr book is now available in your language π
We have added support for generating tldr book PDFs for translations in our CI with a new build-pdf
script (#10969). The default font of the pages was updated to Noto Sans to support additional languages.
The PDF files contain rendered tldr pages from your pages.<locale>
directory sorted platform-wise. They are available here and are also visible on our website at https://tldr.sh/assets/tldr-book-<locale>.pdf
.
Note
Tldr book PDFs will not be available in a few languages due to rendering issues upon generation.
Platform-specific PDF creation
We have added support to create platform-specific PDF pages in the render.py
script. (#11195) (thanks @kbdharun)
General Updates
- There have been numerous improvements throughout our test suite and action workflows. (thanks to @sebastiaanspeck)
- We have added a symlink for
pages
directory topages.en
. (#11139) (thanks @acuteenvy)
For more updates, check out the tracker issue.
Last month we had a successful hacktoberfest, with more than 400+ PRs merged from dozens of contributors.
Thanks to all the contributors and maintainers for their contributions.
Client specification v2.0: Introducing individual translation archives and other changes
Calling all maintainers of both clients and tldr alike!
Since the v1.5b release, the master
branch was removed. The clients that haven't updated got moved to a dedicated section in the wiki. If you are a user of any of these clients, we highly recommend migrating to a supported community client or one of our official clients.
Client authors
Changelog
This version of the CLIENT SPECIFICATION introduces the following changes:
- Add recommendation to support macos alias for osx (#7514) (thanks @MasterOdin)
- Drop the special "all" platform from the --list flag (#7561) (thanks @dbrgn)
- Drop the master branch from the assets link. (#9668) (thanks @MasterOdin)
- Require support for long options (#9651) (thanks @pixelcmtd)
- Add recommendation to support caching individual translation archives (#10148) (thanks @kbdharun)
Requiring support for long options
Clients will be required to add support for long options for commands along with short options for a more uniform experience.
Introducing caching support for individual translation archives for each language
Addressing the community's requests, we have added support for individual language-specific translation archives in #10555 (thanks @adamazing). If your client displays pages based on the user's language configuration from the cache, now you can include the selected language along with English as a fallback to save space from unused languages.
Complete translation archives will still be available for clients using it.
tldr maintainers
Dependabot alerts and CodeQL analysis got enabled on compatible repositories org-wide.
Community updates
- The primary chatroom address has been updated to #tldr-pages:matrix.org. The old Gitter chatroom address was added as an alternate published address.
- Last year, we faced an incident with the CLA [bot], where we fixed the title of our project in the GitHub Gist that invalidated any previously signed CLAs of existing contributors. We are sorry for the inconvenience caused, and we suggest resigning the CLA when you contribute again.
- The domain https://tldr.sh has been verified in the tldr-pages GitHub organization. (thanks @agnivade)
- We are now on Fediverse. We have created a new account on Fosstodon (A @mastodon instance for FOSS projects). Feel free to check out https://fosstodon.org/@tldr_pages. (thanks @sbrl)
- The live demo web client on the official website has been updated (tldr-pages/tldr-pages.github.io#65) to use https://tldr.inbrowser.app. (thanks @rwv)
- Introducing the new Snap package for our Python client. (thanks @soumyaDghosh)
- We have added featured information to the
tldr
andtldr-pages
topics on GitHub. (thanks @kbdharun) - New maintainers and members got added with other role transitions, check out MAINTAINERS.md for more information.
Last year's Hacktoberfest was one of the biggest for tldr-pages, with more than 700 PRs merged from 240+ contributorsπ . We are excited for this year's Hacktoberfest next month.
Thanks to all the contributors and maintainers for their contributions.
`master` β `main` branch renaming
Calling all maintainers of both clients and tldr alike!
The master
branch has now been renamed to main
.
Client authors
While a new mirror branch master
that reflects main
has been created, please update your clients if required to default to main
instead of master
. In the future the master
mirror branch will be deleted.
Note though that it is RECOMMENDED that you download our tldr.zip
instead of cloning this repository, as per our client specification if appropriate.
tldr maintainers
All existing PRs and branch protection rules have been updated.
Please watch out for new PRs that merge against master
, as I have been unable to create a branch protection rule on master
that doesn't also block GitHub Actions from pushing to it.
Client specification v1.5
- Add requirement for converting command names to lowercase before running the page resolution algorithm.
- Use HTTPS for archive links.