Latest revision |
Your text |
Line 8: |
Line 8: |
| == Weekly update - Coding Period == | | == Weekly update - Coding Period == |
| * Week - 1 | | * Week - 1 |
− | ** Day 1-2
| + | ** Working version of undo command implemented in mged which prints name of database when command is given. |
− | *** Working version of undo command implemented in mged which prints name of database when command is given.
| + | ** Understood how commands use wrapper functions and function of cmd_ged_plain_wrapper() |
− | *** Understood how commands use wrapper functions and function of cmd_ged_plain_wrapper()
| |
− | *** Set flags -n and -h aimed to execute multiple undos and show usage respectively
| |
− | *** Understood how hidden objects work, have to explore temporary file alternative to save backup objects
| |
− | *** Stuck, trying to iterate over all objects in database but not finding the right function
| |
− | *** Finally found way to iterate over all objects from move_all.c
| |
− | *** Converted undo.c to undo.cpp so that code can be more functional
| |
− | ** Day 3-4
| |
− | *** Had a discussion with my mentor how to proceed further on the undo
| |
− | *** Data accesible over all processes stored in _GLOBAL as name, value pairs
| |
− | *** Name of the last added object and last killed object stored in _GLOBAL
| |
− | *** Wrappers of make and kill modified to add the labels
| |
− | *** Introduced 3 variables in undo.cpp to keep track of latest_change and then take necessary action to undo
| |
− | ** Day 5-6
| |
− | *** Enabled undo for in command; Now working to enable undo for killall
| |
− | *** Did tutorials to understand how combinations and regions work
| |
− | *** Went in the wrong direction intially; Took a day to understand how combinations are stored
| |
− | * Week - 2
| |
− | ** Day 1-2
| |
− | *** Encountered many bugs while implementing undo for killall
| |
− | *** Ubuntu had some problems; mouse and keyboard stopped working and stopped work for sometime
| |
− | *** Tired refactoring code of backup storage for make; Chose to make a gmd_cmd for it but did not happen, also felt it was not the best option
| |
− | *** Succesfully implemented undo for kill by modifying code in libged/killrefs; Might have to write a new wrapper for this
| |
− | *** Created new wrapper for g (group) command and implemeted undo for it; Some refinement left here
| |
− | ** Day 3-4
| |
− | *** Refined code of g cmd undo and updated PR
| |
− | *** Attempt at reefactoring code to libged/undo.cpp failed; Not right place to put the code
| |
− | *** Refactored make's undo code into mged/utility1.c and replaced code in make, in and g
| |
− | *** Solved major bug that made children objects disappear when any object was killed
| |
− | *** logic: renamed all leaves by adding sufffix, thereby poiting to imaginary objects and not hiding the references it had previously
| |
− | ** Day 5-6
| |
− | *** Implemented undo for mv and mvall
| |
− | *** Also restructured code in undo.cpp to accommodate more cmds easily
| |
− | *** Made a spreadsheet with status of implementation for all commands
| |
− | | |
− | * Week - 3
| |
− | ** Day 1-2
| |
− | *** Solved a long pending bug
| |
− | ** Day 3-4
| |
− | *** Took a break
| |
− | ** Day 5-6
| |
− | *** Started work on storing objects as data in binary objects
| |
− | *** Understood code of mk_binunif, make and libged/bo.c
| |
− | | |
− | * Week - 4
| |
− | ** Day 1-2
| |
− | *** Done writing basic test to store and recover objects from a binary object
| |
− | *** Stored internal data in binary object, storing external data is better since it contains type information as well
| |
− | *** Switched code from storing internal to external of object
| |
− | ** Day 3-4
| |
− | *** Ideated and tried different ways in which we could store the recovery data
| |
− | *** Wrote code implementing a new struct in ged/defines.h
| |
− | *** Mimicked history implementation for the struct
| |
− | ** Day 5-6
| |
− | *** Implemented undo using the struct but realized it would not work
| |
− | *** Thought of using char** arrays to store the commands
| |
− | *** Have to discuss with mentor on a better approach
| |