Compare commits

...

2 Commits

Author SHA1 Message Date
9c8b922069 build: Use all the tricks to make release smaller on all the platforms.
Some checks failed
Build Tilde Friends / Build-All (push) Failing after 2m15s
2024-12-24 14:47:33 -05:00
d4b421421d ssb: prettier. 2024-12-24 14:22:24 -05:00
8 changed files with 49 additions and 32 deletions

View File

@ -208,11 +208,12 @@ $(ANDROID_TARGETS): CFLAGS += \
-Wno-unknown-warning-option
$(ANDROID_TARGETS): LDFLAGS += --sysroot $(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64/sysroot -fPIC
$(DEBUG_TARGETS): CFLAGS += -DDEBUG -Og
$(DEBUG_TARGETS): LDFLAGS += -Og
$(RELEASE_TARGETS): CFLAGS += \
-DNDEBUG \
-flto
$(NONANDROID_RELEASE_TARGETS): CFLAGS += -O3
$(ANDROID_RELEASE_TARGETS): CFLAGS += -Oz
-flto \
-Oz
$(RELEASE_TARGETS): LDFLAGS += -Oz
$(WINDOWS_TARGETS): CC = x86_64-w64-mingw32-gcc-win32
$(WINDOWS_TARGETS): AS = $(CC)
$(WINDOWS_TARGETS): CFLAGS += \

View File

@ -121,7 +121,7 @@ class TfElement extends LitElement {
}
next_channel(delta) {
let channel_names = ['', '@', '🔐', ...this.channels.map(x => '#' + x)];
let channel_names = ['', '@', '🔐', ...this.channels.map((x) => '#' + x)];
let index = channel_names.indexOf(this.hash.substring(1));
index = index != -1 ? index + delta : 0;
tfrpc.rpc.setHash(
@ -217,7 +217,7 @@ class TfElement extends LitElement {
let new_cache = JSON.stringify(cache);
if (new_cache !== original_cache) {
let start_time = new Date();
tfrpc.rpc.databaseSet('about', new_cache).then(function() {
tfrpc.rpc.databaseSet('about', new_cache).then(function () {
console.log('saving about took', (new Date() - start_time) / 1000);
});
}
@ -543,13 +543,15 @@ class TfElement extends LitElement {
)}
</div>
`;
let contents = !this.loaded || this.loading
? html`<div
let contents =
!this.loaded || this.loading
? html`<div
class="w3-display-middle w3-panel w3-theme-l5 w3-card-4 w3-padding-large w3-round-xlarge w3-xlarge"
>
<span class="w3-spin" style="display: inline-block">🦀</span> Loading...
<span class="w3-spin" style="display: inline-block">🦀</span>
Loading...
</div>`
: this.render_tab();
: this.render_tab();
return html`
<div
style="width: 100vw; min-height: 100vh; height: 100%"

View File

@ -202,18 +202,20 @@ class TfComposeElement extends LitElement {
channel: this.channel,
};
if (this.root || this.branch) {
message.root = this.new_thread ? this.branch ?? this.root : this.root;
message.root = this.new_thread ? (this.branch ?? this.root) : this.root;
message.branch = this.branch;
}
let reply = Object.fromEntries((await tfrpc.rpc.query(
`
let reply = Object.fromEntries(
(
await tfrpc.rpc.query(
`
SELECT messages.id, messages.author FROM messages
JOIN json_each(?) AS refs ON messages.id = refs.value
`,
[JSON.stringify([this.root, this.branch])])).map(row => [
row.id,
row.author,
]));
[JSON.stringify([this.root, this.branch])]
)
).map((row) => [row.id, row.author])
);
if (Object.keys(reply).length) {
message.reply = reply;
}
@ -485,9 +487,13 @@ class TfComposeElement extends LitElement {
render_new_thread() {
let self = this;
if (this.root !== undefined && this.branch !== undefined && this.root != this.branch) {
if (
this.root !== undefined &&
this.branch !== undefined &&
this.root != this.branch
) {
return html`
<input type="checkbox" class="w3-check w3-theme-d1" id="new_thread" @change=${() => self.new_thread = !self.new_thread} ?checked=${self.new_thread}></input>
<input type="checkbox" class="w3-check w3-theme-d1" id="new_thread" @change=${() => (self.new_thread = !self.new_thread)} ?checked=${self.new_thread}></input>
<label for="new_thread">New Thread</label>
`;
}
@ -586,8 +592,7 @@ class TfComposeElement extends LitElement {
${Object.values(draft.mentions || {}).map((x) =>
self.render_mention(x)
)}
${this.render_attach_app()}
${this.render_content_warning()}
${this.render_attach_app()} ${this.render_content_warning()}
${this.render_new_thread()}
<button class="w3-button w3-theme-d1" id="submit" @click=${this.submit}>
Submit

View File

@ -216,13 +216,18 @@ class TfTabNewsElement extends LitElement {
style=${this.hash == '#🔐' ? 'font-weight: bold' : undefined}
>🔐private ${this.unread_status('🔐')}</a
>
${Object.keys(this.drafts).sort().map(x => html`
<a
href=${'#' + encodeURIComponent(x)}
class="w3-bar-item w3-button"
style="text-wrap: nowrap; text-overflow: ellipsis">📝 ${this.drafts[x]?.text ?? x}</a
>
`)}
${Object.keys(this.drafts)
.sort()
.map(
(x) => html`
<a
href=${'#' + encodeURIComponent(x)}
class="w3-bar-item w3-button"
style="text-wrap: nowrap; text-overflow: ellipsis"
>📝 ${this.drafts[x]?.text ?? x}</a
>
`
)}
${this.channels.map(
(x) => html`
<a

View File

@ -73,8 +73,10 @@ build_the_thing() {
no-whirlpool
no-weak-ssl-ciphers
no-zlib
-Os
-Oz
-DOPENSSL_SMALL_FOOTPRINT
-ffunction-sections
-fdata-sections
-flto"
pwd
echo "./Configure $SSL_TARGET $OPTIONS $GLOBAL_OPTIONS" && \

View File

@ -29,14 +29,14 @@ do
case $build_target in
ios64-xcrun)
TRIBLE="arm64-darwin-ios"
OPTIONS="--static -static -ffunction-sections -fdata-sections -fPIC -Wno-macro-redefined -miphoneos-version-min=9.0"
OPTIONS="--static -static -Oz -ffunction-sections -fdata-sections -fPIC -Wno-macro-redefined -miphoneos-version-min=9.0"
DESTDIR="/tmp/$BUILD_DIR/arm64-ios"
SSL_TARGET="ios64-xcrun"
CC=clang
;;
iossimulator-xcrun)
TRIBLE="x86_64-darwin-ios"
OPTIONS="--static -static -ffunction-sections -fdata-sections -fPIC -Wno-macro-redefined"
OPTIONS="--static -static -Oz -ffunction-sections -fdata-sections -fPIC -Wno-macro-redefined"
DESTDIR="/tmp/$BUILD_DIR/x86_64-iossim"
SSL_TARGET="iossimulator-xcrun"
CC=clang

View File

@ -69,8 +69,10 @@ no-uplink
no-whirlpool
no-weak-ssl-ciphers
no-zlib
-Os
-Oz
-DOPENSSL_SMALL_FOOTPRINT
-ffunction-sections
-fdata-sections
-flto"
pwd
echo "./Configure $SSL_TARGET $OPTIONS $GLOBAL_OPTIONS" && \

View File

@ -56,7 +56,7 @@ build_the_thing() {
no-uplink
no-weak-ssl-ciphers
no-zlib
-Os
-Oz
-ffunction-sections
-fdata-sections
-flto