- README
- Wrap allow around code
- Add api links to docs
- Errors
- Add error handling for non-rethinkdb driver connections
- Keep server running on error
- It should handle queries that throw errors
- Fix
ECONNRESETbugs
- Use from browser
- Replace
netlibrary with websockets - Authentication
- Convert queries back to strings. Re-build AST.
- Save options in RethinkDB instead of passing them as flags
- Add logging
- Test cursors
- Test multiple concurrent queries from the same connection
- Test changefeeds
- API
- Better name for allowSysDbAccess
- Allow only a single database/table
- database
--db test,hello - Prevent connection if database is passed that is not allowed (Throw error)
- tables
--table people, trains,--table test.people, hello.trains - Prevent
r.args - Prevent getting the dbName, tableName dynamically
- Refactor
- Refactor code so that it uses classes
- Break up codes into more modular structure
- Opt-in Options:
- Allow Insert
--allow-insert - Allow Delete
--allow-delete - Allow Update
--allow-update - Allow Database Create
--allow-db-create - Database Drop
--allow-db-drop - Table Creation
--allow-table-create - Table Drop
--allow-table-drop - HTTP
--allow-http - JavaScript
--allow-javascript - Reconfigure
--allow-reconfigure - Rebalance
--allow-rebalance - Add token/connection parser
- Prevent
insert,update,replace,delete - Fix corner cases
-
updatewithnull: does nothing. -
updatewithr.literal(): throws Error. -
insertwithconflict: replace.allowReplacemust be allowed. -
insertwithconflict: replacewithnullwill deleted the document.allowDeletemust be allowed. (Throw error) -
insertwithconflict: update.allowUpdatemust be allowed. -
replacewithnulldeletes the document. -
replacewithr.literal: Throws error.