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

Looking for maintainers! #590

Open
sdispater opened this issue Dec 13, 2021 · 33 comments
Open

Looking for maintainers! #590

sdispater opened this issue Dec 13, 2021 · 33 comments

Comments

@sdispater
Copy link
Collaborator

Due to a lot of my limited time dedicated mostly to Poetry, Pendulum has not received the amount of care it deserved.

There is currently a WIP to modernize the codebase (see #569) and the 3.0 version is planned for the first half of 2022 but it's not going as fast as I would like.

So, I am looking for people interested in co-maintaining the library. Any type of help (bug fixes, issue triage, improvements) is welcome.

If you are interested in helping, let me know by commenting on this issue so that I can add you as a member of the project.

@NickFabry
Copy link
Collaborator

You know, I'd be interested in maintaining the project. I use pendulum quite a bit, and I like it very much, both its goals and its performance.

However, I don't know if I have the skill to maintain it. There would probably be a substantial amount of time (months?) before I could usefully contribute patches or judge those of others.

With that caveat noted, I'd like to help.

@anvit25
Copy link

anvit25 commented Dec 14, 2021

I am interested in helping, but same as Nick, I'm not a 100% sure if I can do it completely independently (I can write/modernize the code independently, but it would be better if someone else approves it)

@sdispater
Copy link
Collaborator Author

sdispater commented Dec 16, 2021

@NickFabry and @anvit25, thanks for being willing to help with the project. I appreciate it.

I can add you as co-maintainers of the project and you can go at your own pace from there. Even small changes or bugfixes can go a long way, so any contribution is welcome.

And I'll try to supervise and review PR as much as I can if it can make you feel more comfortable.

@NickFabry
Copy link
Collaborator

@sdispater - thank you for starting the project! I'll try my best, and I'll give it a go. I definitely would appreciate the adult supervision & review for a while until I get a little more skilled & familiar.

@patrickmckenna
Copy link

@sdispater if you could use another hand, I'm happy to help.

@Didah
Copy link

Didah commented Jan 26, 2022

I'd love to help, have used pendulum for work for years now and want to see it keep improving.

@miko13
Copy link

miko13 commented Jan 31, 2022

if you still need more hands, I would love to help out!

@sterlinm
Copy link

sterlinm commented Feb 25, 2022

@sdispater I'm also interested in helping out.

It looks like you're planning some changes to the interface (e.g. removing the dst_rule if I'm reading recent commits correctly). Do you have a write-up of your planned changes somewhere? No big deal if not, just curious!

@hrishikeshrt
Copy link

I would also love to help with bugfixes, small changes as best as I can.

@rileyjohngibbs
Copy link

Count me interested. ✋

@GeoXydias
Copy link

If you still need people, I could also do some things.

@Jorricks
Copy link

Hey @sdispater,
First of all nice work on this library!
Second, I would love to maintain the library, however, I feel like there are nice consortiums that make maintaining a library like this easier. One example is https://jazzband.co/ but I am pretty sure there must be more.
Here everyone in the organization can maintain the repositories that are part of the group.
This way, you have way less things to worry about and we get started on going through the issues :).

@theonesean
Copy link

Hi, @sdispater, I've been involved in other open source projects as a contributor, and have used Pendulum happily for several years in my day gig. I would need a bit of time to get up to speed, but this is a project I feel I could sink my teeth into, and potentially devote resources to in the long term.

Thanks!

@lemerchand
Copy link

I'm also interested in helping if I could. I may not be the most professionally experienced programmer and I'm not sure what I could help with, but if there is any thing I can do I'd be happy to help!

@notatallshaw-gts
Copy link

Out of curiosity did this go anywhere? To be clear I am not volunteering and therefore appreciate that I am not entitled to any update, I am just trying to assess the situation.

