Progress I made:
1. Fixed issue #453, where the date in the recording editor displays incorrectly. The problem was in database.py, when we are filtering dates using "Date(time)" instead of just "Date".
2. In order for automated recording to work, we need to store the start time as well as the end time of a talk. Thus I added the new end time field in the talk editor, report editor, etc., and updated the database to include such a change. As a reminder to myself, here is a list of files I changed:
- ---framework
#database.py
#presentation.py - frontend
---talkeditor
#AddTalkWidget.py
#TalkDetailsWidget.py
#talkeditor.py - --reporteditor
#ReportEditorWidget.py
reporteditor.py - ---record
#record.py
#ReportDialog.py
4. Added the auto-recording button to the main recording interface (with no functionality yet).
Plans for next week:
1. Right now the auto-record button not only appears in the "Prepare to record" interface, but also in the "Record" interface. I need to fix it so that it only appears in the main talk editor UI.
2. Research how to implement full screen as the display screen during auto-recording, and how to display constantly changing messages on screen.
3. Extract the next talk’s information from the database. Using the starting time and the computer’s current time, display the time until the next talk. Display details about the talk below the time. Repeat this process for every talk until the user presses the exit key, or until there are no more talks to record in the database.
4. Add a shortcut key that allows the editor to exit from full screen mode.
Problems:
1. Currently, rss and csv don't have end time, which means, either the auto-recording feature is not available for rss imports, or when the user tries to use auto-recording, a dialog pops up, asking the user to manually enter the end time.
Notes:
The code sprint last weekend was really helpful for me in figuring out the code base, and it was a pleasure to meet all of the mentors and students! I also learned a lot of things from the code sprint. Special thanks to Dennis, who always answered my questions with patience. =)
Here are some of the things I learned, as a reminder to myself:
To run Freeseer master branch (the origin):
1. make sure you committed your changes before proceeding
2. git checkout master
3. git pull upstream master
4. python -m freeseer
To switch back to your topic branch:
1. git checkout your-topic-branch
To split a fix into its own branch and open a new pull request:
1. git checkout master
2. git pull upstream master (make sure you are up to date with master branch)
3. git checkout -b new-topic-branch-name
4. git log (to see the ID of the commit you want to split)
5. git cherry-pick commit-ID (e.g.711bd3a4f8f9cb7a28da1522c1d5a6fb304424da)
6. if it says "fix conflicts", then run git diff
7. fix the conflicts by deleting the stuff you don't need
8. git add .
7. git cherry-pick --continue
8. to edit the commit message, run git commit --amend
9. to see what you changed in a particular commit, run git show commmit-ID (the first few characters of the ID is fine, as long as it's unique enough)
10. make sure those are the commits you want to push
11. git push origin topic-branch-name
VERY IMPORTANT:
Run the unit tests and flake8 before pushing changes up to github! Here is a how-to link:
https://groups.google.com/forum/#!searchin/freeseer/flake8/freeseer/HdY-IVur0w8/JgPiK6usrSAJ
No comments:
Post a Comment