Ben Visness
cc9c3b3b60
Use new UrlContext for project URLs
...
Wow that was a lot to change
2021-11-11 12:11:57 -08:00
Ben Visness
73836c5e25
Redirect to generated personal project slug
2021-11-11 12:11:57 -08:00
Ben Visness
cb967b92fd
Add route grouping stuff for projects (needs thorough testing)
2021-11-11 12:11:57 -08:00
Ben Visness
61683966a2
I really have no idea where I left off
2021-11-11 12:11:57 -08:00
Ben Visness
3800d3e715
Update data model for personal projects
...
Also:
- Added a helper for fetching posts with appropriate visibility
- Added personal projects to the project index
2021-11-11 12:11:57 -08:00
Asaf Gartner
b53643764a
Fixed typo in showcase RSS
2021-11-11 12:11:57 -08:00
Ben Visness
8accd87be3
Tweak spacing in welcome banner
2021-10-27 22:55:03 -05:00
Ben Visness
693e00d494
Merge remote-tracking branch 'origin/live' into beta
2021-10-27 22:51:22 -05:00
Ben Visness
1d8e12a4f6
Tweak welcome banner wording
2021-10-27 22:46:01 -05:00
Ben Visness
60aef6d032
Fix mobile nav issues and add circuit logo
2021-10-27 22:44:08 -05:00
Ben Visness
949e93791e
Fix nav issues on mobile
2021-10-27 22:05:31 -05:00
Ben Visness
2882c49b2b
Improve project styles or something
2021-10-27 21:55:42 -05:00
Ben Visness
4e47c51fa1
Add back project nav
2021-10-27 21:55:42 -05:00
Ben Visness
5eff3c38b4
Tweak routing middleware, add socials to banner
...
Instead of doing project nav, which I am actively avoiding
2021-10-27 21:55:42 -05:00
Ben Visness
a9d3387295
Darken the welcome colors on the home page
2021-10-27 21:55:41 -05:00
Ben Visness
d39e6beb0f
First pass at welcome banner
2021-10-27 21:55:41 -05:00
Ben Visness
de587abc94
Add HMS banner to the home page
2021-10-27 21:55:41 -05:00
Ben Visness
3324428f8b
Tweak news appearance
2021-10-27 21:55:40 -05:00
Ben Visness
f8d5f9fce5
Rework the home page
2021-10-27 21:55:40 -05:00
Ben Visness
7d422cb533
Timeline template logic updates
2021-10-27 21:55:40 -05:00
Ben Visness
09e6a15085
Rejigger timelines to avoid explicit types
2021-10-27 21:55:39 -05:00
Ben Visness
6176744462
Add a library placeholder
2021-10-27 21:55:39 -05:00
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
Ben Visness
bde7c576e3
Don't crash while listing migrations
2021-07-30 21:36:37 -05:00
Ben Visness
1f4dd335c5
Add all the rest of the blog post operations
...
Still need to add UI for the blog index, and fix some aesthetic issues:
- Wide posts can break the editor UI
- Blog comments don't show the fancy reply UI
- The post hash stuff on blog threads doesn't jump you to the correct
post
Probably other stuff, I dunno.
2021-07-30 18:08:42 -05:00
Ben Visness
9945ab061d
Add blog post editing
2021-07-30 17:32:19 -05:00
Ben Visness
93318c378a
FirstID and LastID are not nullable
2021-07-30 15:01:40 -05:00
Ben Visness
b0f75675c8
Implement blog posts
2021-07-30 14:59:48 -05:00
Ben Visness
958aeb45e4
Add back the ability to mark everything on the site as unread
2021-07-29 23:48:30 -05:00
Ben Visness
8ecb4a7173
Rework the category/thread data model
...
Threads can stand alone now. Threads can be attached to resources
directly without requiring a category. In addition, a lot of wiki stuff
and library discussion stuff was deleted because we're not gonna port
it.
2021-07-29 22:49:24 -05:00
Ben Visness
15ff1de6fc
Clean up forums.go
...
All the really highly redundant stuff was pulled into a helper type.
2021-07-23 15:35:18 -05:00
Ben Visness
9b9d467ce4
Add CLRI/TLRI handling
2021-07-23 14:00:37 -05:00
Ben Visness
94457aeb93
Close db iterators when context is cancelled
2021-07-23 11:33:53 -05:00
Asaf Gartner
b41a556fcd
Merge branch 'master' of gitssh.handmade.network:hmn/hmn
2021-07-23 06:22:57 +03:00
Asaf Gartner
e30cc95b08
Added request rejection page
2021-07-23 06:22:31 +03:00
Asaf Gartner
a46fd988f5
Podcasts
2021-07-23 06:09:46 +03:00
Ben Visness
7f3c818a8f
Add forum post deletion
2021-07-21 23:42:34 -05:00
Ben Visness
a2eacd6d00
Add handling for deleted users in templates
2021-07-21 21:26:28 -05:00
Ben Visness
e9ba9b3dde
Add permission check on post editing
2021-07-21 21:16:10 -05:00
Ben Visness
27b8157a89
Cache the thread title as well as the contents
2021-07-21 20:48:52 -05:00
Ben Visness
b27c673c15
Add forum post editing
2021-07-21 20:41:23 -05:00
Ben Visness
1ccf715c2d
Add an explicit post reply feature
2021-07-19 22:07:15 -05:00
Ben Visness
17f652191d
Add forum replies
2021-07-19 21:35:22 -05:00
Ben Visness
4ba175c5a5
Put the markdown preview on the side
2021-07-19 20:12:27 -05:00
Ben Visness
19297c9231
Store post contents in localStorage
2021-07-19 19:52:50 -05:00
Ben Visness
a9d39cd969
Make the bbcode parser much faster
2021-07-17 21:42:52 -05:00
Ben Visness
059f407ee4
Put previews in a web worker to help with slower parsing
2021-07-17 18:20:47 -05:00
Ben Visness
17e9e0b735
Add MustWriteTemplate func for the common case of panicking
2021-07-17 10:19:17 -05:00
Asaf Gartner
6c53688e06
Project page
2021-07-08 10:40:30 +03:00
Ben Visness
98df5773a5
Use a fork of goldmark that doesn't crash Chrome
2021-07-06 22:00:49 -05:00
Ben Visness
6b21291798
Add plain-text post previews
...
I opted to do this by making a new markdown renderer that only outputs
plain text, no HTML. This feels a lot more sane to me than trying to
strip HTML out of already-parsed stuff. The tradeoff right now is that
some content just doesn't show up at all, notably bbcode content. I
doubt anyone will care.
2021-07-05 13:34:51 -05:00