Firefox 3.0 Makes Leap Forward
Kurtz'sKompund writes "Mozilla has announced that Firefox 3.0 has passed a major milestone! The Places feature has been added to the alpha client slated for release next week. Places is a complete re-work of the bookmarking and history browser functions. It was at one point slated for Firefox 2.0, but will instead see release in Mozilla's next major version. '"We enabled the Places implementation of bookmarks on the trunk," said the Places team in a post to the Mozilla developer center blog. "Although there is still much to be done, this is an important milestone for us." Firefox 3.0 alpha 5 is scheduled to launch June 1. Because Places uses the open-source SQLite database engine to store and retrieve bookmarks and history entries, it's incompatible with earlier Firefox editions' bookmarks. Alpha users must convert their existing entries, Mozilla developers said."
Until they decide to remove it and delay it until Firefox 5 (after they skip 4)
For anyone wondering what's going to change in FireFox 3.0 (Wikipedia quotes):
The largest known change for Firefox 3 is the implementation of Gecko 1.9, an updated layout engine. It will also provide CSS3 columns.[90] Firefox 3 will include features that were bumped from Firefox 2, such as the overhauled Places system for storing bookmarks and history in an SQLite backend, according to the wiki.
Also, what's expected to come in FireFox 4.0 (also Wikipedia):
On October 13, 2006, Brendan Eich, Mozilla's Chief Technology Officer, wrote about the plans for Mozilla 2.0, the platform on which Firefox 4.0 is likely to be based. These changes include improving and removing XPCOM APIs, switching to standard C++ features, just-in-time compilation with JavaScript 2 (known as the Tamarin project), and tool-time and runtime security checks.
Full Tilt
I'm looking forward to this going gold for just one reason: some of the sites I visit frequently have a particularly in-your-face usage of auto-refresh which pisses me off (i.e. insisting on re-loading just when I'm in the middle of reading a particular paragraph). FF 3.0 (I heard) is supposed to be able to block this...
It's a very lightweight C library which basically enables "on the ground" SQL queries and such. No client/server mechanisms to worry about, no middleware (other than sqlite.dll, and even then you can just take the source and compile it in), and the security of the database is handled by security permissions on the file. That's right, "the" file. A single file contains the schema and data.
It fully supports transactions and is appropriately ACID. For someone who's had his Firefox bookmarks hosed before, this is very welcome for me.
The benefit of this will [hopefully] be fully searchable bookmarks and easy to move the bookmarks around to other computers.
I've used it in the past and it's been great for me. Check it out: http://www.sqlite.org/
More Twoson than Cupertino
SQLite is developed for embedding so it is miniscule (less than 250KiB). It was already included in Firefox 2.0 so it does not add any size to Firefox 3.0. It also allows for some interesting ideas that are being played with for the new release, like site annotation and full text indexing.
Details.
SQLite by itself, I imagine, won't. How much else they do with it may or may not.
All posts resembling the pattern “why don't they fix this problem instead!?” are off the mark, irrelevant, and just plain whiny. Just because some new feature is being added does not mean your pet peeve is going completely ignored. There is more than one person working on this thing, and as remarkable as it may seem, many software development tasks can be done in parallel! Imagine that: doing more than one thing at once on a project!
Why bother.
SQLite has this name because it is... lite! It has a very, very small footprint. By your comment, I can tell you have never used it. I have. It is designed to be small and easy to embed into an app with out requiring a bunch of resources.
General, you are listening to a machine! Do the world a favor and don't act like one.
Where are the times when it was a quick and lightweight browser I loved? Today... Konqueror > FF.
Adding new features is not automatically a bad thing. It does not intrinsically slow down a program or make it cumbersome. Of course, these are two possible side-effects, but are not always certain. With good practices and architecture, new features are a boon, not a bust. Also, think of all the things the computer on your desktop does right now. Would you rather it have the functionality of a machine from a few decades ago because people complained that expanding its usefulness was counter-productive? Let products evolve, let engineers innovate, and let the process for coping with the consequences work.
I cannot believe some of the mundane topics Slashbots will harp on these days. Get over it and try adding some useful dialogue to the stories instead of bitching about things you do not understand or understand only as a result of experience with one particular vendor in Redmond.
Why bother.
This lightweight, fast, simple database eliminates many of the headaches associated with using a full-on SQL installation, and works just as well for most of what most developers and users need.
If you're a Perl geek, like me, you will find this Perl module for seamless SQLite interface to be a power tool. The next time you need to get something working by morning, and it's 2am and the person "in charge of databases" hasn't called back, you'll be thanking it.
technical writing / development
I felt the same before i tried tabs for a while, "I can't see anything wrong with just opening a new window for each new link i want to open separately".
I wouldn't judge it before i try it for a while.
Craft Beer Programming T-shirts
It's also worth noting that native form controls for Mac OS X were enabled yesterday, something Firefox's Mac users have been clamoring for since the 0.x days.
You think a SQL db that only takes up 250K is significant? Geez, what do you have like 4MB of memory? The SQLite DB is already in FF 2. So it will not add anything to FF 3. However, the bookmarks will now just take advantage of SQLite, which they currently do not. This will give you plenty of ways to sort your bookmarks and store more info for each bookmark. For example, in FF 2 you can give a bookmark a keyword. This way you can just type that keyword and go to that URL. I use can type "/." and press enter and get to /. with no clicks. I have a lot of keywords setup for my most used bookmarks. Bookmarks in FF are more than just list of strings. They have a URL, name, keyword and description. One big problem with bookmarks in FF 2 is the inability to sort properly. FF 3 should fix that now that FF 3 will be able to use Order By to sort how the user likes.
General, you are listening to a machine! Do the world a favor and don't act like one.
How do you know it has memory leaks? Seriously, have you done a exhaustive memory profile? Opening a few webpages, closing them, and looking at MemUsage in the task manager before and after is hardly conclusive. Of course, I am assuming you are doing this, but if you have concrete data, please share. I can leave Firefox running for weeks averaging 50+ tabs at all times.
I have never had my profile corrupted with Firefox. I use Firefox on WinXP, OS X and Linux and keep my profile in sync with Google Browser Sync. However, if your profile does get corrupted, the bookmarks file should be fine since SQLite supports standard RDBMS constructs to keep the file from being corrupted. Since SQLite uses a regular file (like Access, but much, much better), you can just copy it to where ever you want as a backup.
General, you are listening to a machine! Do the world a favor and don't act like one.
sqlite is vary resistant to corruption. In fact, the only way you're likely to see it is if Firefox for some reason tries to touch the databases with its own code rather than sqlite. Further, a simple command line query will dump everything.
Even the phrase "launching a SQL database" indicates you're thinking of SQLite the wrong way.
A better way of thinking of it is this: Mozilla developers are removing thousands of lines of code with an unknown number of bugs for a simple data storage mechanism used in thousands of software products, including embedded systems. SQLite works. In fact, it works astonishingly well. We're gradually using it to replace most data storage in our own products.
> Firefox users want a browser that displays webpages. A browser that is fast...
> Adding a whole new bookmarks system is nice, but does the user-base need it ?
You obviously are not a programmer who understand xml parsing and knows SQLite very well. Well as I happen to be such a programmer, let me just tell you that I can pretty well guarantee to you that switching to SQLite will make the browser faster. Most like it will also decrease the amount of needed memory.
Reasons for this:
- SQLite is very light database. Basicly it is just component that can be used to write and read a file, but searching a certain element(s) in the file is very fast compared to normal read methods.
- Reading xml files or similar, as the current bookmakrs.htm file is, is very slow and it requires a lot of memory. This is because you first need to parse the html tree and after that you will get the actual data from the file. It is very good if you have only few items in the file, but if you have thousands bookmarks like some people do, it will get slow.
So basicly they are just removing the bloat and making the browser faster.
I hope it makes a small leap backwards. Ever since a couple of weeks before fully upgrading to Ubuntu 7.04, when I run Evolution 2.10.1 and Firefox 2.0.0.3, after a few hours (or maybe a lot of GUI and HTTP events), some combo memory leak fills my 512MB RAM and starts crazily swapping. I have to kill both apps and restart them, recovering their sessions.
Even if they just had watchdogs that could restart and recover session state, they'd be more useable.
--
make install -not war
what you are missing is
1 the sqllite engine is already present
2 they are yanking out the older crusty Mork/Xml/Vhatever code
3 they are using this to simplify things and enable cool things like throwing your bookmarks online (obsoleting the 12 bazillion bookmark sync extensions)
Any person using FTFY or editing my postings agrees to a US$50.00 charge
Firefox 3 includes a cycle collector to handle these memory leaks in extensions, as well as some remaining memory leaks in Firefox itself.
What a fool believes, he sees, no wise man has the power to reason away.
Places still writes the bookmark.html file.
It just doesn't read-it anymore (but you can tell it to import it back if you like)
BTW, sqlite stores everything in one file so nothing is really changed
if you wan't to save, you just have to copy one file
if you wan't to move/copy you profile, it's just a file to copy
it will be much more robust, powerfull and allow new things to be done.
also the sqllite code is stable and field tested by hundred of projects so it's a very good idea to reuse it instead of using some mozilla only solution.