![Oracle Drags Its Feet in the JavaScript Trademark Dispute](https://cdn.sanity.io/images/cgdhsj6q/production/919c3b22c24f93884c548d60cbb338e819ff2435-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
A python library for reading Qlik Sense .qvd file format, written in Rust. Files can be read to DataFrame or dictionary.
Install from PyPi https://pypi.org/project/qvd/
pip install qvd
from qvd import qvd_reader
df = qvd_reader.read('test.qvd')
print(df)
Create a virtual env https://docs.python-guide.org/dev/virtualenvs/ and activate it.
python3 -m venv venv
Then install dev dependencies:
pip install pandas maturin
Afterwards, run
maturin develop --release
to install the generated python lib to the virtual env.
To run the tests, you can use these commands:
cargo test # runs all Rust unit tests
pytest test_qvd_reader.py # runs all Python tests
A QVD file is split into 3 parts; XML Metdata, Symbols table and the bit stuffed binary indexes.
This section is at the top of the file and is in human readable XML. This section contains metadata about the file in gneneral such as table name, number of records, size of records as well as data about individual fields including field name, length offset in symbol table.
Directly after the xml section is the symbol table. This is a table of every unique value contained within each column. The columns are in the order described in the metadata fields section. In the metadata we can find the byte offset from the start of the symbols section for each column. Symbol types cannot be determined from the metadata and are instead determined by a flag byte preceding each symbol. These types are:
After the symbol table are the binary indexes that map to the symbols for each row. They are bit stuffed and reversed binary numbers that point to the index of the symbol in the symbols table for each field.
FAQs
A library for reading Qlik Sense .qvd file format from Python, written in Rust.
We found that qvd 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
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.