You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Dec 1, 2024. It is now read-only.
Following #455 (comment), here's a list of possible improvements as well as related issues. We can address these with multiple PRs or break it up into issues. I thought it best to first get an overview, and to start a discussion on the general goals:
Consistent wording
Reduce focus on LevelDOWN and LevelDB, make it generic
Express a preference for using *down layers (like encoding-down) to extend functionality
Rewrite. Possibly merge with Relationship to LevelDOWN. Sentences like "LevelDOWN is now optional because LevelUP can be used with alternative backends" are not wrong but I'd prefer opening with "LevelUP can be used with multiple backends" and thén saying "most commonly that's LevelDOWN".
Remove "LevelUP will look for LevelDOWN and throw an error if it can't find it in its Node require() path. It will also tell you if the installed version of LevelDOWN is incompatible.". No longer true.
Level should be the preferred way of using levelup + encoding-down + leveldown
I feel it's important we keep the description of characteristics (e.g. lexicographical order), but maybe it can be explained not through a description of LevelDB, but by saying "backends follow the characteristics of LevelDB: <list of characteristics>.
No longer true: "All operations are asynchronous although they don't necessarily require a callback if you don't need to know when the operation was performed."
Drop this sentence: "The standard pause(), resume() and destroy() methods are implemented on the ReadStream, as is pipe() (see below). 'data', 'error', 'end' and 'close' events are emitted." Linking to Node.js documentation should suffice.
"When attempting to extend the functionality of LevelUP, it is recommended that you consider using level-hooks and/or level-sublevel.": I would personally recommend subleveldown and similar *down layers now. Alternatively we could remove this text and just link to the wiki.
After the introduction, generalize or remove references to LevelDB, assuming the introduction has made it clear that a "store" (or whatever word we settle on) is abstract. E.g. "opening the underlying store with LevelDB" => "opening the store".
"Node.js-style readable stream": drop the -style suffix? Seems to suggest it's like a Node.js stream, but not actually.
"records" / "entries" => "entries"
"key/value pairs" => "key-value pairs"
"data store" => "store"
LevelUP => levelup, LevelDOWN => leveldown
"can be arbitrary data objects" => "can be of any type"?
@ralphtheninja @juliangruber
Following #455 (comment), here's a list of possible improvements as well as related issues. We can address these with multiple PRs or break it up into issues. I thought it best to first get an overview, and to start a discussion on the general goals:
encoding-down) to extend functionalitylevelNotes per section
levelup+encoding-down+leveldownLevelDB, but by saying "backends follow the characteristics of LevelDB:<list of characteristics>.db.createReadStream([options])subleveldownand similar *down layers now. Alternatively we could remove this text and just link to the wiki.General
-stylesuffix? Seems to suggest it's like a Node.js stream, but not actually.levelup, LevelDOWN =>leveldown'key','value','gte', etcBetter explain encodingsMoved to Tweak readme encoding-down#15