Releases: sassoftware/python-sasctl
Releases · sassoftware/python-sasctl
v1.9.3
Improvements
- Refactored gitIntegration.py to
git_integration.py
and added unit tests for better test coverage.
Bugfixes
- Fixed issue with ROC and Lift charts not properly being written to disk.
- Fixed JSON conversion for Lift charts that caused TRAIN and TEST charts to be incorrect.
- Fixed issue with H2O score code and number of curly brackets.
- Updated score code logic for H2O to account for incompatibility with Path objects.
- Fixed issue where inputVar.json could supply invalid values to SAS Model Manager upon model import.
- Fixed issue with
services.model_publish.list_models
, which was using an older API format that is not valid in SAS Viya 3.5 or SAS Viya 4.
v1.9.2
Improvements
- Add recursive folder creation and an example.
- Add example for migrating models from SAS Viya 3.5 to SAS Viya 4.
Bugfixes
- Fixed improper json encoding for
pzmm_h2o_model_import.ipynb
example. - Set urllib3 < 2.0.0 to allow requests to update their dependencies.
- Set pandas >= 0.24.0 to include df.to_list alias for df.tolist.
- Fix minor errors in h2o score code generation
v1.9.1
Improvements
- Updated handling of H2O models in
sasctl.pzmm
.- Models are now saved with the appropriate
h2o
functions within thesasctl.pzmm.PickleModel.pickle_trained_model
function. - Example notebooks have been updated to reflect this change.
- Models are now saved with the appropriate
Bugfixes
- Added check for
sasctl.pzmm.JSONFiles.calculate_model_statsistics
function to replace float NaN values invalid for JSON files. - Fixed issue where the
sasctl.pzmm.JSONFiles.write_model_properties
function was replacing the user-defined model_function argument. - Added NpEncoder class to check for numpy values in JSON files. Numpy-types cannot be used in SAS Viya.
v1.9.0
Improvements
sasctl.pzmm
refactored to follow PEP8 standards, include type hinting, and major expansion of code coverage.sasctl.pzmm
functions that can generate files can now run in-memory instead of writing to disk.
- Added custom KPI handling via
pzmm.model_parameters
, allowing users to interact with the KPI table generated by model performance via API.- Added a method for scikit-learn models to generate hyperparameters as custom KPIs.
- Reworked the
pzmm.write_score_code()
logic to appropriately write score code for binary classification, multi-class classification, and regression models. - Updated all examples based on
sasctl.pzmm
usage and model assets.- Examples from older versions moved to
examples/ARCHIVE/vX.X
.
- Examples from older versions moved to
- DataStep or ASTORE models can include additional files when running
tasks.register_model()
.
Bugfixes
- Fixed an issue where invalid HTTP responses could cause an error when using
Session.version_info()
.
v1.8.2
Improvements
folders.get_folder()
can now handle folder paths and delegates (e.g. @public).
Bugfixes
- Fixed an issue with
model_management.execute_model_workflow_definition()
where input values for
workflow prompts were not correctly submitted. Note that theinput=
parameter was renamed to
prompts=
to avoid conflicting with the built-ininput()
.
v1.8.1
Changes
- Adjusted workflow for code coverage reporting. Prepped to add components in next release.
- Added
generate_requirements_json.ipynb
example.
Bugfixes
- Fixed improper math.fabs use in
sasctl.pzmm.writeJSONFiles.calculateFitStat()
. - Fixed incorrect ast node walk for module collection in
sasctl.pzmm.writeJSONFiles.create_requirements_json()
.
v1.8.0
Improvements
- Added
Session.version_info()
to check which version of Viya the session is connected to. - Updated the
properties=
parameter ofmodel_repository.create_model()
to accept a dictionary containing
custom property names and values, and to correctly indicate their type (numeric, string, date, datetime) when
passing the values to Viya. - Added
services.saslogon
for creating and removing OAuth clients.
Changes
- Deprecated
core.platform_version()
in favor ofSession.version_info()
. - A
RuntimeError
is now raised if an obsolete service is called on a Viya 4 session (sentiment_analysis,
text_categorization, and text_parsing) - Replaced the JSON cassettes used for testing with compressed binary cassettes to save space.
- Updated the testing framework to allow regression testing of multiple Viya versions.
- Refactored the authentication functionality in
Session
to be more clear and less error prone. Relevant
functions were also made private to reduce clutter in the class's public interface.
Bugfixes
- Fixed an issue with
register_model()
that caused invalid SAS score code to be generated when registering an
ASTORE model in Viya 3.5. - Fixed a bug where calling a "get_item()" function and passing
None
would throw an error on most services instead
of returningNone
. - Fixed a bug that caused the authentication flow to be interrupted if Kerberos was missing.
v1.7.3
Improvements
- Refactor astore model upload to fix 422 response from SAS Viya 4
- ASTORE model import now uses SAS Viya to generate ASTORE model assets
- Expanded usage for cas_management service (credit to @SilvestriStefano)
Bugfixes
- ASTORE model import no longer returns a 422 error
- Fix improper filter usage for model_repository service
- Fix error with loss of stream in add_model_content call for duplicate content
- Update integration test cassettes for SAS Viya 4
v1.7.2
Improvements
- Added a new example notebook for git integration
- Added a model migration tool for migrating Python models from Viya 3.5 to Viya 4
- Improved handling of CAS authentication with tokens
Bugfixes
- Fixed git integration failure caused by detached head
- Fixed minor bugs in score code generation feature
- Fixed 500 error when importing models to Viya 4 with prewritten score code
- Fixed incorrect handling of optional packages in pzmm
v1.7.1
Bugfixes
- Removed linux breaking import from new git integration feature
- Various minor bug fixes in the git integration feature