September 14th, 2008
The Google Summer of Code 2008 is finally over! I don’t know whether to express happiness and relief over its completion (and satisfactory payment no less :)) or to express grief in the conclusion of a wonderful journey - one that had much to offer me, in terms of knowledge and experience.
In any case, I am glad to say that the project has met the initial requirements I have set out for it. I will continue to work on this project to implement additional features that were beyond the scope of the GSoC timeline. Might I also add that I’ve been given the privilege of joining the phpMyAdmin team. Yes my friends, commit access right there!
Well folks, that’s all for now. You’ll be hearing from me soon, sometime in the next few months with more updates. I wonder if this is even necessary considering I don’t know if anyone else even reads this blog. E-mail me if you actually do 
Posted in Google Summer of Code 2008 | 2 Comments »
August 18th, 2008
WEEKLY REPORT - WEEK 12
KEY ACCOMPLISHMENTS LAST WEEK
- Finished code comments using PhpDocumentor
- Submitted a diff file for merging of code into phpMyAdmin-dev
- Completed basic requirements for GSoC project
KEY TASKS THAT STALLED LAST WEEK
- Implementing multipart/form-data handling. This has been postponed week after week, due to other bug fixes and additional implementations. As I will continue to work on this after GSoC, I will be working on multipart/form-data handling then
KEY CONCERNS
TASKS IN THE UPCOMING WEEK
- None, because this is the last week!
Posted in Google Summer of Code 2008 | No Comments »
August 14th, 2008
WEEKLY REPORT - WEEK 11
KEY ACCOMPLISHMENTS LAST WEEK
- New feature added - users can now specify a custom MIME type for files in the BLOB repository
- Learnt and implemented mootools v1.11 (already available in PMA trunk) in custom MIME type specification feature (refer to above)
- Added comments for above implementation (in relevant .php and .js files)
- New .php added for above feature - bs_change_mime_type.php
KEY TASKS THAT STALLED LAST WEEK
KEY CONCERNS
TASKS IN THE UPCOMING WEEK
- Complete documentation and code comments for current code
Posted in Google Summer of Code 2008 | No Comments »
August 6th, 2008
WEEKLY REPORT - WEEK 10
KEY ACCOMPLISHMENTS LAST WEEK
- Reduced query overhead when retrieving content-type for valid BLOB references
- Added BLOBStreaming parameter configuration (mybs_garbage_threshold, mybs_temp_blob_timeout, etc) in PMA’s automated setup script
- Support for PECL’s fileinfo library is now available for detecting MIME types of files uploaded to the BLOB repository via PMA’s uploadDir mechanism
KEY TASKS THAT STALLED LAST WEEK
KEY CONCERNS
TASKS IN THE UPCOMING WEEK
- Provide users the option to modify the MIME type of their files in the BLOB repository. This is convenient in the case of OpenOffice documents - their various extensions have their own MIME types, but fileinfo and Linux’s `file` command always return “application/x-zip” as the MIME type
- Complete documentation and code comments for current code
- If everything else is done, work on implementing multipart/form-data handling (this will probably be done after GSoC, considering the remaining time left before the deadline)
Posted in Google Summer of Code 2008 | No Comments »
July 31st, 2008
WEEKLY REPORT - WEEK 9
KEY ACCOMPLISHMENTS LAST WEEK
- Fixed issue with invalid content-type when displaying table records with BLOB references.
- uploadDir() mechanism now supports uploads to BLOB repository
KEY TASKS THAT STALLED LAST WEEK
KEY CONCERNS
Determining the actual file MIME type is a problem. I’ve already emailed Marc and Paul on how to establish a proper workaround on this. Also, during BarCamp, someone brought this up and suggested that users should be able to modify the content-type themselves; this would be convenient in the case of OpenOffice documents, that normally give the MIME type of application/x-zip when queried using the Linux “file” command.
TASKS IN THE UPCOMING WEEK
- Add support to customise MyBS from the PMA config file
- If everything else is done, work on implementing multipart/form-data handling
Posted in Google Summer of Code 2008 | No Comments »
July 31st, 2008
WEEKLY REPORT - WEEK 8
KEY ACCOMPLISHMENTS LAST WEEK
- Commented code for BLOBStreaming implementation
- Began implementing BLOB file uploading via PMA’s uploadDir mechanism
KEY TASKS THAT STALLED LAST WEEK
- Implementation of file uploading via PMA’s uploadDir mechanism and fixing of a bug that retains the content type for subsequent file uploads to the BLOB repository (this bug is more of a display issue, the original content-types are retained in the repository tables). I have not been able to do much this past week primarily because of a problem with my final year project proposal, amongst other things. This has already been resolved though. These two pending tasks should be done by the next week.
KEY CONCERNS
None
TASKS IN THE UPCOMING WEEK
- Finish implementing file uploading via PMA’s uploadDir mechanism
- Resolve content-type bug
- If everything else is done, work on implementing multipart/form-data handling
Posted in Google Summer of Code 2008 | No Comments »
July 16th, 2008
WEEKLY REPORT - WEEK 7
KEY ACCOMPLISHMENTS LAST WEEK
- Fixed file uploading to the BLOB repository (testing still pending, but so far it works fine on my copy)
- Fixed some more bugs (still a few more to go)
- Added ability to stream files of certain content-types (still needs testing though)
- Code in compliance with PEAR standards
KEY TASKS THAT STALLED LAST WEEK
- I still have quite an amount of code left to write comments for. I’ve been busy with my new semester having started on Thursday in the past week, so I didn’t have much time to work on my project the last few days of the week
KEY CONCERNS
None
TASKS IN THE UPCOMING WEEK
- Implement file uploading via PMA’s uploadDir mechanism
- Comment remaining code
- If everything else is done, work on implementing multipart/form-data handling
Posted in Google Summer of Code 2008 | No Comments »
July 8th, 2008
WEEKLY REPORT - WEEK 6
KEY ACCOMPLISHMENTS LAST WEEK
- optimized code here and there
- moved plugin, CURL and MyBS table detection to libraries/common.inc.php
- removed self-made DBI functions (using PMA’s DBI as it is available in libraries/common.inc.php)
- fixed numerous bugs/errors
- added the option to remove a valid BLOB repository reference from an existing record (if the database has the BLOB repository enabled)
KEY TASKS THAT STALLED LAST WEEK
- Proper comments for the code. This has stalled because I’ve made significant changes here and there. Will handle this when I have time to spare.
- I’ve yet to implement multipart/form-data handling, for the same reason above.
- Determine the content-type of the file after it has been uploaded to the BLOB repository. Likely to be a problem with how I’m using PHP’s libcurl functions.
KEY CONCERNS
None
TASKS IN THE UPCOMING WEEK
- Fix file uploading to the BLOB repository.
- Properly comment code.
- Yet again, if everything else is done, get multipart/form-data handling implemented.
Posted in Google Summer of Code 2008 | No Comments »
July 4th, 2008
Okay, the repository is up - it requires Subversion by the way. It’s at svn://sebastianmendel.de/phpMyAdmin_gsoc2008_bs. There probably might be a zipped source distro in the near future. Stay tuned.
Posted in Google Summer of Code 2008 | No Comments »
July 4th, 2008
WEEKLY REPORT - WEEK 5
KEY ACCOMPLISHMENTS LAST WEEK
- implemented most of Marc’s suggestions and coding recommendations
- cleaned up a lot of the code (BLOB Streaming functions now confined to their own library, blobstreaming.lib.php
KEY TASKS THAT STALLED LAST WEEK
- Committing of code to SVN repository. This is due to an authentication failure. I’ve already emailed Sebastian Mendel on this and awaiting his reply. It will be available at svn://sebastianmendel.de/phpMyAdmin_gsoc2008_bs once it’s up. Will keep you guys informed.
KEY CONCERNS
I’ve moved the detection code for the plugins, curl and repository tables into Config.class.php. This brought about a new problem, however. The detection of the aforemention requires a connection to the DB via PMA’s DBI, which does not exist in Config.class.php (it only exists after common.lib.php is called if I’m not mistaken). So I’ve taken the liberty of creating a BS DBI within blobstreaming.lib.php. The code for this DBI was built of PMA’s DBI, with certain modifications. This will most likely remain a temporary solution until I can figure out a better way to resolve this issue.
TASKS IN THE UPCOMING WEEK
- implement the remaining suggestions that Marc made.
- Optimize code and properly comment it.
- If all the basic requirements are met, continue with multipart/form-data handling.
Posted in Google Summer of Code 2008 | No Comments »