Skip to content

Commit b2365e7

Browse files
committed
added back the dash components to the installation since some versions of dash still require them, and updated the changelog for the v0.3.1 release
1 parent 0b22c1d commit b2365e7

File tree

2 files changed

+31
-5
lines changed

2 files changed

+31
-5
lines changed

CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,22 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
55
and the versioning is mostly derived from [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

7+
## [v0.3.1] - 2023-03-13
8+
### Added
9+
- Mac m1 support in conda-forge
10+
- SPOTGreedy prototype selection (PR #392)
11+
### Fixed
12+
- fix visualization when both cloud and non-cloud environments are detected (PR #210)
13+
- fix ShapTree bug where it was treating classifiers as regressors
14+
- resolve scikit-learn warnings occurring when models were trained using Pandas DataFrames
15+
- change the defaults to prefer 'continuous' over 'nominal' when a feature has 1 or 2 unique float64 values
16+
### Breaking Changes
17+
- in the blackbox and greybox explainers, change from accepting a predict_fn to
18+
accepting either a model or a predict_fn
19+
- feature type 'categorical' has been renamed to 'nominal' for the remaining
20+
feature_type parameters in the package (EBMs were already using 'nominal')
21+
- removed the unused sampler parameters to the Explainer classes
22+
723
## [v0.3.0] - 2022-11-16
824
### Added
925
- Full Complexity EBMs with higher order interactions supported: GA3M, GA4M, GA5M, etc...

python/interpret-core/setup.py

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,11 @@
8484
"treeinterpreter": ["treeinterpreter>=0.2.2"],
8585
# Dash
8686
"dash": [
87+
# dash 2.* removed the dependencies on: dash-html-components, dash-core-components, dash-table
8788
"dash>=1.0.0",
89+
"dash-core-components>=1.0.0", # dash 2.* removes the need for this dependency
90+
"dash-html-components>=1.0.0", # dash 2.* removes the need for this dependency
91+
"dash-table>=4.1.0", # dash 2.* removes the need for this dependency
8892
"dash-cytoscape>=0.1.1",
8993
"gevent>=1.3.6",
9094
"requests>=2.19.0",
@@ -129,6 +133,7 @@ def _copy_native_code_to_setup():
129133
"Shared directory in symbolic not found. This should be configured either by setup.py or alternative build processes."
130134
)
131135

136+
132137
def build_libebm():
133138
script_path = os.path.dirname(os.path.abspath(__file__))
134139
sym_path = os.path.join(script_path, "symbolic")
@@ -141,9 +146,7 @@ def build_libebm():
141146
build_script = os.path.join(sym_path, "build.sh")
142147
subprocess.check_call(["/bin/sh", build_script], cwd=sym_path)
143148

144-
source_dir = os.path.join(
145-
sym_path, "python", "interpret-core", "interpret", "lib"
146-
)
149+
source_dir = os.path.join(sym_path, "python", "interpret-core", "interpret", "lib")
147150
target_dir = os.path.join(script_path, "interpret", "lib")
148151
os.makedirs(target_dir, exist_ok=True)
149152
file_names = os.listdir(source_dir)
@@ -152,6 +155,7 @@ def build_libebm():
152155
os.path.join(source_dir, file_name), os.path.join(target_dir, file_name)
153156
)
154157

158+
155159
def build_vis():
156160
script_path = os.path.dirname(os.path.abspath(__file__))
157161

@@ -160,10 +164,13 @@ def build_vis():
160164
subprocess.run("npm install && npm run build-prod", cwd=js_path, shell=True)
161165

162166
js_bundle_src = os.path.join(js_path, "dist", "interpret-inline.js")
163-
js_bundle_dest = os.path.join(script_path, "interpret", "lib", "interpret-inline.js")
167+
js_bundle_dest = os.path.join(
168+
script_path, "interpret", "lib", "interpret-inline.js"
169+
)
164170
os.makedirs(os.path.dirname(js_bundle_dest), exist_ok=True)
165171
shutil.copyfile(js_bundle_src, js_bundle_dest)
166172

173+
167174
class BuildCommand(build):
168175
def run(self):
169176
# when making a wheel we depend on a cloud build platform to make the various OS and platform
@@ -180,7 +187,9 @@ def run(self):
180187
# this should only be triggered in an sdist
181188
build_libebm()
182189

183-
js_bundle_dest = os.path.join(script_path, "interpret", "lib", "interpret-inline.js")
190+
js_bundle_dest = os.path.join(
191+
script_path, "interpret", "lib", "interpret-inline.js"
192+
)
184193
if not os.path.exists(js_bundle_dest):
185194
# this will trigger from github source or during conda building
186195
# but it wil not trigger on bdist or sdist build in azure-pipelines since the js file will exist
@@ -202,6 +211,7 @@ def run(self):
202211
build_vis()
203212
sdist.run(self)
204213

214+
205215
setup(
206216
name=name,
207217
version=version,

0 commit comments

Comments
 (0)