Saravanan666/pypi-org huggingface dataset:
Package: cronaion
CronaionWatcherA scheduler for your python programs.Easily schedule with a cronjob string.Very light on cpu as there are just sleeps called, not a while loop checker.Everything is run as a thread.Note this means that you can easily use objects and non-picklable data types. However this means programs using Aion will only run on a single GIL and will be bound to a single core on a CPU. Process intensive tasks should not be used with Aion.Located on pypiHereInstall with apip install cronaionExample UsagefromcronaionimportAionwatcher=Aion()@watcher.watch("1 3 * * 0")defcheck_the_mail():print("I will run at 03:01 every Sunday.")@watcher.watch("*/1 * * * *")defblink_my_eyes():print("I will run every 60 seconds.")if__name__=="__main__":watcher.start()Use the sitecrontab.guruto make your crontab strings.
Package: cronbach
Compute Cronbach’s alpha statisticFork of cronbach_alpha from pingouinAvoids some later dependencies (such as newer scipy)Credit to pingouin for all the initial codeFeaturesWorks on pandas.DataFrame objectsSupports pairwise deletion for missing valuesComputes confidence intervalsExamples>>>fromcronbachimportalpha>>>alpha(df)(0.9503375120540019,array([0.79,0.992]))LicenseFree software: GPL-3.0Documentationhttps://cronbach.readthedocs.io/CreditsThis package was created withCookiecutterand theaudreyr/cookiecutter-pypackageproject template.
Package: cronberry
Library and CLI for working with multiple cron jobs within a single cron tableExample# The following examples assume you have the following example
# crontab file jobs.tab.  Note that due to the way the examples
# are laid out, they will not run in the order shown below.
#
# jobs.tab contents:
# # [Frequent Job]
# MAILTO=user
# MAILFROM=root
# PATH=/home/user
# SHELL=/bin/sh
# CRON_TZ=/Etc/UTC
# * * * * * echo "This runs frequently"
#
# # [Specific Job]
# MAILTO=""
# MAILFROM="user"
# PATH=/some/specific/dir
# SHELL=/bin/bash
# CRON_TZ=/Etc/Universal
# 1 2 3 4 5 echo "This runs... oddly specifically# Add a job to the crontabcronberryaddjobs.tab# Add a specific job to the crontabcronberryaddjobs.tab--title"Specific Job"# Add a job manually to the crontabcronberryenter"Manually Added"'5 4 3 2 1 echo "Custom cronjob"'# You can also pass environment variablescronberryenter"With Env Vars"'1 1 2 3 5 echo "This uses bash!"'--shell/bin/bash# Remove a job from the crontabcronberryremove"Specific Job"# Clear the current crontabcronberryclear# Save the current crontab to a filecronberrysave"saved.tab"# Get the specific job with the given title, from a diffcronberryview"Frequent Job"# Returns:
# * * * * * echo "This runs frequently"# See the environment variables of a given job as wellcronberryview"Frequect Job"-v# Returns:
# [Frequent Job]
# MAILTO=user
# MAILFROM=root
# PATH=/home/user
# SHELL=/bin/sh
# CRON_TZ=/Etc/UTC
# * * * * * echo "This runs frequently"# See all the jobs in crontab (you can also use the -v flag)cronberrylist# Returns:
# jobs.tab contents:
# * * * * * echo "This runs frequently"
#
# # [Specific Job]
# 1 2 3 4 5 echo "This runs... oddly specifically# Get all the job titles from the crontabcronberryjobs# Returns:
# Frequent Job
# Specific Job
Package: cron-descriptor
Cron DescriptorA Python library that converts cron expressions into human readable strings. Ported to Python fromhttps://github.com/bradyholt/cron-expression-descriptor.Author: Adam Schubert (https://www.salamek.cz)Original Author & Credit: Brady Holt (http://www.geekytidbits.com)License:MITFeaturesSupports all cron expression special characters including * / , - ? L W, #Supports 5, 6 (w/ seconds or year), or 7 (w/ seconds and year) part cron expressionsProvides casing options (Sentence, Title, Lower, etc.)Localization with support for 17 languagesSupports Python 2.7 - 3.10InstallationUsing PIPpipinstallcron-descriptorUsage exampleSimplefromcron_descriptorimportget_description,ExpressionDescriptorprint(get_description("* 2 3 * *"))#ORprint(str(ExpressionDescriptor("* 2 3 * *")))Advanced# Consult Options.py/CasingTypeEnum.py/DescriptionTypeEnum.py for more infofromcron_descriptorimportOptions,CasingTypeEnum,DescriptionTypeEnum,ExpressionDescriptordescriptor=ExpressionDescriptor(expression="*/10 * * * *",casing_type=CasingTypeEnum.Sentence,use_24hour_time_format=True)# GetDescription uses DescriptionTypeEnum.FULL by default:print(descriptor.get_description())print("{}".format(descriptor))# Or passing Options class as second argument:options=Options()options.casing_type=CasingTypeEnum.Sentenceoptions.use_24hour_time_format=Truedescriptor=ExpressionDescriptor("*/10 * * * *",options)print(descriptor.get_description(DescriptionTypeEnum.FULL))Languages AvailableLanguageLocale CodeContributorEnglishenBrady HoltBrazilianpt_PTRenato LimaChinese Simplifiedzh_CNStar PengSpanishes_ESIvan SantosNorwegiannb_NOSiarhei KhalipskiTurkishtr_TRMustafa SADEDİLDutchnl_NLTotalMaceRussianru_RULbISSFrenchfr_FRArnaud TAMAILLONGermande_DEMichael SchulerUkrainianuk_UATarasItalianit_ITrinaldihnoCzechcs_CZAdam SchubertSwedishsv_SEÅke EngelbrektsonTamilta_INSankar HariPersianfa_IRM. Yas. DavoodehKoreanko_KRKyuJoo HanJapaneseja_JPTho NguyenOriginal Source.NET -https://github.com/bradyholt/cron-expression-descriptorPortsJava     -https://github.com/RedHogs/cron-parserRuby     -https://github.com/alpinweis/cronexGolang   -https://github.com/jsuar/go-cron-descriptorRunning Unit Testspythonsetup.pytestTranslatingcron-descriptor is usingGettextfor translations.To create new translation or edit existing one, i suggest usingPoedit.You can copy/rename and translate any file fromlocaledirectory:cp./cron_descriptor/locale/de_DE.po./cron_descriptor/locale/YOUR_LOCALE_CODE.po
poedit./cron_descriptor/locale/YOUR_LOCALE_CODE.poor you can generate new untranslated *.po file from sources by running incron_descriptordirectory:cdcron_descriptor
xgettext*.py-olocale/YOUR_LOCALE_CODE.poGenerating *.mo file from *.po file. In root directory run command:msgfmt-ocron_descriptor/locale/YOUR_LOCALE_CODE.mocron_descriptor/locale/YOUR_LOCALE_CODE.poDevelopingAll suggestions and PR's are welcomedJust clone this repository and register pre-commit hook by running:ln-s../../pre-commit.sh.git/hooks/pre-commitThen install dev requirements:pipinstallruff
Package: cron-descriptor-ko
Cron DescriptorMaster:All:A Python library that converts cron expressions into human readable strings. Ported to Python fromhttps://github.com/bradyholt/cron-expression-descriptor.Author: Adam Schubert (https://www.salamek.cz)Original Author & Credit: Brady Holt (http://www.geekytidbits.com)License:MITFeaturesSupports all cron expression special characters including * / , - ? L W, #Supports 5, 6 (w/ seconds or year), or 7 (w/ seconds and year) part cron expressionsProvides casing options (Sentence, Title, Lower, etc.)Localization with support for 14 languagesSupports Python 2.7 - 3.7InstallationUsing PIPpipinstallcron-descriptorUsage example# Simplefromcron_descriptorimportget_description,ExpressionDescriptorprint(get_description("* 2 3 * *"))#ORprint(str(ExpressionDescriptor("* 2 3 * *")))# Advanced# Consult Options.py/CasingTypeEnum.py/DescriptionTypeEnum.py for more infofromcron_descriptorimportOptions,CasingTypeEnum,DescriptionTypeEnum,ExpressionDescriptordescripter=ExpressionDescriptor(expression="*/10 * * * *",throw_exception_on_parse_error=True,casing_type=CasingTypeEnum.Sentence,use_24hour_time_format=True)# GetDescription uses DescriptionTypeEnum.FULL by default:print(descripter.get_description())print("{}".format(descripter))#or passing Options class as second argument:options=Options()options.throw_exception_on_parse_error=Trueoptions.casing_type=CasingTypeEnum.Sentenceoptions.use_24hour_time_format=Truedescripter=ExpressionDescriptor("*/10 * * * *",options)print(descripter.get_description(DescriptionTypeEnum.FULL))Languages AvailableLanguageLocale CodeContributorEnglishenBrady HoltBrazilianpt_PTRenato LimaChinese Simplifiedzh_CNStar PengSpanishes_ESIvan SantosNorwegiannb_NOSiarhei KhalipskiTurkishtr_TRMustafa SADEDİLDutchnl_NLTotalMaceRussianru_RULbISSFrenchfr_FRArnaud TAMAILLONGermande_DEMichael SchulerUkrainianuk_UATarasItalianit_ITrinaldihnoCzechcs_CZAdam SchubertSwedishsv_SEÅke EngelbrektsonOriginal Source.NET -https://github.com/bradyholt/cron-expression-descriptorPortsJava     -https://github.com/RedHogs/cron-parserRuby     -https://github.com/alpinweis/cronexGolang   -https://github.com/jsuar/go-cron-descriptorRunning Unit Testspythonsetup.pytestTranslatingcron-descriptor is usingGettextfor translations.To create new translation or edit existing one, i suggest usingPoedit.You can copy/rename and translate any file fromlocaledirectory:cp./cron_descriptor/locale/de_DE.po./cron_descriptor/locale/YOUR_LOCALE_CODE.po
poedit./cron_descriptor/locale/YOUR_LOCALE_CODE.poor you can generate new untranslated *.po file from sources by running incron_descriptordirectory:cdcron_descriptor
xgettext*.py-olocale/YOUR_LOCALE_CODE.poGenerating *.mo file from *.po file. In root directory run command:msgfmt-ocron_descriptor/locale/YOUR_LOCALE_CODE.mocron_descriptor/locale/YOUR_LOCALE_CODE.poDevelopingAll suggescions and PR's are welcomedJust clone this repository and register pre-commit hook by running:ln-s../../pre-commit.sh.git/hooks/pre-commitThen install dev requirements:pipinstallpep8
pipinstallflake8
pipinstallpep8-naming
Package: crondst
CronDstCronDst returns when the next job triggers given a cron expression. Supports time zones and daylight savings time (DST).Features:Built according toVixie Cron.The popular cron scheduling logic that lives inside *nix systems like Debian, Ubuntu, RHEL and MacOS.Lightweight.Single file, zero dependencies.Efficient.Most expressions require just one constant-time step per iteration.Installpip install crondstOr simply copy thecrondst.pyfile to your project directory.Usagefrom datetime import datetime
from zoneinfo import ZoneInfo
from crondst import CronDst

