├── .editorconfig ├── .github └── workflows │ └── test.yml ├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── benchmark └── main.cr ├── shard.yml ├── spec ├── carbon │ └── deliver_later_spec.cr ├── mel │ ├── cron_task_spec.cr │ ├── instant_task_spec.cr │ ├── job │ │ ├── at_spec.cr │ │ ├── every_spec.cr │ │ ├── in_spec.cr │ │ ├── instant_spec.cr │ │ ├── now_spec.cr │ │ ├── on_spec.cr │ │ └── recurring_spec.cr │ ├── job_spec.cr │ ├── periodic_task_spec.cr │ ├── progress_spec.cr │ ├── task │ │ └── log_helpers_spec.cr │ └── task_spec.cr ├── mel_spec.cr ├── setup │ ├── email.cr │ └── worker.cr ├── spec_helper.cr └── support │ ├── emails │ ├── base_email.cr │ └── welcome_email.cr │ └── jobs │ ├── collect_jobs_job.cr │ ├── count_job.cr │ ├── counter_job.cr │ ├── fail_callbacks_job.cr │ ├── failed_job.cr │ ├── progress_job.cr │ ├── send_email_at_job.cr │ ├── send_email_every_for_job.cr │ ├── send_email_every_job.cr │ ├── send_email_every_till_job.cr │ ├── send_email_in_job.cr │ ├── send_email_instant_job.cr │ ├── send_email_job.cr │ ├── send_email_now_job.cr │ ├── send_email_on_for_job.cr │ ├── send_email_on_job.cr │ ├── send_email_on_till_job.cr │ └── send_email_recurring_job.cr └── src ├── carbon.cr ├── carbon └── deliver_later.cr ├── mel.cr ├── mel ├── cron_task.cr ├── helpers.cr ├── instant_task.cr ├── job.cr ├── job │ ├── at.cr │ ├── every.cr │ ├── in.cr │ ├── instant.cr │ ├── now.cr │ ├── on.cr │ ├── recurring.cr │ └── template.cr ├── log_helpers.cr ├── memory.cr ├── periodic_task.cr ├── progress.cr ├── progress │ └── report.cr ├── recurring_task.cr ├── run_pool.cr ├── store.cr ├── task.cr ├── task │ ├── callback_helpers.cr │ └── log_helpers.cr └── version.cr ├── redis.cr └── spec.cr /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/.gitignore -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/README.md -------------------------------------------------------------------------------- /benchmark/main.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/benchmark/main.cr -------------------------------------------------------------------------------- /shard.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/shard.yml -------------------------------------------------------------------------------- /spec/carbon/deliver_later_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/carbon/deliver_later_spec.cr -------------------------------------------------------------------------------- /spec/mel/cron_task_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/cron_task_spec.cr -------------------------------------------------------------------------------- /spec/mel/instant_task_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/instant_task_spec.cr -------------------------------------------------------------------------------- /spec/mel/job/at_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/job/at_spec.cr -------------------------------------------------------------------------------- /spec/mel/job/every_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/job/every_spec.cr -------------------------------------------------------------------------------- /spec/mel/job/in_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/job/in_spec.cr -------------------------------------------------------------------------------- /spec/mel/job/instant_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/job/instant_spec.cr -------------------------------------------------------------------------------- /spec/mel/job/now_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/job/now_spec.cr -------------------------------------------------------------------------------- /spec/mel/job/on_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/job/on_spec.cr -------------------------------------------------------------------------------- /spec/mel/job/recurring_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/job/recurring_spec.cr -------------------------------------------------------------------------------- /spec/mel/job_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/job_spec.cr -------------------------------------------------------------------------------- /spec/mel/periodic_task_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/periodic_task_spec.cr -------------------------------------------------------------------------------- /spec/mel/progress_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/progress_spec.cr -------------------------------------------------------------------------------- /spec/mel/task/log_helpers_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/task/log_helpers_spec.cr -------------------------------------------------------------------------------- /spec/mel/task_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel/task_spec.cr -------------------------------------------------------------------------------- /spec/mel_spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/mel_spec.cr -------------------------------------------------------------------------------- /spec/setup/email.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/setup/email.cr -------------------------------------------------------------------------------- /spec/setup/worker.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/setup/worker.cr -------------------------------------------------------------------------------- /spec/spec_helper.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/spec_helper.cr -------------------------------------------------------------------------------- /spec/support/emails/base_email.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/emails/base_email.cr -------------------------------------------------------------------------------- /spec/support/emails/welcome_email.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/emails/welcome_email.cr -------------------------------------------------------------------------------- /spec/support/jobs/collect_jobs_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/collect_jobs_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/count_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/count_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/counter_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/counter_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/fail_callbacks_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/fail_callbacks_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/failed_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/failed_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/progress_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/progress_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_at_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_at_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_every_for_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_every_for_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_every_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_every_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_every_till_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_every_till_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_in_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_in_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_instant_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_instant_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_now_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_now_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_on_for_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_on_for_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_on_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_on_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_on_till_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_on_till_job.cr -------------------------------------------------------------------------------- /spec/support/jobs/send_email_recurring_job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/spec/support/jobs/send_email_recurring_job.cr -------------------------------------------------------------------------------- /src/carbon.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/carbon.cr -------------------------------------------------------------------------------- /src/carbon/deliver_later.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/carbon/deliver_later.cr -------------------------------------------------------------------------------- /src/mel.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel.cr -------------------------------------------------------------------------------- /src/mel/cron_task.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/cron_task.cr -------------------------------------------------------------------------------- /src/mel/helpers.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/helpers.cr -------------------------------------------------------------------------------- /src/mel/instant_task.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/instant_task.cr -------------------------------------------------------------------------------- /src/mel/job.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/job.cr -------------------------------------------------------------------------------- /src/mel/job/at.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/job/at.cr -------------------------------------------------------------------------------- /src/mel/job/every.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/job/every.cr -------------------------------------------------------------------------------- /src/mel/job/in.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/job/in.cr -------------------------------------------------------------------------------- /src/mel/job/instant.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/job/instant.cr -------------------------------------------------------------------------------- /src/mel/job/now.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/job/now.cr -------------------------------------------------------------------------------- /src/mel/job/on.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/job/on.cr -------------------------------------------------------------------------------- /src/mel/job/recurring.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/job/recurring.cr -------------------------------------------------------------------------------- /src/mel/job/template.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/job/template.cr -------------------------------------------------------------------------------- /src/mel/log_helpers.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/log_helpers.cr -------------------------------------------------------------------------------- /src/mel/memory.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/memory.cr -------------------------------------------------------------------------------- /src/mel/periodic_task.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/periodic_task.cr -------------------------------------------------------------------------------- /src/mel/progress.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/progress.cr -------------------------------------------------------------------------------- /src/mel/progress/report.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/progress/report.cr -------------------------------------------------------------------------------- /src/mel/recurring_task.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/recurring_task.cr -------------------------------------------------------------------------------- /src/mel/run_pool.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/run_pool.cr -------------------------------------------------------------------------------- /src/mel/store.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/store.cr -------------------------------------------------------------------------------- /src/mel/task.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/task.cr -------------------------------------------------------------------------------- /src/mel/task/callback_helpers.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/task/callback_helpers.cr -------------------------------------------------------------------------------- /src/mel/task/log_helpers.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/task/log_helpers.cr -------------------------------------------------------------------------------- /src/mel/version.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/mel/version.cr -------------------------------------------------------------------------------- /src/redis.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/redis.cr -------------------------------------------------------------------------------- /src/spec.cr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GrottoPress/mel/HEAD/src/spec.cr --------------------------------------------------------------------------------