Commit Graph
92 Commits
Author SHA1 Message Date
Daan Sprenkels c4ff0ab1b7 Add request_duration_seconds metric 2021-05-16 20:24:00 +02:00
Daan Sprenkels a26894dac8 Refactor metric collection 2021-05-16 20:21:44 +02:00
Daan Sprenkels 4f07bc4c2a Update bindata.go 2021-05-13 10:46:06 +02:00
Daan Sprenkels 9ff11cc14c Remove boltdb leftovers 2021-05-13 10:44:32 +02:00
Daan Sprenkels 38b27b4d11 mod: Remove explicit go-bindata dep; NFC 2021-05-13 10:43:23 +02:00
Daan Sprenkels 590003aa36 Update dependencies 2021-05-08 22:45:04 +02:00
Daan Sprenkels 30ab6f9228 Fix gopls issues 2021-05-08 22:42:13 +02:00
Daan Sprenkels 6603ad886f Merge branch 'master' of gitea.hashru.nl:dsprenkels/rushlink 2021-05-07 10:17:35 +02:00
Daan Sprenkels b8d1ca459c Fix gopls issues 2021-05-07 10:17:17 +02:00
Daan Sprenkels 3f09c1517d migrate: Fix 'no such table: migrations' err
Apparently, if you CREATE TABLE inside of a transaction, and then
(in the same transaction) do a SELECT on the same table before
committing, the table will not exist yet.

Now we do the migration in two steps: first initialize the schema;
then migrate the data.
2020-12-31 14:34:33 +01:00
Daan Sprenkels f530a543f9 db: Test truncated keys are invalid; NFC 2020-12-17 15:15:04 +01:00
Daan Sprenkels f527f2fb38 Automigrate when opening db 2020-12-17 15:14:45 +01:00
Daan Sprenkels 1ecb11c65f db: Do not warn during paste key generation 2020-12-17 14:49:52 +01:00
Daan Sprenkels 0048004252 Use sql database instead of bolt 2020-10-25 17:33:51 +01:00
Daan Sprenkels f36fa30eff Rename current db to boltdb 2020-10-23 16:14:57 +02:00
Daan Sprenkels 104dbab335 db: Refactor switch; NFC 2020-07-27 18:49:26 +02:00
Daan Sprenkels a8eba1b0df db: Add a test for key validation; NFC 2020-07-27 18:48:24 +02:00
Daan Sprenkels 9d952edc67 Add a functional test for /nr
Fixes #68
2020-07-27 17:08:10 +02:00
Daan Sprenkels 50baaeadf1 Fix /nr
Related issue: #68
2020-07-27 16:58:46 +02:00
Daan Sprenkels 26be9b5104 Validate key format before retrieving from database
Fixes #67
2020-07-27 16:58:27 +02:00
Daan Sprenkels 6d3e8028cb Use high-entropy URLs for file uploads
Fixes issue #59
2020-07-27 14:53:19 +02:00
Daan Sprenkels 1c09bb0a71 Fix incorrect router setup 2020-07-27 14:22:43 +02:00
Daan Sprenkels 03a04389ae Add a test for issue #66
Together with af6d7623, this commit solves issue #66.

