Plugin Contributors

DTDaniel Thorp3/22/2022
I'm very proud to be the maintainer of a module (Export Sheet to PDF) that is getting many, many contributions to the point that I'm now making many releases without doing any work on the code myself. These fantastic contributors are typically submitting a small plugin file (I call them "mappings") which contains some code, but is completely distinct from what I consider as the main code base. Because of this, I'm concerned with my current approach to incrementing my package's version number as if those updates were to the main code (i.e. with semver I increment the minor version for new features and the patch version for fixes). Does anyone have any ideas on a better alternative to versioning that I can use going forward, but that still mostly complies with semver. I'm also looking for advice on how I can attribute these contributors to make them feel appreciated. I currently ping them in the release notes and discord channels to thank them publicly and I also provide a file where they can leave their name and contact info in the repo (https://github.com/arcanistzed/pdf-sheet/blob/main/mappings/README.md). Another thing that I'm looking to discuss is some best practices for keeping in contact with contributors regarding keeping their contributions up to date.
Ccorporat3/22/2022
Wow what a message, with bold and everything hahah I'd just personally do date based versioning. 22.03.01 or 22.03.1
DTDaniel Thorp3/22/2022
(just doing my best to get interest in the conversation 😅) Interesting. Is there any advantage to that other than just that it "hides" the issue?
Ccorporat3/22/2022
maybe not, but you also get to not think about versioning I guess your users could always know if they're up to date (if there's a release every month(
DTDaniel Thorp3/22/2022
Sure, but that's not really my goal. I love seeing these contributions so I don't mind spending a little time to show that they're appreciated and give the versioning some thought.
Ccorporat3/22/2022
for attribution I use an AUTHORS file for copyright purposes and all contributors bot for recognizing contributions regardless of copyright (for example, answering questions)
DTDaniel Thorp3/22/2022
Hmm. The release schedule so far doesn't follow any patterns like that. I just release right away whenever there is a significant change.
Ccorporat3/22/2022
For keeping in contact, a CODEOWNERS file, properly configured, will auto-add them as reviewers, but then they might need to be added as members to the project? I mean, is it usually close enough to once a month?
DTDaniel Thorp3/22/2022
No. I just did a release yesterday and the day before. I also have one ready for today.
Ccorporat3/22/2022
I just mean to stop people from asking if they missed an update, not that it has to be
Ccorporat3/22/2022
more often than once a month is fine! 22.03.2, 22.03.3, etc
DTDaniel Thorp3/22/2022
One caveat with this is that some of the contributors don't feel comfortable using GitHub and/or may or may not even have GitHub accounts. What sort of bot is this? How does CODEOWNERS work if multiple people have contributed roughly equally to a file? Are they all required to review changes?
Ccorporat3/22/2022
All Contributors
Recognize all contributors
✨ Recognize all contributors, not just the ones who write code. ✨ All Contributors helps praise everyone contributing to open source projects.
Ccorporat3/22/2022
however you write it in the file I'd just ask them who wants to review changes also on a repository level there's settings for how many reviews are required to enable the merge button (which doesn't matter because I think you're the only one merging, and as owner you can merge whenever you want)
DTDaniel Thorp3/22/2022
Hmm. This message seems to imply a level of communication... How should I approach that? I haven't been bothering people after they contribute most of the time. I just pinged someone yesterday for the first time to fix an issue a user was having with their mapping, but I felt... uncertain
Ccorporat3/22/2022
So I feel like it's very different with a system than with a module. The system has a community around it, that means there's at least a little chatter every day, if not a user question then a rules question or an after action report you probably don't want to engage in that level of community building for export pdf sheet but it's an option for communication it makes people more likely to bring stuff up or reply to your DMs
DTDaniel Thorp3/22/2022
Gotcha. The most we have is people asking technical questions and answering each other. Some of those that have already figured it out help out the newer devs. I've taught basic JavaScript to about half my contributors 🤣
Ccorporat3/22/2022
mhm well there you go maybe ask in old pull request comments. Sometimes I do that

Looking for more? Join the community!

Want results from more Discord servers?
Add your server
Recommended Posts
more-hooks-itemroll-hooksFor those of you interested in such things, I have hacked together a way to inject hooks into the mipreHooks5eJSON.stringify jankI discovered that the problem is JSON.stringify, not parselayersTIL about CSS Layers. https://developer.mozilla.org/en-US/docs/Web/CSS/@layer ```css @layer utilitiHitDice hooks MRI just added my first merge request 😄 <https://gitlab.com/foundrynet/dnd5e/-/merge_requests/495>advantage shennaneginsdevmode extension brainstormhttps://github.com/mdn/webextensions-examples/tree/master/devtools-panelsSaving Functions as module settings@wasp I remember you asked about saving functions as settings (which quickly turned into stringifyinnew consumable typesTried adding localization strings for some new consumable types, but keep getting this ("`DND5E.Consspell-compendium-5e alpha1Overriding onDropItem & onSortItemYou'd override them in your sheet class.getter & setter wrapper for settingsI'm trying to use a getter & setter pair as an interface for `game.settings.get` and `game.settings.scrollable tab contentsIt is possible, and you're firmly in the css and DOM structure side of development with this line ofJr devI'm cleaning out my bookmarks and accidentally came back to this article. Potentially useful startinHTCPackage: `hero-creation-tool`System Specific CSSI'm not 100% about this, but it is worth watching out that your solution doesn't actually end up beiadvancement-wipCommander register apitalking about permissions, im working on the registering api for the Commander, and I wanted to ask Azgaars Blurry MapHey all. I'm taking a look at my importer for Azgaar's Fantasy Map Generator and wondering how I canccjmk overlaybut for what I wanted I think I *needed* to append it there so that I can overlay the whole screen