Skip to content

Commit 901ed8b

Browse files
authored
Merge pull request #698 from rusq/pre-440
Pre 4.4.0 doc update
2 parents fd5a1a2 + 0fc9b64 commit 901ed8b

6 files changed

Lines changed: 94 additions & 1 deletion

File tree

CONTRIBUTORS.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@ Implemented per-channel time range filtering by adding support for dump-from and
3434
### [@volker-fr](https://github.com/volker-fr) - Volker
3535
Contributed numerous features and improvements: vacuum tool for database cleanup, file deduplication support, SQLite error handling improvements, channel user caching to reduce redundant API calls, thread optimization by skipping unnecessary user fetches, and dev experience improvements with Makefile documentation and additional tests.
3636

37+
### [@icgma](https://github.com/icgma)
38+
Improved resume and backup workflows by adding resume-time entity deduplication, updating interactive login to prefer a system browser when Slack rejects bundled Chromium, and contributing the Replit + Google Drive backup recipe.
39+
3740
## Individual Contributors
3841

3942
### [@ChrisEdwards](https://github.com/ChrisEdwards) - Chris Edwards
@@ -87,9 +90,18 @@ Fixed the viewer showing the wrong user name for DMs with a single conversation.
8790
### [@Fizmatik](https://github.com/Fizmatik) - Yuriy Tolpygo
8891
Fixed multiple bugs: range copy bug, DM member assignment, and SQLite variable limit exceeded error.
8992

93+
### [@lzaldivarkt](https://github.com/lzaldivarkt) - Luis Zaldivar
94+
Fixed Edge client initialisation so it only uses Slack Edge APIs with `xoxc-` client tokens.
95+
96+
### [@pR0Ps](https://github.com/pR0Ps) - Carey Metcalfe
97+
Added `slack-to-discord` to the Discord migration documentation.
98+
99+
### [@chawlz7](https://github.com/chawlz7) - Charles Spellman
100+
Added stale thread and channel filtering flags for faster resume runs on long-lived archives.
101+
90102
---
91103

92-
**Total Contributors**: 28
104+
**Total Contributors**: 32
93105

94106
This list is sorted by number of contributions. Every contribution, no matter how small, helps make Slackdump better for everyone!
95107

cmd/slackdump/internal/convertcmd/assets/convert.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ Where format is one of the following:
1414
- `export`: **Slack Export**: The native Slack export format. Output is a directory or a zip file.
1515
- `html`: **Static HTML site**: A browsable archive rendered to HTML files. Output is a directory only.
1616

17+
The `html` format uses the built-in viewer renderer. The generated static site
18+
contains channel pages, thread pages, file links, canvas content where
19+
available, and user profile panels that work without a running Slackdump
20+
server.
21+
1722
By default Slackdump converts to Slack Export format and writes to a ZIP file
1823
output.
1924

cmd/slackdump/internal/diag/dedupe.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@ and files created by resume look-back overlap. The latest copy of each
2525
identical payload is kept. By default it only reports what would be removed.
2626
Pass the archive directory, not the slackdump.sqlite file. Use -execute to
2727
perform deduplication.
28+
29+
The same cleanup can be run automatically after a successful resume with:
30+
31+
slackdump resume -dedupe <archive_directory>
2832
`,
2933
}
3034

cmd/slackdump/internal/man/assets/changelog.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,57 @@
11
# What's New?
22

3+
## v4.4.0
4+
5+
### New Features
6+
7+
- **Faster, more selective resume**: `slackdump resume` now supports
8+
`-skip-complete-threads`, `-skip-stale-threads <duration>`, and
9+
`-skip-stale-channels <duration>` to avoid re-fetching thread or channel
10+
entities that are already complete or have gone dormant. Stale filters run
11+
before any Slack API calls and exit successfully as a no-op when everything is
12+
filtered out.
13+
14+
- **Post-resume dedupe**: `slackdump resume -dedupe` runs duplicate cleanup
15+
automatically after a successful resume, using the same cleanup logic as
16+
`slackdump tools dedupe`.
17+
18+
- **Improved interactive login compatibility**: browser-based workspace login
19+
now prefers an installed system browser for the interactive "Login in
20+
Browser" flow, working around Slack rejecting the bundled Chromium revision.
21+
Use `slackdump workspace new -bundled-browser` to force the previous bundled
22+
browser behaviour.
23+
24+
- **Viewer static and interactive polish**: the archive viewer now has shared
25+
viewer-side JavaScript for side-panel state, active-channel highlighting,
26+
connection-status handling, and tab keyboard navigation. Static HTML output
27+
also supports user profile panels via anchors, and viewer layout has improved
28+
responsive behaviour.
29+
30+
- **Wizard help pager**: command wizards now expose a Help menu item backed by
31+
a scrollable pager, with centralised key bindings and consistent help styling
32+
across TUI components.
33+
34+
- **Replit + Google Drive backup recipe**: `contrib/replit_drive_backup`
35+
contains a resumable uploader that mirrors a Slackdump archive directory to
36+
Google Drive from a Replit workspace.
37+
38+
### Bug Fixes
39+
40+
- `thread_not_found` is now treated as a non-critical thread fetch result, so
41+
stale or deleted threads no longer fail a run.
42+
- `slackdump resume -threads -skip-complete-threads` now keeps direct thread
43+
resume items and applies the complete-thread check after the first successful
44+
`conversations.replies` page.
45+
- Resume now distinguishes an invalid empty archive from a valid no-op caused
46+
by stale filters, and filtering to no results no longer reports an error.
47+
- File download deduplication during resume is now an explicit database
48+
controller option instead of depending on the command name.
49+
- Edge client setup is restricted to `xoxc-` client tokens, avoiding failures
50+
with token types that cannot use Slack Edge APIs.
51+
- Fixed several TUI regressions: shared Huh keymap state, config checker pane
52+
sizing, boolean toggles, number-key navigation, date picker polish, and
53+
scrollable wizard help sizing.
54+
355
## v4.3.0
456

557
### New Features

cmd/slackdump/internal/resume/assets/resume.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,22 @@ slackdump resume -dedupe slackdump_20241231_150405
4848
Deduplication runs only after resume finishes successfully. To preview or run
4949
the same cleanup manually later, use `slackdump tools dedupe`.
5050

51+
### Skipping complete threads.
52+
53+
When `-threads` is enabled, resume normally re-fetches every known thread in
54+
the lookback window. Use `-skip-complete-threads` to skip a thread when the
55+
database already contains the parent message plus the number of replies
56+
reported by Slack:
57+
58+
```plaintext
59+
slackdump resume -threads -skip-complete-threads <archive>
60+
```
61+
62+
This is faster for append-only archives, but it will not detect edits or
63+
deletions inside a thread that already appears complete. Direct thread resume
64+
items are still kept; the complete-thread check runs after the first successful
65+
`conversations.replies` page so Slack's current `reply_count` is available.
66+
5167
### Skipping stale entities.
5268

5369
Long-lived archives accumulate channels and threads that have not received any

cmd/slackdump/internal/view/assets/view.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ specified directory or file.
99
Viewer supports displaying downloaded images, videos as well as remote
1010
content.
1111

12+
The viewer uses a side panel for threads and user profiles, keeps the active
13+
channel highlighted while navigating, and reports connection problems if the
14+
local viewer server becomes unreachable.
15+
1216
## Usage
1317

1418
```bash

0 commit comments

Comments
 (0)