[package] name = "physis" version = "0.3.0" authors = ["Joshua Goins "] edition = "2021" description = "Interact with XIV game data." license = "GPL-3.0" homepage = "https://xiv.zone/physis" repository = "https://github.com/redstrate/Physis" keywords = ["ffxiv", "modding"] documentation = "https://docs.xiv.zone/docs/physis/" readme = "README.md" [profile.release] lto = true [[bench]] name = "benchmark" harness = false [[bench]] name = "retail_benchmark" harness = false required-features = ["retail_game_testing"] [build-dependencies] system-deps = "7" [package.metadata.system-deps] libunshield = { version = "1.4", feature = "game_install" } [dev-dependencies] hmac-sha512 = "1" # used while rust doesn't have native benchmarking capability brunch = { version = "0.5.3", default-features = false } # used for testing our crc implementations crc = "3" [features] default = ["visual_data"] # enables game installation support using unshield (only supported on Linux and macOS) game_install = [] # enables support for extracting visual data, such as models, textures, materials, etc. # this enables a bunch of dependencies! # tip: can be safely turned off for launchers and other tools that simply need to extract the bare minimum of data visual_data = ["dep:half", "dep:bitflags", "dep:texture2ddecoder"] # testing only features retail_game_testing = [] patch_testing = ["game_install"] [dependencies] # amazing binary parsing/writing library binrw = { version = "0.13.0", features = ["std"], default-features = false } tracing = { version = "0.1.40", features = ["std"], default-features = false } # used for zlib compression in sqpack files libz-ng-sys = { version = "1.1" } # nice to have features rust is lacking at the moment modular-bitfield = "0.11" # needed for half-float support which FFXIV uses in its model data half = { version = "2", optional = true } # needed for c-style bitflags used in some formats (such as tex files) # cannot upgrade to 2.0.0, breaking changes that aren't recoverable: https://github.com/bitflags/bitflags/issues/314 bitflags = { version = "1.3", optional = true } # needed for dxt/bc decompression texture2ddecoder = { version = "0.0.5", optional = true }