Comments (5)
I implemented lazy loading.
501461d
from tab-session-manager.
I can not add that function because the API is not yet implemented.
I plan to respond in the future.
https://blog.mozilla.org/addons/2017/09/28/webextensions-in-firefox-57/
Tabs now have a discarded state added to the Tab object. It will be set to true if the tab is not loaded with content, for example when restored from a previous session. This is part of getting ready for a tabs.discard API.
from tab-session-manager.
@irvinm
I think about implementing that function in Alternative Plan.
When I experimented easily, memory usage decreased greatly by replacing pages.
This is a means to solve the big problem of TSM.
from tab-session-manager.
For users who will refrain from using Firefox 57 or greater
Firefox ESR 52.5.0
– extended support release.
As far as I know, there was nothing like lazy tabs before 55.0.
Firefox 56.0.2
– without extended support from Mozilla, some people will treat this as an edge case.
Some users might prefer Session Manager, which supports browser.sessionstore.restore_on_demand
(see for example Firefox/session restore - MozillaWiki but please note, that page is outdated).
Firefox Quantum
Mozilla bug 1322485 - Implement tabs.discard method for Desktop
RESOLVED FIXED in Firefox 58
Mozilla bug 1378647 - Support the "discarded" property inside browser.tabs.create() (2017-07-05)
Importance: P5 normal
Status: NEW
I wonder whether, within the constraints of Firefox 57.x, Tab Session Manager 1.5.0 can effectively work around an old Mozilla bug:
@hirvinen are you familiar with symptoms of that bug and if so, can you tell whether 1.5.0 is a workaround?
from tab-session-manager.
Seeing as implementing the discarded property in browser.tabs.create() is a P5 (thankfully approved), it will probably be a long time before we see that land. [Once (or if) this lands, this accomplishes the same idea as the "alternative" at the end of this post]
In the meantime, I am wondering if there is maybe a middle ground. I too have had some issues restoring large sessions and while I don't really mind the CPU usage (averages like 25%), the time to restore a large session is significant. Again, this isn't the end of the world, but I need to have the session restore successfully.
IF in a large session restore, there are 30-50 tabs loaded, when the session tries to restore 500+ tabs, there is a good possibility that memory will be pushed to the limit and I have even had it crash the browser. I would then retry the restore and while it is restoring, I would try to "Suspend all tabs" (which slows things down more), but the session could then restore successfully.
Suggestion
The idea I have is to have an option (optional obviously) to store the "discarded" version of the website within the session at all times. Therefore, when any session is restored, all of the tabs are idle and discarded which should allow large sessions to be restored successfully and as fast as possible.
Alternative
The other option would be to leave the session store the same as it is now, but change the "open session" process to provide an option (again optional to the user) to convert any active tabs to discarded versions of those tabs "on the fly" during the restore.
@sienori, what do you think?
from tab-session-manager.
Related Issues (20)
- New sessions don't save and can't save manually HOT 5
- TBS not storing sessions on one Chrome profile of two on Windows 10, only retaining last manually saved sessions
- Tab Session Manager resets hotkeys, causing conflict with bitwarden HOT 1
- TSM no longer prompts to save backup file on launching browser HOT 1
- most sessions lost after crash HOT 1
- the export button and backup doesnt work
- Bring back support for FF 91.9.1esr
- almost completely stopped after crash HOT 1
- Firefox/Edge with 7.0.0/.1: tracking session are indicated as being tracked even after session has been closed HOT 1
- Auto saves session stops when limit is reach instead of overwriting old ones HOT 4
- No Restore of Tabs
- Custom theme/css support with reference/default CSS file or docs
- Subdirectory not being saved as URL when saving a bookmark
- [question] Can this session manager remember other extensions state?
- Undo Delete is not working
- Add option to set .json directory
- TSM deleting user saved sessions
- TSM can't import own session exports - Read failed error HOT 2
- Laggy performance with very big sessions on Firefox after upgrading to MV3 HOT 5
- Add automatic switching between dark/light theme
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tab-session-manager.