Skip to content

Refactor build/link hooks and release tools to use package:prebuilt_code_assets - #7

Open
mosuem wants to merge 1 commit into
mainfrom
refactor/prebuilt-code-assets
Open

mosuem wants to merge 1 commit into
mainfrom
refactor/prebuilt-code-assets

Conversation

@mosuem

@mosuem mosuem commented Sep 28, 2026

Copy link
Copy Markdown
Owner

Summary

Extracts the shared build hook, link hook (tree-shaking, Windows COFF .lib symbol parser and .def module-definition fallback, and dynamic-library link failure fallback), SHA-256 verification, outputDirectoryShared caching, and release tooling into package:prebuilt_code_assets.

Changes

  • Added lib/src/hook_helpers/library.dart defining boringLibrary (PrebuiltLibrary) and buildBoringFromCMake.
  • Simplified hook/build.dart, hook/link.dart, tool/precompile_binaries.dart, tool/regenerate_hashes.dart, and test/tree_shaking_test.dart to delegate to package:prebuilt_code_assets.
  • Removed now-redundant lib/src/hook_helpers/{build_options,fetch,sha256,targets}.dart (~840 lines removed).

@github-actions

github-actions Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

PR Health

Coverage ✔️
File Coverage

This check for test coverage is informational (issues shown here will not fail the PR).

This check can be disabled by tagging the PR with skip-coverage-check.

License Headers ✔️
// Copyright 2026 Moritz Sümmermann. Licensed under the Apache License,
// Version 2.0. See the LICENSE file for details.

Files
no missing headers

All source files should start with a license header.

This check can be disabled by tagging the PR with skip-license-check.

Breaking changes ✔️
Package Change Current Version New Version Needed Version Looking good?
boring Breaking 0.4.1 0.4.2-wip 0.4.2-wip ✔️

This check can be disabled by tagging the PR with skip-breaking-check.

Unused Dependencies ⚠️
Package Status
boring
❗ Show Issues
These packages may be unused, or you may be using assets from these packages:
* args

For details on how to fix these, see dependency_validator.

This check can be disabled by tagging the PR with skip-unused-dependencies-check.

API leaks ⚠️

The following packages contain symbols visible in the public API, but not exported by the library. Export these symbols or remove them from your publicly visible API.

Package Leaked API symbol Leaking sources
boring self._SymbolAddresses bindings/boringssl.g.dart::SymbolAddresses
bindings/boringssl.g.dart::addresses
boring self.__va_list_tag bindings/boringssl.g.dart::BIO_vsnprintf::args
bindings/boringssl.g.dart::OPENSSL_vasprintf::args
boring self.__locale_struct bindings/boringssl.g.dart::locale_t

This check can be disabled by tagging the PR with skip-leaking-check.

Changelog Entry ✔️
Package Changed Files

Changes to files need to be accounted for in their respective changelogs.

This check can be disabled by tagging the PR with skip-changelog-check.

@mosuem
mosuem force-pushed the refactor/prebuilt-code-assets branch from 8ff1cbd to f89c756 Compare September 28, 2026 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant