Release Notes for Pumas 2.8.1
Pumas
Experimental
- Support models without estimated standard deviation in error model, without dynamical systems or without random effects in
MCEM. - Correctly handle
ensemblealginput inMCEM. - Support
MvNormal,MvLogNormalandMvLogitNormalrandom effects inMCEM. - Avoid throwing errors if
@deriveddoes not depend on population parameters inMCEM. These models now correctly fit. - Add support for dependent variables with
MixtureModelstatistical models inMCEM. - Fix handling of discrete random effects in
@randomwithMCEM. - Improve the progress bar for MCEM fits.
Improvements
Documentation and error messages
- Improve
vcovandinferdocstrings to list all keyword arguments and their default values. - We now throw an informative error message if users try to fit a model with no free population parameters. Previously, an error was thrown that could be hard to interpret.
Bugs
- Handle exceptions during distributed
infercorrectly. Previously, the error would be rethrown directly even if they user didn't ask for errors to be thrown directly instead of returning a FailedCovariance type. - Improve the handling of work in distributed computing (
EnsembleDistributed)simobscalls to be thread safe. - Fix incorrect printing of
inferoutput for bootstrapped inference where no stratification variables were used. Previously, the text would indicate that a list of stratification variables was to be printed but the list was empty as no stratification was used. - Remove mention of unsupported quadrature method in crossvalidation docstrings.
- Preserve order of
Subjects inDataFrameconstructors. - Fix the number of observations listed in show methods for
Subjects. Previously,missingvalues would be counted. - Fix the length of
missingpredictions forFiniteMarkovandOrderedLogitdependent variable statistical models. - Fix a problem where
DataFrameconstructors could fail onsub::Subjects with content that was not vectors of lengthsub.time. These are now correctly filled to the appropriate length. - Fix forwarding of
@varsand@derivedquantities togsa. Previously, only@observedquantities were visible to thegsaprocedure. - Fix a bug where scalar variables from
@varscould not correctly be broadcasted in downstream blocks such as@derived.
Deprecations
PumasPlots
Features and improvements
Documentation and error messages
Bugs
Plot multiple dependent variables in separate rows in
subject_fitswith independent y axes vialinkyaxes = :minimal, matchingsim_plotbehavior. Previously all DVs were overlaid on the same axes, making plots unreadable when endpoints are on different scales.subject_fitshad strange y-axis values if a subject had missing values. Values are now filtered to exclude missing values such that values are now less cluttered and with nomissingvalue at the top.Fixed
goodness_of_fitpagination so thatpaginate=truegroups all 4 subplots per DV on one page, instead of returning one page per individual subplot.
Deprecations
NCAUtilities
Features and improvements
Bugs
Bioequivalence
Features and improvements
Documentation and error messages
Bugs
Deprecations
SummaryTables
Features and improvements
Bugs
AlgebraOfGraphics
Behavior change
Experimental Features
Features and improvements
Documentation and error messages
Bugs
PumasAide
Features and improvements
- Reduced the number of MCP tools exposed to better match what current models handle well on their own. Agents now write Julia code directly, guided by API reference docs for Pumas, NCA, DataFrames, and AlgebraOfGraphics.
- Reduced tool output verbosity to avoid overwhelming clients with unneeded data.
- Tool execution errors now return clean user-facing messages without internal stacktraces.
- Removed subjective content from the knowledge base. Users can develop and provide their own organisation-specific rules that work with PumasAide.
Bugs
- Fixed timeout on first use during a Julia session that caused MCP client connection failures.
- Fixed search tool failures when agents wrapped queries in extra double quotes.
- Fixed
-32800errors that could occur when reconnecting to the MCP server within the same Julia session. - Replaced pseudocode in bootstrap knowledge docs with real Pumas API to prevent agents from inventing nonexistent functions.