# :00 and :01 at 2am and 3am in Pacific Time
tz = ZoneInfo('America/Los_Angeles')
it = CronDst('0-1 2,3 * * *').iter(datetime(2077, 12, 10, 2, 0, tzinfo=tz))

next(it) # datetime(2077, 12, 10, 2, 1)
next(it) # datetime(2077, 12, 10, 3, 0)
next(it) # datetime(2077, 12, 10, 3, 1)
next(it) # datetime(2077, 12, 11, 2, 0)Supported Cron ExpressionsAll valid Vixie Cron expressions are supported.field:
┌───────────── minute       (0–59)
│ ┌─────────── hour         (0–23)
│ │ ┌───────── day of month (1–31)
│ │ │ ┌─────── month        (1–12 or Jan-Dec)
│ │ │ │ ┌───── day of week  (0–6 or Sun-Sat, 7 or Sun)
│ │ │ │ │
* * * * *SyntaxNameApplicable Field(s)<number>numberall*wildcardall-rangeall,listall/stepallDaylight Savings Time (DST)DST behavior follows Vixie Cron:Clock changes backwards.Jobs triggered during ambiguous time are not repeated after the clock change.Clock changes forwards.Jobs scheduled to trigger during missing time are triggered immediately after the clock change.Above rules only apply to fixed-time (non-wildcard) jobs. Wildcard jobs are scheduled normally.Wildcard jobs are where the hour or minute fields of a cron expression start with*.CronDst iterates through each timestamp only once even if multiple jobs can be triggered for a timestamp.Day of Month and Day of WeekWhen the day of month or day of week fields start with*, the matching days are based on the intersection (AND) of both fields. Otherwise the union (OR) is taken.This also aligns with Vixie Cron behavior.
Package: cronexpr-validator
cronexpr-validatorThe python validator for cron expressionscronexpr-validatorleverages regex expressions to do syntax validations on your cron expressions.FieldsRequiredAllowed valuesAllowed Special CharactersSecondsY0-59, - * /MinutesY0-59, - * /HoursY0-23, - * /Day of MonthY1-31, - * / ? L WMonthY1-12 or JAN-DEC, - * /Day of WeekY0-6 or SUN-SAT, - * / ? LYearNempty or 1970-2099, - * /Methods availablevalidate-> Validates a given cron expression and returns a boolean evaluated value.
Example:Validator.validate("0 0 12 * * *")validate_seconds_and_minutes-> Validates a cron subexpression of seconds or minutes and returns a boolean evaluated values.
Example:Validator.validate_seconds_and_minutes("*/5")validate_hours-> Validates a cron subexpression of hours and returns a boolean evaluated values.
Example:Validator.validate_hours("*/5")validate_day_of_month-> Validates a cron subexpression of the day of the month and returns a boolean evaluated value.
Example:Validator.validate_day_of_month("31")validate_month-> Validates a cron subexpression of the month and returns a boolean evaluated value.
Example:Validator.validate_month("DEC")validate_day_of_week-> Validates a cron subexpression of the day of the week and returns a boolean evaluated value.
Example:Validator.validate_day_of_week("0")validate_year-> Validates a cron subexpression of the year and returns a boolean evaluated value.
Example:Validator.validate_year("0")
Package: cronfed
Cronfedmonitors basic batch jobs, or any other cron-based
scheduled commands by parsing a given mailbox and turning it into an
RSS feed. The feed can in turn be monitored with yourbrowser,feedreaderor other RSS-compatible service (such asIFTTT).Simply add a cron job to generate the feed, pointing it at a
web-accessible location (such as apublic_htmldirectory or your
site’s assets directory). Check out the example for some real-world
Cronfed usage, with an explanation of how cron and Cronfed work
together.Cronfed isMinimum Viable Monitoring, aimed at providing a basic
threshold of monitoring without complex automation or dependencies.
It’s targeted at smaller projects which otherwise might go without any
monitoring at all. It’s so easy to set up and use on the standard
Linux/BSD machine that there’s no reason to not use it from
Day 1. While Cronfed makes attempts at limiting the amount of
information externalized, it is not recommended for jobs with
extremely-sensitive information.“Cronfed: It’s the least you could do!”InstallationCronfed is pure Python, has no system library dependencies, and should
work wonders on any POSIX machine with a functioning cron daemon and
local mail system:pip install cronfedRunpython-mcronfed--helpto see options, or read on for a
usage example.ExampleFirst, let’s look at a basic cron job. This one will fetch our data
once an hour, on the hour:0 * * * * /usr/bin/python /home/myuser/project/fetch.py 2>&1 | tee -a /home/myuser/project/logs/fetch.txtNotice how the output (stdout+stderr) is piped to a log file,
but using theteecommand. This ensures that the output goes to the
file as well asstdout.croncaptures thatstdoutand puts it
into an email, which then gets sent to the user who owns the job. This
usually means the email goes tomyuser@localhost, which on many
distributions means that it is saved to/var/mail/myuser. Do note
that if the command generates no output, thencronwill not send
an email, so it’s a good idea to emit an error message.Once we’re sure that email is being delivered, we’re halfway
there. Now we just need the actual Cronfed cronjob:*/15 * * * * /usr/bin/python -m cronfed --output /var/www/mysite/assets/cronfed.rss /var/mail/myuser 2>&1 | tee -a /home/myuser/project/logs/cronfed.txtIn this example we have the installedcronfedmodule regenerating
our feed every fifteen minutes. This is a pretty quick process in most
cases, so feel free to make it more often. In this case, the output of
cronfed itself is monitored in exactly the same way as normal cron
jobs, with a logfile and email touser@localhost.HistoryCronfed was created forHatnoteto monitor the periodic data
refreshes necessary to generateThe Weeklypedia. See those cron
jobs and more in theWeeklypedia crontab.Copyright: (c) 2015 byMark WilliamsandMahmoud HashemiLicense: BSD, see LICENSE for more details.
Package: crongit
Usage# get current crontab setting.
# it will generate the file `$USER.crontab`
crongit init

