• Compatible with rosetta-soil Python package v0.3
    • Updated run_rosetta() and predict.Rosetta() to handle the 7-parameter output (adding K0 and L) introduced in rosetta-soil v0.3.
    • Added estimate_type argument to run_rosetta() to support linear, logarithmic (default), and geometric parameter estimations. Improved documentation and added examples for the geometric scale.
    • Added UnsaturatedK() R constructor and predict.UnsaturatedK() method for predicting K0 and L from retention parameters (requires rosetta-soil >= 0.3).
    • Added rosesoil() R wrapper for the new upstream rosesoil() function (requires rosetta-soil >= 0.3).
    • Deprecated SoilDataFromArray() in favor of direct list input (supported in rosetta-soil >= 0.3.
    • Deprecated ann_predict() as the underlying Python method has been removed in v0.3. It now redirects to predict().
  • Added a new vignette: “Performance Optimization and Raster Processing” covering best practices for high-throughput workflows.
  • Fix check logic for whether input SpatRaster is in memory
  • Added arguments to install_rosetta()

    • system argument for installing to user site packages with --user flag

    • upgrade argument for forcing upgrade of rosetta-soil module

  • Fixes for recent changes in {reticulate} (>= 1.29)

    • Add custom py_to_r() S3 wrapper for rosetta.rosetta.SoilData objects (#8)
  • Suppress some output on non-Windows platforms

  • Update tests for modern usage of {terra} categorical rasters

  • Set minimum R version to 3.5
  • Improvements to find_python() (now uses user path python if defined, and calls reticulate::use_python() as needed)

  • Changed .onLoad() behavior (should reduce amount of custom Python settings needed)

  • Updated unit tests to skip if required Python modules are not installed
  • Clarified virtual and Conda environments for {reticulate} setup in function documentation and README
  • run_rosetta()
    • Pass through variable order (vars) and parallel/block processing arguments (core, file, nrows, overwrite) to SpatRaster method for Raster* objects
  • Use {terra} internally for raster data inputs and outputs
  • Add S3 run_rosetta() methods for matrix, RasterBrick and SpatRaster
  • Initial R package
  • Use {reticulate} to handle install of Python modules: rosetta-soil, numpy
  • Provide list-input interface; directly coercible to Python data structures used for run_rosetta()