CHANGELOG.md 6.68 KB
Newer Older
Leo's avatar
Leo committed
1 2
# Changelog of OcLaunch

Leo's avatar
Leo committed
3 4 5
>Note: XXX Means that the functionality needs test and TODO means that its
>implementation is partial

6 7 8 9
## 0.3.x

### 0.3.0

Leo's avatar
Leo committed
10 11
This version introduce major changes in the tmp and rc file.

Leo's avatar
Leo committed
12 13
#### Major

Leo's avatar
Leo committed
14
 + Allow to temporary disable oclaunch auto-run. Please refer to documentation for more.
Leo's avatar
Leo committed
15
 + Changed tmp file structure, the new one would allow to do more things: (See #6)
16 17
    + Restart edited command (reset number of launch).
    + Support multiple configuration file.
Leo's avatar
Leo committed
18
    + More natural behavior when starting from an empty file. (Don't increment
19
     number of launch when nothing is actually launched).
20
    + Change name to improve multi-user compatibility.
Leo's avatar
Leo committed
21
    + For the future : Running infinite, daemon mode...
22 23 24
    + Format changed too, from [biniou](http://mjambon.com/biniou.html) to
      [Bin\_proto](https://github.com/janestreet/bin_prot). This is faster and
      remove dependencies since it's included in Core library.
Leo's avatar
Leo committed
25 26 27
 + New format and structure for the rc file, using **serial expression**: (see #5)
    + Allows to add tags to command
    + Allow to contain setting
Leo's avatar
Leo committed
28
 + Beautified rc file:
Leo's avatar
Leo committed
29 30
    + Remove doubled entries before each write of the rc file. Trailing spaces
      are remove too. Empty entries are dropped.
31
    + This fixes #12.
Leo's avatar
Leo committed
32 33 34
    + A **new clean command** has been added, to clean up a manually edited or old
      rc file.
    + Summary of edit command was improved.
Leo's avatar
Leo committed
35 36 37 38 39 40 41 42 43
 + Rewrite command line parsing, in a cleaner and safer way.
    + It now handles `exit`, would be able to deal with *auto completion* and
      display more accurate help messages. Further more, *partial commands* are
      supported, such as `lis` for `list`
    + However, for backward compatibility reasons, a hack has been set up,
      allowing to call the program with a number as first argument or without
      any argument. This way, the program tries to launch the corresponding
      command or the next one. The problem is that you can't call it with an
      option. To do this, use the **`run` subcommand**.
Leo's avatar
Leo committed
44
 + Add `--yes` option.
Leo's avatar
Leo committed
45
 + Improve **list subcommand**, now using Textutils library, displaying in an
46
   array. Add `--length` argument to limit the length of displayed entries.
Leo's avatar
Leo committed
47
 + Improve **edit subcommand** (explain how to use to add commands, improve
Leo's avatar
Leo committed
48
   messages, offer to reedit when nothing was done).
Leo's avatar
Leo committed
49
 + Improve **delete subcommand**, asking for confirmation before deleting.
50 51
 + Allow *most subcommand* (in fact every subcommand for which it makes sense) to
   parse lists of entries ids like **1,4-8,10**
Leo's avatar
Leo committed
52 53 54 55 56 57

#### Minor

 + Fix bug: in special circumstances, it was not possible to write in lock file.
   The program was crashing.
 + To limit future problem with lockers, two things were done:
Leo's avatar
Leo committed
58
    + Remove automatically lock file at the end of the program (See commit
59
      075c5b7074ea62ec337fe45309fbc3d808ad74fc).
Leo's avatar
Leo committed
60 61
    + Add delay when waiting for locker, to avoid endless loop (See commit
      cd7fdc0c022aa36b39f02813c4ebe54a533f0041 and
62
      bd712c97c788922aabdda15f75e78cb05882c53f).
Leo's avatar
Leo committed
63
 + Code clean up (especially indentation, thanks to ocp-indent), messages
Leo's avatar
Leo committed
64
   improvement (for instance to make it clearer, give more accurate tips or
65
   engage users, thanks to s.oclaunch.eu.org service).
Leo's avatar
Leo committed
66 67
 + Allow to set parameters with environment variable, such as `OC_RC, `OC_VERB`,
   `OC_NOCOLOR`. This is added to the previous variable `OC_TMP`. See #20.
68 69
 + Add unit tests and clean them up.
 + Add licence warning.
Leo's avatar
Leo committed
70 71
 + Improve help messages, by rewriting some and display it in a more subtle way
   according to the current internal state.
Leo's avatar
Leo committed
72
 + Remove core\_extended dependency, using Textutils and Re2 library instead.
Leo's avatar
Leo committed
73 74
 + Display debugging information before each message. Flush stdout on each
   message.
75
 + Some subcommand, such as `run`, take list of ids instead of only one.
Leo's avatar
Leo committed
76
 + Adapt code a bit for OCaml 4.03.
Leo's avatar
Leo committed
77
 + TODO XXX Add basic signal handling (`--signals`), to relaunch when doing
78
   ctrl-C. See issue #14 for known problems.
79
 + Adapt to OCaml compiler version 4.03 (only supported)
Leo's avatar
Leo committed
80
 + Improve opam file, installs less dependencies, with ability to run tests
Leo's avatar
Leo committed
81 82 83

#### Community

Leo's avatar
Leo committed
84
 + Improve *release script*, to enhance contributing experience (making easier to
Leo's avatar
Leo committed
85 86
   release source-code, binaries, signing, run test…). Stripped (and thus smaller)
   binaries are being tested too. Add *indentation script* too.
Leo's avatar
Leo committed
87
 + Improve README.md file, using special code in \_oasis Description field.
Leo's avatar
Leo committed
88 89
 + Using Gitlab CI to build with several versions of the compiler (fasten with
   Docker).
90

Leo's avatar
Leo committed
91 92 93
## 0.2.x

### v0.2.2
Leo's avatar
Leo committed
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
 + Major functionality:
    + Allow to install from opam throw opam pin add <pkg> <repo>
    + Allow to set tmp file with environment variable “OC\_TMP”. See #9 and #6
    + Messages displayed with bold, underline and colors.
    + Add options:
       + “-v” to set verbosity.
       + “--no-color” to toggle color off
       + “--edit” is synonym of “--modify” now
 + Minor functionality:
    + Improve resetting: tips, way to roll back
    + Add unit tests, to improve stability
    + Clean help
    + Better display after editing an entry. Ignore empty lines and fix #10
    + Use lazyness to speed up and lead to less error
    + Locking tmp file to prevent launching two times the same item
Leo's avatar
Leo committed
109 110 111
 + Correct bugs:
   + When executing ```oclaunc -r``` more than once, it tries to delete an
     unexisting file and this led to errors.
112 113
   + When some variable like $EDITOR was not set, it was crashing everytime.
     Now, it crashes only if there is no other solution.
Leo's avatar
Leo committed
114 115

### v0.2.1
Leo's avatar
Leo committed
116 117
 + Add new command line option:
   + “-c file” allow to read configuration from custom file.
118
   + “-m n” allow to edit and add (simultaneously) items to launch in rc file.
Leo's avatar
Leo committed
119
 + Improve “-l”: now display a “\*” next to current state.
120
 + Code clean up (Types in records) and code factoring.
Leo's avatar
Leo committed
121
 + When all has been launched, the program explain how to reset.
Leo's avatar
Leo committed
122
 + Better messages on initialisation.
Leo's avatar
Leo committed
123

Leo's avatar
Leo committed
124
### v0.2.0
Leo's avatar
Leo committed
125 126
 + Add new command line option.
   + “-r” can now take a number to start from.
127
   + “-l” list commands of the configuration file with its number.
128
   + “-a” add the command given on stdin to configuration file.
129
   + “-d n” remove the nth command from rc file.
Leo's avatar
Leo committed
130
   + “-n” display the current state.
Leo's avatar
Leo committed
131
 + Improve some messages.
Leo's avatar
Leo committed
132
 + Display run commands in title bar of the windows terminal.
Leo's avatar
Leo committed
133 134 135
 + New tmp file
   + Biniou format instead of JSON
   + Now cached
Leo's avatar
Leo committed
136
   + New default name : `/tmp/.oclaunch_trace.dat`
Leo's avatar
Leo committed
137
 + Add logo.
Leo's avatar
Leo committed
138
 + Clean up some code.
139
 + Improve utility set given with the repository (developer)
Leo's avatar
Leo committed
140

Leo's avatar
Leo committed
141 142 143
## v0.1.x

### v0.1.3
Leo's avatar
Leo committed
144 145
 + Correct bug (See commit 4d20125a03c6f8735f39a95bb9e68a0476c89d45).

Leo's avatar
Leo committed
146
### v0.1.2
Leo's avatar
Leo committed
147 148 149 150 151 152 153
 + First public usable version.
   + Create wiki.
   + Use Oasis
 + First version to be distributed with 0install.

## Before
 + Wast and test