# Modify your crontab setting
vim $USER.crontab

# Update crontab and if it's been done without an error, commit the crontab file.
crongit updateInstallationpip install crongitAuthorscrongit was written byfx-kirin.
Package: cronicl
cronicl: data workflows.croniclis a simple data processing library written in Python.No additional infrastructure or tools needed, if you can run Python, you can process data through cronicl.Programatically author, connect, monitor and run workflows in Python.FeaturesProgramatically define pipeline flow and processing operationsRecord the number of times each operation is executed and execution timeAutomatic version tracking of processing operationsTrace messages through the pipeline (random sampling), including santization of sensitive information from trace logsMonitor via HTTP interfaceAutomatic retry of operationsDependenciesNetworkXFlaskLicenseApache 2.0
Package: cronicle
cronicle/ˈkɹɒnɪkəl/:n.a factual written account of important events in the order
of their occurrencen.software to archive theNmost recent backups of a file in
a folder named after the job frequency. Recommended use is to
trigger it via a cron job.Originally,croniclehas been conceived as a solution to this
particularserverfaultquestion :How to
keep: daily backups for a week, weekly for a month, monthly for a year,
and yearly after
that.Featuressimplicity:add one line to yourcrontaband you’re donefiles rotation:keep the N most recent versions of a filespace efficient:use symlinks in target directories to store a
single occurence of each backup instead of performing copies. When
removing a link, remove the underlying file if no other link point to
it.UsageIn order to manage a file backups with cronicle, you must have a section
in theconfig.yamlthat matches the backups names. Under it you can
then define values (number of archives to keep) for the five kinds of
periodic archives :hourly,daily,weekly,monthly,yearly.Or define a custom periodicity using thepipe syntaxegbimonthly|60: 3to keep archives every two months over the last six
months.ExampleIf you have dumps of a database in a~/dumpsdirectory named likemydb-20170101.dump,mydb-20170102.dump, and want to keep each
dump for 7 days plus go back up to two months ; a working${HOME}/.config/cronicle/config.yamlcontent would be :/home/johndoe/dumps/mydb-*.dump:
    daily: 7
    monthly: 2Nextcroniclecall will result in the creation of foldersDAILYandMONTHLYin/home/johndoe/dumps/, each folder containing
