Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into dm/fix-m_strides_co…
Browse files Browse the repository at this point in the history
…mputed
  • Loading branch information
tailsu committed May 12, 2021
2 parents d836da3 + 41be223 commit aa4dec0
Show file tree
Hide file tree
Showing 58 changed files with 1,922 additions and 386 deletions.
2 changes: 1 addition & 1 deletion .azure-pipelines/azure-pipelines-linux-gcc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
steps:

- script: |
if [[ $(gcc_version) == '4.9' || $(gcc_version) == '6' ]]; then
if [[ $(gcc_version) == '4.9' || $(gcc_version) == '6' || $(gcc_version) == '7' || $(gcc_version) == '8' ]]; then
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get --no-install-suggests --no-install-recommends install g++-$(gcc_version)
Expand Down
46 changes: 46 additions & 0 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: gh-pages

on:
push:
branches:
- master

jobs:

publish:

runs-on: ubuntu-latest

defaults:
run:
shell: bash -l {0}

steps:

- name: Basic GitHub action setup
uses: actions/checkout@v2

- name: Set conda environment "test"
uses: conda-incubator/setup-miniconda@v2
with:
mamba-version: "*"
channels: conda-forge,defaults
channel-priority: true
environment-file: docs/environment.yaml
activate-environment: test
auto-activate-base: false

- name: Run doxygen
working-directory: docs
run: doxygen

- name: Deploy to GitHub Pages
if: success()
uses: crazy-max/ghaction-github-pages@v2
with:
target_branch: gh-pages
build_dir: docs/html
jekyll: false
keep_history: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# Doxygen output
docs/html/
docs/xml/

# Prerequisites
*.d

