All notable changes to WiredSwift are documented here. Format follows Keep a Changelog.
- Bumped
<p7:protocol version="3.2">. The 3.2 spec is wire-compatible with 3.1 via the per-session compatibility diff introduced in #87 — a 3.2 server can serve a 3.1 client and vice-versa with the new fields/messages filtered transparently on the wire. - Public-chat broadcasts now carry a server-stamped
wired.chat.message.id(length-prefixed string, UUID rendered as text). 3.1 receivers silently skip it via the receiver-tolerance machinery. - New chat reactions API mirroring
wired.board.reaction.*:wired.chat.add_reaction,wired.chat.remove_reaction,wired.chat.get_reactions,wired.chat.reaction_list,wired.chat.reaction_added,wired.chat.reaction_removed. - New permission
wired.account.chat.add_reactions. - Reactions live in an in-memory ring buffer (default 500 messages per chat); when a message scrolls off the buffer its reactions are dropped — consistent with the "chat is a stream" model. No on-disk persistence in 3.2.
-
Chat reactions and server-stamped message IDs (Wired 3.2) (
786893c) -
Backward/forward compatibility between minor versions (
411273d)
- Revert "Merge pull request #91 from nark/feature/issue-90-chat-reactions" (
2b0aeba)
- Bump expected handshake remoteVersion to 3.2 (
05727ef)
-
Stop main-thread hang in appendLog during server startup (
09a1acc) -
Hide macOS Icon\r sidecar from directory listings (
42ba97c) -
Declare wired.account.user.list_offline_users field (
5f2e4e4) -
Return permission_denied for unknown recipient (
a02c9fe) -
Restrict list_offline_users migration to admin accounts only (
568e35c) -
Walk up from executable to find resource bundle in tests (
223317e) -
Use bundleURL not deletingLastPathComponent for xctest discovery (
af62836) -
Add Bundle(for:) candidate to fix test bundle discovery on CI (
2ce4f4f) -
Restore wired.xml discovery for macOS and Linux SPM tests (
15bd982) -
Use wired.message.offline.recipient_login instead of wired.user.login (
d13bf47) -
Add wired.account.user.list_offline_users privilege (
d416f9b) -
Address Nark's security review findings (
eba3460) -
Set is_legacy=1 in Python migration script (
f24c32e) -
Require E2E encryption unconditionally (
6aa1ed5) -
Avoid Bundle.module crash when SPM resource bundle is missing (
995bee3) -
Use GRDB native Date decoding for sent_at column (
79151a3) -
Only show last_nick in offline list, never login or full_name (
845f410) -
Exclude never-logged-in accounts from offline user list (
43b8028) -
Always drop index_ad trigger before bulk delete (
bb93e63) -
Allow pre-release suffixes in WIRED_MARKETING_VERSION (
c20a8b3) -
Checkpoint WAL on startup and add FTS5 integrity probe (
ddf444d) -
Avoid SQLITE_IOERR on FTS5 cleanup after crash restart (
8b63515) -
Report actual CPU architecture instead of hardcoded x86_64 (
2cd615e) -
Handle .idle case in PortStatus color switch (
537fa73) -
Restore wired.xml discovery for macOS and Linux SPM tests (
6afaa5b) -
Avoid Bundle.module crash when SPM resource bundle is missing (
15bde0f) -
Align consent dialog keys with main, add idle port status (
74edb99) -
Clear newAdminPassword after use in all paths (
bc04f0b) -
Fix port TextField resetting to '4' while typing (
2fb07cb) -
Remove persistent consent — port check asks every time, no auto-check (
e7f4f16) -
Replace check-host.net with EU-hosted portchecker.co, add opt-in consent (
6f54c88) -
Strip LaunchDaemon/TouchID code from Tabs.swift not in upstream (
b6fa1ae) -
Make admin password field visible with roundedBorder style (
b44297d) -
Use local @State buffer for admin password field (
940902c) -
Use Locale.preferredLanguages only for language resolution (
9726178) -
Use Bundle.module to find localized strings (
61e190f) -
Use 3 probe nodes for external port check reliability (
808ba62) -
Address review feedback on migration robustness (
3af6210) -
Don't assign password salt during legacy login (
b0bc197) -
Avoid SQLITE_IOERR on FTS5 cleanup after crash restart (
2e3a9ac)
-
Update README offline messaging docs (
2f81483) -
Note that Wired 3.0 is not compatible with Wired 2.x clients (
e77e7f6)
-
Broadcast offline_list updates on disconnect and on privilege grant (
84b06f0) -
End-to-end encrypted offline messages via X25519+ChaCha20-Poly1305 (
8c0096b) -
Include sender nick in offline message delivery (
ea17072) -
Persist last_nick and use it in offline user list (
1a4dfcb) -
Fix click handling, 30-day filter, full name, privilege backfill (
5093249) -
Implement server-side offline messaging and offline user list (
0d8713a) -
Warn when files directory is under /Users/ in daemon mode (
1195dc6) -
Add German localization support (
6323528) -
External port reachability check + Network tab UI (
a195460) -
Replace brittle SHA1-detection heuristic with is_legacy DB column (
6106eeb) -
Support legacy SHA1 passwords from Wired 2.5 migration (
4d599c7) -
Add Wired 2.5 → Wired 3 database migration (
1791aa6)
-
Retry notarization on transient network errors (
537b249) -
Use bash in Docker runtime stage (
eebcf94) -
Make Docker apt mirror configurable (
44ec664)
- Resolve wired.xml from #filePath instead of Bundle.module (
6fd836c)
- Minor ajustments (
e53ee9e)
- Rename WiredBot changelog references (
0982bfa)
- Move WiredChatBot in separated repo (
6166223)
- Fix WiredServerApp lint violations (
198b849)
-
Persist tracker registry and watch external changes (
fc4c602) -
Add dashboard overview to WiredServerApp (
a57e9d2) -
Add database settings UI and auto event retention reload (
4c5388d) -
Implement file executable handling (
d051a1c) -
Add wired.file.link support on the server (
56eb59d)
-
Document attachment behavior and quotas in README (
62adcdf) -
Mirror modern Finder color tags on macOS (
23d7cd2)
- Split FilesController metadata helpers (
db3e3f8)
-
Fix IndexController build error after wiredFileLabel removal (
43536de) -
Fix Finder label color mapping and reliable xattr update (
359c32b) -
Fix attachment controller lint issues (
827fc09) -
Fix board post attachment edit broadcasts (
2f409cc)
-
Add file comment and label metadata support (
02ce2fa) -
Add English translation of Wired 2/3 feature comparison document (
7f2fc16) -
Persist private message attachments across reconnects (
69dc1c4) -
Add generic message attachments (
3d7c046) -
Align managed directory counts with classic Wired behavior (
1cc7259)
-
Reduce FilesController below 1200-line SwiftLint limit (
a8cb0c1) -
Inline Finder label mapping to stay under 1200-line SwiftLint limit (
08547d7) -
Replace absolute paths with relative paths in feature comparison doc (
1f71144)
- Double server startup timeout in integration tests (10s → 20s) (
79ca7be)
- Fix Debian config write permissions (
8810d66)
- Add remote file preview support (
9228526)
-
Fix remaining swiftlint blockers (
b1d9d54) -
Fix symlink path resolution and transfer queue hangs (
64cbb48) -
Fix idle status in user join broadcast (
cd5e974)
- Update README to remove --root option from commands (
d0f0e84)
-
Add outgoing tracker registration (
16b79e8) -
Implement incoming tracker server support (
9be9d06) -
Implement monitor user listing (
8dcddf4) -
Add active transfer status to user info (
486bef7)
-
Suppress transfer controller type length lint (
ec3644e) -
Match legacy idle behavior on server (
d769a4b)
-
Align server version path with Core layout (
afee8c1) -
Preserve wired3 service state across upgrades (
2f68374) -
Stabilize accounts-changed integration broadcast assertion (
f101f87) -
Cast shutdown mode to Int32 in server stop (
27356b1) -
Stabilize paths, index file size, and server shutdown (
9480546) -
Remove legacy LinuxMain test entrypoint (
13d6bf0) -
Use platform-safe SOCK_STREAM type on Linux (
987a2fe) -
Exclude WiredServerApp target and product on Linux (
2ead167) -
Install full linux native deps for wired3 build (
cfc8f66) -
Run linux dependency install step with bash (
2454ee1) -
Install sqlite dev and enable GRDBCUSTOMSQLITE on linux (
3700b1f) -
Resolve SwiftLint CI errors after ServerController split (
bdd0b51) -
Fix two regressions introduced during warning cleanup (
3cd6f07) -
Stabilize integration tests with distinct admin sessions (
54b1faf) -
Fix integration flake: idempotent disconnect and stronger CI diagnostics (
160abe3) -
Stabilize integration socket reads against transient timeouts (
fcba51d) -
Fix WiredServerApp actor-safe self captures (
646ec2a) -
Fix upload message initialization in TransfersController (
730575a)
-
Simplify feature matrix wording (
25b7040) -
Improve feature matrix with visual status markers (
9ffe82e) -
Fix symbol heading rendering in connection patterns (
00ca8d5) -
Consolidate integration guides into a compact structure (
77bbaa0) -
Add catalog, CI generation, and pages publishing (
4329c24) -
Add CODE_OF_CONDUCT.md and cliff.toml (
b19dc08) -
Add SECURITY.md with vulnerability reporting policy (
ffdb991) -
Add /// documentation to all public API (
e79afd0) -
Add /// documentation to all public API (
f21420c)
-
Add sync concurrency integration tests (
b906365) -
Align client identity metadata across targets (
901c5e6) -
Implement quota fields — max_file_size_bytes, max_tree_size_bytes, exclude_patterns (
361a214) -
Implement sync folder permissions and admin sync management fixes (
ace9b1c) -
Add sync folder type with server invariants, ACL, and upload conflict handling (
4749c99) -
Add SwiftLint 0.63 with zero-error baseline (
ccd160d) -
Add coverage-driven unit tests for events, spec metadata, and resource fork helpers (
4a400aa) -
Add integration test suite and GitHub Actions CI pipeline (
1607c18)
-
Document continuous folder sync (
f60ebca) -
Handle wired send ping on server (
9f3f657) -
Finish async ping transactions (
44b6aeb) -
Refresh connection activity on incoming messages (
2a33e78) -
Refine sync policy and server sync uploads (
fea96a0) -
Add git-cliff CHANGELOG.md to the repository (
f1e8237) -
Expand boards/transfers unit coverage and harden flaky chat integration test (
8af8ac1) -
Expand integration coverage for boards files messages and transfers (
c7141e2) -
Expand wired3 unit coverage for users and banlist controllers (
caa22bb) -
Use static BSD license badge (
45e372f) -
Add CI, platform, version, license, and coverage badges (
1431e03) -
Fix llvm-cov test binary detection and make summary non-blocking (
b45a578) -
Publish llvm-cov coverage summary in job output (
4da4861) -
Harden chat integration test against nil chat ID (
46680d5) -
Expand integration coverage for groups, banlist listing, events, and file change notifications (
df53991) -
Expand integration coverage, enable CI code coverage, and harden event broadcast teardown (
1ba4d41) -
Expand integration coverage for auth/subscriptions/accounts and harden event teardown (
c80db93) -
Remove unsupported no-parallel and upload test diagnostics (
01f0869) -
Simplify test execution to single swift test run (
2efaab6) -
Run tests sequentially by suite to reduce integration flakes (
d7c962c) -
Guard disconnect path against App teardown in integration runs (
d1ba7a0) -
Avoid building WiredServerApp in default workflow (
8705f10)
-
Split sync reservation helpers from transfers controller (
fb5adf9) -
Unify wired protocol spec (
9e95dfb) -
Split ServerController into domain-specific extensions (
c2e84f5) -
Reorganize sources into Core/, Models/, Controllers/, Database/ (
914ddb9) -
Improve coverage with focused core and domain model tests (
f341597) -
Reduce chat integration race by delaying second client login (
c83abce) -
Reduce integration teardown races by disabling auto cleanup (
17a6f0e)
-
Harden macOS pipeline against flaky integration timing (
1e3caa1) -
Fix race condition in sendAndWaitMany tests (
c2cea3b) -
Expand wired3 controller coverage for bootstrap clients logs (
86cc30e) -
Expand file model and async connection coverage (
f4ec7ab) -
Harden flaky chat integration and expand connection coverage (
8b7a504) -
Deepen connection and p7 socket coverage (
0289b7a) -
Expand coverage for connection and p7 socket io (
8e3a2f1) -
Extend coverage for logger, p7 message, file manager and chats controller (
7122e74) -
Harden and massively expand coverage (
86fd747) -
Add IndexController unit coverage (
3afb8e0) -
Expand integration coverage for user status and board reactions (
5330e2d) -
Harden transfer integration coverage for upload/download flows (
338d66a) -
Expand network coverage and enforce project-only coverage gate (
fe27916) -
Expand TransfersController queue and run coverage (
4ce8403)
-
Enforce one reaction per user, fix persistence (
ddcbf41) -
Correct migration SQL for add_reactions privilege (
563a483) -
Migrate add_reactions privilege for existing accounts (
54d1b2b)
-
Emoji reaction system for board threads and posts (
1c39f86) -
Add reaction.emojis and reaction.nicks fields (6029, 6030) (
c79e44d) -
Include reactor nicks in reaction_list response (
3d19c1a) -
Include thread emoji summary in thread_list protocol message (
c1e3375) -
Implement emoji reaction system for board threads and posts (
900b324)
- Use stored errno from Socket.Error instead of global errno (
07d50e6)
-
Add emoji reaction system to boards (
15d9309) -
Implement wired.log.* protocol + fix Logger re-entrancy deadlock (
30e78f1)
- Update issue templates (
b2ff405)
- Split Wired 3.0 into features and security (
8a8413a)
-
Implement server-side events and exhaustive event logging (
ff4454a) -
Add moderation actions and persistent ban list (
7e467b4) -
Add server-side board search protocol support (
c47d594)
-
Persist and reload strict identity toggle (
e161366) -
Preserve strict_identity in generated configs (
59a8ecc) -
Fix chat synchronization and ID handling (
a98eae8)
-
Fix board bootstrap seeding and global thread loading (
ac03be1) -
Fix public chat create/delete to reply wired.okay per spec (
b0a291a) -
Include stored password hash in read_user response (
3d09753) -
Don't regenerate salt on permissions-only account edits (
afe1286) -
Guest login fails after permission edit (double-salted password bug) (
f48bef1)
-
Add restart prompt after binary update and initial admin password alert (
ef065e2) -
Implement wired.account.change_password on server (
b3400ec)
- Rewrite README with user-friendly structure, security comparison, and protocol overview (
b414848)
-
Refine GeneralTabView — split versions into own section, fix labels and window height (
a3257c9) -
Restrict wired-identity.key to 0600, harden packaging (
5e6e2af) -
FINDING_F_016 — close TOCTOU window in delete/move/setPermissions (
2db894f) -
Address FUZZ_001, FUZZ_002; close A_012 and A_013 (
988eefc) -
Send builtinProtocolVersion in handshake instead of hardcoded "1.0" (
52fe9a3) -
Remove double-swap on enum field deserialization (
8d8fcaa) -
Revert auto-rehash that broke P7 key exchange (
8e6530c)
-
Document admin password setup and server identity (TOFU) in README (
d734074) -
Add final security audit report — 72 findings, 65 patched (
d35084e)
-
Add serverTrustHandler for P7 v1.3 TOFU compatibility (
2f688f7) -
Display P7 and Wired protocol versions in GeneralTabView (
1a6ef8a) -
Add server identity section to AdvancedTabView (TOFU) (
c4a772f) -
Forward serverTrustHandler to P7Socket in Connection (
a62ea68) -
FINDING_A_009 — implement TOFU server identity (P7 v1.3) (
7808961) -
Implement per-user stored salt key exchange (breaking, P7 v1.2) (
f806993) -
Add per-session password salt to key exchange (breaking, P7 v1.1) (
ccfed72)
-
Fix A_015 regression — reject NONE cipher clients with clear error instead of silent fallback (
1664c40) -
Fix FINDING_A_004 — salted SHA-256 for password storage (
8732836) -
Fix FINDING_A_014 — use dummy password on unknown user in key exchange (
fcdf0d4) -
Fix FINDING_A_014 — prevent username enumeration via timing (
374f887) -
Fix FINDING_Z_003 — enforce handshake read deadline to prevent thread-pool exhaustion (
76c8182) -
Update audit metadata for A_010, C_007, C_011, F_008, F_017, P_019, A_014, C_014, F_016 (
76130e5) -
Fix A_010/C_011/F_008, C_007, F_017, P_019 (
6018a6e) -
Update audit metadata for A_006, A_009, A_012, A_013 (
dd485ac) -
Fix FINDING_A_006 — protect nextUserID() with NSLock (
38b848b) -
Fix FINDING_P_017 — return nil for unknown P7 spec types (
80ee91a) -
Fix FINDING_P_010 and FINDING_P_015 — safe unwrap in P7Spec (
14d8649) -
Fix FINDING_P_008 — recompute length header after compression in writeOOB() (
ec43e07) -
Fix FINDING_C_012 — broadcast rate limiting (5/min per user) (
9a26632) -
Fix FINDING_C_002, FINDING_C_006, FINDING_C_013 — chat input validation and rate limiting (
a7a20cc) -
Fix FINDING_P_011 — replace force unwraps with nil-coalescing in logging (
dbb02f2) -
Fix FINDING_P_009 — log warning when P7Message name not found in spec (
1bd4fd6) -
Fix FINDING_F_014 — reorder deletePublicChat to DB-delete-first (
2c4bd41) -
Fix FINDING_F_012 — add maxDepth and maxEntries limits to recursive directory listing (
83f43dc) -
Fix FINDING_F_010, FINDING_F_011 — directory permissions and dropbox check (
eb8192e) -
Fix FINDING_F_009 — bounds check in FilePrivilege.init?(path:) (
ae5ea85) -
Fix FINDING_A_015 — reject NONE cipher to prevent plaintext credentials (
e4651c7) -
Fix FINDING_C_010 — add per-recipient offline message limit trigger to legacy migration (
b569d8b) -
Fix FINDING_P_013 — implement receiveCompatibilityCheck() validation (
25be9df) -
Fix FINDING_P_012 — implement version validation in isCompatibleWithProtocol() (
37732a0) -
Fix FINDING_C_008 FINDING_C_009 — private chat limits and nextChatID race condition (
01b62ca) -
Fix FINDING_A_005 — replace hardcoded admin password with random generation (
ca09f77) -
Fix FINDING_F_015 — filter search results inside dropboxes (
7befced) -
Fix FINDING_F_013 — prevent root directory deletion (
74c1aeb) -
Fix FINDING_A_016 — invalidate sessions on password change (
581709e) -
Fix FINDING_F_003, FINDING_F_004 — symlink resolution and root-path jail check (
827ccc0) -
Fix FINDING_P_016 — safe unwrap XMLParser init (
af985d6) -
Fix FINDING_P_006 — bound OOB read message length (
66321fd) -
Fix FINDING_P_005 and FINDING_P_014 (
c0435d4) -
Fix FINDING_A_002 — guard against nil client.user force unwrap crash (
2a76c6a) -
Fix FINDING_A_001 — rate limit login attempts per IP (
b074806) -
Fix FINDING_P_007, FINDING_P_020 — safe unwrap response.name and propagate cipher errors (
0ababa1) -
Fix FINDING_F_006 — prevent privilege escalation via receiveAccountEditUser (
7dd47be) -
Fix FINDING_F_005 — replace 25+ client.user! force unwraps with guard let (
231309a) -
Fix FINDING_C_001 — add lock to PrivateChat.invitedClients (
c79eca0) -
Fix FINDING_C_003, FINDING_C_004, FINDING_C_005 — eliminate force-unwrap crashes and race condition in ChatsController (
6f17e44) -
Fix FINDING_A_003 — remove password hashes from account listing responses (
b91e453) -
Fix FINDING_A_007 — block re-authentication when already logged in (
f1ad3c8) -
Fix FINDING_F_001 + FINDING_F_002 — path traversal hardening (
cc54315) -
Fix FINDING_P_002 + FINDING_P_003 — bounds checks and max field size in TLV parser (
c3b7906) -
Fix FINDING_P_001 — bound check on P7 message length to prevent OOM DoS (
7c1fa79)
-
Add search_files privilege, migration, and auto-sync wired.xml (
b962d37) -
Add FTS5 file search index with periodic reindex and CLI flag (
175ecfd) -
Add --reload flag and hot-reload config support (
70398ef)
- Ensure wired.xml is updated when package copy differs (
7dd228e)
- Fix port parsing and enforce integer-only validation (
4c18d85)
- Add Linux RPM and Docker usage/build guides (
87bea5e)
- Add multi-stage image for wired3 runtime (
fc5ab0d)
-
Fix amd64 RPM architecture validation pattern (
c03f675) -
Prevent auto-install on refresh and keep uninstall effective (
96a9daf) -
Fix RPM workflow script generation without nested heredocs (
6404685)
- Add optional RPM packaging artifacts to Linux CI workflow (
93458e3)
-
Use server version constants in wired.server_info (
9615c22) -
Document GRDB custom SQLite build flag for Linux (
777f5d9)
-
Fix sqlite3 nil contextual type errors in legacy migrations (
32d958f) -
Fallback to bundled wired3 hash when metadata hash drifts (
d607fa1) -
Hash plaintext password updates and normalize SHA-256 (
de2e99f)
-
Auto-update bundled wired3 with hash verification and rollback (
3550ef3) -
Migrate from Fluent/NIO to GRDB v6 (
81d46c8)
-
Work around missing sqlite snapshot symbols in Linux CI (
1221a7a) -
Remove obsolete sqlite-nio Linux compatibility shim (
c6dcfd2)
-
Fix build script (
bf5f222) -
Prevent LLM from echoing nick: prefix in chat responses (
a8023f7) -
Add explicit CodingKeys enums to fix build error in BotConfig (
538fecc) -
Encode nil optionals as null in generate-config output (
7acaf70) -
Don't prepend nick to LLM input for board events (
0527ead) -
Format llmPromptPrefix variables before LLM dispatch (
095a353) -
Add useLLM branch and debug logs in BoardEventHandler (
b4bbd46) -
Route wired.board.thread_changed instead of post_added (
851d70e) -
Subscribe to board broadcasts after login (
8da6e5f) -
Import FoundationNetworking in all LLM providers (
ce14369) -
Fix build: restore parameterless init() on all config structs (
afee059) -
Fix two compilation errors (
d53ed10)
- Update README with respondToConversation and respondInUserLanguage (
e4ab71e)
-
Configurable identity preamble via identity.identityPreamble (
872dd41) -
Structured identity preamble in system prompt (self-awareness) (
04dbe7f) -
Respond naturally after bot-initiated messages (respondAfterBotPost) (
30cc00f) -
Inject board threads into channel context for follow-up chat (
94feed2) -
Replace announceNewThreads with trigger-based board events (
92e8449) -
Add board_post trigger support with example (
b24321d) -
Add respondToConversation — follow active conversations (
f09a7be) -
Add respondInUserLanguage option (
ab728a4) -
Add comprehensive debug logging across the LLM pipeline (
d88c2cd) -
Implement multi-user context strategy (6 improvements) (
c6ab807) -
Add WiredChatBot-README.md — documentation complète (
2dd1c05) -
Add WiredChatBot — AI-powered chatbot daemon for Wired 3 (
bd8065c) -
Bootstrap default Upload/DropBox and Welcome board content (
1c4deeb)
-
Make config Codable resilient to missing/unknown fields (
97e2ec8) -
Translate WiredChatBot-README.md to English (
276ecac)
-
Fix git safe.directory in containerized deb workflow (
a31b303) -
Fix Swift dependency copy in Linux deb workflow (
1b591b5) -
Fix Swift runtime lib path detection in Linux deb workflow (
8cc2272) -
Fix missing libswiftCore in deb package (
ae2c7c0)
-
Update README with Swiftly installation steps (
5a0ad19) -
Adopt unified 3.0+N versioning across targets (
fec893f)
-
Package default runtime files and bootstrap Linux paths (
f637561) -
Remove legacy Linux deb workflow (
85f5ef1) -
Harden Debian service user and working directory (
4097dac) -
Force bash shell in containerized deb jobs (
6e7dbbc) -
Build Linux deb packages in jammy Swift container (
d8f56f8)
- Rewrite onboarding and clarify library/server version tags (
88cf8be)
- Update REAME (
b805400)
-
Fix GitHub Action workflow for Linux distribution (
83e1fd7) -
Fix GitHub Action workflow for Linux distribution (
4cd0d2a) -
Fix GitHub Action workflow for Linux distribution (
45358a6) -
Fix GitHub Action workflow for Linux distribution (
accc5e8) -
Fix GitHub Action workflow for Linux distribution (
5b376e3) -
Fix Linux SQLite symbol mapping for CSQLite (
e4e87f3) -
Fix Linux SQLite module conflict with sqlite-nio (
cc8fd98) -
Fix SQLite3 dependency for Linux (
3b784b1) -
Fix build script (
b9450bf) -
Fix privilege refresh broadcast matching for logged-in users (
ee64fd0) -
Preserve empty string fields when decoding P7 messages (
268bf27) -
Fix upload queue stalls and enforce transfer I/O deadlines (
32bb16c) -
Fix LZ4F version type for Linux build (
9609d36) -
Fix compression pipeline order for LZ4/LZFSE and DEFLATE (
fc3841e) -
Fix Linux build: use POSIX write in TransfersController (
e395dc3) -
Fix NSInterger issue (
0d38bc2) -
Fix github CI build action (80) (
5f681a4) -
Fix github CI build action (79) (
a5b733e) -
Fix github CI build action (77) (
615027f) -
Fix github CI build action (77) (
196beab) -
Fix github CI build action (76) (
13e5ba4) -
Fix github CI build action (75) (
2929edd) -
Fix github CI build action (75) (
812fbcb) -
Fix github CI build action (74) (
0a2a882) -
Fix github CI build action (73) (
de71408) -
Fix github CI build action (72) (
761ea9b) -
Fix github CI build action (2) (
36c5222) -
Fix github CI build action (2) (
cd0d391) -
Fix github CI build action (2) (
c8a0157) -
Fix github CI build action (2) (
3697544) -
Fix github CI build action (2) (
64ac0a6) -
Fix github CI build action (
da24849) -
Fix files index (2) (
8a63b05) -
Fix files index (
c755538) -
Fix handshake encryption negociation and add new digest (HMAC, Poly1305) (2) (
7c74623) -
Fix handshake encryption negociation and add new digest (HMAC, Poly1305) (
909abe1) -
Fix executable package for wired3 (
07f9688) -
Fix package (
e7d63ff) -
Fix ping timer (
971f667) -
Fix test URL (
bdaec62) -
Fix clientInfo() (
b607e55) -
Fix version in Xcode project (
fb389d7) -
Fix XMLParser init (
96f86be) -
Fix namespace error (
e0be92b) -
Fix namespace error (
4c6b817) -
Fix SPM deployment targets (
9dad2d5) -
Fix display bug on iPhone 6 (
78d6e64) -
Fix wired.chat.me message (
b35c171) -
Correct some typos (
f48495a) -
Fix compatibility check (
551e462) -
Fix project setting (signing) (
d0387d7) -
Fix fix fix fix (
9be81b1) -
Fix fix fix (
81711bb) -
Fix Xcode issue (
4e64bd8) -
Fix race condition in Boards/threads loading? (
888d192) -
Fix remove transfer from context menu (
0ebf337) -
Fix github CI (
ce3cc0a) -
Fix message view bug with initials text color (
1b4d77b) -
Fix user idle status in chat list (
6cc3637) -
Fix transfer progress (
9044f02) -
Fix missing MessageKit framework in build dependencies (
553ff0f) -
Fix socket read (yay) (
72a9d10) -
Fix connection close when closing tab (
266925d) -
Fix plist (
7612675)
-
Update README (
47a3c73) -
Update README about BlockConnection (
cbdbf37) -
Update README about BlockConnection (
42f6e32) -
Update README (
7f0692b) -
Update README (
0413d1a) -
Update README (
fe74553) -
Update README (
5e9523a) -
Update README (
75f0d17) -
Update README (
5a34411) -
Update README with minimal instructions about WiredSwift (
dbf8966) -
Update README (
e462649) -
Update README (
6197f07)
-
Add GitHub Action workflow for Linux distribution (
547a047) -
Add WiredServerApp and switch advanced crypto config to text modes (
9114c07) -
Implement boards server-side handlers and stability fixes (
0aa95e8) -
Add boards data models (WiredBoard, WiredThread, WiredPost, BoardsManager) (
4f8e61a) -
Persist group account color and expose it in account messages (
ff3a4c8) -
Implement private chat invitation/decline flow and tighten chat membership checks (
05d57f5) -
Implement account change broadcasts and privilege reloads (
a89be53) -
Implement account management and transfer error handling (
45991f6) -
Implement recursive file listing for folder downloads (
db20073) -
Implement directory subscribe/unsubscribe and change notifications (
8851c31) -
Support Apple bv4* LZ4 header variants on Linux (
5e8b0c1) -
Add detailed LZ4/compression debug logging (
039777f) -
Align Linux LZ4 format with Apple Compression (
ab8e436) -
Add Linux support for P7 compression algorithms (
383d2f5) -
Add config and persistent server settings (
a052da4) -
Add ECDSA password challenge support (
5dd8398) -
Add SHA3-256 support (
6e3d307) -
Add ChaCha20 cipher support (
86c424a) -
Add missing swift-argument-parser in package (3) (
c3119bd) -
Add missing swift-argument-parser in package (2) (
cac8540) -
Add missing swift-argument-parser in package (
ac069eb) -
Add wired3 to SPM (
e8c76ea) -
Add wired3 to SPM (
747caa8) -
Add simple send method to BlockConnection (
3028dd4) -
Add reconnect method (public) (
a676a54) -
Add reconnect method (
28ee3a4) -
Add test for block connections (
092f9e3) -
Add block connections based on wired.transaction (
9e17d20) -
Add checksum support to P7Socket (oob data) (
f051b0b) -
Add checksum support to P7Socket (fix cipher config) (
53d9645) -
Add checksum support to P7Socket (
1acbf78) -
Add support for left/join messages (
add22f1) -
Add camera support (
a4585de) -
Add iOS support to WiredSwift framework (
4aecaee) -
Add user info panel (
83ac5d0) -
Add UUID support (
7b5b0df) -
Support for ieee754 double (
d0c0b96) -
Add message time in conversations list (
34eb71d) -
Add transfer buttons (
acd5bce) -
Add transfers controller and view (
a211af5) -
Add minimal files browser (
7589e85) -
Add Tab support for messages, boards, files, etc. views (
f3b8255) -
Add resources split view + icon (
9453d3c) -
Add Preferences window (empty) (
a7e33ed) -
Add minimal Wired error support (
864b84c) -
Add gitignore (
142e2cb) -
Add LICENSE & minimal README (
c7a922c)
-
Update Package.resolved lockfile (
6d763f1) -
Better UI layout (
527a899) -
Adopt macOS Settings-style split view for WiredServerApp (
e488fc2) -
Bundle original Wired Server icon into app package (
b93f741) -
Bootstrap runtime working directory and server settings paths (
42d180f) -
Send account colors in list messages and set bootstrap defaults (
47f1fd6) -
Harden P7 numeric serialization to avoid UInt32 cast crash (
6cd32ec) -
Always include account color in privileges payloads (
4f33bb5) -
Handle account color enum and broadcast user colors (
f4e3680) -
Fix create_directory permissions and behavior (
e5fa501) -
Update READEME (
9d9b8be) -
Remove unused SWCompression dependency (
eb98d9f) -
Clean temporary LZ4 debug logs (
69efd12) -
Force deterministic LZ4 store framing across platforms (
6ea8a65) -
Use Apple-compatible stored LZ4 framing on Linux (
729bb50) -
Update gitignore (
e549c74) -
Make Linux LZFSE optional via runtime detection (
9c89de9) -
Vendor SocketSwift no-TLS fork for Linux (
ae02d20) -
Minor fixes (
272d4b7) -
Clean ignore (
683ed65) -
Update gitignore (
91bc46a) -
Before transfers queue (
c7ca90d) -
Server settings (
22ad318) -
Before lock (
44dc146) -
Remove useless print (
55c87ad) -
Testing basic semaphores (3) (
810ac7e) -
Testing basic semaphores (2) (
bb9b3a8) -
Testing basic semaphores (
1271055) -
Transfer round trip OK (
c4beaf0) -
Upload support (
274c737) -
AES IV is also derived from ECDH key (
31e5202) -
Update Xcode project required settings (
f33803d) -
Clean project from warnings (
f0f0e39) -
Wrap ECDSA in a class and clean key exchange (
22b17e6) -
Clear SPM package (
9d91066) -
Try to replace RSA/AES by ECDH/AES (3) (
b27c094) -
Try to replace RSA/AES by ECDH/AES (2) (
0f96c11) -
Try to replace RSA/AES by ECDH/AES (
de77576) -
Switch from GRDB to Fluent ORM for Linux support (3) (
1a2abf1) -
Switch from GRDB to Fluent ORM for Linux support (2) (
453c9ed) -
Switch from GRDB to Fluent ORM for Linux support (
6de38fa) -
Updated wired3 server + a lot of fixes (
1e95763) -
Enforce SHA256 usage for password hashing (
2d9f272) -
Make Wired macOS Swift client a test platform (
f8a63c8) -
Remove banner from server_info for now (
80595b3) -
Maybe Wired 3 (
effaab1) -
Reconnect test passed (
da5a28c) -
Better socket diconnect (
baa716e) -
Make BlockConnection class public (
4ef1650) -
Continue relay message to delegates (
b694dcf) -
Thread safe block connection (
755792f) -
New delegate methods in Connection class to handle app name, version and build number (
95cf5c1) -
Load spec from URL (fix typo) (
da05d03) -
Load spec from URL (
b9ce9ed) -
Update github workflow (6) (
18f39f7) -
Update github workflow (5) (
0d2a153) -
Update github workflow (4) (
30a1602) -
Update github workflow (3) (
1277c2a) -
Update github workflow (2) (
53464fd) -
Update github workflow (
b59fa06) -
Better package structure (
feb7ea9) -
Organize somes files (
0f23665) -
Better debug scenario (
72fa244) -
Try to use CryptorRSA (only on Linux) (
31e727c) -
Clean some cached files (
3f0f062) -
Update Xcode project version to 1.0.5 (
a3609b1) -
Clean repo and remove macOS and iOS targets (
b05beda) -
Import FoundationXML (
a1db61d) -
Remove CommonCrypto (seems unused) (
1ea6f29) -
Remove BBCodeString (
2605769) -
Big cleaning: remove the Wired macOS target (
456ec5f) -
Minimal boards + WiredSwift fixes and SPM (
f6fe458) -
Rollback and remove Linux platform (
e05fc8b) -
Rollback and and Linux platform (
470168a) -
Try without any platforms in SPM manifest (
6f37bf1) -
Try to add SPM support (
9ee3712) -
Full fr localisation + fixes (
6c8040e) -
Fr localisation + new send button (
7b09f2f) -
Wired iOS: Add onboarding and review design (
f16daa5) -
Wired iOS: prevent sending empty message with text attachment (
cf57e59) -
Reimplement P7Message.xml() method with AEXML library (very handy to debug messages in console) (
a8a4475) -
Wired iOS: fix image picker for user icon and split view on iPad (
222c9e4) -
Wired iOS: support idle status in users list (
b087fd5) -
Wired iOS: support disconnect, kick and ban messages in chat (
15a6fbd) -
Wired iOS: support topic (
9f4890d) -
Wired iOS: clean and refactor (
372a112) -
Find a lot of strings that was not translated. (
a83ae9b) -
Added localiz. for calender strings (
d8ec810) -
Added german localisation for calender entries. (
df1e43b) -
Delete project.pbxproj (
012ea3d) -
Update UsersViewController.swift (
b412c8b) -
Added german localisation for calender entries. (
d0aa331) -
Fixed unreadable colors in Darkmode for Userlist. Added Theme change detection. (
83a1df6) -
Added missing console localization (
ff8c522) -
Fixed user view status color in darkmode. Prepared Theme detection (dark/light) for nickname color change. (
87c82ce) -
Wired iOS: clean and refactor (
21bb764) -
Clean repo (
6d24c08) -
Wired macOS: display received images in chat and messages (
11c0d04) -
Minor iOS fix + framework adjustments (
bf1ee43) -
Try to link framwork for device (
edfce2c) -
Minimal iOS client (
16de950) -
German Translation completed (
f4382c4) -
Join public chat from iOS simulator works (
8490be3) -
Merege latest changes (
c5be3e2) -
Added german translation partly. Added Sparkle Update Framework. (
60041e2) -
Remove MessageKit(macos) (
c1f0dfa) -
Fixes fixes fixes (
5040e8b) -
Banner is back in main window toolbar (
6a034ce) -
Search race condition (
0b504c8) -
User info displays in a popover (
44cb6ba) -
Better menu validation of sidebar items (
01f42de) -
Better auto-reconnect (
62a43b1) -
Safe disconnect when ping failed or network is unreachable (
7841128) -
Try auto-reconnect every 10 sec when disconnected (fix #4) (
f858f64) -
Missing snippet in README (
1b6d110) -
Missing snippet in README (
0fbd726) -
Auto-connect bookmark at startup fix #1 (
e788a64) -
Read boards (
0f7c98b) -
Load and display thread posts (
f2f449b) -
Thread row has dynamic height (
fffaa6e) -
Load threads for board (
a296ff0) -
Minimal boards loading and UI (
30b1769) -
Files navigation history and better sync of list and browser views - fix #12 (
9e59190) -
Xcode cleaning (
c1834a0) -
Better double unpack (
ca93a84) -
Minimal server info (
0a660a1) -
Review transfers and files buttons design (
4f46eaa) -
Better unexpected disconnect handling (
62a8f41) -
Clean logs (
7339387) -
Upload file working (
8df516c) -
Better transfers controls (
7882d5a) -
Better connections managment (
edcd074) -
Better window management (
ae84126) -
Resumable download transfers + Disconnect/reconnect (
74f3f4d) -
Complete server infos (
ab4e6a1) -
Update user icon (
890faa5) -
Better transfers error support (
f86e8d9) -
Better socket error support (
c71263e) -
Better emoji substitution (
6bce5f0) -
Update chat pref pane with emoji substitutions (
449cfbb) -
Minimal emojis substitution support (
3985910) -
Local notifications support (
55c19a8) -
Minimal unread support (
0c4b658) -
Minimal message suppor (
be40fc2) -
Better window management (
2ab4661) -
Minor fixes (
bd64e0c) -
Prepare upload transfer + try deflate socket without success (
0b51dd6) -
Migrate Transfer class to Core Data (
f6b498a) -
Better download finish (
4e3a4b2) -
First working transfer (
0d2e58a) -
Working on transfers, not that easy, will take some time (
ca073ce) -
Prepare transfers tableview (
0864339) -
Update github action setup (3) (
9e75d89) -
Update github action setup (2) (
4d42212) -
Update github action setup (
eef40ed) -
Organizing project + comments (
c6faf6e) -
Make chat input the first responder, always (
1f3c6a5) -
Minimal bookmarks support (Core Data + Keychain) (
38bee97) -
Disconnect when closing window/tab (
8632d67) -
Resources sidebar and window tabs (
60758cd) -
Display status in chat user list (
439690c) -
Create workflow (
b5d034a) -
Better remote connexion support (
2c456b6) -
It works, renamed to WiredSwift (
b44dcef) -
Initial Commit (
50d3a1e)
-
Improve WiredServer app UX and launch wired3 at login (
584b861) -
Improve Linux LZ4 interop using frame format (
14f4e82) -
Replace DataCompression by SWCompression for Linux support (
2a63c26) -
Move new delegate methods to ClientInfoDelegate (
29a6c1e) -
Move RSA in separated class (
fbab769) -
Move SparkeFramework from WiredSwift to Wired (
6856395) -
Reduce warnings and fix Swift 5 deprecated in framework (
5dab878) -
Rename and refactor (
4d430aa)