I see several important fixes (e.g. the timezone database is no longer correct by default) are pending release and there are some interesting PRs that look like they could be reviewed (e.g. #716).

I see a prerelease of 3.0 was published last year but it seems no further work to a new release has happened since then?

@Gamrix
Copy link

Gamrix commented Sep 16, 2023

Given that this is a library used at the company I am at, I am happy to help once version 3 is in beta. (I can't handle the optics of using an "alpha-level" release for production work). There especially is a lot related to typing that I would be happy to improve.

@jabak3r
Copy link

jabak3r commented Sep 18, 2023

I would like to help as well I use Pendulum daily and would love to give back to the community

@josephmancuso
Copy link

willing to maintain. will use my own resources and Masonite resources.

will need to be invited though

@eaguad1337
Copy link

I'd love to help. I am currently contributing to Masonite too.

@cunla
Copy link

cunla commented May 28, 2024

Hi, are you still looking for maintainers?

@stripedpumpkin
Copy link

Hello, I was wondering where you guys were standing on the pendulum maintenance situation. It seems like the issues and PR are piling up. Do you guys have an external channel? Do you guys need help?

@Secrus
Copy link
Collaborator

Secrus commented Oct 10, 2024

From my point of view, Pendulum is on life support. @sdispater is MIA and other than merging PRs I can't do much, including releases.

@cunla
Copy link

cunla commented Oct 10, 2024

@Secrus, if the current maintainer is not interested in continuing to maintain, open a PEP541 request on pypi. See here: https://pypi.org/help/#project-name-claim

It takes some time since they will try to check with @sdispater first.
Assuming there is no response, you will take over the pypi project.
I am happy to support in maintaining this project and joining you as a maintainer.

@notatallshaw-gts
Copy link

notatallshaw-gts commented Oct 10, 2024

@Secrus, if the current maintainer is not interested in continuing to maintain, open a PEP541 request on pypi. See here: https://pypi.org/help/#project-name-claim

I would not advise this.

  1. Pendulum has too many users to be removed as an abandoned project: https://peps.python.org/pep-0541/#reclaim-name
  2. To take over maintenance of the project you must first demonstrate you have a fork which has improvements: https://peps.python.org/pep-0541/#continued-maintenance-of-an-abandoned-project, and given how this project is important to so many users the PyPI admins will probably want a lot of further evidence that it's a good idea to let someone else take over the project

Until someone forks Pendulum and starts actively maintaining that fork it is a waste of time, for everyone involved, to raise a PEP 541 request.

And I should note, many of the reasons I personally picked pendulum are now satisfied by whenever, so at least for new projects I am trying that out: https://github.com/ariebovenberg/whenever?tab=readme-ov-file#-whenever

@cunla
Copy link

cunla commented Oct 10, 2024

I did not mean to mark it as abandoned, but adopt it.

There is a proper process described for adopting a project. I have done it myself in the past (see fakeredis).

There is no point maintaining a fork which only one is using (might as well make it a part of the dependant project). Instead, it is better to adopt the existing package with an intention to maintain it.

Personally, I am happy to be a maintainer of pendulum, but would not want to be the sole responsible as I already have a bunch of packages.

@edgarrmondragon edgarrmondragon mentioned this issue Oct 11, 2024
2 tasks
@mattsta
Copy link

mattsta commented Oct 12, 2024

And I should note, many of the reasons I personally picked pendulum are now satisfied by whenever, so at least for new projects I am trying that out: https://github.com/ariebovenberg/whenever?tab=readme-ov-file#-whenever

I think we just need a compatibility wrapper for other libraries.

One nice thing about pendulum is it made common usage simple, so I could do things like:

pendulum.parse(user_input_date, tz="US/Eastern")

In [251]: %timeit pendulum.parse("2021-01-01", tz="US/Eastern")
4.97 µs ± 36.9 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)

but jumping to whenever it becomes:

whenever.LocalDateTime.from_py_datetime(
    dateutil.parser.parse(user_input_date)
).assume_tz("US/Eastern", disambiguate="compatible")

In [249]: %timeit whenever.LocalDateTime.from_py_datetime(dateutil.parser.parse("2021-01-01")).assume_tz("US/Eastern", disambiguate="compatible")
15.7 µs ± 40 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)

