metabodecon 1.6.2
- Added an exception to
test-install_mdrb.Rso the test also works on r-universe machines.
metabodecon 1.6.0
- Updated Getting-Started vignette to use
deconvolute()instead ofgenerate_lorentz_curves(). - Fixed a bug in
find_peaks()that sometimes caused the borders of a peak to be chosen suboptimally. The new implementation is also about 100 times faster.
metabodecon 1.5.2
- Removed all links to the old
TODOS.mdandARCHIVE.mdfrom the package documentation, as these files were removed with v1.5.1.
metabodecon 1.5.1
- Enabled slow tests in automatic R-CMD-check workflow.
- Improved examples to also work in case the Bioconductor dependencies of ‘speaq’ are not installed.
- Improved Github Actions to test and handle the case of missing Bioconductor dependencies.
- Disabled the automatic testing of the
check_mdrb_deps()example, as it can take longer than 5 seconds on some systems. - Removed
TODOS.mdandARCHIVE.mdfrom the package.
metabodecon 1.5.0
- Soft-deprecated
generate_lorentz_curves() - Improved
install_mdrb(). Installation is now done from R Universe instead of Github, allowing installation of pre-compiled binaries, which is way faster. - Added argument
verbosetocheck_mdrb_deps(). - Added the possibility to provide plain
spectraobjects toplot_spectra(). Previously, only deconvoluted spectra were accepted, i.e. objects of classdecons0,decons1ordecons2. - Improved
align(). Integrals are now calculated asA * pi, representing the area under the Lorentzian curve as an improper integral, rather than being bounded by the signal range as a definite integral. That’s faster and more accurate.
metabodecon 1.4.3
- Improved questions asked by
deconvolute()in interactive mode - Added function
get_si_mat()for extracting a matrix of aligned signal integrals fromalignsobjects - Added author details to every function
- Added deprecation notes to
get_ppm_range(),gen_feat_mat(),speaq_align(),combine_peaks(),dohCluster(),calculate_lorentz_curves,generate_lorentz_curves()andgenerate_lorentz_curves_sim().
metabodecon 1.4.2
- Fixed
aaa_Get_Startedentry in Manual - Changed default value of argument
verbosefrom FALSE to TRUE for functionalign()anddeconvolute(). - Added argument
install_depstoalign(). If non-CRAN dependencies required byalign()are missing andinstall_depsis TRUE, these dependencies are now installed automatically. Ifinstall_depsis NULL (default), the user is asked interactively for confirmation before attempting the install.
metabodecon 1.4.1
- Added
get_started()andmetabodecon-packageto manual - Improved
plot_spectrum()default margins. - Improved plots shown during
deconvolute(): SFR and WSHW are now both shown as rectangles instead of lines. - Improved
install_mdrb()example - Improved
Get_Startedarticle - Included
Get_Startedarticle as vignette within the package
metabodecon 1.4.0
- Improved Github Workflow (GWF) to test installation on a clean Windows/Linux/Mac OS with R pre-installed, but without R-tools and any packages.
- Added
use_rustoption todeconvolute(). Ifuse_rustis TRUE, the deconvolution is done using the implementation from Rust package metabodecon-rust. Using the Rust backend requires R package mdrb (Metabodecon Rust Backend) to be installed first. For this purpose the following additional functions are provided:-
install_mdrb(): Installs mdrb -
check_mdrb(): Checks whether a suitable version of mdrb is already installed -
check_mdrb_deps(): Checks whether all required system dependencies of mdrb are installed
-
metabodecon 1.3.0
- Added Github Workflow (GWF) to test installation on a clean Windows/Linux/Mac OS with R pre-installed, but without R-tools and any packages. Closes Todo ‘Test Install on clean OS’.
- Fixed GWF for testing code coverage script
- Improved formatting for R-CMD-check-GWF and pkgdown-GWF
- Improved
align(). The new implementation is faster and returns more information. In particular, the chemical shifts of the aligned peaks centers as well as the superposition of the aligned peaks are returned. - Improved documentation and defaults for
speaq_align()andcombine_peaks(). - Improved
draw_spectrum():- Added parameters
bt_text,lt_text,tp_textandrt_texttoplot_spectrum()to allow for full control over the text labels at the plot margins. - Added parameter
sf_verttoplot_spectrum()to allow configuration of the height of the vertical lines drawn at the peak centers. - Added the option to fill the area under lorentzian curves with color.
- Improved the legend of the plot.
- Added parameters
metabodecon 1.2.6
CRAN release: 2025-01-21
- Fixed a bug in
MetaboDecon1D()that caused argumentfile_pathto be interpreted as a relative path, even if it was an absolute path.
metabodecon 1.2.5
- Fixed a bug in
read_spectrum()that caused argumentrawto not be passed on toread_jcampdx().
metabodecon 1.2.0
Finished the following tasks.
- CRAN-0: Omit “Functions for” in title
- CRAN-1: Omit “Functions for” in DESCRIPTION
- CRAN-2: Explain acronyms like NMR
- CRAN-3: Use correct reference format in DESCRIPTION
- CRAN-4: Explain return value in function docs
- CRAN-5: Remove examples from unexported functions
- CRAN-6: Fix vignettes
- CRAN-7: Check dontrun examples
- CRAN-8: Functions should not write to disk by default
- CRAN-9: Functions should not change working dir or global options
- FEATURE-01: Use temp dirs for example data
- FEATURE-02: Add minimal example dataset
- FEATURE-03: Batch Mode
- FEATURE-04: Parallelize
- FEATURE-05: Add test suite
- FEATURE-06: Return lambda in hertz
- FEATURE-07: Improve return value
- FEATURE-09 Implement
read_spectra() - FEATURE-11: Accept dataframes in GLC
- FEATURE-14: Provide simulated datasets
- FEATURE-15: Add lifecycle badges
- FEATURE-16: Improve multiprocessing
- FEATURE-17: Discard output
- FEATURE-18: Implement
plot_spectrum() - FEATURE-20: Implement
deconvolute_blood() - FIX-1: Prevent crashes for high smoothing
- REFACTOR-01: Combine load_spectrum functions
- REFACTOR-02: Improve Text Output (
-License,+Timestamps) - REFACTOR-04: Plotting speed
- REFACTOR-05: Speedup smoothing
- REFACTOR-06: Use a single unit as source of truth
- REFACTOR-07: Split monolithic functions into smaller parts
- REFACTOR-08: Improve docs for Metabodecon1D return value
- REFACTOR-09: Replace glc with
generate_lorentz_curves() - REFACTOR-10: Replace all md1d with
MetaboDecon1D()calls - REFACTOR-11: Implement
calc_prarp() - REFACTOR-12: Write compliance tests
- REFACTOR-13: Write PRARP tests
metabodecon 1.1.1
API:
- Fixed a bug in
generate_lorentz_curves()that caused the function to always use file format “bruker”, even when file format “jcampdx” was specified.
Datasets:
- Fixed filenames of samples in blood dataset (renamed from
Bood_<nr>toblood_<nr>). - Renamed
example_datasets/jcampdx/urine/urine.dxtoexample_datasets/jcampdx/urine/urine_1.dxand renamedexample_datasets/bruker/urine/urine/toexample_datasets/bruker/urine/urine_1/. This was done becauselist.filesseems to return different orderings forurine.dxandurine_2.dxin different operating systems, whereasurine_1.dxandurine_2.dxare sorted the same way everywhere. This makes it easier to write clear and concise test cases, because we don’t need to check for file ordering.
Documentation:
- Fixed broken image in vignettes/FAQ.Rmd.
Testing:
- Added unit tests for
generate_lorentz_curves(). - Enabled parallel processing for unit tests.
- Created initial versions of
tests/testthat/test-generate_lorentz_curves-[1-4].R. - Added
generate_lorentz_curves_v2()toDESCRIPTION/Config/testthat/start-first. - Adjusted existing tests to use the updated version of
example_datasets(sampleurinewas renamed tourine_1, as mentioned in above in section Datasets)
Internal:
- Added functions
%||%,msg()andmsgftoR/util.R. - Added elements
range_water_signal_ppmandsignal_free_regionto returned list of functiondeconvolute_spectrum. - Function
withnow prints error messages to stderr even if the message stream is redirected. - Copied function
deconvolution()fromR/MetaboDecon1D.RtoR/main_v2.Ras.deconvolute_spectrum. - Fixed order of params in
deconvolution. - Fixed
download_example_datasets(). Argumentoverwriteis passed correctly on tocache_example_datasets(). - Changed URL of example datasets
xds$urlfromhttps://github.com/spang-lab/metabodecon/releases/download/v1.0.2/example_datasets.ziptohttps://github.com/spang-lab/metabodecon/releases/download/v1.1.0/example_datasets.zip. - Improved
cache_example_datasets(). Extraction now only is done ifextract == TRUEAND the resulting folder does not yet exist (saves approx. 2-3s on each call). To overwrite a possible existing folder, argumentoverwritecan be set to TRUE. - Fixed formatting of
test_helpers.R - Added linter config
.lintr
metabodecon 1.1.0
API:
- Improved function
download_example_datasets()by adding caching and making it more stable - Replaced function
get_data_dir()withdatadir()and its helper functionsdatadir_persistent(),datadir_temp()andtempdir - Function
get_data_dir()is now deprecated in favour ofdatadir()
Documentation:
- Added question about file structure to vignettes/FAQ.Rmd
- Created categories for function reference in _pkgdown.yml
Datasets:
- Moved
misc/datasetstomisc/example_datasets - Moved
misc/examples/usage_example.Rtomisc/code_examples/sage_example.R
Internal:
- Added unit tests
- Removed script
check_package.R - Moved functions from
util.Rtodatadir.R - Added
grDevices,statsandutilsas internal imports - Added lots of test helper functions in
R/test_helpers.R - Added function
generate_lorentz_curves_v2()which will replacegenerate_lorentz_curves()as soon as we have new features AND 100% backwards compatibility - Fixed bug in
with()that causedget_datadir_mock()to be called after redirection took place causing unexpected message output - Fixed bug in
datadir()that caused the resulting path to end with a slash on Unix-like systems and without a slash on Windows, iffilewas not specified -
RUN_SLOW_TESTSis now set to TRUE for the CI pipeline
metabodecon 1.0.3
API:
- Updated
get_data_dir()to accept"blood"as new value for parameterdataset_name - Updated
download_example_datasets()to download the datasets from the github repo instead of the old spang-lab repo
Documentation:
- Removed table of contents from
README.mdas it’s a bit overkill for approx. 50 lines of text - Improved documentation
Internal:
- Switched from MIT License to GPL-3 to match the license of the predecessor package
MetaboDecon1D - Added
docsfolder to.gitignore. Reason: we changed all vignettes to pkgdown articles which will be displayed only at our Github Pages website and can be regenerated from foldervignettesupon deployment. - Created
TODOS.mdand added it to.Rbuildignore(Update 2025-09-14: TODOS are no longer tracked inTODOS.md, but outside of the repository. To retrieve the last actively maintained version ofTODOS.md, checkout commit 8b1f61b, i.e., v1.5.0.) - Improved
.gitignore