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

Suggestion: Tooling to assist maintenance errands #5

Open
balupton opened this issue Nov 27, 2018 · 16 comments
Open

Suggestion: Tooling to assist maintenance errands #5

balupton opened this issue Nov 27, 2018 · 16 comments
Labels
good first issue Good for newcomers tools This thing need to be implemented

Comments

@balupton
Copy link
Contributor

balupton commented Nov 27, 2018

Travis CI recently informed me that I have over 800 packages using it.

I've done up the following tooling to assist in automating the maintenance of my packages as much as possible, they have been used for years, and probably others will find them useful:

If you have your own, post them too.

@ahmadnassri
Copy link
Contributor

ahmadnassri commented Nov 27, 2018

topic is too broad maybe?

e.g. does eslint apply here? and thus every type of "linting"

I would suggest a narrow definition of what "core maintenance" needs are and short list tooling recommendation to match

@balupton
Copy link
Contributor Author

I would suggest a narrow definition of what "core maintenance" needs are and short list tooling recommendation to match

I guess it depends on how broad or specific this repo's initiative will be. For each best practice, there may be several automated tooling solutions, as well as there may be already some automated tooling solutions that people don't know about that could inspire a best practice.

Ultimately, if it is a better fit outside this initiative, then an awesome-maintenance list repo would serve this purpose well enough.

e.g. does eslint apply here? and thus every type of "linting"

Sure. eslint and prettier definitely help facilitate maintenance.

@balupton balupton changed the title Tooling to assist maintenance Suggestion: Tooling to assist maintenance errands Nov 28, 2018
@vweevers
Copy link

@vweevers
Copy link

an awesome-maintenance list repo would serve this purpose well enough

Perhaps accompanied by a guide that focuses on workflow; how to use the tools most effectively.

@ljharb
Copy link
Member

ljharb commented Nov 29, 2018

Linting to avoid bikeshedding also includes any usage of eslint, but especially the airbnb config.

@MatthewHerbst
Copy link

MatthewHerbst commented Dec 6, 2018

Automated tooling that creates PRs with package updates can go a long way too to preventing bugs and security issues from spreading too far (so long of course as the PRs are addressed in a timely manner).

Ex (there are many such tools), this is just one I found googeling: https://greenkeeper.io/

Or even just add ing npm-check-updates runs to CI builds could be very informative for package maintainers.

@TheHollidayInn
Copy link
Contributor

Would CodeClimate be a good link here: https://github.com/codeclimate/codeclimate? I've used this in similar tools to catch a good amount of basic code quality issues. If linting is not considered then nvm :P

@caraya
Copy link

caraya commented Dec 7, 2018

In addition to listing the tools, we may need to add pre-requisites. For example, if you add Greenkeeper you need to have some sort of CI tool enabled for it to work. If you use Renovate then does your project qualify as open source or is it a personal project and you have to pay after the trial period (it's not the amount that matters but the fact that you have to pay).

Testing for bikeshedding depends on the tool you use and what preset is installed. We should encourage people to lint their code and provide alternatives rather than preach about single options. I also would like to see Eslint and its presets (Airbnb, Google, Standard) included in the linter section. Rather than bikeshedding, I would call it "code style consistency" or just plain linting.

Last thought on this. I think it's important to note that these are options and we're not advocating specific ones.

@hutson
Copy link

hutson commented Dec 25, 2018

Last thought on this. I think it's important to note that these are options and we're not advocating specific ones.

I saw this discussion as a great opportunity to discuss tooling that lowers the maintenance overhead.

For example, I find it really helpful to maintain my packages using a dependency update tool.

I feel it would be really helpful to maintainers to suggest tools (and not a particular brand) that can help them maintain their projects and how it does so (how it can help them and the community)

@Eomm
Copy link
Member

Eomm commented Aug 31, 2019

Maybe someone could create an awesome list and we could say to users:

We have talk about ci, testing, versioning, auditing, updating etc.. it is a lot of stuff, so check out this awesome list to choose the right tool for you
we have built these default settings if you want to use them

?

@Eomm Eomm added good first issue Good for newcomers tools This thing need to be implemented labels Aug 31, 2019
@balupton
Copy link
Contributor Author

copy of my comment here #280 (comment)


FWIW

@bevry accomplishes the goal of this automatically for all of its packages, through the following pieces

@dominykas
Copy link
Member

@balupton sounds like a cool set of tools! I think in the existing docs we have avoided making specific package recommendations, but instead we list several packages that do similar things. It would probably be useful to mention some of your tools in some of our existing guidelines, as well as providing alternatives?

@balupton
Copy link
Contributor Author

It would probably be useful to mention some of your tools in some of our existing guidelines, as well as providing alternatives?

Sure, that's your discretion.

@wesleytodd
Copy link
Member

@balupton, if you can identify places where your tools could be mentioned in the documentation we are building, it would be helpful to open PR's against those so we are sure to include them in the right places. I don't think those here will always know which of the ones you list are intended to fit where in the SDLC.

@balupton
Copy link
Contributor Author

balupton commented Dec 4, 2019

@wesleytodd
Copy link
Member

Great! The PRs should be simple enough then. Can we close this issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers tools This thing need to be implemented
Projects
None yet
Development

Successfully merging a pull request may close this issue.

12 participants