Ben Visness
ccdbad8978
Rework the nav for projects 2.0
2021-10-27 21:55:38 -05:00
Asaf Gartner
307699af4c
Added content type to S3 upload call
2021-10-25 02:31:25 +03:00
Asaf Gartner
aab2205e62
Fix form in admin page
2021-10-25 02:31:25 +03:00
Ben Visness
623aaec9d8
Ensure that that one goroutine exits when the iterator is closed
...
This resolves that completely nonsensical memory leak situation. As far
as we can understand, the cause was a hodgepodge of the following:
- There is some buffer sharing going on deep in pgx
- Queries made with a cancellable but long-running context (like that
used for background jobs) would leave iterator-related goroutines
hanging
- These goroutines had a pgx `rows` object in their closures, preventing
the row stuff from being garbage collected
- If you look at a profile, it all appears to be caused by whatever
functions were doing the most database queries / reading the most from
Postgres. In fact those things were _allocating_ the most but not
retaining any of that data - it was being retained by these other
goroutines because of magic buffer sharing huzzah I love it
We could have solved this in approximately 30 minutes if Go could
actually tell us what is keeping things alive in the heap, instead of
just tracking allocations.
2021-10-21 01:42:34 -05:00
Ben Visness
34a318c902
The jam is not right now any more
2021-10-20 21:33:21 -05:00
Ben Visness
60237fc4dd
Add a blurb to the jam page
2021-10-03 09:41:40 -05:00
Ben Visness
00864842b3
Add file upload support for Discord
2021-09-27 09:23:57 -05:00
Ben Visness
89e8371787
Update the copy on the jam page
2021-09-26 23:38:58 -05:00
Ben Visness
4b4c205566
Make profile messages ephemeral
2021-09-26 23:04:53 -05:00
Ben Visness
88da574446
Tweak /profile messages, add and fix tests
2021-09-26 22:35:42 -05:00
Ben Visness
1df691bc13
Add user command for profile
2021-09-26 20:30:09 -05:00
Ben Visness
85a7a37162
Add /profile slash command
2021-09-26 17:34:38 -05:00
Ben Visness
0cebe90268
Switch to a different forum link when the jam starts
2021-09-24 23:02:12 -05:00
Ben Visness
251446d6e4
Do jam showcase stuff
2021-09-24 22:53:00 -05:00
Asaf Gartner
776c78913a
Updated admin atom feed title
2021-09-24 03:39:59 +03:00
Asaf Gartner
aa2e12496a
Undid last commit and added auth challenge
2021-09-24 03:37:08 +03:00
Asaf Gartner
ed85d11d96
Testing auth UNDO BEFORE DEPLOY
2021-09-24 03:29:47 +03:00
Asaf Gartner
a3e7e2afc0
Rename ThreadUnread to just Unread
2021-09-24 03:15:29 +03:00
Asaf Gartner
f8985e6ee3
User approval admin page and RSS
2021-09-24 03:13:40 +03:00
Ben Visness
cad1c397c1
Fix paste issue in editor, tweak jam page
2021-09-23 16:13:12 -05:00
Asaf Gartner
f5708d1ea8
Disable submission to perfCollector.
2021-09-23 23:03:28 +03:00
Asaf Gartner
89e58c9a24
Convert the feed to use the new thread and post functions.
2021-09-23 23:02:45 +03:00
Ben Visness
9c7acd7dbb
Add a sort field to subforums
2021-09-23 01:18:45 -05:00
Ben Visness
4b13f99df8
Add thread title editing
2021-09-23 01:09:18 -05:00
Ben Visness
ec80952ad9
Automatically approve users for now
2021-09-22 23:57:14 -05:00
Ben Visness
986a42c1ac
Switch to centralized helpers for fetching threads/posts
...
This includes the ability to "shadowban" new users who have not yet been
approved. We do not have UI for approving these users.
Migrate deserving users to new Approved status
Add post fetching helpers as well
The logic in the thread/post stuff is definitely getting redundant, but
I'm not sure I'm yet ready to try to abstract any of it away.
The next thing to do is probably to update blogs and other places that
fetch threads/posts, and delete the old helpers.
Move forums and blogs fully to new helpers
Use the helpers on the landing page too
that was easy!
Fix up some spots I missed
Check user status and use helpers on the profile page
2021-09-22 23:48:31 -05:00
Ben Visness
a38727ed69
Fix indentation, tweak newlines
2021-09-22 22:35:07 -05:00
Asaf Gartner
7063fd5604
Added basic usage tracking for posts.
2021-09-22 22:18:39 +03:00
Asaf Gartner
c224ad55b9
Added file dialog, image pasting, and progress UI
2021-09-22 13:59:03 +03:00
Asaf Gartner
dc56b1f5d0
First working version. No user limits or usage tracking.
2021-09-22 02:13:11 +03:00
Ben Visness
070ea5cc20
Redirect old blog URLs to new
2021-09-20 10:17:53 -05:00
Ben Visness
73e6af72e0
Update the jam page with forum links
2021-09-16 01:41:24 -05:00
Ben Visness
7e4116359a
Improve appearance of option bars on mobile
2021-09-08 23:01:21 -05:00
Ben Visness
b2a35c469a
Update project last updated fields on new forum/blog posts
2021-09-08 22:44:46 -05:00
Ben Visness
0f9a57f62b
Put a maximum length on post content
2021-09-08 22:22:47 -05:00
Ben Visness
17bf11b173
Punctuation is important.
2021-09-08 22:00:28 -05:00
Ben Visness
2db5c38a3c
Add sizes to the Apple icon
2021-09-08 21:56:26 -05:00
Ben Visness
d5d3341c81
Improve OpenGraph / favicons
2021-09-08 21:51:43 -05:00
Ben Visness
fd7754a7b6
Add redirect for old wiki URLs
2021-09-08 19:43:24 -05:00
Ben Visness
36bb2ce2d5
Put timestamp in avatar filenames to avoid cache problems
2021-09-07 19:55:52 -05:00
Ben Visness
f1e2e99663
Don't treat replies to the OP as replies
2021-09-06 16:40:00 -05:00
Asaf Gartner
193bbca28c
Added correct time format for podcast.
2021-09-06 22:48:39 +03:00
Ben Visness
b53770932d
No longer require a migration in seedfile
...
We don't need to do this any more, since our database backups now
include the migration table. The seedfile command also no longer
requires the user to type a password.
This also prevents the Discord history bot from running when it has no
credentials.
2021-09-05 19:43:49 -05:00
Ben Visness
6f7237f656
Log errors if ErrorResponse panics
...
We have to do this because otherwise the errors never actually end up in
the ResponseData.
2021-09-05 19:00:25 -05:00
Ben Visness
59f5243839
Prefix things with "public." inside Postgres functions
...
Boy is this a stupid behavior of Postgres, and one that only really
manifests when restoring data from a backup.
2021-09-05 17:43:34 -05:00
Asaf Gartner
e542ef27ec
Write to TLRI when users view blog posts.
2021-09-05 23:16:35 +03:00
Asaf Gartner
7e6b24c214
Remove unused editor.css and editor.js imports.
2021-09-05 23:04:37 +03:00
Asaf Gartner
b0930dd4f2
Removed project submission button from project index.
2021-09-05 22:57:10 +03:00
Asaf Gartner
c76ea45ca9
Replaced relogin rejection with a notice and proper redirect.
2021-09-05 22:50:15 +03:00
Asaf Gartner
e74b18967e
Added /atom/projects?all for inso
2021-09-05 22:43:34 +03:00
Asaf Gartner
73d0b65371
Shorten security timer
2021-09-05 01:43:24 +03:00
Ben Visness
a42973c3cb
More server setup stuff I dunno I'm sorry
2021-09-04 16:09:01 -05:00
Asaf Gartner
307a122518
Another attempt at crash mailing
2021-09-04 21:59:03 +03:00
Ben Visness
a288ae8124
Remove the sitemap from the footer
2021-09-01 21:54:51 -05:00
Ben Visness
6aa705d5cc
Random CSS I dunno
2021-09-01 21:41:39 -05:00
Asaf Gartner
d78a2e8e82
Breadcrumbs
2021-09-01 21:25:09 +03:00
Ben Visness
1f39b166cb
Make many improvements and fixes to the markdown experience
2021-09-01 01:15:13 -05:00
Ben Visness
1ac867fded
Make forum anchors more pleasant
2021-08-30 18:57:44 -05:00
Ben Visness
5247afcfc6
Fix scheme issue with X-Forwarded-Proto
2021-08-30 18:39:24 -05:00
Ben Visness
e5055a1237
Fix some small bugs
2021-08-29 19:15:48 -05:00
Ben Visness
4204081563
Make tons of fixes to server setup
2021-08-29 18:11:41 -05:00
Ben Visness
f40936ae61
Tweak some scripts, make executable
2021-08-28 16:33:15 -05:00
Ben Visness
bc39b4c0b7
Clean up TODOs
2021-08-28 12:07:45 -05:00
Ben Visness
57d4216d2d
Add tools for creating subforums and moving threads
2021-08-28 10:16:02 -05:00
Ben Visness
f7c754e53b
Style tweaks
2021-08-28 08:43:11 -05:00
Asaf Gartner
5fa0a3a7c2
Processed some TODOs
2021-08-28 16:32:27 +03:00
Ben Visness
c59b58daf0
Restrict project header links
2021-08-28 08:11:01 -05:00
Asaf Gartner
e23f5fbcf6
Fixed ip handling
2021-08-28 15:53:06 +03:00
Ben Visness
0179ee1993
Use the new font on the logo
2021-08-28 07:33:20 -05:00
Asaf Gartner
cb5c3c403d
Internal server error page
2021-08-28 15:21:40 +03:00
Ben Visness
a655fe96bc
Fix up remaining project colors
2021-08-28 07:14:49 -05:00
Ben Visness
73a20a9a93
Add jam page
2021-08-28 06:26:17 -05:00
Asaf Gartner
573fd8d2a2
Episode guide and trailing slashes in urls
2021-08-28 13:40:13 +03:00
Asaf Gartner
b29ae69a25
Merge branch 'master' of gitssh.handmade.network:hmn/hmn
2021-08-28 10:29:35 +03:00
Ben Visness
67b86720a9
Add user edit form
...
Add most of the user settings backend
still need to do discord lol
Add the Discord settings
Add avatar uploads
2021-08-27 17:18:02 -05:00
Ben Visness
16ae2188d1
Add background features to the Discord bot
2021-08-26 22:59:12 -05:00
Ben Visness
042e9166fd
Add bulk delete
2021-08-26 19:58:41 -05:00
Ben Visness
719c0d230c
Delete stuff on message delete
...
still need to do bulk delete
2021-08-26 18:33:39 -05:00
Ben Visness
7d5590ee10
Process Discord markdown for snippets
2021-08-23 22:26:27 -05:00
Ben Visness
69ead1f347
Handle message updates better
2021-08-23 20:06:32 -05:00
Ben Visness
ec64babdd6
Create snippets!
2021-08-23 19:49:39 -05:00
Ben Visness
72ae938302
Save Discord attachments and embeds
2021-08-23 16:52:57 -05:00
Ben Visness
76f9256e97
Save Discord messages and attachments
2021-08-21 11:15:27 -05:00
Ben Visness
4f01e1fdcf
Add a title to the user profile page
2021-08-17 21:09:42 -05:00
Asaf Gartner
8a07e8bc3b
Search with DDG
2021-08-17 23:09:24 +03:00
Asaf Gartner
20c05637d9
Added whenisit and default opengraph items
2021-08-17 22:48:44 +03:00
Asaf Gartner
bd178e0168
Fixed timer
2021-08-17 21:48:54 +03:00
Asaf Gartner
c913b58e4c
Added security timer middleware
2021-08-17 09:08:33 +03:00
Asaf Gartner
40ba0d5455
Added unique constraint on onetimetoken
2021-08-17 08:31:48 +03:00
Asaf Gartner
34a0649dfc
Replaced all handmadedev.org emails with handmade.network addresses
2021-08-17 08:22:41 +03:00
Asaf Gartner
a32f71f862
Password reset and Notices
2021-08-17 08:18:51 +03:00
Ben Visness
4c84bd2860
Add Discord unlinking
2021-08-16 00:07:17 -05:00
Ben Visness
d92bf9a9b8
Add Discord account linking
2021-08-15 23:40:56 -05:00
Ben Visness
38a1188be7
Add Discord integration
...
Clean up several TODOs
Implement the full disconnect / resume flow
Detect zombied connections and restart
Implement the random delay on reconnect
Implement message sending!!
(with a goofy feedback loop on the echo bot)
Fix the feedback loop in the echo bot
Clean up the Discord gateway code
Many things are methods now to reduce the amount of explicit plumbing.
Connection handling should be a little more robust, and we have an
actual error handling strategy now.
Allow sending multiple Discord messages at once
Delete irrelevant tests
uhh, start rate limiting
Add per-route rate limiting
Add global rate limit handling
Handle context cancellation in Discord REST code
Allow changing buckets per route
Add the showcase rejection bot
Add library bot
2021-08-15 20:21:04 -05:00
Asaf Gartner
4a8d84b303
Only run user cleanup once an hour. Not every 10 seconds.
2021-08-09 11:06:39 +03:00
Asaf Gartner
9dc3bfaa5c
Renaming some files
2021-08-08 23:09:12 +03:00
Asaf Gartner
660f65ba95
Registration flow and email
2021-08-08 23:05:52 +03:00
Ben Visness
038ee7e90e
Add permission check to the New Post button
2021-08-02 22:27:59 -05:00
Ben Visness
c3e067fa44
Add blog indexes
2021-08-02 20:52:46 -05:00
Ben Visness
b9645a6315
Extract the project slug more betterly
2021-07-30 22:31:43 -05:00