- change dbshell log file default to 'logs' like everything else
- change default log location to 'logs'
- check for empty or null data list in shell display function
- make
where
arg added byadd_where_argument()
an optional flag so it's consistent with parsers that add their own
- replace
print
withself.console.print
- replace
argparse.ArgumentParser
withargshell.ArgumentParser
- replace
griddy
withprintbuddies.Grid
- improve type annotation coverage
- non existent db file will be created instead of refusing to start the shell
- dbshell can toggle commit on close and customshell has access
log_dir
- optionally specify database file path as cl arg when starting dbshell
- convert list and tuple annotations to Iterable or Sequence
- add param to exclude columns instead of specifying which to include when using
select()
- log storage directory can be specified in constructor
- BREAKING: remove log format and encoding
__init__
params
- add class and
__init__
docstrings
- add email to authors field of pyproject
- update pyproject deps and py version
- add count command to dbshell
- add noiftimer.time_it() to some dbshell commands
- implement schema and data dumping
- fix execute_script()
- add separate 'tables' and 'views' commands
- add 'views' and 'indicies' properties
- get_columns returns a tuple instead of a list
- add 'script' command to shell
- add 'add_table' command to shell
- fix execute_script not working correctly
- return row factor from execute_script() instead of a cursor
- add shell commands for rename table and rename column
- Complete overhaul
- extract create custom shell functionality and make accessible as a standalone cli
vacuum()
returns the size, in bytes, of the freed space
- use return value from db.vacuum()
- update pathier usage
- only reprint number of matching rows in do_show if there are any
- reprint number of results after grid in do_show
- change abbreviated flag in get_info_parser from '-rc' to '-c'
- do_query() will attempt to use griddy to display results
- add missing tag prefix
- use griddle.griddy in data_to_string()
- do_vacuum actually calls vacuum function now smh
- add backup parser
- add timestamp option to dbshell backup command
- add _disconnect decorator
- add vacuum()
- add connection_timeout property
- wrap table names in query statements in [] so things like colons don't trigger syntax errors
- change dbmanager names to dbshell
- rename dbmanager cli script to dbshell
- add add_rows()
- update supports exact_match param
- do_update prints number of updated rows
- do_query prints number of affected rows
- make counting rows optional for do_info()
- do_add_row() prints addition success status
- add_rows() returns number of successes and number of failures
- add_row() returns whether the addition was successful
- delete() returns number of deleted rows via cursor.rowcount
- update() returns number of affected rows
- add do_scan_dbs()
- add new column functionality to dbmanager
- change do_create_table to do_add_table in dbmanager for consistency
- update readme
- fix add_column() not updating existing rows to default value, if given
- add missing semicolons to queries
- fix data_to_string hanging in an infinite loop when current_width==terminal_width
- change do_find command to do_show
- update formatting and fix typos
- add do_add_row()
- add functionality to add a row to database
- add do_drop_table()
- add do_create_table()
- add parser to add a table
- add do_search()
- add get_search_parser()
- add do_flush_log()
- add do_customize()
- add do_size()
- add do_delete()
- add get_update_parser()
- add do_update()
- add do_query()
- add partial_matching flag to parser
- add do_count()
- add limit arg to parser
- add order_by arg to parser
- add do_backup
- correct capitalization
- fix not passing parent parsers as a list
- fix Namespace member reference
- fix _get_dict() usage
- fix error when printing default database file path
- add missing main()
- fix dbparsers import
- add -c/--columns to search_parser
- add overwrite protection to do_customize()
- increase preloop db scanning robustness
- add root object to custom_manager template
- modify import statement
- add DataBased to imports
- alter custom manager file name formatting
- replace get_delete_parser with get_lookup_parser
- add partial_matching argument to base parser and remove get_delete_parser()
- cast default dbpath to Pathier object in case it's a string
- renamed to dbmanager.py
- rename dbname to dbpath
- delete create_manager()
- update imports
- replace dbmanager content with argshell version
- add partial matching arg to get_delete_parser()
- alter get_update_parser() argument definitions
- move parser generators and post parser functions to separate file
- do_info() takes a string argument instead of an argshell namespace
- rename do_find() to do_find_rows()
- implement usage of argshell package
- prune changelog
- improve type annotations
- update readme
- fix doc string
- add imports to custom_manager.py
- add dbmanager to project.scripts
- cleanup testing lines
- remove unused import
- update ignores
- add dbshell import statement
- update ignores
- revert changing do_find() to do_find_rows()
- update doc string
- correct return type annotation
- fix condition causing infinite loop in data_to_string
- add print statements to data_to_string
- remove uneeded lambda in data_to_string
- return statement was indented one level too many
- rewrite data_to_string() with a different resizing algo
- fix dbmanager switching back to default dbname after user sets it with -db/--dbname switch
- set -db switch default in dbmanager to in-use dbname when it's created
- print results directly in dbmanager find() func when results are too wide for tabulator
- add option to return a pandas.DataFrame from get_rows()
- update test for get_rows
- remove duplicate dependency
- add query switch
- add cleanup func
- add query function
- add order_by and limit params to get_rows
- add data_to_string as DataBased staticmethod
- create parent dir of dbpath if non-existant
- fix _connect setting self to args[0]
- improve update switch
- add tests
- copy dbmanager with shutil.copyfile
- move connection decorator outside of DataBased
- add tests
- change return type to list
- update readme
- add files