๐ bug fix in choose
๐ Any method with __show__
will act as a shortcut for the show
function
โจ current_file_dir
is a new function that return's the directory where the file exists
๐ choose
can optionally be silent (useful in funcs like rand
)
๐ ll
method in P
๐ tryy
will Warn instead of print during an exception
โจ track2
can take optional info to display
๐ fixed a bug where timer was asserting N > 0 instead of N>=0
โจ printfile
will act like cat
for linux
โจ choose
will let you know what was chosen
โจ Timer
can accept N=None
and it will simply time the current activities without any estimate
โจ tryy
is pickleable (helps with multiprocessing)
๐ Add profiler
๐ environment variable AD_SHOW_FULL_STRINGS
can be set to non-empty to show full strings in summary
๐ better integration for unknown datatypes in AD.summary
๐ Quality of life improvements in logging
๐ Add support for dataclass
in AD
๐ DeepDiff integrated into AD
. Now you can call x.diff(y) where x is AD
and y is AD
able
๐ AD.d
(no brackets, d is a property) to convert the object to dictionary
โจ read_json
can also do json.loads if input is not a file path
โจ json
is loaded by default on import *
โจ Made all imports lazy for a faster import experience
โจ set AD_SHOW_TAB_STOPS
env variable to anything to print with tab-stops (only recommended to see on REPL. Default is good for storing files)
โจ crop_from_bb
has padding
(px,py,pX,pY)
๐ minor bugfix in AD
๐ AD
has a fetch2
which preserves json structure while fetching all the leafs of the same name
๐ AD
has a flatten
which flattens all nested jsons into flat dictionary with '.' combined key names
๐ AD
has a flatten_and_make_dataframe
which creates one column for each nesting
โจ tryy
will store all its errors and can be accessed by calling <func>.error_summary()
๐ torch snippets as a new cli function called ts
, thanks to the wonderful Typer
. Try
ts time
ts zen-of python
ts zen-of c++
ts --help
โจ slightly better error printing in tryy
๐ tryy
a new decorator to wrap try except with optional default return as well as print stack trace if need be
โจ Timer
can given time-remaning approximation based on both instantaneous or average speed
โจ logging_mode
functions can be used as both context managers and decorators
โจ better formatting for now()
โจ show
auto generates a title if possible
โจ show
function includes a framecount
parameter to specify which frame of the stack it should search for the title. See its usage in show_big_dataframe
โจ yolo_2_df
and df_2_yolo
functions in adapters
โจ AD
let's you know if a collection is list, set or tuple
โจ NEW DEFAULT: use info
column to show text else text
๐ fix a bug where P
misbehaves in AD
when it doesn't exist
๐ fix a bug in show
tables
๐ logger_mode
context will gracefully exit
โจ to
is compatible with transformers.BatchFeature
โฎ๏ธ Revert back P
as the code is incompatible with py312
๐ parse
ing a .ini file will add a META
key by default which has file
and name
information. This header can be used in the file variables without creating META to begin with
๐ parse
will merge a base config if a META.base
key is found. Works recursively on base files (base of base etc...)
๐ P
can tab complete existing file path name and access that file as an attribute
๐ก Did you know parse can perform arithmetic?
โจ registry
and parse
are imported by default
โจ jitter
can work on pd.DataFrame
directly
๐จ bbs2df
clips negative coordinates
โจ Using ๐ท๏ธ to denote data-type in AD
๐ AD2
is AD
now
๐ AD
preserves dict order during serialization
โจ warn_on_fail
decorator gives you a free try catch
โจ show
ing a dataframe of the correct format inside and outside jupyter environments
๐ AD
has improved get
, update
, map
and new write_config
, trymap
and __json__
โจ P
has two new properties .sz
for size of file and .tree
to print the tree
๐ AD
hotfix
๐ store_scrap
is a new way to store on disk and show jupyter cell outputs in other notebooks.
Best for presenting complex analyses without worrying about running time-consuming notebooks
๐ Add support for P
in AD summary
and write_json
๐ __json__
supports custom objects' serializability
๐ write_json
is compatible with above feature
๐ AD_MAX_ITEMS
if given as -1 will change it to 1000
๐ iou
will parse input dataframes more gracefully
๐ AD
minor bug fix
๐ tree
has a better default
๐ New functions folder_structure_to_dict
and folder_structure_to_json
in paths
๐ Add jitter
(int) argument to show
so that bounding boxes can be a bit jittered
๐ Add support for changing spinner
in notify_waiting
๐ dumpdill
can print a custom message (see store_scrap
in paths.py)
๐ AD __contains__
can do a nested in
'x.y.z' in AD(x={'y': {'z': 10}}) == True
โ ๏ธ Stop using rich's print and revert back to builtin print ๐ Decouple AD and torch ๐ Add a new chart - spider / radar ๐ Add scp client with download upload functionality
๐งน change code to remove future warnings in text_utils
๐ AD string summary was buggy
๐ all write modes are 'a' by default to avoid accidental overwriting ๐งน AD writes better string summary (support for multiline)
๐งน print_module_ios_for
has better targeted functionality where you need to give submodules name
๐ clean_gpu_mem
and get_latest_checkpoint
functions in torch_loader
๐งน minor bugfix in AD
๐ minor bugfix in AD2
where data keyword misbehaves
๐งน video
has better size functionality
๐ if all is given in print_ios_for_module, all modules are printed
๐ AD2.dict
is an alias for AD2.to_dict
๐ better AD2.summary
for pandas dataframes and AD2.summary
respects max_items for keys as well
๐ new alias pd.read_pqt
for pd.read_parquet
๐ wrap tree
into python
๐ read
loads color image by default
๐งน video
utils are present in torch_snippets.video
๐งน Back to min python version 3.7
๐ print_folder_summary
๐งน import AD
from markup2 by default
๐ pandas dataframe summary in AD.summary
๐ print_shapes_hook
will gracefully fail
๐ attach
will add hook to the input module as well (not just the children)
๐ minor change in print_shapes_hook
๐ print_module_io_for automates attaching and detaching hooks ๐ AD2 avoids rich printing
๐ attach_hooks
will accept any custom hook
๐ Make markup2.AD.__repr__
the summary
๐ Expose markup2.AD
as AD2
๐ Make icecream
a requirement
๐ Min python is 3.8
๐ New IO hooks system in torch_snippets.trainer.hooks
๐ Updated markup2.AD.summary and add print_summary methods
๐ Experimental AD
in torch_snippets.markup2 that infers variable names E.g. - (p=10; AD(p) == {'p': 10})
๐ isin
will not add +1 (useful for both absolute and relative boxes now)
๐ write_json
will support numpy, torch and AttrDict
๐ add find_address
to AttrDict
that can return all path locations for a specific key
๐ add summary
to AttrDict
that can give an outline of the dictionary
๐ add write_summary
to AttrDict
that writes the summary to a textfile
๐ show
can now show bb colors {"r": (255, 0, 0), "g": (0, 255, 0), "b": (0, 0, 255), "y": (255, 0, 255)}
if df
has column called color
๐ AD
is an alias for AttrDict
๐ AD
can directly consume kwargs
๐งน import only important functins from dates.py
๐ add backup_all_notebooks
that backs up every notebook present in a specific folder
๐ reset_logger
can disable stdout logging if needed, using disable_stdout=True
kwarg (False by default)
common_items
will take a list of folders and return common stems from the folders
images will show a black border when grid is True
Info, Debug, Warn and Excep will format ouputs separated by a ;
when args are passed
notify_waiting
is a new function that letting you know some process is running for an unknown amount of time
optional delay
during shutdown_current_notebook
Info, Debug, Warn and Excep will all have X_mode
and in_X_mode
functions much like in_debug_mode and debug_mode
__init__
will auto pull from logger now
Better non-linear Timer
(and Report
and track2
)
๐งน Info
, Debug
, Warn
and Excep
will accept args (instead of a single arg)
๐งน show
will show h4 headers instead of h2 for dataframe titles
๐งน phasify
loads by default
๐งน show_big_dataframe
can show more rows
๐ add a new submodule trainer.hooks
๐งน show
delegated kwargs to plt.imshow
for a better readme
๐ batchify
can batchify multiple containers at once
๐ cat_with_padding
new function in torch_loader
๐งน L
is json compatible
๐ BB
will not decide if something is relative/absolute
๐ __contains__
for config
๐ to
works on AttrDict
๐ถ๐ผ track2
is a better version of track
uses corouties
๐ถ๐ผ debug_mode
temporarily activates DEBUG
mode on
๐ถ๐ผ if in_debug_mode():
lets you know if DEBUG
mode is on
๐งน reset_logger
can accept lowercase levels also
๐งน dumpdill
will return a Path after dumping
bugfix in loader.show
add today
function to dates
add are_equal_dates
to dates
add dpi option to pdf
bugfix in attrdict.map
All notebooks are formatted with black
parse
can parse python expressions
Add DeepLearningConfig class that can be used to load model hyperparameters
Add GenericConfig class that can be used to load generic (such as training, evaluation) hyperparameters
Add date utilities
patch_to
, Timer
, timeit
, io
are loaded by default
lovely_tensors
is optional
Add phasify function to loader
attrdict can deserialize "L"
show
can render a dataframe with a titleshow
can accept a csv file as input (no need to load it and send)backup_this_notebook
will back up asbackups/file/file__0000.html
instead ofbackups/file/0000.html
for easier sharability- module loads
decorators
by default (io
,timeit
,check_kwargs_not_none
) ishow
is less opinionatedshutdown_this_notebook
is a new function
override_previous_backup should not trigger when there's no backup to begin with instead of showing markdown objects using display, directly show HTML objects so that the text is preserved on reopen h2 in Backup instead of h1