**Users should prefer the tag `v0.5.1`.**
What's Changed
* Fix PyPi wheel upload by jhale in https://github.com/FEniCS/basix/pull/482
* Update basix to 0.4.2.dev0 by jhale in https://github.com/FEniCS/basix/pull/487
* remove numpy version requirement by mscroggs in https://github.com/FEniCS/basix/pull/490
* Do not include `cblas.h` by garth-wells in https://github.com/FEniCS/basix/pull/489
* Turn on mypy checks by mscroggs in https://github.com/FEniCS/basix/pull/491
* Add CPATH to get wheel build working on RedHat by jhale in https://github.com/FEniCS/basix/pull/488
* Remove xarray completely by IgorBaratta in https://github.com/FEniCS/basix/pull/494
* Put true in wrong place in wheel build, fix. by jhale in https://github.com/FEniCS/basix/pull/497
* Add workflow trigger to test dependents against specific versions by garth-wells in https://github.com/FEniCS/basix/pull/496
* Allow UFL and FFCx version to be set when triggering FFCx integration test by garth-wells in https://github.com/FEniCS/basix/pull/499
* FFCx CI fix(handle default case) by garth-wells in https://github.com/FEniCS/basix/pull/500
* Simplify Intel/MKL CI by garth-wells in https://github.com/FEniCS/basix/pull/498
* Allow specification of version in DOLFINx integration test by garth-wells in https://github.com/FEniCS/basix/pull/501
* Bump version to 0.4.3 by jhale in https://github.com/FEniCS/basix/pull/502
* Test version tweaks by jhale in https://github.com/FEniCS/basix/pull/503
* Orthogonalise polynomial sets by mscroggs in https://github.com/FEniCS/basix/pull/495
* Install fixes for new scikit-build by garth-wells in https://github.com/FEniCS/basix/pull/510
* remove "the" from JOSS paper by mscroggs in https://github.com/FEniCS/basix/pull/505
* remove extra {}s in reference in JOSS paper by mscroggs in https://github.com/FEniCS/basix/pull/511
* Add CI to test cmake install by mscroggs in https://github.com/FEniCS/basix/pull/509
* Transpose polysets by mscroggs in https://github.com/FEniCS/basix/pull/512
* Use mdspan in polyset by chrisrichardson in https://github.com/FEniCS/basix/pull/515
* Add Hermite elements by mscroggs in https://github.com/FEniCS/basix/pull/516
* remove ; by mscroggs in https://github.com/FEniCS/basix/pull/521
* add CITATION.cff by mscroggs in https://github.com/FEniCS/basix/pull/522
* Build D to the be the correct shape rather than transposing by mscroggs in https://github.com/FEniCS/basix/pull/520
* Document shapes of xtensors by mscroggs in https://github.com/FEniCS/basix/pull/518
* fix typos in custom element demo by mscroggs in https://github.com/FEniCS/basix/pull/523
* set language to "en" by mscroggs in https://github.com/FEniCS/basix/pull/529
* Correct typing: numpy.ndarray -> numpy.typing.NDArray by mscroggs in https://github.com/FEniCS/basix/pull/527
* Remove logging by mscroggs in https://github.com/FEniCS/basix/pull/528
* Transpose polynomial::tabulate by mscroggs in https://github.com/FEniCS/basix/pull/524
* Add Bernstein variant of Lagrange for simplices by mscroggs in https://github.com/FEniCS/basix/pull/533
* run C++ demos on CI by mscroggs in https://github.com/FEniCS/basix/pull/531
* Automatically generate docs.h by mscroggs in https://github.com/FEniCS/basix/pull/530
* Update `mdspan.hpp` by garth-wells in https://github.com/FEniCS/basix/pull/534
* Attempt at automatic typing for basix by jhale in https://github.com/FEniCS/basix/pull/526
* Run demos on more CI workflows by mscroggs in https://github.com/FEniCS/basix/pull/537
* Remove xtensor code for Lagrange elements by garth-wells in https://github.com/FEniCS/basix/pull/539
* Remove xtensor from BDM by garth-wells in https://github.com/FEniCS/basix/pull/540
* Remove more xtensor by garth-wells in https://github.com/FEniCS/basix/pull/541
* Remove xtensor from `basix::lattice` by garth-wells in https://github.com/FEniCS/basix/pull/542
* make precompute return values clearer by mscroggs in https://github.com/FEniCS/basix/pull/544
* Add VectorElement, TensorElement, MixedElement, etc to UFL wrapper by mscroggs in https://github.com/FEniCS/basix/pull/535
* Reset ffcx branch by mscroggs in https://github.com/FEniCS/basix/pull/547
* Throw runtime error to avoid "may be used uninitialized" warnings by mscroggs in https://github.com/FEniCS/basix/pull/548
* Fix symmetric tensors by mscroggs in https://github.com/FEniCS/basix/pull/549
* Reset FFCx branch by mscroggs in https://github.com/FEniCS/basix/pull/550
* xtensor removal from polynomial code by garth-wells in https://github.com/FEniCS/basix/pull/546
* Reset DOLFINx branch by garth-wells in https://github.com/FEniCS/basix/pull/551
* Remove xtensor from moment code by garth-wells in https://github.com/FEniCS/basix/pull/552
* Remove xtensor from `math` namespace by garth-wells in https://github.com/FEniCS/basix/pull/553
* Remove xtensor from dof-transform code by garth-wells in https://github.com/FEniCS/basix/pull/554
* Final removal of xtensor by garth-wells in https://github.com/FEniCS/basix/pull/555
* Reset DOLFINx branch for CI by garth-wells in https://github.com/FEniCS/basix/pull/557
* Simplify code in `polyset` by garth-wells in https://github.com/FEniCS/basix/pull/558
* Fix overflow problem in matrix-matrix product heuristics by garth-wells in https://github.com/FEniCS/basix/pull/559
* Improve performance of dual matrix construction by garth-wells in https://github.com/FEniCS/basix/pull/561
* Some small optimisations when creating elements by garth-wells in https://github.com/FEniCS/basix/pull/562
* Require C++20 by garth-wells in https://github.com/FEniCS/basix/pull/563
* Revert DOLFINx CI branch back to main by garth-wells in https://github.com/FEniCS/basix/pull/564
* Skip orthogonalisation for Lagrange elements by mscroggs in https://github.com/FEniCS/basix/pull/565
* Make UFL interface consistent with UFL by mscroggs in https://github.com/FEniCS/basix/pull/566
* Only precompute matrices when they are not permutations by mscroggs in https://github.com/FEniCS/basix/pull/567
* Slightly faster `prepare_permutation` by mscroggs in https://github.com/FEniCS/basix/pull/569
* Fix Sphinx version by mscroggs in https://github.com/FEniCS/basix/pull/573
* Update demo by mscroggs in https://github.com/FEniCS/basix/pull/571
* The permutation from an LU decomposition can be used instead of checking the eigenvalues/condition numbers by mscroggs in https://github.com/FEniCS/basix/pull/572
* Change image for DOLFINx integration test by jhale in https://github.com/FEniCS/basix/pull/576
* Simplify prepare_matrix and apply_matrix by mscroggs in https://github.com/FEniCS/basix/pull/577
* remove brackets around asserts by mscroggs in https://github.com/FEniCS/basix/pull/579
* Add `tensor product representation` properties to UFL element wrappers by IgorBaratta in https://github.com/FEniCS/basix/pull/560
* Implement enriched elements by mscroggs in https://github.com/FEniCS/basix/pull/574
* Add long description by chrisrichardson in https://github.com/FEniCS/basix/pull/581
**Full Changelog**: https://github.com/FEniCS/basix/compare/v0.4.2...v0.5.0