Releases: lowlighter/metrics
Version 3.14 — 🥳 1y of metrics!
📦 New features
- ♐ Code snippet of the day ✨ new!
- Display a random code snippet of code you've recently wrote so people can see what you're currently working on! (#526)
- 💕 GitHub Sponsors ✨ new!
- Display your GitHub Sponsors introduction and goal and share what you're doing for open-source! (#548)
- 📅 Isometric commit calendar
- 🎩 Notable contributions
- Display an informational message when empty (#516)
🧰 Fixes
- achievements: rename "Scripter" to "Gister" (#498)
- achievements: handle leap years for account age (#501)
- languages: skip merge commits from recent analysis (#517)
- languages: ensure lang is defined before checking categories (#529)
- isocalendar: use local max rather than all-time max for bars scaling (#532)
- other: update Linguist to 2.0.0 (#518)
💪 Contributors
- @lowlighter (maintainer)
- @Nixinova #518 #524
- @spenserblack in #501 #537
🎉 Celebrating 1 year of metrics!
I'm honestly quite surprised that this project got so much traction, but I'd like to thank you all for your support, and more particularly:
- My 5 sponsors (including one-time givers)
- All 28 contributors
- All 4 000+ stargazers
- All 300+ forkers
- And all users of this project of course 🥳 !
Metrics is now a fairly large projects and has grown a lot over last year with:
- 36 plugins which covers a wide range of usages
- 4 templates including community templates support along with markdown, PDF and JSON outputs support
- 3 ways of consuming metrics, using
Metrics embed
through either web server or GitHub Actions, or usingMetrics insights
for a quick overview - Automated workflows for testing, building, releases and deployments
I've learnt a lot with GitHub ecosystem (its API, features, the container registry, etc.), architecture designs, open-source projects management, and other various stuff.
Thanks to all past year contributors!
Thanks again for your feedbacks and support, and I hope you'll continue using Metrics in the future 😎 !
Version 3.13
📦 New features
- 💬 Discussions plugin
- #469 Add new metrics about your upvoted discussions and comments
- 🏆 Achievements
- 🈷️ Languages
- #477 Add
plugin_languages_categories
andplugin_languages_recent_categories
options to configure which languages categories should be displayed (supported categories aredata
,markup
,programming
andprose
)
- #477 Add
- 📘 Repository template
- #472 Add new metrics about user count if repository hosts a GitHub Action. This uses GitHub code search to find occurences of said action in user workflows
🧰 Fixes
- c5af923 Community templates: Fix an issue which prevented the use of community template
- #453 Discussion plugin: Sort discussions categories display
- #458 GitHub Action: Remove unused dependencies
- #465 Follow-up: Use display name instead of login
- 5c72a3c Achivements plugin: improve wording of
Inspirer
achievement - a6be52f GitHub Action: Will now rebuild image if GitHub container registry is not available instead of failing
- 45d86dd Metrics insights: Fix display issues
- 4490de8 Discussions plugin: Fix display issue
- cb741f0 Lines plugin: Ignore repositories when stats could not be fetched instead of failing
- 2fbed5a Base plugin: Fix display issues with calendar (wrong order and last day always blank)
- #479, #480 , #487 Documentation: Fix typos
- #485 Dependencies: Move non-NodeJS script outside of
package.json
- #467 Languages plugin: All languages colors are now loaded when using
indepth
option even if language wasn't previously loaded through GitHub API - c70b649 Habits plugin: Fix an issue where events were filtered case-sensitive, causing issues with usernames with uppercase in it
- c70b649 Languages plugin: Fix an issue where events were filtered case-sensitive, causing issues with usernames with uppercase in it
- 5d43b98 Web instances: Plugins only intended for repositories templates are now hidden
- c9a1ef7 Web instances: Fix an issue where base plugin options were also displayed in repositories plugin options
- #490 Repositories plugin: Fix an issue where using this plugin could cause unattended side effects (especially with base, follow-up and languages plugins but not limited to)
💪 Contributors
- @lowlighter (maintainer)
- @Nixinova #458 #453 #465 #485 #477 #467
- @ArdaGurcan #479 #480
- @TheNetAdmin #487
💕 Sponsors
Thanks for your support 🎉 !
Version 3.12
⚠️ Upgrading to 3.12 is highly advised to fix issues that retro-actively impacts all prior versions of metrics because of external changes (no action needed if you are using a rolling branch like@latest
,@main
or@master
).In particular, the following issues have been fixed:
- Action was always rebuilt (whether using a fork or not) introducing longer runs and possible unstabilities
indepth
feature from language plugin was entirely broken following release of github/linguist 7.16
📦 New features
- 💬 Discussions plugin ✨ new!
- #430 Add new section about GitHub discussions stats! It can keep track on how many discussions you started and in which categories, along your comments and answers total count
- 📓 Repositories plugin ✨ new!
- #431 Display a list of chosen featured repositories that you are proud of using this new plugin!
- 🏅 Repository contributors
- #443 Display your repositories contributors per contribution categories!
- 🏆 Achievements
- 📘 Repository template
- #433 Add deployments and environments metrics
- 🌐 Web instances
- 🦑 Miscelleanous
🧰 Fixes
- #428 Support plugin: fix crash because of outdated selector
- #429 All: normalize how licenses are displayed
- #424 Languages plugin: fix
indepth
feature - #414 All: fix docker image not being pulled and being rebuilt each time
- #440 Base: display all commits instead of only last year
💪 Contributors
- @lowlighter (maintainer)
- @Nixinova #436 #441
💕 Sponsors
Thanks for your support 🎉 !
Version 3.11
📦 New features
↔️ Introducing columns display size ✨ new!- #371 You can now use
columns
inconfig_display
option for a 2-columns layout which will render as a single column on smaller devices
- #371 You can now use
- 🈷️ Most used languages
- 5120f64 Estimation now display the last day that metrics was able to fetch from GitHub events, instead of the option value to avoid confusion
- 94539fa Add
plugin_languages_aliases
to support custom languages display names - #356 Recently used languages now reproduce a "partial repository" from events fetched and retrieved the
.gitattributes
of your repository to take into account linguist overrides - #380 Indepth now display number of commits and files processed
-
- c13582e Improvement in indepth algorithm to handle large
git diff
- c13582e Improvement in indepth algorithm to handle large
- 💡 Coding habits
- 🎭 Comment reactions
- 7f08abb Add
plugin_reactions_limit_issues
to support custom number of issues and pull requests to fetch for reactionsplugin_reactions_limit
now targets only comments from issues and pull requests
- 7f08abb Add
- 🦑 Miscelleanous
- aa4225f
config_timezone
now set the timezone of metrics action, meaning that all dates will be based on passed timezone (including data fetched from GitHub, like commits) - #364 Improve apt process in Dockerfile
- #372 Issue icons were replaced to match GitHub new design
- #390 Upgrade to node 16
- 174f2a2 Add
delay
option which temporises jobs (can be used to avoid reaching abuse limit) - 78a7c97 Add
repositories_batch
which control how many repositories are fetched at once (can be useful for users with a really lot of activity)
- aa4225f
🧰 Fixes
- 37f686a ✨ Fix a fatal error which prevented insights from loading
- 1a52951 🧱 Fix broken
config_output: json
- #379 🌐 Generated workflow configurations had some options which were invalid
- 98e7f05 💡 Runtime errors are now displayed in output
- #393 ⏰ Fix several Wakatime display issues
- #354 🗃️ Use correct timezone in footer
- #400 🌟 Unknown licenses are now displayed gracefully
- 5a15dfd 👨💻📰 Make login case insensitive
- #416 🈷️ Fix a case where undefiend file url made the plugin crash
💪 Contributors
- @lowlighter (maintainer)
- @PeterDaveHello #364
- @Zenoo #371 #373 #390
- @spenserblack #379
- @cherryblossom000 #392 #393
- @MatteoGheza #389
- @aw1cks #400
- @Nixinova #416
💕 Sponsors
Version 3.10
📦 New features
↔️ Introducing larger display size ✨ new!- #310 You can now choose between
regular
(default) orlarge
renders throughconfig_display
option - #310 Plugins may render differently depending on size chosen
- It is advised to keep
regular
size if you want metrics to be displayed well both on mobile and desktop (as on mobile it may be rescaled down when displayed)
- It is advised to keep
- #310 You can now choose between
- 🈷️ Most used languages
- #325 Add
plugin_languages_indepth
option to perform in-depth analysis of your languages statistics- This will clone your repositories, run github/linguist on them and iterate through matching
git log
entries. See plugins/languages/README.md before enabling - Use
commits_authoring
for better results - b0d37f3 Use
npm run indepth
to launch this tool locally on a given repository
- This will clone your repositories, run github/linguist on them and iterate through matching
- #327 Add
plugin_languages_sections
and new "Recently used" section - #329 Add
lines
toplugin_languages_details
to display an estimate of number of lines of code written (requiresplugin_languages_indepth
to be enabled)
- #325 Add
- 🎩 Notable contributions
- #293 Contributions are now sorted by most starred
- 📰 Recent activity
- 2b9d8e8 Add
plugin_activity_load
to support a custom number of activity events to load
- 2b9d8e8 Add
- 🎟️ Follow-up of issues and pull requests
- #310 Repository template now displays closed pull requests like classic template
- 💡 Coding habits
- 🧑🤝🧑 People plugin
- d2d5762 Default value for
plugin_people_limit
has been from 28 to lowered 24
- d2d5762 Default value for
- 🌐 Web instances
- #299 Add copy button to action tab
- 🦑 Miscelleanous
- aabb21f You can now use
@main
branch instead of@master
branch - 6b129ab Text "forks" was changed to "forkers" in repositories base section to avoid confusion
- 6b37fe4
dependabot-preview[bot]
is now ignored by default - #308
config_padding
now accepts absolute values- Default value has been changed for better SVG heights, you may need to re-adjust this option if you were using it
- #326 Use config timezone in all displayed times
- #336 Timezone metadata has been moved next to generated timestamp for better readability
- aabb21f You can now use
🧰 Fixes
- 421a770 📰 Fix error when a push event has 0 commits
- 75978e8 📰 Fix forked repositories where target repository wasn't displayed
- #310 📰 Fix repository template display issues
- #310 🏅 Fix an issue where unknown commits author were crashing the plugin
- #310 📜 Fix an issue where licensed was returning an empty result which made the plugin crash
- dca7f76 🗃️ Fix affiliations constraint where authenticated user wasn't the target user
- #307 🗃️ Generated date now use defined timezone instead of GMT+0
- d25b286 🧱 Fix
config_padding
which was not handling well percentage values and was actually useless - #347 🗨️ Fix an issue where comments count were marked as undefined
- #346 ✨ Fix a clipping issue on mobile
👏 Achievements
Reached 4+ millions downloads, 3 000+ stargazers and 1 000+ commits!
Thanks for your support 🎉 !
💪 Contributors
- @lowlighter (maintainer)
- @bokub #293
- @spenserblack #299
- @yutkat #315
- @Nixinova #326 #337 #336 #340 #347 #346
💕 Sponsors
Version 3.9
📦 New features
-
✨ Metrics insights
- #291 Add introduction, followup and habits sections
-
📰 Recent activity
- f9aa59b
plugin_activity_limit
is now able to load up to 1000 events instead of 100
- f9aa59b
🧰 Fixes
- 2958530 ⏰ Fix 404 error when user was not explicitely specified by
plugin_wakatime_user
- 4ff4ef1 🏆 Remove debug logger
- 348827c 📰 Fix text display for repository creation event
- 348827c 📰 Published releases without name will display tag name instead
- a06ba37 💡 Fix event loader which was always loading 100 events less than expected
- 9ae1151 ✨ Fix links display for issue comments
- 50b93a7 🎟️ User query will only execute if account type is set to
user
- 0759543🧱 Metrics won't fail if it cannot retrieve token scopes for metadata display
💪 Contributors
- @lowlighter (maintainer)
💕 Sponsors
Version 3.8
📦 New features
- ✨ Metrics insights
- 🎩 Notable contributions
- 📰 Recent activity
- 🗨️ Stackoverflow plugin
- 🎭 Comment reactions
- #256 Add
plugin_reactions_ignored
to ignore reactions of user (defaults togithub-actions[bot], dependabot[bot]
)
- #256 Add
- 🏅 Repository contributors
- #256
dependabot[bot]
user is now ignored by default
- #256
- 📒 Markdown template
- #263 SVG plugins can now directly be embed in a tempate without the need of creating separated jobs
- Use
<%- await embed({isocalendar:true}) %>
to include an isocalendar for example - Rendered images are pushed to
markdown_cache
folder (defaults to.cache
)
- Use
- #270 This template can now be rendered as PDF file by using
config_output: markdown-pdf
- #263 SVG plugins can now directly be embed in a tempate without the need of creating separated jobs
- 🦑 Miscelleanous
- #238 Add support for
extras_css
option to let users inject raw CSS without template edition- For heavy styling, consider using community templates instead
- #272
filename
extension is now automatically deduced based onconfig_output
value - #273
config_output
now defaults to"auto"
which will use the prefered template output (e.g.svg
for classic, repository and terminal templates andmarkdown
for markdown) - #273 Template now define which account type and output formats are supported and will throw an error in case of incompatibility
- #273 Community templates can now use a
template.mjs
fallback from any official templates rather than just the classic one
- #238 Add support for
🧰 Fixes
- #243 Fix
No commits between
error when a run resulted in no diff and tried to open a new pull request
💪 Contributors
- @lowlighter (maintainer)
- @Nixinova #242 #244 #262
- @MeerBiene #276
💕 Sponsors
Version 3.7
✨ Introducing Metrics insights!
A web-tailored experience to see any user's metrics at a glance!
Use metrics.lecoq.io/about to share nice infographics with your friends or on social medias!
No configuration and login required!
Display rankings, highlights, commits calendar, used languages and recent activity with a single simple link using metrics.lecoq.io/about/your-github-username !
Don't hesitate to send feedback on GitHub discussions!
📦 New features
🧩 Plugins
- 🎩 Notable contributions ✨ new!
- #222 Show that you contributed to large-scale projects thanks to the notable plugin!
- 📸 Website screenshot ✨ new!
- 🏆 Achievements
- #230 Add organization account support!
- #214 Ranking is now more accurate and base itself on github.com/search for total entries
- #214 Current ranks are now always displayed unless minimal requirements are not reached and would result in unprecise results
- #214 Add new Inspirationer achievement for users with highly forked repositories
- #230 Add new Sponsor achievement for users who sponsors other projects or people
- 🈷️ Most used languages
- #228 Add support for
plugin_languages_limit
- #228 Add support for
- 🗨️ GitHub Community Support ✨ new!
- #231 Display your statistics from GitHub Community Support
🖼️ Templates
- 📒 Markdown template ✨ new!
- #209 Add new markdown feature that can template a custom markdown file with metrics data!
- See a full example here of this powerful template!
- #211 Add special markdown support for several plugins which includes hyperlinks and improved images rendering
- Note: images below are rendered as PNG but are actually markdown texts
- 📰 Recent activity
- ✒️ Recent posts
- 🗼 Rss feed
- 🐤 Latest tweets
- 📌 Starred topics
- #209 Add new markdown feature that can template a custom markdown file with metrics data!
🌐 Web instances
- #215 Disabled plugins can now be checked to still preview "placeholder"
- #215 Actions and Markdown tabs are now available when you write an username instead of requiring a rendering
- #215 Add missing placeholder texts
- #215 Update Nightscout placeholder
- #228 You can now press Enter key in user input field to generate metrics instead of clicking on button
- #233 Web instances should now load faster, and have some visual improvement, including loading indicators
- 11a7bed Timeouts errors from GitHub API will now be explicitely displayed
🦑 Miscelleanous
- #212 Add support for
gist
inconfig_output
option to let users upload their files to a gist instead of in their repositories- See documentation for more informations
- #227
token
is now tested before rendering to early detect a possible invalid token - 4892d69 Base option
repositories_affiliations
now allow multiple affiliations constraints- Following #232, if you're the
token
owner, bothaffiliations
andownerAffiliations
constraints will be set instead of onlyownerAffiliations
for more accurate metrics
- Following #232, if you're the
🧰 Fixes
- #211 Fix hashnode source posts offset
- #211 Fix a case where tweets with a single attachment was stripped out
- #218 Fix "merged" state in activity plugin
- #219 Update faker API
- #228 Fix locked achievements percentage display
🐛 Known issues
plugin_tweets_attachments
option may cause some issues on classic template- If you encounter display issues with it you can try to disable it, or use markdown version instead
💕 Sponsors
💪 Contributors
- @lowlighter (maintainer)
- @0xflotus made their first contribution in #235
👏 Achievements
Reached 2 millions downloads!
Metrics is around the 10kth most starred repository, and according to this tweet, it is the 2nd most starred Action on marketplace!
Thanks for your support 🎉 !
Version 3.6
📦 New features
- 🗼 RSS feed plugin ✨ new!
- #192 Add new plugin to display your own RSS feed!
- 💹 Stock plugin ✨ new!
- #196 Add plugin to display the stock market price of your company!
- 🌇 GitHub Skyline 3D calendar
- 🎟️ Follow-up of issues and pull requests
- e4c560b Added a title to this plugin
- 🌐 Web instances
- 🦑 Miscelleanous
🧰 Fixes
- 13385ea Fix achievements percentage which was incorrect due to rescaling
- 5f6db8a Achievements now use pre-computed colors instead of filter css properties because it was unsupported on Safari
- 89182c6 Remaining requests are now displayed correctly on web instance
- #200 Resolve overflow-x bug on the footer (web instance)
- 1b844ae Fix web instance resize on already computed images (was breaking animations)
- ec80d0d Spotify tracks in playlist mode was displaying twice artist name
- addefee Refactor activity template to ensure text-overflow ellipsis
- 190dd39 Tweets plugin won't die when includes object is empty
💪 Contributors
- @lowlighter (maintainer)
- @Milo123459 #186
- @qinyihao #194
- @kimlimjustin #200
💕 Sponsors
Version 3.5
📦 New features
- 🗨️ Stackoverflow plugin ✨ new!
- #159 Add new stackoverflow plugin!
- #159 Display various metrics about your stackoverflow account like your reputation, badges, questions, answers and comments
- #159 Display your top answers and questions, along with your recently submitted answers and question
- 🎭 Reactions plugin ✨ new!
- #180 Display overall users reactions of your latest comments!
- 🏆 Achievements plugin ✨ new!
- 🐤 Tweets plugin
- #164 Add
plugin_tweets_attachments
option to display tweets attachments
- #164 Add
- ✒️ Recent posts plugin
- 🌇 GitHub Skyline 3D calendar
- b064ed1 Add
plugin_skyline_quality
option to tune skyline animation quality (⚠️ significantly increase file size, use with caution)
- b064ed1 Add
- 🧑🤝🧑 People plugin
- #166 Add
plugin_people_sponsors_custom
to let specify custom sponsors (intended for unsupported GitHub sponsors sources)
- #166 Add
- 📅 Isometric calendar plugin
- 🦑 Miscelleanous
- #158 Add
config_gemoji
option to render GitHub custom emojis like - 8c16f54 Repository name for repository metrics can now be passed through
repo
option instead ofquery
option - 8c16f54
committer_token
now automatically defaults to${{ github.token }}
without the need of being set explicitly - #163 Migrated imgb64 to jimp for better optimization
- 02ddae1 Add
experimental_features
option - 61e9bfc Add
retries
andretries_delay
option to automatically retry failed rendering - 64fe0c8
@master
images are now tagged with their version name - #175 when using
lowlighter/metrics@master
, images will now be pulled from GitHub container registry to save time and avoid rebuilding images- Set
use_prebuilt_image
tono
to disable this feature - This options does not impact forks, where image will be rebuilt everytime to take into account eventual changes
- Set
- #178 Add
output_action
option to configure output behaviour- It is now possible to open a pull request instead of committing directly rendered metrics
- Generated pull requests can then be manually approved or auto-merged by the action
- It is now possible to open a pull request instead of committing directly rendered metrics
- #178 Rendered metrics are now saved to
/metrics_renders/${filename}
which lets you perform other actions on it in your workflow - a2215a0 Add
json
type toconfig_output
option which return all data gathered by metrics in a single JSON instead of rendering an image - c0f0363 Add
committer_message
option to use custom commit messages- If using
commiter_token
different fromGITHUB_TOKEN
, ensure you add[Skip GitHub Action]
or handle correctly workflows skip to prevent infinite loop
- If using
- #158 Add
- 🚧 Disabled features
- #172
optimize
option has been disabled due to display issues- It is possible to re-enable this option with experimental feature flag
--optimize
- It is possible to re-enable this option with experimental feature flag
- #172
🧰 Fixes
- 3eb0e30 Update played at text for music plugin
- #156 Normalize dates in plugins
- 8fe2220 Fix missing closing tag in tweets plugin
- 9e9b066 Fix missing closing tag in nightscout plugin
- 9e9b066 Error message for nightscout plugin is now displayed
- e52cefe Fix some cases where puppeteer instances were stuck indefinitely resulting in never-ending workflow runs
- 3e6c713 Fix lines plugin where it would fails on repositories with "null" authors
💪 Contributors
- @lowlighter (maintainer)
- @Milo123459 in #156 #184
💕 Sponsors
👏 Achievements
Reached 1 million downloads, 2.5k+ stargazers and 100+ forks!
Thanks to everyone 🎉 !