- Improved package structure by including additional subpackages and modules
- The implicit import of classes and functions is removed from the initialization of the package, instead these should be explicitly imported by the user
- Started with implementing improved output printing, added `print_section` function in `core_util`
- Support for BT-NextGen subsolar metallicity grid (`tag='bt-nextgen-subsolar'`)
- Changed default transmission threshold from 0.05 to 0.01 in `SyntheticPhotometry`
- GJ 758 B included in `companion_data.json` (thanks mperrin!)
- Tutorial included for plotting companion properties
- Fitting a flux scaling and offset in `FitModel`
- Updated `add_model_grid` such that only spectra files are unpacked within the selected `teff_range`
- Added `unpack_tar` parameter to `add_model`
- Update links in tutorials and documentation pages
- Added `verbose` parameter to `available_models` and `list_companions`
- Fixed issue with `float` type returned by likelihood function
- Fixed issue with `np.inf` in the likelihood that can not be handled by UltraNest
- Added `setup_retrieval` method to `AtmosphericRetrieval`
- Added gradient P-T parameterization from Zhang et al. 2023 (thanks wbalmer!)
- Support for nested sampling with Dynesty in `AtmosphericRetrieval` with `run_dynesty` method (thanks wbalmer!)
- Refactoring of the prior function in `FitModel` so it is shared by the sampling routines
- Added `normal_prior` parameter to `FitModel` and deprecated the `prior` parameter in `run_multinest` and `run_ultranest`
- Added `resume` and `kwargs_multinest` parameters to `run_multinest`
- Added `resume` and `kwargs_ultranest` parameters to `run_ultranest`
- Spectra are no longer removed when rerunning `add_object` with different spectrum labels
- Changed `scipy.interpolate.interp1d` to `numpy.interp` which produces the same output but `interp1d` is considered a legacy function
- Added `calc_phot` parameter to `contrast_to_mass`
- Retrieving `log_p_base` with physical clouds instead of using the condensation profile
- Added `param_fmt` parameter to `plot_spectrum`
- Fixed issue with appending to database during multiprocessing
- Added `verbose` parameter to `get_median_sample`, `get_probably_sample`, and `get_compare_sample`
- Store priors from `FitModel` in the database results
- Removed `interp_method` from configuration so linear interpolation is used
- Added `rad_vel` and `vsini` as optional retrieval parameters in `AtmosphericRetrieval`
- Added support for nested sampling with Dynesty in `FitModel` with `run_dynesty` method
- Renamed the `spec_res` parameter in `add_model` to `wavel_sampling`
- Deprecated the `smooth` parameter in `ReadModel` and `ReadPlanck` since the `spec_res` parameter is sufficient
- Renamed the `get_spec_res` method in `ReadModel` to `get_sampling`
- Moved the `convert_model_name` function to the `model_util` module
- Added option to use `wavel_range` parameter without setting `wavel_sampling` in order to not resample but store a restricted wavelength range
- Increased dependency versions in `requirements.txt`
- Updated documentation and tutorials
- Many small enhancements and several minor bug fixes