python-guide icon indicating copy to clipboard operation
python-guide copied to clipboard

"What to do when your library gets popular"

Open PaulMcMillan opened this issue 12 years ago • 5 comments

This should include a section on "What to do when your library gets popular" addressing backwards compatibility, alpha and beta releases, how to bring in more committers, managing community expectations, and other similar topics.

PaulMcMillan avatar Dec 28 '12 01:12 PaulMcMillan

+1

Also, SemVer.

kennethreitz avatar Dec 28 '12 07:12 kennethreitz

+1

I'm really curious about this topic too. Could some guy maintaining a popular library please provide a detail explanation on this? :)

ozgur avatar Mar 31 '13 19:03 ozgur

:+1:
Yea, that's a very special topic, that should definitely go into the guide. Also this whole "how to distribute/deploy python-application" should get a lot of emphasis. I think easy deployment is something that python lacks the most. Maybe the only reason, why Python has not replaced Java, yet. (Jar-Archives are the only thing that make Java good. They are easily deploy-able and dependency management is very easy, too.)

MaPePeR avatar Apr 01 '13 13:04 MaPePeR

Here are some general things I would suggest for the section, along with recommendations for getting started with each:

  • continuous integration: Travis
  • documentation: Sphinx + ReadTheDocs
  • stable/beta releases: a sane branching model (eg this) does this for you; just push actual releases to the cheeseshop
  • declaring a version: module.__version__. This hack is useful if you need the version elsewhere (eg sphinx config, setup.py) but can't import your package due to missing dependencies. SemVer, too.
  • run an irc channel, choose the right license, etc

simon-weber avatar Apr 01 '13 21:04 simon-weber

@simon-weber those are great points, also stressing that licenses can be changed.

sigmavirus24 avatar Apr 01 '13 21:04 sigmavirus24