We have just released SLiM 3.2. It contains a few important changes:
- A major performance bug associated with nonWF models has been fixed. Large nonWF models with many segregating mutations may see a large speedup.
- SLiMgui has some nice new features. A "Find Recipe..." menu item lets you look up recipes using keywords such as function or method names, or even phrases like "gene drive". Code completion is much smarter now; "iTR" completes to "initializeTreeSeq()", for example, because it is aware of how camel-case indicates word breaks in symbols (press <escape> to complete on a prefix you have typed). SLiMgui's profiling feature now includes a detailed breakdown of where memory is used in the model (also available with a new outputUsage() function for use at the command line). And a new button in SLiMgui's output area lets you change the current working directory for that model window.
- There are also new features outside of SLiMgui improvements. A new addRecombinant() method makes it easier to model haploids and horizontal gene transfer in nonWF models with tree-sequence recording compatibility, and new recipes (15.13 and 15.14) have been added illustrating its use. The outputMS() and outputMSSample() methods can now filter out sites that are monomorphic within the sample, by popular demand. A new rgeom() function provides draws from a geometric distribution. A new usage() function provides the total memory usage (current or peak) of the running process. The Eidos color-manipulation functions have been vectorized and some new color-palette functions have been added, making it easier to set up colors for individuals, mutations, or spatial maps in SLiMgui. Lots of other little things; see the full release notes in the manual.
- Besides the nonWF performance bug fix, there are some other bug fixes that might be important for certain users, but probably won't affect many people; if you had been bitten by ones of these bugs you probably would have already noticed it. See the more detailed release notes in the manual for more information.
This new version is recommended for all users, but if you are using nonWF models you will find this update particularly important and beneficial.
Reproducibility and compatibility: SLiM 3.2 should preserve backward reproducibility for virtually all models (i.e., the same model, with the same seed, should produce the same results as it did in SLiM 3.1, unless it was hitting one of the specific bugs fixed here). SLiM 3.2 should be almost entirely backward compatible with SLiM 3.1, in the sense that changes to your model script should generally not be necessary.
You can obtain SLiM 3.2 from the SLiM home page at http://messerlab.org/slim/
; note that the manuals, recipes, and reference sheets have also undergone revisions.
If you have any questions, comments, etc., please use the slim-discuss group for that. Thanks, and happy modeling!
Benjamin C. Haller