Seregon/StratoSDK

StratoSDK is a framework with a declarative approach similar to Flutter/React, written and designed entirely for Rust.

Rust/27.3 KB/No license
scripts/check-strato-ui-license-boundary.sh
StratoSDK / scripts / check-strato-ui-license-boundary.sh
1#!/usr/bin/env bash
2set -euo pipefail
3 
4repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
5cd "$repo_root"
6 
7missing=0
8for required in "LICENSES/WARPUI-MIT.txt" "THIRD_PARTY_NOTICES.md"; do
9 if [[ ! -f "$required" ]]; then
10 echo "missing required attribution file: $required" >&2
11 missing=1
12 fi
13done
14 
15if [[ "$missing" -ne 0 ]]; then
16 exit 1
17fi
18 
19forbidden_manifest_pattern='markdown_parser|sum_tree|warp_util|settings_value|command|asset_cache|virtual-fs|virtual_fs|ui_components|warpui_extras|string-offset'
20forbidden_source_pattern='markdown_parser|sum_tree|warp_util|string_offset|warpdotdev/warp/app|LICENSE-AGPL'
21 
22if grep -RInE "$forbidden_manifest_pattern" \
23 crates/strato-ui-core/Cargo.toml \
24 crates/strato-ui-renderer/Cargo.toml; then
25 echo "forbidden Warp/AGPL dependency reference found in Strato UI manifests" >&2
26 exit 1
27fi
28 
29if grep -RInE "$forbidden_source_pattern" \
30 crates/strato-ui-core/src \
31 crates/strato-ui-renderer/src \
32 crates/strato-ui-renderer/examples; then
33 echo "forbidden Warp/AGPL code reference found in imported Strato UI source" >&2
34 exit 1
35fi
36 
37echo "Strato UI license boundary check passed"
38