Skip to content

Commit a0f709b

Browse files
ulupoammedmarammedmarreds-heiggtauzin
authored
Create giotto-tda v0.2.2 (#414)
* Fix issue with docstring example and document reshaping of 1D outputs (#396) * Toc (#394) * Update P landscapes Signed-off-by: ammedmar <[email protected]> * Add distances, inner products and kernels glossary entry Signed-off-by: ammedmar <[email protected]> * Remake vectorization changes Signed-off-by: ammedmar <[email protected]> * Change [] for \lbrack \rbrack Signed-off-by: ammedmar <[email protected]> * Update after W's comments Signed-off-by: ammedmar <[email protected]> * Update after W's comments Signed-off-by: ammedmar <[email protected]> * Update afte W's second comments Signed-off-by: ammedmar <[email protected]> * Update after Umbe's comments Signed-off-by: ammedmar <[email protected]> * Update after Umbe's second comments Signed-off-by: ammedmar <[email protected]> * Update after Umbe's third comments Signed-off-by: ammedmar <[email protected]> * Update after Umbe's 4th comments Signed-off-by: ammedmar <[email protected]> * Remove concept k-skeleton Signed-off-by: ammedmar <[email protected]> * Add table of content Signed-off-by: ammedmar <[email protected]> * Add Lp & lp. Update landscape Signed-off-by: ammedmar <[email protected]> * Update TOC indentation Signed-off-by: ammedmar <[email protected]> * Add heat vectorizations entry Signed-off-by: ammedmar <[email protected]> * Update indentation of TOC Signed-off-by: ammedmar <[email protected]> * Fix extra spacing in bibliography Signed-off-by: ammedmar <[email protected]> * Update bibliography hack for caps Signed-off-by: ammedmar <[email protected]> * After Umbe's Comments Signed-off-by: ammedmar <[email protected]> * Update after issue #398 Signed-off-by: ammedmar <[email protected]> * Update after Umbe's comments Signed-off-by: ammedmar <[email protected]> * Update after Umbe's 2nd comments Signed-off-by: ammedmar <[email protected]> Co-authored-by: ammedmar <[email protected]> * Speedup windows pipeline (#402) * Improve boost location for azure pipeline on windows The boost version installed in the pipeline is now used Signed-off-by: julian <[email protected]> Co-authored-by: Umberto Lupo <[email protected]> * Make bindings public (#395) * Make bindings public Signed-off-by: Guillaume Tauzin <[email protected]> * Fix pipeline on Mac (#407) * Refresh ccache * Enforce CXX standard to 14 on each module * Change variable name to comply with E741 Signed-off-by: julian <[email protected]> Co-authored-by: Umberto Lupo <[email protected]> * Mapper visualisation refactor: fix bugs, add summary statistics in hovertext, improve opacity, remove matplotlib dependency, add node_scale kwarg, add clone_pipeline kwarg to interactive plots,restructure/rename plotly_kwargs, improve code (#406) * Refactor of `mapper/visualisation.py` and `mapper/utils/visualisation.py` - Removal of color scaling - More modularity - Variable and function name changes - Remove matplotlib functions used for hoverlabel background color - Remove cmin and cmax - Change return signature of some functions * Add test-output.xml to .gitignore * Replace "text" key in plot_options["node_trace"] with "hovertext" * Improve width and opacity of nodes and edges * Display summary statistics in hovertext with significant figure rounding via new n_sig_figs kwarg * Rename plotly_kwargs to plotly_params * Remove matplotlib installation requirement * Fix mapper notebook * Add small comment on use of matplotlib in voids_on_the_plane * Place matplotlib in examples requirement in setup.py * Improve docstring of make_mapper_pipeline * Improve examples for make_mapper_pipeline and create one for plot_static_mapper_graph * Hide set_node_sizeref, add node_scale kwarg, add clone_pipeline kwarg to plot_interactive_mapper_graph - Update docstrings - Update quickstart notebook * Add helper function for colorscale-based interpolations, improve use of plotly_params Static and interactive plots display the expect hoverlabel colors in 3D, or white if things go wrong. Thanks to @lewtun for pointing out that this was needed. * Improve docstrings * Hide visualization module in mapper/utils * Add pip install matplotlib to notebook tests in manylinux job (#410) * Fix mapper docstring issues following #406 (#411) * Fix issues with mapper docs following #406 * Create giotto-tda version 0.2.2 (#413) * Turn CODE_OWNERS and CODE_AUTHORS into an rst file * Bump version number to 0.2.2 * Add release notes for v0.2.2 Co-authored-by: Anibal M. Medina-Mardones <[email protected]> Co-authored-by: ammedmar <[email protected]> Co-authored-by: REDS institute <[email protected]> Co-authored-by: Guillaume Tauzin <[email protected]>
1 parent e938598 commit a0f709b

27 files changed

+1208
-796
lines changed

.azure-ci/install_boost.py

Lines changed: 0 additions & 23 deletions
This file was deleted.

.gitignore

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,9 @@ gtda/externals/pybind11
4242
.pytest_cache/
4343
.hypothesis/
4444

45+
# Pytest output files
46+
test-output.xml
47+
4548
# Latex
4649
*.aux
4750
*.bbl
@@ -50,7 +53,5 @@ gtda/externals/pybind11
5053
*.log
5154
*.pdf
5255
*.synctex.gz
56+
*.toc
5357
doc/theory/glossary_backup
54-
55-
# development
56-
tda/mapper/scratch/

CMakeLists.txt

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,13 @@ set(HERA_DIR "gtda/externals/hera")
1818
#######################################################################
1919

2020
pybind11_add_module(gtda_ripser "${BINDINGS_DIR}/ripser_bindings.cpp")
21+
set_property(TARGET gtda_ripser PROPERTY CXX_STANDARD 14)
22+
2123
if(OpenMP_FOUND)
2224
target_link_libraries(gtda_ripser PRIVATE OpenMP::OpenMP_CXX)
2325
endif()
24-
target_compile_definitions(gtda_ripser PRIVATE ASSEMBLE_REDUCTION_MATRIX=1)
2526

27+
target_compile_definitions(gtda_ripser PRIVATE ASSEMBLE_REDUCTION_MATRIX=1)
2628
target_include_directories(gtda_ripser PRIVATE "${RIPSER_SRC_DIR}/ripser")
2729

2830
if(MSVC)
@@ -38,11 +40,13 @@ endif()
3840
#######################################################################
3941

4042
pybind11_add_module(gtda_ripser_coeff "${BINDINGS_DIR}/ripser_bindings.cpp")
43+
set_property(TARGET gtda_ripser_coeff PROPERTY CXX_STANDARD 14)
44+
4145
if(OpenMP_FOUND)
4246
target_link_libraries(gtda_ripser_coeff PRIVATE OpenMP::OpenMP_CXX)
4347
endif()
44-
target_compile_definitions(gtda_ripser_coeff PRIVATE USE_COEFFICIENTS=1 ASSEMBLE_REDUCTION_MATRIX=1)
4548

49+
target_compile_definitions(gtda_ripser_coeff PRIVATE USE_COEFFICIENTS=1 ASSEMBLE_REDUCTION_MATRIX=1)
4650
target_include_directories(gtda_ripser_coeff PRIVATE "${RIPSER_SRC_DIR}/ripser")
4751

4852
if(MSVC)
@@ -58,6 +62,8 @@ endif()
5862
#######################################################################
5963

6064
pybind11_add_module(gtda_wasserstein ${BINDINGS_DIR}/wasserstein_bindings.cpp)
65+
set_property(TARGET gtda_wasserstein PROPERTY CXX_STANDARD 14)
66+
6167
target_link_libraries(gtda_wasserstein LINK_PUBLIC ${Boost_LIBRARIES})
6268
target_compile_definitions(gtda_wasserstein PRIVATE BOOST_RESULT_OF_USE_DECLTYPE=1 BOOST_ALL_NO_LIB=1 BOOST_SYSTEM_NO_DEPRECATED=1)
6369

@@ -77,6 +83,8 @@ endif()
7783
#######################################################################
7884

7985
pybind11_add_module(gtda_bottleneck "${BINDINGS_DIR}/bottleneck_bindings.cpp")
86+
set_property(TARGET gtda_bottleneck PROPERTY CXX_STANDARD 14)
87+
8088
target_link_libraries(gtda_bottleneck LINK_PUBLIC ${Boost_LIBRARIES})
8189
target_compile_definitions(gtda_bottleneck PRIVATE BOOST_RESULT_OF_USE_DECLTYPE=1 BOOST_ALL_NO_LIB=1 BOOST_SYSTEM_NO_DEPRECATED=1)
8290

@@ -96,6 +104,7 @@ endif()
96104
#######################################################################
97105

98106
pybind11_add_module(gtda_cubical_complex "${BINDINGS_DIR}/cubical_complex_bindings.cpp")
107+
set_property(TARGET gtda_cubical_complex PROPERTY CXX_STANDARD 14)
99108

100109
if(OpenMP_FOUND)
101110
target_link_libraries(gtda_cubical_complex PRIVATE OpenMP::OpenMP_CXX)
@@ -120,6 +129,7 @@ endif()
120129
#######################################################################
121130

122131
pybind11_add_module(gtda_persistent_cohomology "${BINDINGS_DIR}/persistent_cohomology_bindings.cpp")
132+
set_property(TARGET gtda_persistent_cohomology PROPERTY CXX_STANDARD 14)
123133

124134
if(OpenMP_FOUND)
125135
target_link_libraries(gtda_persistent_cohomology PRIVATE OpenMP::OpenMP_CXX)
@@ -146,6 +156,7 @@ endif()
146156
#######################################################################
147157

148158
pybind11_add_module(gtda_simplex_tree "${BINDINGS_DIR}/simplex_tree_bindings.cpp")
159+
set_property(TARGET gtda_simplex_tree PROPERTY CXX_STANDARD 14)
149160

150161
if(OpenMP_FOUND)
151162
target_link_libraries(gtda_simplex_tree PRIVATE OpenMP::OpenMP_CXX)
@@ -174,6 +185,7 @@ endif()
174185
#######################################################################
175186

176187
pybind11_add_module(gtda_periodic_cubical_complex "${BINDINGS_DIR}/periodic_cubical_complex_bindings.cpp")
188+
set_property(TARGET gtda_periodic_cubical_complex PROPERTY CXX_STANDARD 14)
177189

178190
if(OpenMP_FOUND)
179191
target_link_libraries(gtda_periodic_cubical_complex PRIVATE OpenMP::OpenMP_CXX)
@@ -200,6 +212,7 @@ endif()
200212
#######################################################################
201213

202214
pybind11_add_module(gtda_witness_complex "${BINDINGS_DIR}/witness_complex_bindings.cpp")
215+
set_property(TARGET gtda_witness_complex PROPERTY CXX_STANDARD 14)
203216

204217
if(OpenMP_FOUND)
205218
target_link_libraries(gtda_witness_complex PRIVATE OpenMP::OpenMP_CXX)
@@ -228,6 +241,7 @@ endif()
228241
#######################################################################
229242

230243
pybind11_add_module(gtda_strong_witness_complex "${BINDINGS_DIR}/strong_witness_complex_bindings.cpp")
244+
set_property(TARGET gtda_strong_witness_complex PROPERTY CXX_STANDARD 14)
231245

232246
if(OpenMP_FOUND)
233247
target_link_libraries(gtda_strong_witness_complex PRIVATE OpenMP::OpenMP_CXX)
@@ -256,6 +270,7 @@ endif()
256270
#######################################################################
257271

258272
pybind11_add_module(gtda_sparse_rips_complex "${BINDINGS_DIR}/rips_complex_bindings.cpp")
273+
set_property(TARGET gtda_sparse_rips_complex PROPERTY CXX_STANDARD 14)
259274

260275
if(OpenMP_FOUND)
261276
target_link_libraries(gtda_sparse_rips_complex PRIVATE OpenMP::OpenMP_CXX)
@@ -285,6 +300,7 @@ endif()
285300
#######################################################################
286301

287302
pybind11_add_module(gtda_cech_complex "${BINDINGS_DIR}/cech_complex_bindings.cpp")
303+
set_property(TARGET gtda_cech_complex PROPERTY CXX_STANDARD 14)
288304

289305
if(OpenMP_FOUND)
290306
target_link_libraries(gtda_cech_complex PRIVATE OpenMP::OpenMP_CXX)

CODE_AUTHORS

Lines changed: 0 additions & 14 deletions
This file was deleted.

CODE_AUTHORS.rst

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
The following is the list of code authors of the ``giotto-tda`` python package.
2+
3+
Where component authors are known, add them here.
4+
5+
| Guillaume Tauzin, [email protected]
6+
| Umberto Lupo, [email protected]
7+
| Lewis Tunstall, [email protected]
8+
| Matteo Caorsi, [email protected]
9+
| Philippe Nguyen, [email protected]
10+
| Julian Burella Pérez, [email protected]
11+
| Alessio Ghiraldello, [email protected]
12+
| Adélie Garin, [email protected]
13+
| Anibal Medina-Mardones, [email protected]
14+
| Wojciech Reise, [email protected]
15+
| Roman Yurchak, [email protected]

CODE_OWNERS

Lines changed: 0 additions & 7 deletions
This file was deleted.

CODE_OWNERS.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
The following is the list of code owners of the ``giotto-tda`` Python package:
2+
3+
- L2F SA
4+
- EPFL - Ecole Polytechnique Fédérale de Lausanne
5+
- REDS Institute of the Haut Ecole d'Ingénierie et Gestion du canton Vaud

README.rst

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,6 @@ The latest stable version of ``giotto-tda`` requires:
6868
- joblib (>= 0.13)
6969
- scikit-learn (>= 0.22.0)
7070
- python-igraph (>= 0.7.1.post6)
71-
- matplotlib (>= 3.0.3)
7271
- plotly (>= 4.4.1)
7372
- ipywidgets (>= 7.5.1)
7473

azure-pipelines.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838

3939
- task: Cache@2
4040
inputs:
41-
key: '"ccache-wheels-v2020.04.07" | $(Agent.OS) | "$(python.version)"'
41+
key: '"ccache-wheels-v2020.05.12" | $(Agent.OS) | "$(python.version)"'
4242
path: $(CCACHE_DIR)
4343
displayName: ccache
4444

@@ -73,7 +73,7 @@ jobs:
7373
7474
- script: |
7575
set -e
76-
pip install pandas openml
76+
pip install pandas openml matplotlib
7777
pip install "papermill==1.2.1"
7878
cd examples
7979
for n in *.ipynb
@@ -133,7 +133,7 @@ jobs:
133133
134134
- task: Cache@2
135135
inputs:
136-
key: '"ccache-v2020.04.07" | $(Agent.OS) | "$(python.version)"'
136+
key: '"ccache-v2020.05.12" | $(Agent.OS) | "$(python.version)"'
137137
path: $(CCACHE_DIR)
138138
displayName: ccache
139139

@@ -246,9 +246,11 @@ jobs:
246246
condition: eq(variables['nightly_check'], 'true')
247247
displayName: 'Change name to giotto-tda-nightly'
248248
249+
# Set BOOST_ROOT_PIPELINE to the version used in the pipeline
250+
# See https://github.com/actions/virtual-environments/issues/687#issuecomment-616345933
249251
- script: |
250-
python .azure-ci/install_boost.py || exit /b
251-
displayName: 'Install boost'
252+
echo "##vso[task.setvariable variable=BOOST_ROOT_PIPELINE]%BOOST_ROOT_1_72_0%"
253+
displayName: 'Set env variable for boost version'
252254
253255
- script: |
254256
python -m pip install --upgrade pip setuptools

cmake/HelperBoost.cmake

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,18 @@ if(WIN32)
77
list(APPEND BOOST_ROOT "") # Add custom path to your boost installation
88
endif()
99

10+
# Changes introduced in latest version of the giotto-tda Azure pipelines produce
11+
# compilation errors because CMake cannot find boost header files.
12+
# After discussing in https://github.com/actions/virtual-environments/issues/687
13+
# this solution is used due to custom paths in the Azure setup.
14+
message(STATUS "BOOST_ROOT_PIPELINE: $ENV{BOOST_ROOT_PIPELINE}")
15+
if(DEFINED ENV{BOOST_ROOT_PIPELINE})
16+
file(TO_CMAKE_PATH $ENV{BOOST_ROOT_PIPELINE} CMAKE_BOOST_ROOT)
17+
list(APPEND BOOST_ROOT "${CMAKE_BOOST_ROOT}")
18+
list(APPEND BOOST_INCLUDEDIR "${CMAKE_BOOST_ROOT}/boost/include")
19+
list(APPEND BOOST_LIBRARYDIR "${CMAKE_BOOST_ROOT}/lib")
20+
endif()
21+
1022
message(STATUS "BOOST_ROOT: ${BOOST_ROOT}")
1123

1224
find_package(Boost 1.56 REQUIRED)

0 commit comments

Comments
 (0)