Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
longitudinal-tomography
Advanced tools
.. image:: https://gitlab.cern.ch/longitudinaltomography/tomographyv3/badges/master/pipeline.svg .. image:: https://gitlab.cern.ch/longitudinaltomography/tomographyv3/badges/master/coverage.svg :target: https://gitlab.cern.ch/anlu/longitudinaltomography/-/jobs/artifacts/master/download?job=pages
Copyright 2020 CERN. This software is distributed under the terms of the GNU General Public Licence version 3 (GPL Version 3), copied verbatim in the file LICENCE.txt. In applying this licence, CERN does not waive the privileges and immunities granted to it by virtue of its status as an Intergovernmental Organization or submit itself to any jurisdiction.
The computationally intensive or time-critical parts of the library is
written in C++ and python bindings are provided using pybind11 <https://pybind11.readthedocs.io/en/stable/>
_.
The installation and usage of the library is the same for all operating systems, but
different dependencies are needed for different operating systems.
""""" Linux """""
You need a C++ compiler like g++
installed. This is not required if installing a prebuilt package from acc-py or pypi.
""""""" Windows """""""
On Windows computers MSVC >= 14.0 <https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=BuildTools>
_
with the Windows 10 SDK is required.
In MinGW and WSL environments the standard g++
compiler works out of the box.
""""" MacOS """""
No offical tests have been done on MacOS, but presumably g++
, clang
/llvm
should work.
The Longitudinal Tomography package is available in prebuilt wheels for Python 3.6-3.9
on CERN Acc-Py and pypy.org as longitudinal-tomography
. The package can thus easily be installed on
a Linux machine using
::
pip install longitudinal-tomography
The package can be installed on a MacOS or Windows machine in the same manner, but the C++ extension will be built on install.
""""""""""""""""""""" Other ways to install """""""""""""""""""""
Clone the repository and run ::
pip install .
The C++ extension will be built on install.
For development environments where it's preferable to compile the C++ extension inplace, it's possible to run the command ::
pip install -e .
which will compile the C++ extension using the available compiler (decided by setuptools).
""""""""""""" Documentation """""""""""""
This development is based on the well tested and widely used FORTRAN95 code, documented and available here: http://tomograp.web.cern.ch/tomograp/ Details on the algorithms in both codes, and the differences between them, can be found here: https://cdsweb.cern.ch/record/2750116?ln=ka
The C++ extension is accelerated by OpenMP parallel for loops. It is possible to limit the number of launched threads by setting it in the extension, by ::
from longitudinal_tomography.cpp_routines import libtomo
libtomo.set_num_threads([num_threads])
which will set the maximum number of used threads to :code:[num_threads]
.
FAQs
A python library for longitudinal particle beam tomography
We found that longitudinal-tomography demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.