Change handling of root index.html/"homepage" of PODs that have no meta-tag for `solid-allow-automatic-updates`
@megoth arbeitet bereits daran.
Seit 17.12.2018.
Bewertung
Dieses Issue wurde noch nicht bewertet.
Beschreibung
A solution for updating root index.html/"homepage" of PODs was implemented in https://github.com/solid/node-solid-server/pull/953. The handling this PR introduced might not be optimal, and we should at explore what can be done.
The PR made it so that when you run npm run solid updateindex the following checks are done:
- No meta-tag for
solid-allow-automatic-updates--> do update solid-allow-automatic-updatesis set to true --> do updatesolid-allow-automatic-updatesis set to false (or anything beside true really) --> do not update
As discussed in https://github.com/solid/node-solid-server/issues/951, number 1 should might be handled. The problem is when users have done updates to their index.html and aren't aware of solid-allow-automatic-updates.
A proposed solution to this is to check each index.html with the previous version of index.html, and only update if the index.html we want to update is equal to the previous version (i.e. there has been no changes). This intuitively feels like a good solution.
The problem is which version should we check against?
- The version in config: There's a system that copies over template files to a config-directory upon starting the server. This can represent the last version maintained by the POD provider. But this will probably miss a lot of older accounts created before the last upgraded version; this is a good solution if the script is run after each upgrade of the index.html.
- All previous version: The idea is to have a list of all iterations of index.html, and if the current index.html matches one of them, we know that it can be upgraded. The problem with this approach is that it can get a bit cumbersome to maintain the list of iterations and I suspect at some point it will get very performance heavy to iterate all iterations for all users.
The latter solutions requires maintaining a list of index.html, and I don't think this is a good solution. Both solutions require fetching data about the user to generate the file to check against previous version(s). This will increase the performance cost of running the script.
Performance might not be a big problem since these are scripts that should be run seldomly.
Personally I think this is not going to be a big problem, since users that care enough to customize their root index.html will also care enough to find info about solid-allow-automatic-updates (although I understand it's a custom meta-tag, and might not be easily found).
The biggest problem I have with simply updating the file is that it kind of violates the sovereignty of the POD. But I think this is OK for most users, and those who aren't ok with that have a mechanism to prevent it. So although it's philosophically a bit "on the edge", I favor the solution for its pragmatic reasons: I assume most people want to have their "homepage" auto-updated by default. (But, as always, I'm very much open to be challenged and convinced otherwise on this.)
- Vorherrschende Sprache
- JavaScript
- Sterne
- 1.8k
- Forks
- 308
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus nodeSolidServer/node-solid-server
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 72/100
nodeSolidServer/node-solid-server#1848 · 2 Kommentare · 1 Reaktion ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
nodeSolidServer/node-solid-server#1841 · 2 Kommentare ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
nodeSolidServer/node-solid-server#1147 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
nodeSolidServer/node-solid-server#1867 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 45/100
nodeSolidServer/node-solid-server#1853 ·
Alle Issues in nodeSolidServer/node-solid-server
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
sugarlabs/musicblocks#8847 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
Request: SumUp Offennew icon permissions in review
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
simple-icons/simple-icons#15027 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
TheOdinProject/curriculum#31408 ·