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.
FeatureExpress is a groundbreaking in-memory feature engineering library designed for processing time-based event data. It is a hybrid between a feature engineering library and a feature store, aiming to address the complex challenges of dealing with temporal data in machine learning applications.
:warning: Alpha Release Warning: This library is currently in an alpha stage. As such, it is subject to:
- Changes: The API is still evolving, so you can expect many breaking changes. If you depend on this library in your project, be prepared to update your code as new versions are released.
- Performance Issues: There may be inefficiencies or other performance issues that have not yet been resolved.
- Unstable API: Functionality might be added, changed, or removed without notice. Documentation may be incomplete or out of date.
This version is more like a pre-release, and it's primarily intended for developers who are interested in experimenting with the latest features or contributing to the project.
The necessity of this unique library grew from years of struggling with event-driven data, especially in customer interactions and recommendations. Time adds complexity, subtlety, and depth to data analysis and modeling. The challenges include:
Event data encapsulates reality with timestamped information, and it's pivotal in creating meaningful features. Unlike other methods that often obscure temporal aspects, FeatureExpress utilizes a dedicated data structure to make the connection between events and features clearer and more explicit.
Current feature stores often rely on explicit materialization and caching, leading to increased complexity for data scientists. FeatureExpress adopts a declarative approach (similar to SQL) with a DSL (Domain Specific Language) to define features, allowing for a more intuitive and error-free process.
Built in Rust and interfaced in Python, FeatureExpress leverages in-memory processing to enable:
Though the current version is limited to datasets that fit in memory, FeatureExpress's performance and robustness make it a valuable tool for data scientists and engineers working with time-series data.
You can install FeatureExpress via pip:
pip install fexpress
Full documentation, including tutorials and examples, can be found at https://feature.express.
Interested in contributing to FeatureExpress? See our CONTRIBUTING.md for guidelines on how to help!
FeatureExpress is under MIT. See LICENSE for more details.
env VIRTUAL_ENV=$(python3 -c 'import sys; print(sys.base_prefix)') maturin develop
or
maturin develop
maturin develop --release
maturin build --release -i python
This should create a wheel in target/wheels
pip install target/wheels/fexpress_rs-0.1.0-cp38-cp38-linux_x86_64.whl -U
Note that the file name can be different depending on your system.
docker build -t rust-python-maturin . docker run -rm -v $(pwd)/artifacts:/app/artifacts rust-python-maturin bash -c "make python_debug_docker && make python_profile_docker"
FAQs
Unknown package
We found that fexpress 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.