Expand Down
2 changes: 2 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,8 @@ set(XTENSOR_HEADERS
${XTENSOR_INCLUDE_DIR}/xtensor/xbuffer_adaptor.hpp
${XTENSOR_INCLUDE_DIR}/xtensor/xbuilder.hpp
${XTENSOR_INCLUDE_DIR}/xtensor/xchunked_array.hpp
${XTENSOR_INCLUDE_DIR}/xtensor/xchunked_assign.hpp
${XTENSOR_INCLUDE_DIR}/xtensor/xchunked_view.hpp
${XTENSOR_INCLUDE_DIR}/xtensor/xcomplex.hpp
${XTENSOR_INCLUDE_DIR}/xtensor/xcontainer.hpp
${XTENSOR_INCLUDE_DIR}/xtensor/xcsv.hpp
Expand Down
34 changes: 11 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
[![Azure](https://dev.azure.com/xtensor-stack/xtensor-stack/_apis/build/status/xtensor-stack.xtensor?branchName=master)](https://dev.azure.com/xtensor-stack/xtensor-stack/_build/latest?definitionId=4&branchName=master)
[![Coverity](https://scan.coverity.com/projects/18335/badge.svg)](https://scan.coverity.com/projects/xtensor)
[![Documentation](http://readthedocs.org/projects/xtensor/badge/?version=latest)](https://xtensor.readthedocs.io/en/latest/?badge=latest)
[![Doxygen -> gh-pages](https://github.com/xtensor-stack/xtensor/workflows/gh-pages/badge.svg)](https://xtensor-stack.github.io/xtensor)
[![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/xtensor-stack/xtensor/stable?filepath=notebooks%2Fxtensor.ipynb)
[![Join the Gitter Chat](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/QuantStack/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

Expand Down Expand Up @@ -41,20 +42,10 @@ compilers are supported:

### Package managers

If you are using Conan to manage your dependencies, merely add `xtensor/x.y.z@omaralvarez/public-conan` to your requires, where x.y.z is the release version you want to use. Please file issues in [conan-xtensor](https://github.com/omaralvarez/conan-xtensor) if you experience problems with the packages. Sample `conanfile.txt`:

```
[requires]
xtensor/0.20.8@omaralvarez/public-conan
[generators]
cmake
```

We also provide a package for the conda package manager:
We provide a package for the mamba (or conda) package manager:

```bash
conda install -c conda-forge xtensor
mamba install -c conda-forge xtensor
```

### Install from sources
Expand Down Expand Up @@ -93,20 +84,17 @@ library:
| `xtensor` | `xtl` |`xsimd` (optional) |
|-----------|---------|-------------------|
| master | ^0.7.0 | ^7.4.8 |
| 0.23.9 | ^0.7.0 | ^7.4.8 |
| 0.23.8 | ^0.7.0 | ^7.4.8 |
| 0.23.7 | ^0.7.0 | ^7.4.8 |
| 0.23.6 | ^0.7.0 | ^7.4.8 |
| 0.23.5 | ^0.7.0 | ^7.4.8 |
| 0.23.4 | ^0.7.0 | ^7.4.8 |
| 0.23.3 | ^0.7.0 | ^7.4.8 |
| 0.23.2 | ^0.7.0 | ^7.4.8 |
| 0.23.1 | ^0.7.0 | ^7.4.8 |
| 0.23.0 | ^0.7.0 | ^7.4.8 |
| 0.22.0 | ^0.6.23 | ^7.4.8 |
| 0.21.10 | ^0.6.21 | ^7.4.8 |
| 0.21.9 | ^0.6.21 | ^7.4.8 |
| 0.21.8 | ^0.6.20 | ^7.4.8 |
| 0.21.7 | ^0.6.18 | ^7.4.8 |
| 0.21.6 | ^0.6.18 | ^7.4.8 |
| 0.21.5 | ^0.6.12 | ^7.4.6 |
| 0.21.4 | ^0.6.12 | ^7.4.6 |
| 0.21.3 | ^0.6.9 | ^7.4.4 |
| 0.21.2 | ^0.6.9 | ^7.4.4 |
| 0.21.1 | ^0.6.9 | ^7.4.2 |
| 0.21.0 | ^0.6.9 | ^7.4.2 |

The dependency on `xsimd` is required if you want to enable SIMD acceleration
in `xtensor`. This can be done by defining the macro `XTENSOR_USE_XSIMD`
Expand Down
9 changes: 7 additions & 2 deletions cmake/FindTBB.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,12 @@ if(NOT TBB_FOUND)
##################################

if(TBB_INCLUDE_DIRS)
file(READ "${TBB_INCLUDE_DIRS}/tbb/tbb_stddef.h" _tbb_version_file)
if(EXISTS "${TBB_INCLUDE_DIRS}/tbb/version.h")
# since version 2021.1
file(READ "${TBB_INCLUDE_DIRS}/oneapi/tbb/version.h" _tbb_version_file)
else()
file(READ "${TBB_INCLUDE_DIRS}/tbb/tbb_stddef.h" _tbb_version_file)
endif()
string(REGEX REPLACE ".*#define TBB_VERSION_MAJOR ([0-9]+).*" "\\1"
TBB_VERSION_MAJOR "${_tbb_version_file}")
string(REGEX REPLACE ".*#define TBB_VERSION_MINOR ([0-9]+).*" "\\1"
Expand Down Expand Up @@ -300,4 +305,4 @@ if(NOT TBB_FOUND)
unset(TBB_LIB_PATH_SUFFIX)
unset(TBB_DEFAULT_SEARCH_DIR)

endif()
endif()
30 changes: 19 additions & 11 deletions docs/Doxyfile
Original file line number Diff line number Diff line change
@@ -1,15 +1,23 @@
PROJECT_NAME = "xtensor"
XML_OUTPUT = xml
INPUT = missing_macro.hpp ../include
GENERATE_LATEX = NO
GENERATE_MAN = NO
GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
GENERATE_HTML = NO
GENERATE_XML = YES
RECURSIVE = YES
QUIET = YES
PROJECT_NAME = "xtensor"
XML_OUTPUT = xml
INPUT = missing_macro.hpp ../include
GENERATE_LATEX = NO
GENERATE_MAN = NO
GENERATE_RTF = NO
CASE_SENSE_NAMES = NO
GENERATE_HTML = YES
GENERATE_XML = YES
RECURSIVE = YES
QUIET = YES
JAVADOC_AUTOBRIEF = YES
WARN_IF_UNDOCUMENTED = NO
MACRO_EXPANSION = YES
PREDEFINED = IN_DOXYGEN
EXCLUDE_SYMBOLS = detail
GENERATE_TREEVIEW = YES
SOURCE_BROWSER = YES
# WARN_IF_UNDOCUMENTED = YES

# Allow for rst directives and advanced functions e.g. grid tables
ALIASES = "rst=\verbatim embed:rst:leading-asterisk"
ALIASES += "endrst=\endverbatim"
4 changes: 4 additions & 0 deletions docs/environment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
channels:
- conda-forge
dependencies:
- doxygen
20 changes: 20 additions & 0 deletions docs/source/api/nan_functions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,30 @@ Defined in ``xtensor/xmath.hpp``
.. doxygenfunction:: nan_to_num(E&&)
:project: xtensor

.. _nanmin-function-reference:
.. doxygenfunction:: nanmin(E&&, X&&, EVS)
:project: xtensor

.. _nanmax-function-reference:
.. doxygenfunction:: nanmax(E&&, X&&, EVS)
:project: xtensor

.. _nansum-function-reference:
.. doxygenfunction:: nansum(E&&, X&&, EVS)
:project: xtensor

.. _nanmean-function-reference:
.. doxygenfunction:: nanmean(E&&, X&&, EVS)
:project: xtensor

.. _nanvar-function-reference:
.. doxygenfunction:: nanvar(E&&, X&&, EVS)
:project: xtensor

.. _nanstd-function-reference:
.. doxygenfunction:: nanstd(E&&, X&&, EVS)
:project: xtensor

.. _nanprod-function-reference:
.. doxygenfunction:: nanprod(E&&, X&&, EVS)
:project: xtensor
Expand Down
6 changes: 6 additions & 0 deletions docs/source/api/xhistogram.rst
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,15 @@ Further overloads
.. doxygenfunction:: xt::histogram(E1&&, std::size_t, bool)
:project: xtensor

.. doxygenfunction:: xt::histogram(E1&&, std::size_t, E2, E2, bool)
:project: xtensor

.. doxygenfunction:: xt::histogram(E1&&, std::size_t, E2&&, bool)
:project: xtensor

.. doxygenfunction:: xt::histogram(E1&&, std::size_t, E2&&, E3, E3, bool)
:project: xtensor

.. doxygenfunction:: xt::histogram_bin_edges(E1&&, E2, E2, std::size_t, histogram_algorithm)
:project: xtensor

Expand Down
88 changes: 88 additions & 0 deletions docs/source/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,94 @@
Changelog
=========

0.23.9
------

- Fix data_offset method in xview to compute the strides only once
`#2371 https://github.com/xtensor-stack/xtensor/pull/2371`

0.23.8
------

- Specialize operator= when RHS is chunked
`#2367 https://github.com/xtensor-stack/xtensor/pull/2367`

0.23.7
------

- Fixed chunked_iterator
`#2365 https://github.com/xtensor-stack/xtensor/pull/2365`

0.23.6
------

- Update installation instructions to mention mamba
`#2357 https://github.com/xtensor-stack/xtensor/pull/2357`
- Fixed grid_shape return type
`#2360 https://github.com/xtensor-stack/xtensor/pull/2360`
- Added assertion in resize method
`#2361 https://github.com/xtensor-stack/xtensor/pull/2361`
- Added const chunk iterators
`#2362 https://github.com/xtensor-stack/xtensor/pull/2362`
- Fixed chunk assignment
`#2363 https://github.com/xtensor-stack/xtensor/pull/2363`

0.23.5
------

- No need to explicitly install blas anymore with latest xtensor-blas
`#2343 https://github.com/xtensor-stack/xtensor/pull/2343`
- FIX for xtensor-stack/xtl/issues/245
`#2344 https://github.com/xtensor-stack/xtensor/pull/2344`
- Implement grid view
`#2346 https://github.com/xtensor-stack/xtensor/pull/2346`
- Refactoring of xchunked_view
`#2353 https://github.com/xtensor-stack/xtensor/pull/2353`

0.23.4
------

- Fix edge chunk assignment
`#2342 https://github.com/xtensor-stack/xtensor/pull/2342`

0.23.3
------

- Use the correct version file for TBB since 2021.1
`#2334 https://github.com/xtensor-stack/xtensor/pull/2334`
- Add missing API RTD for nan functions
`#2333 https://github.com/xtensor-stack/xtensor/pull/2333`
- Fixed layout issue in container classes
`#2335 https://github.com/xtensor-stack/xtensor/pull/2335`
- Fixed assignment of a tensor_view on a pseudo-container
`#2336 https://github.com/xtensor-stack/xtensor/pull/2336`
- Fixed return type of data method
`#2338 https://github.com/xtensor-stack/xtensor/pull/2338`
- Fixed assignment to flatten view
`#2339 https://github.com/xtensor-stack/xtensor/pull/2339`

0.23.2
------

- MSVC Build: Wrapped linker flags in quotes
`#2299 https://github.com/xtensor-stack/xtensor/pull/2299`
- Added can_assign and enable_assignable_expression
`#2323 https://github.com/xtensor-stack/xtensor/pull/2323`
- Fix automatically generated tests
`#2313 https://github.com/xtensor-stack/xtensor/pull/2313`
- Fix linspace endpoint bug
`#2306 https://github.com/xtensor-stack/xtensor/pull/2306`
- Added fallback to old behavior in FindTBB.cmake
`#2325 https://github.com/xtensor-stack/xtensor/pull/2325`
- Implement nanmin and nanmax
`#2314 https://github.com/xtensor-stack/xtensor/pull/2314`
- Clean up and add more tests for nanmin and nanmax
`#2326 https://github.com/xtensor-stack/xtensor/pull/2326`
- Fix linespace with only one point
`#2327 https://github.com/xtensor-stack/xtensor/pull/2327`
- Fixed ambiguous call of tile
`#2329 https://github.com/xtensor-stack/xtensor/pull/2329`

0.23.1
------

Expand Down
8 changes: 4 additions & 4 deletions docs/source/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,14 @@ cmake's ``find_package`` to locate xtensor headers.

.. image:: conda.svg

Using the conda package
-----------------------
Using the conda-forge package
-----------------------------

A package for xtensor is available on the conda package manager.
A package for xtensor is available on the mamba (or conda) package manager.

.. code::
conda install -c conda-forge xtensor
mamba install -c conda-forge xtensor
.. image:: debian.svg

Expand Down
7 changes: 3 additions & 4 deletions environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ name: xtensor
channels:
- conda-forge
dependencies:
- xtensor=0.23.1
- xtensor-blas=0.19.0
- xeus-cling=0.12.0
- blas * *openblas"
- xtensor=0.23.9
- xtensor-blas=0.19.1
- xeus-cling=0.12.1
Loading

0 comments on commit aa4dec0

Please sign in to comment.