Hello, everyone! I was sick for the majority of week 6 so I couldn't get a lot of work done during that period, which I'll be making up for by working an extra week (July 27 - August 02).
STATS An index is now being kept in the README[https://git.kayg.org/gsoc-2020/translator] as instructed by Benda. Statistics as of July 27: Services: Total: 76 Success: 69 Failure: 7 Ratio: 0.91 Sockets: Total: 6 Success: 5 Failure: 1 Ratio: 0.83 Timers: Total: 6 Success: 6 Failure: 0 Ratio: 1.00 TIMERS So, updates! Last week, I finally sat down with a tmux split window open, ready to fiddle with some regex. At the end of it, there was support for normalized calendar events. A bit on how it works: The timer script checks first for special expressions like "Minutely", "Hourly", "Daily", etc. and if they exist, it performs a simple conversion. If none of those exist, and instead there's a timestamp, it is first normalized with: `systemd-analyze calendar "<expression>"`. Then a check is made for the existence of '..' (range) or ',' (separators for multiple items). Using bash's regular expressions support for groups, day, month, etc are captured. Occurrence of '..' is changed to the cron equivalent '-'. Current limitation is that it won't handle something too complex -- for example, a calendar event which makes use of both '*' and '-'. SCHEDULE Documentation and creating a manual were a part of August's schedule but because I wasn't able to open a repository for testing, owing to my health, I chose to instead open the stage up next month when most of the work has been completed on the translator. With the time gained, I took it to myself to start work on documentation and a manual. DOCUMENTATION The README document is now updated to describe the usage of the translator. Additional work has been done to explain parts of code with comments, and simplify and break down the more complicated parts of the code. The document now contains the following: - About - Dependencies - Usage - Index - References MANUAL A manual is now available [https://git.kayg.org/gsoc-2020/translator/src/branch/openrc/manual.org]. The source file is in org-mode which was exported with `pandoc` to the man format. Primary reference while making the manual was the socket-activate page[https://manpages.debian.org/unstable/socket-activate/socket-activate.1.en.html], which is also a tool this project makes use of. The manual contains the following sections: - NAME - SYNOPSIS - DESCRIPTION - USAGE - LIMITATIONS - COPYRIGHT - AUTHORS PLANS - Finish up on documentation and the manual by the end of this week (July 27 - August 02). - Fix remaining service files where translation fails because of multiple occurrences of directives or special executable prefixes which are currently ignored. - Make a repository in Debian's salsa to facilitate more testing and bug-fixes by the end of this week (July 27 - August 02). Regards, K Gopal Krishna [https://kayg.org/]