-
Notifications
You must be signed in to change notification settings - Fork 65
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
Document that this project is in maintenance mode? #765
Comments
Hi @snarfed — thanks for filing this issue. Agreed that projects should clearly communicate their level of support. We're doing our planning for the next couple of quarters now and will follow-up. |
I'm sad to read that NDB won't be actively updated moving forwards. NDB is a highly productive library with useful higher level abstractions, such as typed data models, conjunctive/disjunctive queries, etc. Whereas the Python Datastore library is a lower level library that requires a lot more app code for parallel queries, in-memory filtering/merging, type validation, etc. Both have their use cases. Even if NDB is pretty mature and doesn't need major new features, we still need its dependencies to be actively bumped in order for it to keep up with the latest ecosystem. |
I briefly took a look at what it would take to bump dependencies, i.e., edit setup.py:
It's not quite a trivial upgrade. The whole way the There's a lot of calls in the Has anyone attempted this? |
I went ahead, and bumped to google-cloud-datastore 2 on a forked repo here: Here are the commit notes:
All unit and systems tests pass on my dev computer. I've also updated my own business applications to use it, and there are no known issues. Here are a few extra thoughts:
|
@jacobg oh wow, awesome, thank you for doing this! I tried it out and ran the tests for a handful of my projects, ~2k total, and ran a couple of the apps locally and poked at them interactively, and everything passed and seems fine. Re your extra thoughts, fully agreed with 1 and 3. For 2, I assume you mean the ndb unit tests? Looking at an example PR eg #778, doesn't look like they're run automatically in CI. Maybe try setting up and running them locally? |
@snarfed With regards to CI, what I means is we should configure Travis CI or something like that so that unit tests automatically run when a commit is made. And shows badges on the README. It does seem Google has some of its own build hooks in this repo, but not sure if we would use that for an independent repo, and it doesn't seem they run unit tests. |
Development efforts are ramping back up after a quiet period; thanks for your patience here (and thanks @rwhogg for your recent contributions!). |
Dependency updates pending in #841 |
How does this project compare to https://cloud.google.com/appengine/docs/standard/python3/reference/services/bundled/google/appengine/ext/ndb? |
@zyzniewski the library documented on that page is the App Engine NDB library (source code). It's an older version of this project and we recommend you use this one, which is the Cloud NDB library. The most important differences are:
Whereas Cloud NDB supports Python 3 (some older releases also supported Python 2) and will work both within and outside the App Engine environment. |
@rwhogg I'm not referring to |
Ah, sorry for the confusion. That is also a version of the App Engine NDB library that I mentioned above. We recommend you use this repo's library rather than the one there. |
Hi all! I'd like to revisit this issue. Hope you don't mind! Some work on this project is clearly happening, primarily by @rwhogg. Great, thank you! We really do appreciate it. It's not a lot, though. Details below. I don't mean to be ungrateful. ndb is awesome, many of us have obviously used and benefited it for decades (!) now. Thank you! However, for those of us still actively building and maintaining our own projects on ndb, it's important for us to understand the maintainers' (ie Google's) level of ongoing commitment and investment here. Will this project eventually be sunsetted? Will it continue on with minimal support? Or is there a path toward you all engaging more actively here? Any answer is ok! But if we want a datastore client library that's more actively maintained, do we need to start planning to eventually migrate to the official datastore client, or another library? Thanks in advance. -- Looking at recent PRs, the vast majority are administrative or chores: docs, tests, dependencies, other minor refactorings and cleanups. Which are good! But of the ~100 PRs over the last year, it looks like just five are actual bug fixes or otherwise noticeable code changes: #882, #877, #873, #852, #815. That may be OK. Development on a mature, actively maintained project can be slow, and still reasonable. But looking at the ~25 issues filed over the last year, many of which are real bugs or problems, it looks like only five received any response at all from maintainers - #911, #897, #862, #836, #804 - and three of those were filed by maintainers themselves. Previously: #816 etc |
(^ Moved to new issue, #916.) |
From googleapis/google-cloud-python#10566 (comment) :
OK! Fair enough. Maybe consider documenting that in the README and on https://googleapis.dev/python/python-ndb/latest/ ? And also whether it's maintained, and just not actively adding features, or totally unmaintained?
(Thank you for all of your work up until this point, btw!)
The text was updated successfully, but these errors were encountered: