Commit Graph

701 Commits

Author SHA1 Message Date
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 404d10c0e2 Add a meta makefile update command 2021-09-09 11:02:09 -05:00
Ben Visness 1b931ce92e Add well-known stuff for Matrix 2021-09-09 11:00:10 -05:00
Ben Visness fdbe56c12b Update the 16x16 favicon 2021-09-09 00:24:22 -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 ff8fbcd632 Allow static assets at /static again 2021-09-06 10:14:18 -05: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 0f19cc612b Send admin mail on deploy. 2021-09-05 23:35:56 +03:00