or maybe it's:

whenever.ZonedDateTime.from_timestamp(dateutil.parser.parse("2021-01-01").timestamp(), tz="US/Eastern")

In [252]: %timeit whenever.ZonedDateTime.from_timestamp(dateutil.parser.parse("2021-01-01").timestamp(), tz="US/Eastern")
16.1 µs ± 82.2 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)

but at that point, why not just use default libraries instead:

pytz.timezone("US/Eastern").localize(dateutil.parser.parse(user_input_date))

In [247]: %timeit pytz.timezone("US/Eastern").localize(dateutil.parser.parse("2021-01-01"))
26.1 µs ± 181 ns per loop (mean ± std. dev. of 7 runs, 10,000 loops each)

There's some middle ground between "good defaults, good usability" and over-specifying things everywhere.

The over-complex specification problem for simple actions is fixable by writing extra helper functions, but the entire point of a simple usable datetime library was to avoid writing all the helper functions in the first place. 🤷‍♂️

@ericfrederich
Copy link
Contributor

Curious if the process with PyPI has been started to take over the project if in fact @sdispater is MIA.

@mattsta
Copy link

mattsta commented Oct 16, 2024

We tried to do a pypi transfer recently on another project and nobody ever responded.

It looks like pypi doesn't have enough people (or maybe anybody?) to run the program: https://github.com/pypi/support/issues

@notatallshaw-gts
Copy link

notatallshaw-gts commented Oct 16, 2024

There is a proper process described for adopting a project. I have done it myself in the past (see fakeredis).

Yeah, sorry, I missed that @Secrus was also a maintainer, I would trust a fork from them with a PEP 541 request, if they are willing and able.

I just think any takeover of pendulum has to be done very carefully as its popularity, as indicated by PyPI downloads at least, puts it as quite a critical package.

And I should note, many of the reasons I personally picked pendulum are now satisfied by whenever, so at least for new projects I am trying that out: https://github.com/ariebovenberg/whenever?tab=readme-ov-file#-whenever

I think we just need a compatibility wrapper for other libraries.

One nice thing about pendulum is it made common usage simple, so I could do things like:

For those who hadn't noticed, whenever's author has opened an issue taking this feedback: ariebovenberg/whenever#173

We tried to do a pypi transfer recently on another project and nobody ever responded.

This topic comes up often on https://discuss.python.org/, the response has been that they are hiring people and getting more done, but anecdotally I still see lots of people complaining they get no response. I hate to suggest nudging on discuss to get wider visibility, but if a pendulum request was not responded to for more than a few weeks, it seems important enough to raise there.

@stripedpumpkin
Copy link

Alternatively could we fork the project under a new name and release it under some collective account on pypi so we can avoid the situation of having just one person having the credentials ?

@Secrus
Copy link
Collaborator

Secrus commented Oct 18, 2024

To manage some expectations: I am not working in any way to take the project over. My role here was always more of a "helping hand" rather than a "driving force". Pendulum is a nice project, but needs proper care from someone who can put some time and love into making it great and fixing various bugs. I am not that person. If someone is willing to provide patches/PRs, I am more than happy to review and merge them, so that users can at least use git source to get patches.

@sdispater
Copy link
Collaborator Author

Hi everyone! I thought I'd chime in to give you a bit of news.

Sorry for the lack of information and updates regarding the project but I am busy working on other things that gives me little time left for Pendulum.

Rest assured that I do not want the project to die, so I will try to onboard new people to manage the project and give it the care it deserves. And since I do not want to be a bottleneck I will move the project to a dedicated organization to ensure that collaborators and permissions can be set in a granular manner and ownership can be shared with other people.

@ashb
Copy link

ashb commented Dec 12, 2024

Hi @sdispater, I'm one of the core devs of Apache Airflow and we use Pendulum a lot, I'd love to be involved in making sure this great project stays alive. I know I haven't contributed anything directly to Pendulum yet, but I'd love to be involved in anyway I can.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests