1#![doc = include_str!("../README.md")]
2#![forbid(unsafe_code)]
3#![warn(missing_docs)]
4
5mod checksum;
6pub use checksum::{
7 Blake2b512Checksum,
8 Checksum,
9 ChecksumAlgorithm,
10 Digest,
11 Md5Checksum,
12 Sha1Checksum,
13 Sha224Checksum,
14 Sha256Checksum,
15 Sha384Checksum,
16 Sha512Checksum,
17 SkippableChecksum,
18};
19
20mod source;
21pub use source::Source;
22
23mod url;
24pub use url::{SourceUrl, Url};
25
26pub mod digests {
28 pub use blake2::Blake2b512;
29 pub use digest::Digest;
30 pub use md5::Md5;
31 pub use sha1::Sha1;
32 pub use sha2::{Sha224, Sha256, Sha384, Sha512};
33}
34
35mod compression;
36pub use compression::CompressionAlgorithmFileExtension;
37
38mod date;
39pub use date::{BuildDate, FromOffsetDateTime};
40
41mod env;
42pub use env::{BuildEnvironmentOption, InstalledPackage, MakepkgOption, PackageOption};
43
44mod file_type;
45pub use file_type::FileTypeIdentifier;
46
47mod error;
48pub use error::Error;
49
50mod license;
51pub use license::License;
52
53mod name;
54pub use name::{BuildTool, Name, SharedObjectName};
55
56mod package;
57pub use package::{
58 contents::{INSTALL_SCRIPTLET_FILE_NAME, MetadataFileName},
59 error::Error as PackageError,
60 file_name::PackageFileName,
61 source::{PKGBUILD_FILE_NAME, SRCINFO_FILE_NAME},
62};
63
64mod path;
65pub use path::{
66 AbsolutePath,
67 Backup,
68 BuildDirectory,
69 Changelog,
70 Install,
71 RelativePath,
72 StartDirectory,
73};
74
75mod openpgp;
76pub use openpgp::{OpenPGPIdentifier, OpenPGPKeyId, OpenPGPv4Fingerprint, Packager};
77
78mod pkg;
79pub use pkg::{ExtraData, PackageBaseName, PackageDescription, PackageType};
80
81mod relation;
82pub use relation::{
83 Group,
84 OptionalDependency,
85 PackageRelation,
86 RelationOrSoname,
87 SharedLibraryPrefix,
88 Soname,
89 SonameV1,
90 SonameV2,
91 VersionOrSoname,
92};
93
94mod size;
95pub use size::{CompressedSize, InstalledSize};
96
97mod system;
98pub use system::{Architecture, ElfArchitectureFormat};
99
100mod version;
101pub use version::{
102 base::{Epoch, PackageRelease, PackageVersion},
103 buildtool::BuildToolVersion,
104 comparison::{VersionSegment, VersionSegments},
105 pkg_full::FullVersion,
106 pkg_generic::Version,
107 pkg_minimal::MinimalVersion,
108 requirement::{VersionComparison, VersionRequirement},
109 schema::SchemaVersion,
110};
111
112pub mod semver_version {
114 pub use semver::Version;
115}