Merge tag 'upstream/1.9'
[debian/cpulimit.git] / CHANGELOG
1
2 =========== Changes in 1.9 ================
3
4 * Swapped out __MACH__ pre-compiler flag for __APPLE__ to
5   avoid conflicts with GNU Hurd.
6
7
8 * Added --kill (-k) and --restore (-r) flags to allow
9   target processes to be killed and restored rather than
10   simply throttled.
11
12 * Made sure version number is accepted from Makefile.
13
14 =========== Changes in 1.8 ================
15
16 * Added separate build targets for Linux, FreeBSD and OS X.
17   See the compiling section of the README file.
18
19 * Applied patch from FreeBSD to our upstream code to make
20   future updates on FreeBSD easier.
21
22 * When displaying verbose output, cpulimit now redisplays
23   the column headers every 20 lines.
24
25 * Fixed limiting CPU usage on multicore machines when
26   the desired usage limit is great than 100%.
27   ie A machine with 4 cores can now properly limit
28   multi-threaded applications to, say, 150% or 250%.
29
30 * Added test application (busy). See "test" directory.
31   To build the test software, run "make tests".
32
33 * Removed memrchr() call to allow program to compile on OS X.
34
35 * Updated Makefile to work with OS X.
36
37 * Fixed OS X compiler error. Macs do not understand
38   CLOCK_REALTIME
39
40 * Added patch from Debian which added compiler flags. This
41   should "harden" CPUlimit on Debian.
42   Thanks to Gregor for supplying this patch.
43
44
45 ============= Changes in 1.7 ===============
46
47 * Minor code cleanup.
48
49 * Make sure we do not try to throttle our own process.
50
51 * Added "tarball" option to the Makefile to assist
52   in packaging. Moved version number to the makefile.
53
54 * Added version information to CPUlimit's help screen.
55
56 * Detect the number of CPU cores on the machine and
57   cap the % we can limit. 1 CPU means we can
58   limit processes 1-100%, 2 means 1-200%, 4 means 1-400%.
59
60 * Removed extra priority changes. We now only bump
61   our priority once, if we have access to do so.
62   Also simplified priority increases so it's flexible
63   rather than "all or nothing".
64
65 * Since we now attempt to detect the number of CPUs
66   available, we also give the user the ability to
67   override our guess. The -c and --cpu flags have
68   been added for this purpose.
69
70 * Commands can be launched and throttled by appending
71   commands to the end of CPUlimit's argument list. For
72   example:
73   cpulimit -l 25 firefox
74
75
76 ======== Changes in 1.6 ============
77
78 * Updated copyright notice in README file.
79
80 * Made sure we define a reasonable buffer size
81   if PATH_MAX is not already defined. Fixes
82   building on Hurd.
83
84
85 ======== Changes in 1.5 ============
86
87 * Updated man page and cpulimit's "--help" page to
88   reflect support for multi-core CPUs.
89
90 * Added example of using cpulimit in a shell
91   in the man page and the README file.
92
93 * The Makefile now uses the default compiler
94   on the system, "cc", and tries to fall back
95   on gcc if no other compiler is found.
96
97
98 ======== Changes in 1.4 ============
99
100 * We can now accept limits of 100% or higher. Useful for multi-core
101   systems.
102
103 * Perform sanity check when getting jiffies. Should prevent memory
104   errors if we cannot open proc data.
105
106 * Added copyright to README.
107
108
109 ========== Changes in 1.3 ============
110
111 * Updated license information in cpulimit.c and README file
112
113 * The -b flag is now shown under options instead of targets
114   in the help text.
115
116 * Include man page from Debian with updates.
117
118
119 ========= Changes in 1.2 ===========
120
121 * Applied Debian patch for checking to see if and how much we can
122   adjust our own process priority.
123
124 * Added LICENSE file so there wouldn't be any confusion about
125   what license CPUlimit uses.
126
127 * Applied Debian's patch for long options to avoid segfault.
128
129 * Applied Debian's Makefile patch.
130
131 * Added Debian patch to avoid opendir leaks.
132
133 * Added -b command line parameter to make CPUlimit 
134   run in the background, returning control the the 
135   user's terminal.
136
137 * When cpulimit is launched with one PID to track
138   once that process no longer exists, CPUlimit
139   will exit. Same behaviour as though the lazy
140   flag was set.
141
142 * Ported CPUlimit to FreeBSD
143
144
145 ======= cpulimit-1.1 released ============
146
147 * Fixed a segmentation fault if controlled process exited in particular circumstances
148 * Better CPU usage estimate
149 * Fixed a <0 %CPU usage reporting in rare cases
150 * Replaced MAX_PATH_SIZE with PATH_MAX already defined in <limits.h>
151 * Command line arguments now available
152 * Now is possible to specify target process by pid
153