FICO Xpress - Insight Python package
Project description
FICO® Xpress Insight Python Package
The 'xpressinsight' Python package can be used to develop Python® based web applications for Xpress Insight.
Documentation
- FICO Xpress Insight 5 Python Package Reference Manual
- FICO Xpress Insight 5 Developers Guide For Python
Release Notes
v 1.12.0 (Insight 5.12.0)
- New subpackage
xpressinsight.scenario
containing client for calling Insight 5 REST API. - Resolved an issue passing multiple tag names to
AppInterface.set_scen_attach_tags
v 1.11.0 (Insight 5.11.0)
- New property
AppInterface.user_id
for reading the ID of the user executing the scenario. - Added optional execution resource groups property (
exec_resource_groups
) to application configuration (AppConfig
).- Execution mode threads and memory requirements can be set through execution resource groups.
- Added
exec_resource_group_name
attribute on theExecMode
,ExecModeLoad
andExecModeRun
decorators. threads
attribute on theExecMode
,ExecModeLoad
andExecModeRun
decorators is deprecated, new apps should use an execution resource group instead.
- New property
AppConfig.partial_populate
to turn off automatic population of input entities. - Added function
AppInterface.populate
to specify a subset of the input entities to populate. - Added function
AppInterface.capture
to specify a subset of the entities to capture at the end of the execution mode. - When passing entity names to
AppBase.initialize_entities
, column entities may be specified using the syntax<data_frame_name>.<column_name>
as an alternative to the entity name. - When running in test mode, the default attachment rules will be the same as those used when running in Insight 5.11.
- Add support for Polars 1.1.0
- Add support for numpy 2.0
v 1.10.0 (Insight 5.10.0)
- Python 3.12 support.
- The old syntax for annotating entities (e.g.
xi.Scalar
instead ofxi.types.Scalar
) cannot be used when running with Python 3.12.
- The old syntax for annotating entities (e.g.
- Added Polars entity types
PolarsIndex
andPolarsDataFrame
. - Added new parameter
update_keep_result_data
to entity definitions, to allow result data to be retained when input entity edited by a view. - The
xi.types.Column
class now supports anentity_name
attribute, allowing column entities to be given names that are not based on the name of the parent DataFrame. - Declaring an index entity of type
real
will now raise an error, where previously it was silently ignored by the Insight server. - Added
IndexBase
andDataFrameBase
as superclasses ofIndex
andDataFrame
. The types ofDataFrame.index
andSeries.index
have changed fromTuple[Index, ...]
toTuple[IndexBase, ...]
. - Fixed an issue with the
get_attach_rules
function. - Added fields
platform_token
andplatform_token_expiry
toInsightDmpContext
for authorizing requests for platform resources under the authority of a platform client id.
v 1.9.0 (Insight 5.9.0)
- New function
AppBase.initialize_entities
for initializing selected app entities to their default values. - Add support for calling app interface & other standard functions from multiple threads.
- The
attach_status
property now holds the status of the last attachment operation invoked from the current thread; previously it referred to the last attachment operation from any thread. - The
attach_status
property is no longer read-only. - The internal work folder is now called
xpressinsight
instead ofinsight
. - The following changes only affect test mode:
- The execution mode work folder is now a sub-folder
work_dir
within the application folder. - The
xpressinsight
work folder is now created as a sub-folder of the execution mode work folder. - Resolved issues when attachment filenames end
.properties
.
- The execution mode work folder is now a sub-folder
v 1.8.0 (Insight 5.8.0)
- New function
get_scenario_data
allows reading entities from other apps and scenarios. - Introduce
xi.types.Column
class which can be used in place ofxi.Column
in app definitions. There is currently no plan to removexi.Column
. - Attempt to capture entity data after an execution mode that ended abnormally (exception raised or
sys.exit
called).
v 1.7.1 (Insight 5.7.0)
- New function
get_solution_database
returns the location and credentials of the DMP solution's database. - Enabled functions
get_app_attach
,get_scen_attach
andput_scen_attach
to write/read the attachment to/from a folder other than the work directory or a local filename different from attachment name. - Enabled functions
get_attach_by_tag
,get_attachs_by_tag
andget_attach_filenames_by_tag
to write the attachments to a folder other than the work directory. - Fixed an issue with the
InsightDmpContext.solution_token_expiry_time
value in non-UTC timezones. - Removed support for Python 3.7. This version supports only Python 3.8 - 3.11.
v 1.6.0 (Insight 5.6.0)
- Resolved an error when a script declares multiple app classes with a shared superclass.
- Added attribute
default
to thexi.Column
class. - Use of the old syntax for annotating entities (e.g.
xi.Scalar
instead ofxi.types.Scalar
) will cause a warning message when the app is built or executed in Python 3.11. This syntax has been deprecated and will not be usable at all in Python 3.12+. - New function
get_insight_context
returns information about the Insight server and the DMP solution. - Python 3.11 support.
- Pandas 2.0 support.
v 1.5.0 (Insight 5.5.0)
- Allow an Index entity to be referenced multiple times within a single Series or DataFrame -
e.g.
Distance: xi.types.Series(index=['City', 'City'], dtype=xi.real)
. - Support
multiprocessing
package.
v 1.4.1 (Insight 4.59.6 and 4.60.0)
- Resolve issue building apps with Xpress 9.2 and apprunner 1.4.
- Update dependencies to require Pandas v1 with xpressinsight 1.4.
v 1.4.0 (Insight 5.4.0 and 4.59.2)
- New syntax for annotating entities,
xi.types.Scalar
/Param
/Index
/Series
/DataFrame
instead ofxi.Scalar
/Param
/Index
/Series
/DataFrame
.- The new syntax is compatible with forward annotations (
from __future__ import annotations
). - The old syntax will continue to work in Python 3.7-3.10 but will not be usable in Python 3.11+, so we recommend existing apps are migrated from the old to the new syntax.
- When the new syntax is used, entities may also be declared in a parent class of the Insight application class.
- The new syntax is compatible with forward annotations (
v 1.3.0 (Insight 5.3.0 and 4.59.0)
- Support for Insight 5 custom progress notifications:
- Added functions
send_progress_update
,get_messages
andput_messages
to Insight application interface (AppInterface
). - Added the
send_progress
attribute theExecMode
,ExecModeLoad
, andExecModeRun
decorators. - Added the
update_progress
attribute to the entity type annotations.
- Added functions
- RHEL 8 support.
- Python 3.10 support
- At time of writing the
default
Anaconda channel does not have all the dependencies required by thexpressinsight
package for this Python version. We recommend conda users to stick with Python 3.9, or use a different distribution of Python 3.10 until this is resolved.
- At time of writing the
- Fixed an issue that caused a failure if the path to the temporary directory contained a space.
v 1.2.3 (Insight 5.2.1 and 4.58.0)
- Added the
threads
attribute to theExecMode
,ExecModeLoad
, andExecModeRun
decorators.
v 1.2.2
- Fixed an issue that could cause a type check exception when the user created empty (null) fields in a DataFrame column in the Insight UI.
v 1.2.1
- Added test mode functions
add_item_info
andclear_item_infos
to Insight application interface. - Added function
scenario_parent_path
to Insight application interface. - Added
RepositoryPath
class for building and parsing of repository paths.
v 1.2.0
- Added scenario types property (
scen_types
) to application configuration (AppConfig
). - Added repository functions
get_item_info
andget_item_infos
to Insight application interface (AppInterface
).
v 1.1.3
- Performance improvements.
- Python 3.9 support.
v 1.1.2
- Fixed an exception that could occur when an empty MultiIndex DataFrame has been assigned to an Insight entity.
- Updated documentation describing how to set up Anaconda.
v 1.1.1
- Improve error message when Insight cannot start Python because of security restrictions.
- Update documentation and update VDL version number in examples.
v 1.1.0
- Additional factory function
create_app
initializes and configures standard test environment. - Some performance issues with executing a Python based scenario have been addressed.
- Maximum length of a string in an Index, Series, or DataFrame has been changed from 1,000,000 bytes to 250,000 characters.
- Default name of the temporary Insight working directory has been changed from "insight" to "work_dir/insight".
v 1.0.2
- The functions
update
andreset_progress
have been added to the Insight Python interface. - Changed Python standard output to unbuffered mode to improve responsiveness of output messages.
Licensing
The Xpress software is governed by the
Xpress Shrinkwrap License Agreement.
When downloading or using the package, you accept the license terms. After installation, a copy of the Xpress Shrinkwrap
License will be stored in the LICENSE.txt
file in the site-packages/xpressinsight-*.dist-info
directory.
In Anaconda, a copy of the license file will be stored in the pkgs/xpressinsight-*/info/licenses
directory.
"Python" is a registered trademark of the Python Software Foundation. "FICO" is a registered trademark of Fair Isaac Corporation in the United States and may be a registered trademark of Fair Isaac Corporation in other countries. Other product and company names herein may be trademarks of their respective owners.
© Copyright 2012-2024 Fair Isaac Corporation. All rights reserved.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file xpressinsight-1.12.0-py3-none-any.whl
.
File metadata
- Download URL: xpressinsight-1.12.0-py3-none-any.whl
- Upload date:
- Size: 278.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b0b7aa279e0358a44ccc949ce7be4e6f2e184d0071c9f44cbd61dedec8411a48 |
|
MD5 | c4c06cccc49e1506129233972cb908ce |
|
BLAKE2b-256 | 67df266e6f7d5110500d1979aef39af70c6774cb0bac4698e37611b2cad808f6 |