Skip to content

Commit

Permalink
Release request commit created with Cranko.
Browse files Browse the repository at this point in the history
+++ cranko-rc-info-v1
[[projects]]
qnames = ["tectonic_xdv", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_errors", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_xetex_format", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_status_base", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_io_base", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_geturl", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_docmodel", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_dep_support", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_bundles", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_bridge_graphite2", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_bridge_flate", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_bridge_core", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_xetex_layout", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_pdf_io", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_engine_xetex", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_engine_xdvipdfmx", "cargo"]
bump_spec = "micro bump"

[[projects]]
qnames = ["tectonic_engine_spx2html", "cargo"]
bump_spec = "minor bump"

[[projects]]
qnames = ["tectonic_engine_bibtex", "cargo"]
bump_spec = "micro bump"

+++
  • Loading branch information
cranko committed May 18, 2023
2 parents b580bc3 + b8b0245 commit 09d8637
Show file tree
Hide file tree
Showing 104 changed files with 6,740 additions and 5,302 deletions.
1,270 changes: 6 additions & 1,264 deletions CHANGELOG.md

Large diffs are not rendered by default.

2,523 changes: 1,284 additions & 1,239 deletions Cargo.lock

Large diffs are not rendered by default.

34 changes: 20 additions & 14 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,11 @@ flate2 = { version = "^1.0.19", default-features = false, features = ["zlib"] }
fs2 = "^0.4"
lazy_static = "^1.4"
libc = "^0.2"
md-5 = "^0.9"
open = "1.4.0"
quick-xml = "^0.22"
md-5 = "^0.10"
open = "^4.0"
quick-xml = "^0.28"
serde = { version = "^1.0", features = ["derive"], optional = true }
sha2 = "^0.9"
sha2 = "^0.10"
structopt = "0.3"
tectonic_bridge_core = { path = "crates/bridge_core", version = "0.0.0-dev.0" }
tectonic_bundles = { path = "crates/bundles", version = "0.0.0-dev.0", default-features = false }
Expand All @@ -84,10 +84,13 @@ tectonic_xdv = { path = "crates/xdv", version = "0.0.0-dev.0" }
tectonic_xetex_layout = { path = "crates/xetex_layout", version = "0.0.0-dev.0" }
tempfile = "^3.1"
termcolor = "^1.1"
toml = { version = "^0.5", optional = true }
tokio = "^1.0"
toml = { version = "^0.7", optional = true }
url = "^2.0"
watchexec = "^1.15.3"
zip = { version = "^0.5", default-features = false, features = ["deflate"] }
watchexec = "^2.3.0"
watchexec-filterer-globset = "1.2"
watchexec-signals = "1.0"
zip = { version = "^0.6", default-features = false, features = ["deflate"] }

[features]
default = ["geturl-reqwest", "serialization"]
Expand All @@ -112,21 +115,24 @@ profile = []

[dev-dependencies]
filetime = "^0.2"
futures = "0.1"
headers = "0.2"
hyper = "0.12"
futures = "0.3"
headers = "0.3"
hyper = { version = "0.14", features = ["server"] }
tempfile = "^3.1"
tokio = "0.1.22"

[package.metadata.vcpkg]
git = "https://github.com/microsoft/vcpkg"
rev = "1be5a98d090b1d2beeb63a48ba800fbf006e8aca"
rev = "ea222747b888b8d63df56240b262db38b095c68f"
overlay-triplets-path = "dist/vcpkg-triplets"

# If other targets start using custom triplets like x86_64-pc-windows-msvc,
# add them to crates/dep_support/src/lib.rs:new_from_vcpkg() to give users
# guidance if they might need to set $VCPKGRS_TRIPLET.
[package.metadata.vcpkg.target]
x86_64-apple-darwin = { install = ["freetype","harfbuzz[icu,graphite2]"] }
aarch64-apple-darwin = { triplet = "arm64-osx", install = ["freetype","harfbuzz[icu,graphite2]"] }
x86_64-unknown-linux-gnu = { install = ["fontconfig","freetype","harfbuzz[icu,graphite2]"] }
x86_64-pc-windows-msvc = { triplet = "x64-windows-static", install = ["fontconfig","freetype","harfbuzz[icu,graphite2]"] }
x86_64-pc-windows-msvc = { triplet = "x64-windows-static-release", install = ["fontconfig","freetype","harfbuzz[icu,graphite2]"] }

[package.metadata.internal_dep_versions]
tectonic_bridge_core = "526ff57d5dd9f80dff35a3a5dd856edc9f0f61aa"
Expand All @@ -139,7 +145,7 @@ tectonic_cfg_support = "thiscommit:aeRoo7oa"
tectonic_dep_support = "5faf4205bdd3d31101b749fc32857dd746f9e5bc"
tectonic_docmodel = "a88a0418a9c3c559d023d9b1da9b03fce3a469e5"
tectonic_engine_bibtex = "thiscommit:2021-01-17:KuhaeG1e"
tectonic_engine_spx2html = "thiscommit:2022-03-02:IQWAncv"
tectonic_engine_spx2html = "thiscommit:2022-11-22:vicemXu"
tectonic_engine_xdvipdfmx = "8a003834b1f6d967d33cc07de4cc025af14560da"
tectonic_engine_xetex = "c135e6a4a5a2e8c2dc4edcbcfd93f7d466ff8f88"
tectonic_errors = "317ae79ceaa2593fb56090e37bf1f5cc24213dd9"
Expand Down
2 changes: 1 addition & 1 deletion build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ fn main() {
// they want to spawn off executables.

let target = env::var("TARGET").unwrap();
println!("cargo:rustc-env=TARGET={}", target);
println!("cargo:rustc-env=TARGET={target}");
}
60 changes: 54 additions & 6 deletions crates/bridge_core/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,56 @@
# See elsewhere for changelog
# rc: micro bump

This project’s release notes are curated from the Git history of its main
branch. You can find them by looking at [the version of this file on the
`release` branch][branch] or the [GitHub release history][gh-releases].
- Bump the `md-5` dep to the 0.10 series (#1038, @CraftSpider)
- Tidy up recent Clippy warnings.

[branch]: https://github.com/tectonic-typesetting/tectonic/blob/release/crates/bridge_core/CHANGELOG.md
[gh-releases]: https://github.com/tectonic-typesetting/tectonic/releases

# tectonic_bridge_core 0.3.1 (2022-10-03)

- Remove C's `time_t` from internal FFI APIs to avoid portability issues. This
should avoid issues with Linux Musl builds.


# tectonic_bridge_core 0.3.0 (2021-10-11)

- Add `SecuritySettings::allow_extra_search_paths()` (#814, @ralismark).


# tectonic_bridge_core 0.2.2 (2021-06-17)

- Switch from running [cbindgen] at build time to having the developer run it
manually. This really ought to fix the crate builds on docs.rs ([#788]), and
should speed builds too.

[cbindgen]: https://github.com/eqrion/cbindgen
[#788]: https://github.com/tectonic-typesetting/tectonic/issues/788


# tectonic_bridge_core 0.2.1 (2021-06-17)

- Attempt to fix crate builds on docs.rs — see [#788]. This works around an
issue in Tectonic’s usage of [cbindgen] by configuring Cargo to operate in
offline mode when building on docs.rs, which builds crates with network access
turned off.

[#788]: https://github.com/tectonic-typesetting/tectonic/issues/788
[cbindgen]: https://github.com/eqrion/cbindgen


# tectonic_bridge_core 0.2.0 (2021-06-15)

- Add a security infrastructure that gives a systematic way to control whether
features that can be abused by untrusted inputs, like shell-escape, are
enabled. The default is to disable all such features. Callers can request to
allow their use, but we use a centralized approach that ensures that such
requests will always be denied if the environment variable
`$TECTONIC_UNTRUSTED_MODE` is set to a nonempty value (@pkgw, #787).
- Add a C API allowing us to expose the filesystem paths for just-opened
inputs. This is needed for correct SyncTeX support (@hullanson, @pkgw, #762).


# tectonic_bridge_core 0.1.0 (2021-06-03)

This is the first release of the "core" bridge crate. It provides a baseline of
APIs for C/C++ code to interact with an underlying "driver" implemented in Rust.
Those APIs mainly revolve around basic I/O and diagnostics, although we do have
a specialized "system request" to implement the TeX shell-escape feature.
2 changes: 1 addition & 1 deletion crates/bridge_core/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ links = "tectonic_bridge_core"
flate2 = { version = "^1.0", default-features = false, features = ["zlib"] }
lazy_static = "^1.4"
libc = "^0.2"
md-5 = "^0.9"
md-5 = "^0.10"
tectonic_errors = { path = "../errors", version = "0.0.0-dev.0" }
tectonic_io_base = { path = "../io_base", version = "0.0.0-dev.0" }
tectonic_status_base = { path = "../status_base", version = "0.0.0-dev.0" }
Expand Down
44 changes: 9 additions & 35 deletions crates/bridge_core/src/lib.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2016-2021 the Tectonic Project
// Copyright 2016-2022 the Tectonic Project
// Licensed under the MIT License.

#![deny(missing_docs)]
Expand Down Expand Up @@ -349,7 +349,7 @@ impl<'a> CoreBridgeState<'a> {
// `lipsum.ltd.tex` under the name `lipsum.ltd`.

for e in format.extensions() {
let ext = format!("{}.{}", name, e);
let ext = format!("{name}.{e}");

if let FileFormat::Format = format {
match io.input_open_format(&ext, self.status) {
Expand Down Expand Up @@ -714,11 +714,12 @@ pub struct SecuritySettings {

/// Different high-level security stances that can be adopted when creating
/// [`SecuritySettings`].
#[derive(Clone, Debug)]
#[derive(Clone, Debug, Default)]
pub enum SecurityStance {
/// Ensure that all known-insecure features are disabled.
///
/// Use this stance if you are processing untrusted input.
#[default]
DisableInsecures,

/// Request to allow the use of known-insecure features.
Expand All @@ -730,13 +731,6 @@ pub enum SecurityStance {
MaybeAllowInsecures,
}

impl Default for SecurityStance {
fn default() -> Self {
// Obvi, the default is secure!!!
SecurityStance::DisableInsecures
}
}

impl SecuritySettings {
/// Create a new security configuration.
///
Expand Down Expand Up @@ -817,11 +811,7 @@ pub unsafe extern "C" fn ttbc_get_file_md5(
let rpath = CStr::from_ptr(path).to_string_lossy();
let rdest = slice::from_raw_parts_mut(digest, 16);

if es.get_file_md5(rpath.as_ref(), rdest) {
1
} else {
0
}
libc::c_int::from(es.get_file_md5(rpath.as_ref(), rdest))
}

/// Calculate the MD5 digest of a block of binary data.
Expand Down Expand Up @@ -917,11 +907,7 @@ pub extern "C" fn ttbc_output_flush(
es: &mut CoreBridgeState,
handle: *mut OutputHandle,
) -> libc::c_int {
if es.output_flush(handle) {
1
} else {
0
}
libc::c_int::from(es.output_flush(handle))
}

/// Close a Tectonic output file.
Expand All @@ -934,11 +920,7 @@ pub extern "C" fn ttbc_output_close(
return 0; // This is/was the behavior of close_file() in C.
}

if es.output_close(handle) {
1
} else {
0
}
libc::c_int::from(es.output_close(handle))
}

/// Open a Tectonic file for input.
Expand Down Expand Up @@ -1137,11 +1119,7 @@ pub extern "C" fn ttbc_input_close(
return 0; // This is/was the behavior of close_file() in C.
}

if es.input_close(handle) {
1
} else {
0
}
libc::c_int::from(es.input_close(handle))
}

/// A buffer for diagnostic messages. Rust code does not need to use this type.
Expand Down Expand Up @@ -1214,11 +1192,7 @@ pub unsafe extern "C" fn ttbc_shell_escape(
}
};

if es.shell_escape(&rcmd) {
1
} else {
0
}
libc::c_int::from(es.shell_escape(&rcmd))
}

/// Different types of files that can be opened by TeX engines
Expand Down
60 changes: 54 additions & 6 deletions crates/bridge_flate/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,56 @@
# See elsewhere for changelog
# rc: micro bump

This project’s release notes are curated from the Git history of its main
branch. You can find them by looking at [the version of this file on the
`release` branch][branch] or the [GitHub release history][gh-releases].
- Tidy up recent Clippy warnings.

[branch]: https://github.com/tectonic-typesetting/tectonic/blob/release/crates/bridge_flate/CHANGELOG.md
[gh-releases]: https://github.com/tectonic-typesetting/tectonic/releases

# tectonic_bridge_flate 0.1.6 (2022-10-03)

No code changes, but some internal documentation improvements about managing FFI
APIs.


# tectonic_bridge_flate 0.1.5 (2021-06-17)

- Switch from running [cbindgen] at build time to having the developer run it
manually. This really ought to fix the crate builds on docs.rs ([#788]), and
should speed builds too.

[cbindgen]: https://github.com/eqrion/cbindgen
[#788]: https://github.com/tectonic-typesetting/tectonic/issues/788


# tectonic_bridge_flate 0.1.4 (2021-06-17)

- Attempt to fix crate builds on docs.rs — see [#788]. This works around an
issue in Tectonic’s usage of [cbindgen] by configuring Cargo to operate in
offline mode when building on docs.rs, which builds crates with network access
turned off.

[#788]: https://github.com/tectonic-typesetting/tectonic/issues/788
[cbindgen]: https://github.com/eqrion/cbindgen


# tectonic_bridge_flate 0.1.3 (2021-06-16)

- Try again with our docs.rs workarounds. Looks like we need
`CARGO_NET_OFFLINE=true`, not `CARGO_NET_OFFLINE=1`.


# tectonic_bridge_flate 0.1.2 (2021-06-16)

- Try some workarounds to get docs building on docs.rs, both for this crate on
its own and for the toplevel `tectonic` crate.


# tectonic_bridge_flate 0.1.1 (2021-01-16)

- Fix a Clippy complaint


# tectonic_bridge_flate 0.1.0 (2021-01-03)

Initial release of the `tectonic_bridge_flate` crate. This crate provides a
simple C API to the flate2 crate — even though flate2 often wraps zlib, which
has its own C API. This is the first step towards segmenting Tectonic's
native-library dependencies and starting to be able to vendor them. This new
crate doesn't change anything dramatic yet, but starts that process.
4 changes: 2 additions & 2 deletions crates/bridge_flate/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ pub unsafe extern "C" fn tectonic_flate_compress(
(c.total_out(), FlateResult::Success)
};

*output_len = size as u64;
*output_len = size;
result
}

Expand Down Expand Up @@ -101,7 +101,7 @@ pub unsafe extern "C" fn tectonic_flate_decompress(
Err(_) => (0, FlateResult::OtherError),
};

*output_len = size as u64;
*output_len = size;
result
}

Expand Down
30 changes: 24 additions & 6 deletions crates/bridge_graphite2/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,26 @@
# See elsewhere for changelog
# rc: micro bump

This project’s release notes are curated from the Git history of its main
branch. You can find them by looking at [the version of this file on the
`release` branch][branch] or the [GitHub release history][gh-releases].
- Tidy up recent Clippy warnings.

[branch]: https://github.com/tectonic-typesetting/tectonic/blob/release/crates/bridge_graphite2/CHANGELOG.md
[gh-releases]: https://github.com/tectonic-typesetting/tectonic/releases

# tectonic_bridge_graphite2 0.2.1 (2021-10-11)

- Fix the build script for Rust >=1.55 (#820, @pkgw)


# tectonic_bridge_graphite2 0.2.0 (2021-06-03)

- Fix up handling of how C/C++ header file paths are exported to dependent
crates. This is a breaking change: we've moved from a single include directory
to a list of them.
- Some improvements to the documentation

# tectonic_bridge_graphite2 0.1.1 (2021-01-16)

- Export information about the `GRAPHITE2_STATIC` C preprocessor define that is
sometimes needed.

# tectonic_bridge_graphite2 0.1.0 (2021-01-04)

A new crate to encapsulate the location and use of the `graphite2` library used
by Tectonic.
2 changes: 1 addition & 1 deletion crates/bridge_graphite2/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -55,5 +55,5 @@ fn main() {
""
};

println!("cargo:define_static={}", define_static_flag);
println!("cargo:define_static={define_static_flag}");
}
Loading

0 comments on commit 09d8637

Please sign in to comment.