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