symlinks to the .dump files.Installationcronicle is written forPython
2.7andPython
3, is tested on Linux and Mac OS
X.Install withpipviapip installgit+https://github.com/Kraymer/cronicle.gitcommand.crontriggeringFor a no-brainer use, I recommend to run cronicle via cron, just after
the command in charge of performing the backup. Acrontabexample :@daily pg_dump -Fc mydb > /home/johndoe/dumps/mydb-`date +%F`.dump
@daily cronicle -r /home/johndoe/dumps/mydb-`date +%F`.dumpIf used with theconfig.yamlas defined in the previous section,
this daily call to cronicle guarantees that you will keep at most 9
database dumps (7 latest daily + 2 monthly).
Package: cronify
Cronify is a file event based task scheduler that uses the Linux kernels’ inotify API. An Inotify cron implementation if you will.It allows for triggering of actions when a file event occurs, with configurable action parameters that can be file data such as file name and file datetime and for scheduling actions to be run within a certain time period among other things.Once installed, it is run as a service, or daemon, much like cron itself. Cronify may also be used as a python library.The service’s configuration is YAML based.InstallationRequires a running Linux kernel >=2.6.13$ sudo pip install cronify
$ sudo chmod +x /etc/init.d/cronifyd
# Install a /etc/cronify.yaml file as in the examples below
# Once a configuration file is in place, start the cronify daemon with the provided init script
$ sudo /etc/init.d/cronifyd startConfiguration Example$ cat /etc/cronify.yaml/tmp/testdir:name:Access log watcherrecurse:falsefilemasks:somefile.*:actions:-processFile:args:-$filename-YYYYMMDDcmd:echo$ sudo /etc/init.d/cronifyd start
$ touch /tmp/testdir/somefile.txt
$ tail /var/log/cronify/cronify.log

