Xraylib

Latest version: v4.1.5

Safety actively analyzes 714860 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 6

4.0.0

Major changes:
- Drop xraylib command-line executable
- Add proper, thread-safe error handling support through an extra argument in
the C API, which is transformed into an exception in the other bindings.
The old error handling functions have been deprecated. New API added to xraylib-error.h
- Add unittests, lots of them, for all supported languages.
- Deprecate IDL bindings: they work for now, but do not support the new error
handling mechanism, and will no longer be actively developed.
- Rewrite Java bindings, produce sources and javadoc jars, and publish to
Maven and JFrog.


Minor changes:
- CompoundParser: do not allow lower case characters after digits (bugfix)
- SymbolToAtomicNumber: deal gracefully with NULL (bugfix)
- PHP bindings: create RPM package
- SWIG: parse xrf_cross_sections_aux.h
- Symbol visibility has been reduced.
- CosKronTransProb: remove old _TRANS macros
- AugerYield and CS_FluorLine_Kissel: introduce FLP13_TRANS correction
- PM5_full_cascade_kissel: fix bug
- xrf_cross_sections_aux: improve performance
- Do not allow extrapolation with splint

3.3.0

- Anomalous scattering factors: switch to EPDL97 (thanks to Chris Jacobsen and Ming Du for reporting spikes in RTAB data)
- Windows installer: remove python and IDL bindings
- RPM packages: remove IDL bindings
- Support Anaconda Windows build
- Support PHP7
- Add __version__ to Python modules (requested by Jonas Adler)
- Support numpy scalars in SWIG generated Python bindings (requested by David Larsson)
- Python example style improvements (contributed by Jonas Adler)
- CompoundParser: compoundData now also contains nAtoms and molarMass
- Cython generated Python bindings: use OpenMP

3.2.0

- Python3 support in Fedora RPM packages
- Pascal/Delphi bindings added (thanks to Matthew Wormington for his
contributions)
- pure Java implementation of xraylib: jar created with OSGI support
- SymbolToAtomicNumber: char* changed to const char*
- New API: Crystal_GetCrystalsList
- K-shell fluorescence yields revised (thanks to Alex Simionovici for
reporting this)
- Cython bindings added to Windows installers
- Several bugfixes: thanks to those that reported them!

3.1.0

- Database of commonly used radionuclides for X-ray sources added (new API:
GetRadioNuclideDataByName, GetRadioNuclideDataByIndex, GetRadioNuclideDataList
and FreeRadioNuclideData)
- numpy Python bindings added, generated with Cython. Performance basically
the same as the core C library. (suggested by Matt Newville)
- docstring support added to Python bindings (suggested by Matt Newville)
- Windows SDKs now have support for Python 3.4.
- Windows 64-bit SDK now comes with IDL bindings
- Confirmed support for LabView (thanks to Dariush Hampai!)
- Universal intel 32/64 bit Framework built for Mac OS X
- Perl support for Debian/Ubuntu
- Several bugfixes: thanks to those that reported them!

3.0.0

- Moved all floats to doubles
- Added support for Python3 (CLI)
- NIST compound data included (new API: GetCompoundDataNISTByIndex,
GetCompoundDataNISTByName, GetCompoundDataNISTList and FreeCompoundDataNIST)
- All _CP functions now also support the NIST compound names.
- Element density function added, using values from NIST (new API:
ElementDensity)
- Bindings for new languages: Ruby and PHP
- Fluorescence yields and CK transition probabilities updated according to
J.L. Campbell's Atomic Data and Nuclear Data Tables 95 (2009) 115–124
- Auger non-radiative rates extended. Consists now of almost 1000 macros. (new
API: AugerYield)
- Cascade effects improvements
- Mass-energy absorption cross sections added from NIST. (new API: CS_Energy
and CS_Energy_CP) (requested by Piernicola Oliva)
- CompoundParser prototype changed!!! (new API: FreeCompoundData)
- strict ANSI-C compliance for core library, thanks to Oleg Shirokobrod for providing the necessary patches!
- Complex datatype changed to xrlComplex!!!
- Refractive_Index_* functions now use double instead of floats (thanks to
Manuel Sanchez del Rio for pointing out the problem). (new API:
Refractive_Index, returns xrlComplex)
- Fortran: changes to CompoundParser and Crystal_GetCrystal. All functions now
use Fortran strings instead of C-style strings
- CompoundParser now accepts real numbers as coefficients (requested by
Olivier Tache)
- Greatly enhanced documentation at http://github.com/tschoonj/xraylib.wiki
- Windows 64 bit SDK
- Many bugfixes and under-the-hood improvements

2.16.0

-Crystal diffraction functions added (David Sagan):
-Bragg angle
-Q scattering amplitude
-Atomic factors
-Crystal F_H structure factor
-Unit cell volume
-d spacing
-Perl and Python bindings updated to provide support for non-trivial arguments
and return values
-Lua bindings added
-Codebase restructured: separate directory for each binding

Page 2 of 6

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.