diff options
| author | 2022-07-18 12:55:06 +0200 | |
|---|---|---|
| committer | 2022-07-18 12:55:06 +0200 | |
| commit | c3b6a5b0f9976c861042d03b7fc124d566b9209f (patch) | |
| tree | 17076ac4484d339b4eeae90a5e37c1f7c9d6b638 /internal/cache | |
| parent | [chore] move dialer inside new (#715) (diff) | |
| download | gotosocial-c3b6a5b0f9976c861042d03b7fc124d566b9209f.tar.xz | |
[feature] Implement `cache-control` and etags for static assets (#711)
* start working on etag stuff
* add + use cache middleware
* generate etags on the fly
* remove unused field
* clean up filepath
* add license headers to cache files
* add attachgroup function to router interface
* move cache into web module
* rename a couple things
* remove attachStaticFS function from router
* rename + tidy up a few things
* mount assets filesystem
* create assetsFileInfoCache
* update comment
* simplify hash
* fix string fmt
* skip last mod chk, prefer strong etags w/long cache
* move base handler to its own file
this matches the modules in the api folder
* generate new etag if file was modified
* wrap strong etag in quotation marks as per spec
* clarify logic in avatar search
* make hashing a little niftier
Diffstat (limited to 'internal/cache')
| -rw-r--r-- | internal/cache/account.go | 18 | ||||
| -rw-r--r-- | internal/cache/account_test.go | 18 | ||||
| -rw-r--r-- | internal/cache/status.go | 18 | ||||
| -rw-r--r-- | internal/cache/status_test.go | 18 | 
4 files changed, 72 insertions, 0 deletions
diff --git a/internal/cache/account.go b/internal/cache/account.go index 474afbe44..7dbbd99b3 100644 --- a/internal/cache/account.go +++ b/internal/cache/account.go @@ -1,3 +1,21 @@ +/* +   GoToSocial +   Copyright (C) 2021-2022 GoToSocial Authors admin@gotosocial.org + +   This program is free software: you can redistribute it and/or modify +   it under the terms of the GNU Affero General Public License as published by +   the Free Software Foundation, either version 3 of the License, or +   (at your option) any later version. + +   This program is distributed in the hope that it will be useful, +   but WITHOUT ANY WARRANTY; without even the implied warranty of +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +   GNU Affero General Public License for more details. + +   You should have received a copy of the GNU Affero General Public License +   along with this program.  If not, see <http://www.gnu.org/licenses/>. +*/ +  package cache  import ( diff --git a/internal/cache/account_test.go b/internal/cache/account_test.go index f84ad2261..ff882cc3d 100644 --- a/internal/cache/account_test.go +++ b/internal/cache/account_test.go @@ -1,3 +1,21 @@ +/* +   GoToSocial +   Copyright (C) 2021-2022 GoToSocial Authors admin@gotosocial.org + +   This program is free software: you can redistribute it and/or modify +   it under the terms of the GNU Affero General Public License as published by +   the Free Software Foundation, either version 3 of the License, or +   (at your option) any later version. + +   This program is distributed in the hope that it will be useful, +   but WITHOUT ANY WARRANTY; without even the implied warranty of +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +   GNU Affero General Public License for more details. + +   You should have received a copy of the GNU Affero General Public License +   along with this program.  If not, see <http://www.gnu.org/licenses/>. +*/ +  package cache_test  import ( diff --git a/internal/cache/status.go b/internal/cache/status.go index 6c0b5aa9f..7e3d85960 100644 --- a/internal/cache/status.go +++ b/internal/cache/status.go @@ -1,3 +1,21 @@ +/* +   GoToSocial +   Copyright (C) 2021-2022 GoToSocial Authors admin@gotosocial.org + +   This program is free software: you can redistribute it and/or modify +   it under the terms of the GNU Affero General Public License as published by +   the Free Software Foundation, either version 3 of the License, or +   (at your option) any later version. + +   This program is distributed in the hope that it will be useful, +   but WITHOUT ANY WARRANTY; without even the implied warranty of +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +   GNU Affero General Public License for more details. + +   You should have received a copy of the GNU Affero General Public License +   along with this program.  If not, see <http://www.gnu.org/licenses/>. +*/ +  package cache  import ( diff --git a/internal/cache/status_test.go b/internal/cache/status_test.go index 222961025..882e92be5 100644 --- a/internal/cache/status_test.go +++ b/internal/cache/status_test.go @@ -1,3 +1,21 @@ +/* +   GoToSocial +   Copyright (C) 2021-2022 GoToSocial Authors admin@gotosocial.org + +   This program is free software: you can redistribute it and/or modify +   it under the terms of the GNU Affero General Public License as published by +   the Free Software Foundation, either version 3 of the License, or +   (at your option) any later version. + +   This program is distributed in the hope that it will be useful, +   but WITHOUT ANY WARRANTY; without even the implied warranty of +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the +   GNU Affero General Public License for more details. + +   You should have received a copy of the GNU Affero General Public License +   along with this program.  If not, see <http://www.gnu.org/licenses/>. +*/ +  package cache_test  import (  | 
