Comments (6)
Master is considered mainline development. We will tag and release when appropriate.
from celerybeat-mongo.
We decided to do it this way because then you can have a single collection of scheduled tasks and interact with all tasks in a simple manner. The differences between Interval and Crontab are very small compared to the rest of the class being shared. Can you share a concrete problem this is causing today?
At this point, changing this would be a huge headache for everyone already relying on the project, and there isn't really any other code in the project. I don't mean to sound harsh here, but without a significant compelling reason, it sounds like we'd break a lot of folks setup without much benefit.
As such, it might make the most sense to fork the project if you want to change how the models are constructed, since we'd have to change the rest of the code to accommodate the change anyway.
from celerybeat-mongo.
You're right this change will not bring such benefits to worth the incompatibility.
from celerybeat-mongo.
But it's possible to this without break compatibility.
class Crontab(EmbeddedDocument):
"""Crontab-like schedule."""
class Interval(EmbeddedDocument):
"""Schedule executing on a regular interval."""
class PeriodicTask(DynamicDocument):
""""MongoDB model that represents a periodic task""""
class Interval(Interval):
pass
class Crontab(Crontab):
pass
from celerybeat-mongo.
If you're able to submit a PR that fixes this and can provide tests that convincingly show that this does not break any existing users' stored schedules, I'm happy to look at. I don't think any of the core team though has the bandwidth to champion this though given that it's not posing any problems for us.
from celerybeat-mongo.
Nice! By the way would be nice have a development branch.
from celerybeat-mongo.
Related Issues (20)
- Priority Queues are not supported? HOT 1
- Using Models & Mixing with other mongoengine Models
- New release
- Tasks are added in batches, here we need to filter the dormant tasks HOT 6
- All tasks execution stops when one task hits it's "max_run_count" value HOT 9
- Non-default connection and database location settings are not used HOT 15
- run_immediately doesn't :) HOT 6
- Hour schedule does not work HOT 3
- How to use celerybeat-mongo with task_queues and task_routes?
- Issue with Timezone HOT 1
- Bump version to 0.2.1 and upgrade pip version
- Disabling a single task in the MongoDB collection seems to disable all tasks HOT 2
- Cannot import name 'Interval' HOT 3
- Updating Enable value in PeriodicTask not refreshing that in database
- Can't run scheduler properly HOT 1
- Celery beat is not working with MongoScheduler HOT 1
- How to pass arguments to periodic task function
- Race conditions throw by mongodb HOT 4
- SaveConditionError when modifying PeriodicTask HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from celerybeat-mongo.