Skip to content

Releases: molpopgen/fwdpy11

Documentation update

14 Apr 22:28
Compare
Choose a tag to compare

Small release to push new docs re: demes.

Support for "demes"

03 Apr 20:51
74b066e
Compare
Choose a tag to compare

This release includes support for defining demographic models using demes. @apragsdale contributed the code to convert from the demes.Graph objects to fwdpy11 objects.

Other changes are collected in the 0.14.0 milestone or the change log in the manual.

Point release

02 Mar 21:48
Compare
Choose a tag to compare

Fix for wheel building action. c31420a

Same as previous 0.13.x releases otherwise.

Point release

02 Mar 21:26
Compare
Choose a tag to compare

Same as 0.13.0, but includes #682 to attempt to fix various deployment issues we had with the previous release.
See #680 and #681.

New features, new manual, new packaging, and bug fixes!

02 Mar 01:02
Compare
Choose a tag to compare

Details are collected under milestone 0.13.0

Copy/paste from the change log:

API changes

  • The demesizes keyword is no longer accepted to initialize instances of {class}fwdpy11.DiploidPopulation.
    {pr}676
  • {meth}fwdpy11.TreeIterator.nodes no longer takes an argument.
    {pr}678
  • The type of {attr}fwdpy11.Mutation.g changed from an unsigned integer to a signed integer.
    This change has no practical consequence to user code written in Python.
    {pr}656
    {pr}670

New features

  • The dominance of a mutation may now be specified by a function.
    See {ref}mutationdominance_vignette.
    {pr}590
    {pr}629
    {pr}630
  • Add {meth}fwdpy11.TableCollection.build_indexes.
    {pr}651

Improved IDE and editor integration

  • Several key classes and functions were reimplemented.
    They are now Python layers on top of the C++.
    These changes allow better type hinting and make the docstrings more easily discoverable, resulting in jedi, etc., being better able to use them for auto completion and other tasks.
    {pr}676
    {pr}677
    {pr}678

Packaging changes

  • The build system is now PEP 517/518 compliant.
    {commit}cfd95f57e97d0fff6d4d87d06bd280d2f58ea545
  • setup.py no longer imports pybind11.
    {pr}634

Bug fixes

  • Fixed bugs in experimental features involving simulating neutral mutations during simulations recording ancient samples.
    These fixes make these features less experimental and part of the API now.
    {pr}643
    {pr}647
    {pr}650
  • Improved input parameter validation for {func}fwdpy11.evolvets.
    {pr}649
  • Fixed a bug where mutations on branches generated by msprime had invalid origin times, leading to exceptions when calling {meth}fwdpy11.DiploidPopulation.dump_tables_to_tskit.
    {pr}656
    {pr}670

Deployment changes

  • Pushes to main and new releases now trigger updates to a Docker image.
    See {ref}sec_deployment.
    {pr}652
    {pr}663
    {pr}671
    {pr}672
  • Binary wheels are automatically deployed for macOS and Linux for new releases.
    {pr}669

Documentation changes

  • The manual is now built with jupyter book. {pr}653.
  • The manual is now longer hosted on Read The Docs.
    It has been moved here and is automatically deployed by GitHub actions.
    {pr}654.

Two bugs fixed!

14 Jan 16:07
2654ede
Compare
Choose a tag to compare

API breakage:

  • Simulation without tree sequence recording is no longer supported. #607

Bug fixes:

This release fixes two bugs.
Neither bug would affect results.
Rather, they affect the behavior of some advanced features.

  • Explicit initialization of a data structure used for simplification is now always done. #626 #627
  • Simplification is now allowed to occur after a single generation. #624 #627

New features:

  • Recombination breakpoints can be restricted to integer positions. #612
  • Improved methods for decoding tskit meta data. #609

.. note:

The meta data decoding is still a moving target/work in progress.
We anticipate further changes as we get a better idea of what works well/is most useful.

This release also includes several updates to dependencies, documentation, and CI testing.
These changes are collected under the 0.12.0 milestone on GitHub.

Point release

17 Nov 15:31
Compare
Choose a tag to compare

Point release.

Behavior changes:

  • The events passed to :class:fwdpy11.DiscreteDemography are now sorted stably
    by time. #598

Documentation changes:

  • Fixed documentation for :class:fwdpy11.SetMigrationRates. #603

Back end changes:

  • Cleanup some parts of the code base. #604
  • Make the C++ back-end of :class:fwdpy11.MassMigration have the same initialization
    semantics as other demographic events. #605

Point release

04 Nov 20:49
Compare
Choose a tag to compare

Point release.

Bug fixes:

  • Fix some errors in :class:fwdpy11.DemographyDebugger. #594

Testing changes:

  • We now use GitHub actions instead of Travis. #593

Documentation changes:

  • We now use jupyter-sphinx to execute code in the manual. #597

New metadata schema, new distribution of effect sizes.

29 Oct 20:03
Compare
Choose a tag to compare

Interface changes:

  • When dumping tables to tskit via :func:fwdpy11.DiploidPopulation.dump_tables_to_tskit, we now use the latest metadata methods.
    #588
  • Most arguments to :func:fwdpy11.evolvets are now keyword-only.
    #584
  • Added :class:fwdpy11.DiscreteDESD.
    #587

Dependency updates:

  • Minimum tskit version is now 0.3.2.
  • Minimum attrs version is now 0.19.2.
  • Sphinx version pinned to 3.1.
  • The warnings for deprecated features got promoted to :class:FutureWarning.
    #583

C++ back-end changes:

  • New method to handle GSL errors. #574
  • Table collections are now managed by shared pointers. #582

Python genetic values

04 Aug 22:24
Compare
Choose a tag to compare

This release allows genetic value objects to be written in Python.
The API closely matches the underlying C++, making it easy to prototype
in Python and then implement in C++ later if speed is needed.

As usual, install from PyPi or conda. If you use an archive from this GitHub release, use the sdist and not the auto-generated files.