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

Call for new maintainer(s) #1320

Open
deepsweet opened this issue Feb 8, 2021 · 21 comments
Open

Call for new maintainer(s) #1320

deepsweet opened this issue Feb 8, 2021 · 21 comments

Comments

@deepsweet
Copy link
Member

Hi.

My name is Kir, I'm the original author (2012-2016) of SVGO. Current maintainer @GreLI seems to be quite away from GitHub recently and I think it's time to call for new people interested in the project.

With 10M of weekly downloads from NPM I'm not exactly sure how to choose someone and grant access, it sounds like a great responsibility. I'd probably start with reviewing some PRs from a candidate and then maybe a video call. Just want to make sure it's in good hands.

Anyone?

@deepsweet deepsweet pinned this issue Feb 8, 2021
This was referenced Feb 8, 2021
@paulocoghi
Copy link

@strarsis is a strong candidate :)

@strarsis
Copy link
Contributor

strarsis commented Feb 8, 2021

Yes, I would like to improve svgo as I use it mysql myself quite a lot.

@TrySound
Copy link
Member

TrySound commented Feb 8, 2021

Hi @deepsweet! I would like to help with refreshing the package and fixing some issues. I already submitted a few pull requests. #1293 #1292 #1291 #1290

@paulocoghi
Copy link

@strarsis I just don't understand the mysql term on your phrase. 😄 I'm a little confused xD

@sk-
Copy link
Contributor

sk- commented Feb 8, 2021

In the short term I think something along the following lines should be done, so that users know that the project is indeed not dead and is going to be actively maintained.

  • Communicate the plan
  • Closing old issues and PRs. I'd close everything older than 2 years. For the rest I'd manually go through it triaging it.
  • Create templates for creating issues. For bug reports, require debug information, like version number, options, etc. For questions, redirect users to StackOverflow. For feature requests, ask them to review the new rules requirements (see below) document.
  • Review "recent" bug fixes PR pending review, there are a couple of these authored by some of the people who have shown interest on taking over. This could be a good first filter to granting access to interested developers.
  • Define some guidelines on what kind of new rules will be accepted, something akin to what ESlint has for their rules. See https://eslint.org/docs/developer-guide/contributing/new-rules#core-rule-guidelines

For the medium term:

  • Modernize codebase (Remove support for EOL node versions, maybe migrate to typescript which can be incremental, etc)
  • Improve test suite. I worked on downloading a large SVG dataset from Wikicommons, running svgo with defaults options and comparing the rendering of input and output svgs. With that technique I manage to find a bunch of errors.
  • Improve documentation

Longer term:

  • Audit existing rules. Each rule has its own maintenance cost and probably not all of them are as useful or play nice with the overall project structure.

@lazee
Copy link

lazee commented Feb 9, 2021

@deepsweet Thank you for this initiative and for your magnificent work with svgo.

I understand your need to find a trustworthy and good maintainer for this project. Whether that is @strarsis, @TrySound, @sk- (or anybody else) is yet to be seen. Personally, I don't have the time, but I will help with PRs where I can as soon as I know there is a fair chance that it will end up in the codebase.

I agree with all that @sk wrote. I would like to add that it should be kept backward compatible (as there are so many packages that depends on it) and...it would be so cool if the codebase could be split up so that we, somewhere down the road can have Deno support as well ;)

@TrySound
Copy link
Member

Hi guys. I'm maintainer now. Feel free to ping me in issues or pull requests.

@strarsis
Copy link
Contributor

@TrySound: Merging these PRs would be nice:

@yisibl
Copy link
Contributor

yisibl commented Feb 22, 2021

TrySound is an excellent maintainer!

@yoriiis
Copy link

yoriiis commented May 22, 2023

I'm not sure but the topic still seems relevant to me.

The project seems a bit slowed down, and the number of issues is quite high, ~230 currently. Moreover, there are regressions since the last release and no response on Discord and GitHub.

The project is great, really! But, as a user and contributor, I think it's important to be transparent. Is there a need for support on the project?

The subject is sensitive and is in no way negative, I am also a project maintainer and I can understand that we also have other obligations.

@deepsweet
Copy link
Member Author

Hi @yoriiis

Here is my comment regarding this from another thread #1128 (comment):

I'm the original author as it says in the `package.json`. I have all the possible access both here and on NPM, but not the time and necessary context to continue working on the project. For many years.

At the same time I can't just blindly merge PRs to the project with 15M NPM downloads per week, so I've tried to look for maintainers over the years. It's way more complicated than it seems to be, starting from the observation that there are no many candidates. In fact, there are none. One thing is to merge old and stalled for months PRs, and another is to develop it all further and push forward.

The only realistic way to dramatically change this situation is to contribute and be ready to become a new maintainer.

Talk to me.

Re-opening and pinning this issue again.

@deepsweet deepsweet reopened this May 22, 2023
@deepsweet deepsweet pinned this issue May 22, 2023
@paulocoghi
Copy link

paulocoghi commented May 22, 2023

Considering the usage stats, it's not unrealistic to estimate that SVGO is used on many commercial cases and, thus, I propose the creation of an easy path to receive recurrent sponsorship/donations.

If just a fraction of the commercial users recurrently sponsor SVGO, it may be enough to pay for fixed contributors, at least one.

Just my 2c.

(Edit) Possible sources of funding/sponsorship and/or platforms to help:

@paulocoghi
Copy link

If only 3% of the stargazers contribute with an average of $7/mo (some $5, some $10), this would generate $4k+ a month. Only 3%.

@GreLI
Copy link
Member

GreLI commented May 23, 2023

It never works that way, unfortunately. More realistic is getting some big sponsorship from large companies.

Also, project like this requires at least a couple of full-time maintainers to be carried in a good pace. But I don't think, that something like that can happen. Spare time of a few volunteers is not enough.

@SethFalco
Copy link
Member

As a regular user myself, I would be happy to help maintain svgo if you'd have me. I have availability to at least triage/resolve issues, fix reported bugs, improve documentation etc.

I've opened issues before, and have recently opened some pull requests. I understand it may not be enough yet, but just wanted to have my name down as interested already.

@deepsweet
Copy link
Member Author

@SethFalco hi! You should be able to manage issues and PRs now. Please let me know when you're ready to publish a new version to NPM, I'll provide access token.

@SethFalco
Copy link
Member

@deepsweet Hey! Sorry to pester, I just want to verify your intent here!

let me know when you're ready to publish a new version to NPM

You've granted triage access, so I can manage issues and PRs. But only actions like approving or requesting changes, or cleaning up invalid issues. It does not allow running workflows on pull requests or write access, which would be normal to justify prompting for a new version.

Can you clarify if you intended to grant triage access or write access?

@deepsweet
Copy link
Member Author

@SethFalco fixed, changed access to write.

@TrySound
Copy link
Member

You can communicate with us in discord

@SethFalco
Copy link
Member

SethFalco commented Sep 22, 2023

You can communicate with us in discord

I actually stray away of Discord and deleted my account some time ago!
I should've clarified that in my initial post, as I did notice the Discord link in the README. 😅

Let me know if that's a problem. Meanwhile, I'm always available on Matrix, Mastodon, email, and LinkedIn. ^-^'
Would also be more than happy to participate if it's ever bridged over!

@danielbayley
Copy link

@deepsweet I’m already way overextend currently 😅 But once the dust settles, I have much to contribute to this often used project…

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

No branches or pull requests