Skip to content
This repository has been archived by the owner on Sep 10, 2023. It is now read-only.

Extended fork #37

Closed
exander77 opened this issue Sep 5, 2023 · 3 comments
Closed

Extended fork #37

exander77 opened this issue Sep 5, 2023 · 3 comments

Comments

@exander77
Copy link

exander77 commented Sep 5, 2023

Hello, I made a fork of this library to write a supertinycron tool:
[email protected]:exander77/supertinycron.git

I extended the library for expressions described here:
https://www.javadoc.io/doc/org.quartz-scheduler/quartz/latest/org/quartz/CronExpression.html
https://github.com/gorhill/cronexpr

Would you be willing to take a very large pull request?

@staticlibs
Copy link
Owner

Hi, unfortunately I don't use ccronexpr myself anymore and cannot maintain it properly. Would it be convenient if I archive this repo and add a link to your repo on top of the README (instead of accepting the PR)?

@exander77
Copy link
Author

exander77 commented Sep 8, 2023

@staticlibs I wrote supertinycron based on your work, and it is working great so far.

I think I fixed all the issues and implemented Quartz syntax as was requested here.

I also fixed building using Gihtub actions in my repo, and it should be working. You can review here: https://github.com/exander77/supertinycron/actions

So my repository should behave as your original one compiling under -std=c89, -std=c++11 in gcc and clang, static and non-static. I don't use it on embedded hardware, so I can't really test that, but I don't think I interfered with any of the code that handles that. I added year functionality that consumes an additional 29 bytes for year bit field and I may introduce some compile macro to disable for the embedded hardware purposes.

If it is ok with you, you can do as you suggest.

Btw, great work on this, I tried to follow the ideas of the original next/prev event calculation, but I merged most of the prev end next code, so it is more reliable as I primarily test next. I also implemented tonne of additional tests for new features as well as incorporated tests from this issue tracker.

I also find a bug recently, that I intend to fix as well:

60 * * * * * *
* 60 * * * * *

I wanted to find leap seconds for testing purposes, but neither glibc, nor musl handles this and ccronexpr segfaults due to not finding any matching in bitfield.

@staticlibs
Copy link
Owner

Archiving the repo now, thanks for keeping this project alive!

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

No branches or pull requests

2 participants