1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261
|
2024-10-14 v3.7.0
Added support for CPython 3.13.
Improve support for Python processes running in containers.
Removed the exclude-empty option.
Bugfix: fixed a bug with the MOJO binary format that caused the line end
position to wrongly be set to a non-zero value for CPython < 3.11, where line
end information is not actually available.
2023-10-04 v3.6.0
Added support for CPython 3.12
Added support for sub-interpreters.
Dropped support for CPython 2, 3.3, 3.4, 3.5, 3.6 and 3.7.
Improved interpreter detection and general stability on all supported
platforms.
Bugfix: ensure that threads are resumed by austinp when an error occurs during
the sampling process.
Bugfix: propagate the termination signal to the child process when launching a
command with Austin to prevent it from running indefinitely in the background.
2023-02-21 v3.5.0
Added support for fine-grained, column-level location information when
exporting samples in binary mode.
Improved multiprocess support.
Dropped the alternative output format.
Improved interpreter detection on all supported platforms.
2022-10-26 v3.4.1
Fixed a bug with the MOJO binary format.
2022-10-25 v3.4.0
Added support for Python 3.11.
Allowed disabling logging by setting the environment variable
AUSTIN_NO_LOGGING.
Improved permission error reporting on MacOS.
Improved MacOS support.
Improved austinp support on fork.
Small performance improvements.
Renamed the austinp binary installed from the Snap Store from austin.austinp
to austin.p.
Fixed a bug in austinp that could have caused the interpreter to stall on
launch.
Fixed a bug in austinp that could have caused segmentation faults.
Fixed a regression in austinp that caused most of the samples to be wrongly
reported as idle
2022-01-28 v3.3.0
Added the new Where mode.
Overall performance and accuracy improvements.
The heap allocation has been turned off by default.
Added support for profiling child processes that might have a different Python
runtime version than the parent process.
Bugfix: fixed heap size handling.
Bugfix: fixed a potential segmentation fault issue in the austinp variant.
Bugfix: fixed a potential deadlock scenario in austinp.
Bugfix: fixed support for the py.exe launcher on Windows.
2021-12-16 v3.2.0
Improved detection of invalid samples
Added support for Python launchers on Windows
Improved Python version detection on Linux
Fixed support of older versions of glibc on Linux
2021-08-18 v3.1.0
Added garbage collection state sampling for Python 3.7 onward.
Bugfix: the MinGW libwinpthread library is now linked statically on Windows.
2021-06-13 v3.0.0
Added pipe mode.
Bugfix: fixed file descriptor leak on Linux.
Bugfix: fixed sampling duration reporting on macOS.
2021-04-25 v3.0.0a1
The format of the emitted samples has been changed into something easier to
parse.
The sleepless mode now gives an estimate of CPU time.
Binaries with arbitrary names are now supported, allowing Austin to easily
profile applications like uWSGI.
Windows compatibility has been enhanced to support wrapper launchers.
Bugfix: report the correct process ID on macOS.
2020-12-30 v2.1.1
Bugfix: Fix symbol name clash on BSD systems with strtonum.
2020-12-29 v2.1.0
Improved general Python support on all the supported platforms.
Allowed specifying argument for time-like parameters using units (e.g. 10ms).
Error reporting has been made more accurate and informative.
Bugfix: Fixed line number reporting.
2020-10-06 v2.0.0
Substantial performance improvements. Austin 2 can sample deep call stacks
5 to 8 times faster than previous versions.
Support for Python 3.9.
Added the exposure option to instruct Austin to sample for a given number of
seconds only (#53).
2020-05-16 v1.0.1
Bugfix: Fixed broken support for Python 3.8 on MacOS.
2019-07-28 v1.0.0
Austin can now profile multi-process Python application:
When attaching Austin to an already running multi-process application it is
enough to provide the process ID of the parent process. Austin will then
discover all the child processes and profile those too.
To tell Austin to look for child processes, use the new -C switch from the
command line.
Austin can now profile Python 3.8 applications.
2019-07-28 v0.7.0
Austin can now profile memory usage and output samples to a file.
Added new command line options:
- --memory, -m:
Switch to memory profling mode
- --full, -f:
Generate samples with a full set of metrics, which include timing and
memory profiling information. Note that the output from this mode needs
to be processed before it can be used with FlameGraph.
- --output, -o:
Designate an output file for the collected samples.
2018-10-15 v0.6.0-beta
Introduced native support for MacOS and Windows.
2018-10-10 v0.5.0-beta
Added support for all the major releases of Python 2 and 3 on 32-bit Linux.
2018-10-08 v0.4.0-alpha
Added support for all the major releases of Python 2 and 3 on 64-bit Linux.
2018-10-02 v0.3.1-alpha
Bugfix: Austin can now attach to a running Python process again.
2018-09-30 v0.3.0-alpha
Austin now supports Python 3.3, 3.4, 3.5 and 3.7 on x86_64 Linux.
2018-09-26 v0.2.0-alpha
Austin can now be attached to a running Python 3 process.
Added new command line options:
- --alt-format, -a:
Use the alternative format for collapsed stack samples.
- --exclude-empty, -e:
Exclude samples of threads with no frame stacks.
Usually, these are Python threads created by C extensions, whose code
cannot currently be traced.
- --sleepless, -s:
Suppress idle samples.
These are samples where a call to wait has been made and the thread
sits there doing nothing.
Fixed a bug that caused some valid thread samples to be marked as invalid.
Austin has been tested successfully on Windows 10 64-bit via WSL.
2018-09-20 v0.1.0-alpha
Initial release.
|