- Fix: Issue with missing dependency (typing_extensions) made apparent by python 3.9
- Added: Run tests with python 3.9
- Chore: general cleanup & lint fixes
- Chore: removing travis-ci; adding github workflows
- Added: clear & cls commands.
- Updated: clear, cls, exit commands are no longer tracked in history.
- Feature: Retain query history across sessions. (#40)
- Fix: Cannot count(*) on an index (#37)
- Fix: Saving data to some file formats was failing
- Fix: Constraint functions accept quoted field names (#36)
- Chore: Updated config for Dynamo Local to install dependency within project root.
- Bug fix: Fixed ZeroDivisionError with ls on On-Demand tables (#32)
- Added: ls command accepts glob patterns (#30)
- Added: Better error handling and display. (#28)
- Added: Standard error handling for execution with
-c
option. (#28) - Added: Keyboard interrupts will print spooky emojis. (#28)
- Added:
--json
argument for use with-c
to format results as JSON - Chore: General Dev Env & CI updates for easier development. (#27)
- Bug fix: Encoding errors for some SAVE file formats
- Bug fix: Proper throttling in Python 3
Dropping support for python 3.4
- Use python-future instead of six as compatibility library
- Now distributing a wheel package
- Bug fix: Confirmation prompts crash on Python 2
- Bug fix: Compatibility errors with Python 3
- Bug fix: Support key conditions where field has a
-
in the name
- Bug fix: Default encoding error on mac
Dropping support for python 2.6
- Bug fix: Can now run any CLI command using
-c "command"
- Bug fix: Crash fix when resizing terminal with 'watch' command active
- 'Watch' columns will dynamically resize to fit terminal width
- Bug fix: When saving to JSON floats are no longer cast to ints
- Bug fix: Reserved words are correctly substituted when using WHERE ... IN
- Locked in the version of pyparsing after 2.1.5 broke compatibility again.
- Bug fix: Correct name substitution/selection logic
- Swapped out
bin/run_dql.py
forbin/install.py
. Similar concept, better execution.
- Bug fix: Can't display Binary data
- Bug fix: Can't use boolean values in update statements
- Gracefully handle missing imports on Windows
- Missing curses library won't cause ImportError
- Fix bug where query would sometimes display 'No Results' even when results were found.
- Differentiate LIMIT and SCAN LIMIT
- Options and query syntax for
throttling
the consumed throughput - Crash fixes and other small robustness improvements
- SELECT <attributes> can now use full expressions
- LOAD command to insert records from a file created with
SELECT ... SAVE
- Default SAVE format is pickle
- SAVE command can gzip the file
- Don't print results to console when saving to a file
- 'auto' pagesize to adapt to terminal height
- When selecting specific attributes with KEYS IN only those attributes are fetched
- ORDER BY queries spanning multiple pages no longer stuck on first page
- Column formatter fits column widths more intelligently
- Smart formatter is smarter about switching to Expanded mode
- Tab completion for Mac OS X
run_dql.py
locks in a version- Display output auto-detects terminal width
- Format option saves properly
- WHERE expressions can compare fields to fields (e.g.
WHERE foo > bar
) - Always perform batch_get after querying/scanning an index that doesn't project all attributes
- General bug fixes
- Self contained
run_dql.py
script
- Fixes for
watch
display - SELECT can save the results to a file
- ALTER commands can specify IF (NOT) EXISTS
- New
watch
command to monitor table consumed capacities - SELECT can fetch attributes that aren't projected onto the queried index
- SELECT can ORDER BY non-range-key attributes
- EXPLAIN <query> will print out the DynamoDB calls that will be made when you run the query
- ANALYZE <query> will run the query and print out consumed capacity information
- Pretty-format non-item query return values (such as count)
- Disable passing AWS credentials on the command line
- Breakage: New syntax for SELECT, SCAN, UPDATE, DELETE
- Breakage: Removed COUNT query (now
SELECT count(*)
) - Breakage: Removed the ability to embed python in queries
- New alternative syntax for INSERT
- ALTER can create and drop global indexes
- Queries and updates now use the most recent DynamoDB expressions API
- Unified options in CLI under the
opt
command
- Update to maintain compatibility with new versions of botocore and dynamo3
- Improving CloudWatch support (which is used to get consumed table capacity)
- Breakage: Dropping support for python 3.2 due to lack of botocore support
- Feature: Support for JSON data types
- Bug fix: Allow '.' in table names of DUMP SCHEMA command
- Bug fix: Passing a port argument to local connection doesn't crash
- Bug fix: Prompt says 'localhost' when connected to DynamoDB local
- Bug fix: Allow '.' in table names
- Feature: SELECT and COUNT can have FILTER clause
- Feature: FILTER clause may OR constraints together
- Bug fix: Crash when printing 'COUNT' queries
- Feature: Python 3 support
- First public release