Fixes #66.
2020-07-06 18:02:57 +02:00
Daan Sprenkels af6d762378 Stop rendering after an invalid Accept value 2020-07-06 18:01:50 +02:00
Daan Sprenkels 7a369a1dae Merge pull request 'Error with 400 Bad Request when both 'file' and 'shorten' set' (#65) from issue-56 into master 2020-07-06 17:14:38 +02:00
Daan Sprenkels 8904b648b7 Error w/ 400 when both 'file' and 'shorten' set
Fixes #56
2020-07-06 17:17:07 +02:00
Daan Sprenkels 70538f170f Add a test for issue #56 2020-07-06 17:17:07 +02:00
Daan Sprenkels bbfe64a3a2 Merge pull request 'Add request logging to panic recovery' (#63) from issue-61 into master 2020-07-06 17:12:59 +02:00
Daan Sprenkels 5a39d6a37c Add request logging to panic recovery
Fixes #61
2020-07-06 17:15:56 +02:00
Daan Sprenkels 2883af7d31 Merge pull request 'Fix error handling in renderStatic' (#64) from issue-60 into master 2020-07-06 17:04:58 +02:00
Daan Sprenkels d37222f82a Fix error handling in renderStatic
Fixes #60
2020-07-06 17:07:14 +02:00
Daan Sprenkels a58b9815bc Remove unused newPasteHandlerURLEncoded func; NFC 2020-05-30 19:29:27 +02:00
Daan Sprenkels 0b2297a2e8 Add a test for issue #60 2020-05-30 17:49:44 +02:00
Daan Sprenkels 77e89251e7 db: Change db file mode to 660
Fixes #58
2020-05-30 17:07:35 +02:00
Daan Sprenkels 847fd8072b Bump dependencies 2020-05-30 17:05:33 +02:00
Daan Sprenkels 5a5a0dc5ec Merge pull request 'Don't capture cursor in screenshot.' (#55) from mara/rushlink:master into master 2020-05-21 20:02:41 +02:00
Daan Sprenkels 2c889e0808 Prevent directory traversal in file upload
Fixes #53
2020-05-12 20:01:03 +02:00
Daan Sprenkels 737a26fee3 test: Look for StatusFound instead of StatusOk; NFC 2020-05-12 19:09:43 +02:00
Daan Sprenkels 016ffa8949 meta: Do 410 Gone if paste deleted 2020-05-11 22:45:56 +02:00
Daan Sprenkels b9119a0df5 meta: Fix CanDelete string 2020-05-11 22:32:35 +02:00
Daan Sprenkels a4cec1e4b0 meta: Add a delete button 2020-05-11 22:26:45 +02:00
Daan Sprenkels b7ea5dfa4f Redirect to /xd42/meta after upload
Fixes #51
2020-05-11 22:22:23 +02:00
Daan Sprenkels a0c8383555 template: Fix <pre> nesting 2020-05-11 20:58:50 +02:00
Daan Sprenkels 01adfa8f2f Merge pull request 'Add a test for issue #45; NFC' (#46) from test-issue-45 into master 2020-04-27 13:00:31 +02:00
Daan Sprenkels c57e719e15 Add a test for issue #45; NFC
Fixes #45
2020-04-27 13:00:46 +02:00
Daan Sprenkels c0e4ac2c40 mod: Bump dependencies 2020-04-22 19:30:20 +02:00
Daan Sprenkels b73317c249 Add generated bindata.go file to repo 2020-04-22 19:05:56 +02:00
Daan Sprenkels 8e89955ce9 Remove debug logging statement; NFC 2020-04-22 18:25:55 +02:00
Daan Sprenkels e476797da0 db: Prevent infinite recursion when closing 2020-04-22 18:25:27 +02:00
Daan Sprenkels 728d3833c3 Change redirect status code to Temporary Redirect 2020-04-22 18:24:46 +02:00
Daan Sprenkels 42ccc18002 User url.Parse instead of url.ParseRequestURI
url.ParseRequestURI assumes the URL does not contain a fragment
identifier.  However, this is not disallowed. So we should use
url.Parse instead.

Related issue: #45
2020-04-22 16:11:32 +02:00
Daan Sprenkels 63a588ba59 db: Add docstrings to FileUpload; NFC 2020-04-22 16:00:36 +02:00
Daan Sprenkels 3da165a57b Merge pull request 'Add copy-to-clipboard button to meta page' (#44) from issue-42 into master 2020-04-14 16:08:07 +02:00
Daan Sprenkels 09481f47e6 Do not show button if clipboard not available 2020-04-05 18:46:40 +02:00
Daan Sprenkels 1dd0d17ba5 Add copy-to-clipboard button to meta page
Fixes #42.
2020-04-05 18:16:41 +02:00
Daan Sprenkels 7c0bfaee76 .gitignore: Ignore .vscode dir; NFC 2020-04-05 18:15:41 +02:00
Daan Sprenkels a766d5d596 Update .gitignore; NFC 2020-04-05 18:12:16 +02:00
Daan Sprenkels c28dfd0cb4 Merge pull request 'Add rushlink --screenshot.' (#41) from mara/rushlink:master into master 2020-03-26 09:37:25 +01:00
Daan Sprenkels ad1ce67495 Merge pull request 'Add command line tool to submit and delete files and links.' (#39) from mara/rushlink:master into master 2020-03-23 17:00:45 +01:00
Daan Sprenkels 0a35cb2508 Merge branch 'master' of gitea.hashru.nl:dsprenkels/rushlink 2020-01-05 00:15:23 +01:00
Daan Sprenkels de19234108 return after serving meta page 2020-01-05 00:14:53 +01:00
Daan Sprenkels 095348d614 web: Add an example w/ upload from process output
Fixes #35
2019-12-19 23:29:09 +01:00
Daan Sprenkels 245dd64f82 Directly serve files instead of redirect
Fixes #28
2019-12-19 23:17:37 +01:00
Daan Sprenkels 5e6ce9c2be Replace io.Copy w/ http.ServeContent for download 2019-12-19 20:09:55 +04:00
Daan Sprenkels 8dce4e8483 web: Indent <pre> with padding-left (no spaces)
Fixes #34
2019-12-17 23:11:43 +05:30
Daan Sprenkels ffeb9a3362 Rename --host => --root-url 2019-12-17 15:43:32 +05:30
Daan Sprenkels 3d07acb222 Show meta page immediately after create 2019-12-17 15:33:29 +05:30
Daan Sprenkels c46a26f8a2 web: Implement drag-and-drop upload 2019-12-16 16:21:41 +05:30
Daan Sprenkels 087b9920e6 [refactor] Add !=nil check in renderCreateSuccess 2019-12-16 11:27:09 +05:30
Daan Sprenkels ca859adab1 Redirect to /meta after upload/shorten 2019-12-16 10:51:21 +05:30
Daan Sprenkels d34ac11d5e Update metadata info view 2019-12-16 10:19:17 +05:30
Daan Sprenkels 824c6f41e2 Enable submit using web interface 2019-12-16 09:53:36 +05:30
Daan Sprenkels f32e47b4c8 Add deprecation warning for omitting --host 2019-12-15 17:08:32 +05:30
Daan Sprenkels 8cbe984ba4 Default {{.Host}} to https:// 2019-12-15 17:06:48 +05:30
Daan Sprenkels 0bffde1dc1 Implement --host flag to override {{.Host}}
Fixes #15
2019-12-15 16:48:50 +05:30
Daan Sprenkels 41f4de43ac Return both URLs after upload
Fixes #25
2019-12-15 12:42:10 +05:30
Daan Sprenkels 728b5d9d4b Add extension to FileUpload request url
Fixes #27
2019-12-15 12:21:54 +05:30
Daan Sprenkels 40a32fa535 Respond to HEAD requests
Fixes #21
2019-12-15 11:44:27 +05:30
Daan Sprenkels ba08aca622 db: Refactor paste decoding into new func 2019-12-10 12:24:58 +01:00
Daan Sprenkels 76cf92e22d db: Add missing docs to public symbols 2019-12-10 12:08:27 +01:00
Daan Sprenkels 62e82d831e db: Migrate FileUpload.ContentTypes to auto-detect 2019-12-10 11:59:02 +01:00
Daan Sprenkels eec5e4def4 Detect file types instead of trusting clients 2019-12-10 11:16:18 +01:00
Daan Sprenkels f9c74a83f0 Add test for #17
Closes #17.
2019-12-08 22:49:42 +01:00
Daan Sprenkels da5806a6f7 metrict: Commit change that was forgotten in cf95650 2019-12-08 22:02:30 +01:00
Daan Sprenkels f1fe160655 go mod tidy 2019-12-08 21:56:30 +01:00
Daan Sprenkels cf956501ac metrics: Add http_requests metric 2019-12-08 21:56:02 +01:00
Daan Sprenkels 0cfad96b68 Refactor database login into a separate module 2019-12-06 18:03:56 +01:00
Daan Sprenkels df86d5836a Implement file deletion 2019-11-22 18:41:54 +01:00
Daan Sprenkels c82a71f7d0 Revert "Remove file storage possibility for now (awaits #12)"
This reverts commit 801ac8adbb.
2019-11-10 19:08:05 +01:00
Daan Sprenkels 66eb0bf97a Add support for file uploads 2019-11-10 19:03:57 +01:00
Daan Sprenkels ab0cf15c7b Move flag handling into cmd/ 2019-11-08 22:17:05 +01:00
Daan Sprenkels e193183f86 Allow internal server error using panic() 2019-10-15 23:19:45 +02:00