cronify.cronify - Thread-1 - 2013-03-26 17:40:40,485 - INFO - Got result from action {'cmd': 'echo', 'args': ['echo', '/tmp/testdir/somefile.txt', '20130326']} - /tmp/testdir/somefile.txt 20130326More complex configuration with multiple watchers and delayed actionsSee example.yaml in repository for complete list of accepted configuration$ cat /etc/cronify.yaml/tmp/testdir:name:Access log watcherrecurse:falsefilemasks:access_log_YYYYMMDD.*:actions:-processFile:args:-$filename-YYYYMMDDcmd:process/tmp/testdir2:name:Other log watcherrecurse:truefilemasks:other_log_YYYYMMDD.*:actions:# Actions to perform on the file in sequence.-processFile:# Do not start action before this time. Action is queued until start_time if triggered prior to it.# This configuration setting is optionalstart_time:0800# Do not start action after this time. Action is queued until next start_time if triggered after end time# This configuration setting is optionalend_time:1000args:-$filename-YYYYMMDDcmd:processKnown limitationsCurrently queued actions will be _lost_ upon a service restart.When using recurse, inotify is limited to watching N number of subdirectories in the tree, where N is value of /proc/sys/fs/inotify/max_user_watches. Seehttp://linux.die.net/man/7/inotifyUser can increase this limit by modifying /proc/sys/fs/inotify/max_user_watchesWhen watching an NFS directory on NFS server side, only events made by the NFSserverwill be seen by the inotify API and following, cronify itself.When watching an NFS directory on NFS client side, no events are seen by inotify at all.In other words if you were planning on watching for a file that is created by an NFSclient, this is currently not possible.
Package: croninfo
CroninfoCroninfois a CLI which provides the functionality of parsing
cron expressions and rendering an output to ease with understanding the schedule
of the cron expression.The Cron syntax supported is based on thedefinition provided by FreeBSD.Getting StartedPython 3.7 to 3.10 supportedTo get started, install with pip:$python-mpipinstallcroninfoUsageCLITo CLI is provided with one commandparseas can be seen below.
If any doubts you can runcroninfo --helporcroninfo <command> --helpfor further details.$croninfoparse"10 0 1,15 * 1-3 /usr/bin/find"╭─CronExpression──────────────────────────────────────────────────────────────────────────────╮
│Minute10│
│Hour0│
│DayofMonth115│
│Month123456789101112│
│DayofWeek123│
│TZUTC│
│Command/usr/bin/find│
│NextScheduledRun2022-08-15T00:10:00+00:00(in10days,2hours,3minutesand25seconds)│
╰─1001,15*1-3/usr/bin/find────────────────────────────────────────────────────────────────╯This will output with consideration toUTCby default but you can pass--tz-type localto override to be your local timezone, E.G.Europe/London.
As shown below:$croninfoparse"10 0 1,15 * 1-3 /usr/bin/find"--tz-typelocal╭─CronExpression──────────────────────────────────────────────────────────────────────────────╮
│Minute10│
│Hour0│
│DayofMonth115│
│Month123456789101112│
│DayofWeek123│
│TZEurope/London│
│Command/usr/bin/find│
│NextScheduledRun2022-08-15T00:10:00+01:00(in10days,1hour,2minutesand25seconds)│
╰─1001,15*1-3/usr/bin/find────────────────────────────────────────────────────────────────╯Alternatively, you can use theOfficial Croninfo Docker Image