Skip to content

Commit

Permalink
update version to 2.0.0
Browse files Browse the repository at this point in the history
update version to 2.0.0; updated CHANGELOD and README files
  • Loading branch information
zaytiri committed Mar 22, 2023
1 parent c1e85a2 commit be0db31
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 19 deletions.
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Fixed
- Removed

## [2.0.0] - 2023-03-22

### Changed
- auto management of program arguments and settings were refactored. now uses the following library ['margument'](https://pypi.org/project/margument/) for that purpose.
- changed some arguments commands, for example: use '-p' to specify file path instead of '-e'.

### Added
- added new argument option to exit program terminal/cmd window when all scheduled jobs are done.
- added new argument option to define the time for the scheduler to no longer run, for example: if time defined is '17:00', the scheduler, if started, will no longer run if current time exceeds defined time.
- added new argument option to also list all global configs. previously, only scheduled jobs were being listed.
- added new argument option specific for running the progscheduler. now the program will only start doing its scheduled jobs if this argument is specified. if not, the program can list settings, update schedules, create new ones, do nothing etc., all without running automatically after every configuration.
- added more user-friendly messages.

### Fixed
- updated README.md file.

## [1.0.1] - 2022-11-20

### Changed
Expand Down
41 changes: 23 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,19 +29,22 @@ A scheduled file can also be any type of file including folders. See [Notes](#no

## Features

| Status | Feature |
| Status | Features |
|:-------|:-----------------------------------------------------------------------|
|| schedule a file to start/open at specific days of the week or everyday |
|| schedule a file to start/open at specific time of the day |
|| schedule a file to start/open when the computer boots up |
|| configuration of multiple files to schedule |
|| see current configurations |

Any new features are **_very_** welcomed.

### Future features

- Currently, the progscheduler only starts/opens a file, but in the future, a file can also be configured to do other types of jobs.
- Currently, the progscheduler never stops running the scheduler, but it can be implemented that if all scheduled jobs are at startup, and they already finished then the progscheduler could stop automatically until manually started or computer rebooted.

#### Done ✅
- ~~Currently, the progscheduler never stops running the scheduler, but it can be implemented that if all scheduled jobs are at startup, and they already finished then the progscheduler could stop automatically until manually started or computer rebooted.~~

Any unimplemented features will be developed by user request, so if you want any of these or new ones, open an issue.

Expand Down Expand Up @@ -82,22 +85,24 @@ Open an issue if you need to know how to enable this feature in Linux.

## Usage

| Command | Required | Description |
|:--------|----------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| -a | ✅✅ | file alias. this name is UNIQUE within all scheduled files. to create or update any configuration regarding a specific file, this is required. |
| -e | | absolute path of file to schedule (including the extension name except for folders). |
| -d | | days to schedule a file within the following options: 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday', 'everyday', 'weekdays' and 'weekends'. |
| -t | | specific time to start/open a file. default is '' (empty). if time is empty then the file will start when the progscheduler command is run. |
| -del || delete a existing configuration with the file alias. |

- -a command is always required when configuring.
- -e, -d, -t command is required only the first time to configure a file to schedule.

| Command | Type | Description |
|:--------|------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| --run | **REQUIRED** for the scheduler to run | if specified, the scheduler will start running using user-defined configurations. |
| -a | **REQUIRED** to create new scheduled job | file alias. this name is UNIQUE within all scheduled files. to create or update any configuration regarding a specific file, this is required. |
| -p | **REQUIRED** to create new scheduled job | absolute path of file to schedule (including the extension name except for folders). |
| -d | **REQUIRED** to create new scheduled job | days to schedule a file within the following options: 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday', 'everyday', 'weekdays' and 'weekends'. |
| -t | **OPTIONAL** | specific time to start/open a file. default is '' (empty). if time is empty then the file will start when the progscheduler command is run (at startup if program-scheduler.bat file was configured). |
| -ts | **OPTIONAL** | define a time for the scheduler to stop running. |
| -del | **OPTIONAL** | delete a existing configuration with the file alias. |
| -ls | **OPTIONAL** | list all global settings. |
| -lsch | **OPTIONAL** | list all scheduled jobs. |

<a name="important"></a>

### Important
- If the file is an executable file, **it's recommended to input the absolute path to a shortcut** instead of the original file location because if so, the executable file **may not start at all**. If a shortcut is used, the extension '.lnk' is needed. For instance: 'C:\Users\<!username>\Desktop\shortcut.lnk'
- -a command is always required when configuring.
- -p, -d command is required only the first time to configure a file to schedule.
- If the file is an executable file, **it's recommended to input the absolute path to a shortcut** instead of the original file location because if so, the executable file **may not start at all**. If a shortcut is used, the extension '.lnk' is needed. For instance: 'C:\Users\<!username>\Desktop\ExecutableShortcutWithEXEExtension.lnk'

<a name="notes"></a>

Expand All @@ -122,7 +127,7 @@ progscheduler -h

Before running the scheduler, at least one program needs to be configured. The following command will configure the 'program.exe' to start when the computer boots up every monday, friday and saturday
```
progscheduler -a ThisNAmeRefersToCurrentProgramToSchedule -e "C:\Users\<username>\Desktop\program.exe" -d monday friday saturday
progscheduler -a ThisNAmeRefersToCurrentProgramToSchedule -p "C:\Users\<username>\Desktop\program.exe" -d monday friday saturday
```

To configure an existing program to change days to schedule:
Expand All @@ -140,12 +145,12 @@ To delete an existing configuration:
progscheduler -del ThisNAmeRefersToCurrentProgramToSchedule
```

When all desired files are scheduled in the configurations, the following command is valid and will expect to run the scheduler considering every configuration made:
When all desired files are scheduled in the configurations, the following command will run the scheduler considering every configuration made:
```
progscheduler
progscheduler --run
```

Once the progscheduler starts running it will not stop alone, to cancel just run CTRL + C or close the terminal window.
Once the progscheduler starts running it will not stop alone, to cancel just run CTRL + C or close the terminal window. The exception to this is if the 'exit-when-done' is enabled.

<a name="support"></a>

Expand Down
2 changes: 1 addition & 1 deletion progscheduler/version/progsettings.yaml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
PROG:
VERSION: 1.0.2
VERSION: 2.0.0

0 comments on commit be0db31

Please sign in to comment.