OcLaunch Launch automagically


OcLaunch 0.3.0-rc1

OClaunch blog

Yesterday (28/08), version 0.3.0-rc1 went out.

There are few changes since 0.3.0-pre2. We mention here only the differences with this pre-versions. Refer to OcLaunch 0.3.0-pre1 is out! and OcLaunch 0.3.0-pre2.

Changed rc file structure

Format

Rc file was in the JSON format, like this:

{
  "progs": [
    "ydump dev.json", "task", "du -sh ./_build/src/oclaunch.native",
    "free -h", "echo \"Finish\"", "bdump -w daemon,rc,commands /tmp/v033"
  ],
  "settings": []
}

and we now use a scheme-inspired format, based on serial expression (s-expression or sexp):

;; You probably do NOT need to edit this file manualy.
;; Anyway, you may find help at https://s.oclaunch.eu.org/rc


((entries
  (((command "ydump dev.json") (tags ())) ((command task) (tags ()))
   ((command "du -sh ./_build/src/oclaunch.native") (tags ()))
   ((command "free -h") (tags ())) ((command "echo \"Finish\"") (tags ()))
   ((command "bdump -w daemon,rc,commands /tmp/v033") (tags ()))))
 (common_tags ()) (settings ()))

This should be easier to edit manualy, since you use parenthesis in all cases. It is also less verbose, which is an interesting feature to add tags. This lead us to structural changes.

Extension changed consistently, file oclaunch.json become oclaunch.scm (scm is the extension of scheme, giving nice support from your favorite editor for the sexp)

Structure

More deeply, the structure of the configuration file has changed. This prepare future feature, like ability to attach tags to command and define settings.

Here is what comes:

Tags

Tags is a major change. It will allow to disable some command, describe with comment, run some command twice (or any number of time) and even lead to a system of plugin you may load at runt ime to add new behavior.

This is not yet completely implemented, and will come with future versions.

Settings

Settings will allow to define some parameter currently defined by command line parameters or envirronement variable, in rc file.

Importation

To ease transition, oclaunch tries to import automatically your commands from the json file.

In most cases, you do not have anything to do.

See the help of the importation subcommand to import any file.

Messages

As you may notice, there is a small help message on top of the rc file.

Other messages displayed by the program were improved too and are now more targeted.

Continuous integration

Gitlab CI was improved. It now builds faster and with more cases, using opam prebuilt images for Docker. We avoid rebuilding of the compiler for each case.

New feature and fix

Id list

Many subcommand (like run or delete) now take list like this:

1,2,4-6

This behave as if you had called the command several times with one argument.

Disable auto-launch

See the doc

--length

Changed --el to --length, clearer, isn’t it?

Fix: multi user issue

When several user of the same computer were using oclaunch, their tmp file were mixed, leading to strange things. The name of the tmp file now include username to deal with this.

--yes

As usual, answer yes to all question.

More in CHANGELOG file

Installation

With 0install

As usual, you just need to select the right binary in the list. See Installation section. 0install may also update OcLaunch automatically, depending on your settings.

With opam

If your architecture is not supported by prebuilt version, you may use opam.

opam pin add oclaunch http://download.tuxfamily.org/oclaunch/v03/oclaunch_v0.3.0-rc1_src.tar.gz

Feedback

As usual, feedback (bug, ideas and so on) is welcomed at feedback@oclaunch.eu.org or on GitLab.