2008-04-24 Karl Chen * v2.3.14 release * Show year range in plot title for historical trends. 2007-12-21 Karl Chen * Statistics are now generated via caching system with path query so that each semesters' statistics can be viewed (e.g. CourseSurvey/stats/2007_Spring); default page redirects to latest semester * Fixed statistics output bugs ('semester' printed as object instead of name; overall statistics query updated for sqlobject; missing footer). * Klass pages now link to the relevant semester's statistics * Fixed database content bug introduced in upgrade_database_2.0.py; new script upgrade_database_2.3.14.py (the bug only affected statistics output) * Update pregenerate_all.py for new request system; new pregenerate_stats.py 2007-04-26 Karl Chen * New script edit_answers_change_klass.py to move answers from one klass to another (and update klass=>instructors mapping) 2007-04-09 Karl Chen * Add check in weighted_mean() to ignore ratings with mean of 0.0. This fixes a bug which shows up at https://hkn.eecs.berkeley.edu/student/CourseSurvey/instructors/CS/TA/Zasio%2cB, where a TA taught two klasses in the same semester, one of which has the property that all "worthwhile" answers are "N/A". Thanks to Alex Fabrikant for the bug report. 2006-09-22 Karl Chen * v2.3.13 release * Hosted on cubewano.org 2006-04-30 Karl Chen * Search by email address (or login) also. 2006-04-18 Karl Chen * Update gnuplot parameters for compatibility with gnuplot 4.0. 2006-04-11 Karl Chen * Fix ahref bug when listing a class with no professors. Bug reported by Eric Cheung. * Fix related course statistics bug when some ratings are non-existent. 2006-03-08 Karl Chen * When listing multiple instructor entries for the same klass in a course listing, always emit the Klass column, but emit a 'subseq=1' attribute so that we can style/hide it via CSS, and un-style (un-hide) it when sorting via Javascript. Bug reported by Ramesh Sridharan . * Miscellaneous CSS fixes 2005-12-19 Karl Chen * In CGI mode, if killed by SIGINT, etc. (KeyboardInterrupt), exit silently so it doesn't spam Apache logs. 2005-12-15 Karl Chen * Fix parse error when user enters search query of e.g. "CS C191". Bug reported by Ramesh Sridharan . 2005-12-07 Karl Chen * v2.3.12 release 2005-11-22 Karl Chen * Fix gnuplot to email bug 2005-11-17 Karl Chen * Added etc/logrotate.d/goodprofornot as sample logrotate script. 2005-11-16 Karl Chen * Intercept SIGQUIT, SIGTERM, and process cleanup code before exiting. 2005-11-10 Karl Chen * Use subprocess backported from Python 2.4 instead of os.popen; simplifies and gets rid of race conditions. * Fix gnuplot_pipe bug introduced 2005-10-29 2005-11-01 Karl Chen * v2.3.11 release * Miscellaneous project-internal changes (ChangeLog reformat, use PRAT, rename sf-www to www, auto-generate download page) 2005-10-29 Karl Chen * _refer_old_to_new: bugfixes * More robust gnuplot temp file cleanup code 2005-10-07 Karl Chen * Don't print "no longer current faculty" message - it's never up to date. * Fixed bug where course overall ratings for teaching effectiveness and worthwhileness were swapped. Bug reported by Mike Clancy * Correctly sort answers by orderinsurvey. Bug reported by Mike Clancy 2005-10-06 Karl Chen * Fixed bug when an instructor is listed for some klasses in a course but has no ratings for any of them (this happened for Seth Sanders in EE43). 2005-09-29 Karl Chen * Introduced error.log and moved errors output to access.log to error.log. If any exceptions thrown during output, log them to error.log, and don't save the cache file. 2005-09-28 Karl Chen * really solved temp file problem, I think. 2005-09-26 Karl Chen * v2.3.10 release 2005-09-20 Karl Chen * Show link to klass even if a class has TAs but not professors * Import script fixes. 2005-08-26 Karl Chen * import script fixes. 2005-08-17 Karl Chen * minor bug fixes. 2005-03-13 Karl Chen * opt-in changes 2005-03-12 Karl Chen * clarify [email] et al links 2005-02-26 Karl Chen * Better logging 2005-02-22 Karl Chen * Better automatic redirection from changed names 2005-02-14 Karl Chen * v2.3.9 release * Added uniqueness constraint to INSTRUCTOR_KLASS table to prevent instructor names showing up multiple times if raw data is duplicated multiple times. Database upgrade script. * Miscellaneous improvements 2005-02-12 Karl Chen * Fixed bug in locking code that allowed output cache to become corrupted due to two simultaneous accesses to the same temp file * Output from cache in 4096-byte blocks instead of all-at-once 2005-02-07 Karl Chen * v2.3.8 release * New course number format (to accommodate CS61BL-1) * Parsing fixes for new raw data format * Misc. bug fixes, mostly in maintenance scripts 2005-02-05 Karl Chen * Allow private viewing of all private data on page * Created new goodprofornot-admin-priv.cgi which allows private viewing but not administrative mode. Infrastructure changes to support this. 2005-01-19 Karl Chen * v2.3.7 release * Fixed MainIndex redirection loop bug 2005-01-18 Karl Chen * v2.3.6 release * Added Email feature to Administrative mode - main purpose is to send pages about a specific instructor with that instructor's ratings unhidden * Improved internationalization * Developer-visible: * Revamped OutputObject url* functions * Improved privacy infrastructure (i.e. can hide pages partially, and not only in admin mode) * New output functions * Nested requests * Page_title functions 2004-12-29 Karl Chen * Fixed GET vs POST issue * Fixed missing color for "?" confidence intervals * Misc changes & improvements 2004-12-24 Karl Chen * HTML tidying 2004-12-12 Karl Chen * v2.3.5 release * New CachedRelatedJoin class; cache related joins * output_Answer: Revamped to display a lot more aggregate statistics (subject to privacy, of course) * output_Answer: Highlight the entire row for relevant info instead of bolding 2004-11-24 Karl Chen * v2.3.3 release * Better cache consistency * Automatically clear the cache for associated pages that may have changed * Improved admin buttons - "clear cache" button which is disabled when not needed; added "clear cache deeply" button * Miscellaneous bug fixes 2004-11-22 Karl Chen * v2.3.2 release * Fixed HTML bug when instructor names have quotes * Improved instructor name detection * Added 95% confidence interval calculation; display this instead of standard deviation; if the value is >1.0, color it red * Added weighted std. dev. calculation (for Overall Ratings) 2004-11-14 Karl Chen * v2.3.1 release * Added interactive console (& CLIRequest) * Added automatic expiry of caches (CGI_CACHE_MAX_AGE) * When deleting a cache file, also delete the cache file for the page's plot page * Added aging of older ratings when calculating means (e.g. RATING_AGING_COEFFICIENT = 0.9) 2004-11-08 Karl Chen * Bug fix in output_Answer 2004-11-08 Karl Chen * Fixed some problems found by pychecker & RATS * Administrative mode made more secure 2004-11-08 Karl Chen * New admin scripts, old version archival, web site update 2004-11-08 Karl Chen * Documentation updates 2004-11-07 Karl Chen * v2.3.0 release * Finalized rename of CourseSurvey -> GoodProfOrNot * Repository directory structure cleanup 2004-11-06 Karl Chen * v2.2.1 release * Improved administrative-mode editing * Centralized logging 2004-11-01 Karl Chen * v2.2.0 release 2004-10-27 Karl Chen * Added instructor.private * Ability to hide selected GSI ratings 2004-10-10 Karl Chen * v2.1.2 release * Added instructor.comment_url * Misc bugfixes 2004-09-28 Karl Chen * v2.1.1 release * Misc bugfixes 2004-09-24 Karl Chen * v2.1.0.1 release 2004-09-01 Karl Chen * Misc. improvements & bug-fixes 2004-08-15 Karl Chen * v2.1.0 release * mod_python support. A lot of code reorg to separate object state from output state (i.e. multithreading support) * Better caching * Improved entry interface 2004-08-12 Karl Chen * v2.0.15 release * Automatically redirect unambiguous URLs unambiguously missing letter in coursenumber (e.g. EE20 -> EE20N) * Add support for reading (s)html and outputting it off of the goodprofornot path (e.g. http://hkn.mu/student/CourseSurvey/foo.shtml); reorganized (s)html support (better caching) 2004-08-11 Karl Chen * v2.0.14 release * Bug-fix in gnuplot output * Bug-fix in html table headers * Bug-fix in html sorting for InstructorList, CourseList * Bug-fixes in various import scripts * Now tracks whether a course is still taught; prerequisites * Addition to 'course' schema: 'current', 'prerequisites' * New catalog import script * New 'edit_klass_change_course.py' script 2004-07-24 Karl Chen * v2.0.13 release 2004-07-20 Karl Chen * Added html javascript sorting -- very nifty! 2004-07-20 Karl Chen * Cleaned up css 2004-07-15 Karl Chen * v2.0.11 release * Replaced UnsafeNamedTemporaryFile backwards-compatibility hack with copy of tempfile.py from python2.3; use mkstemp and explicit os.unlink -- solves temp file bug 2004-07-09 Karl Chen * v2.0.10 release (first non-beta 2.0-series release) * Big reorganization of internal code as well as utility scripts * Searching features * Better administrative interface * Advanced email address obscuring (javascript + noscript fall-back) * Validated HTML 4.0 * Many miscellaneous improvements & bug-fixes 2004-07-08 Karl Chen * v2.0.9-beta release 2004-07-05 Karl Chen * v2.0.8-beta release 2004-07-02 Karl Chen * v2.0.6-beta release 2004-07-01 Karl Chen * v2.0.5-beta release 2004-06-30 Karl Chen * v2.0.2-beta release 2004-06-30 Karl Chen * v2.0.1-alpha release 2004-06-22 Karl Chen * Database changes: - Created database tables 'department', 'division', 'season' (no longer hardcoded to Berkeley EECS) - More Question columns (no longer hardcoded in specific_questions.py) - Renamed 'evaluationanswer' to 'answer' - Renamed 'evaluatedclass' to 'klass' - Changed instructorteam tables to per-table intermediate table (see schema) - Optimizations to remove sorts previously done in python - Other database schema changes for SQLObject. * Requires database upgrade (upgrade_database_2.0.py) 2004-06-17 Karl Chen * Migrated from custom object-relational mapper (db_base.py) to SQLObject 0.6 2004-05-11 Karl Chen * v1.7.1 release (last pre-2.0 release) 2004-05-11 Karl Chen * Add compatibility layer so goodprofornot works with python2.2 again (copied gettext.py from python2.3) 2004-05-05 Karl Chen * v1.7.0 release 2004-05-04 Karl Chen * Hide database password from cgitb output 2004-05-04 Karl Chen * Generalized some previously Berkeley-specific notions 2004-05-04 Karl Chen * Move site-specific and url-settings to /etc/goodprofornot/config.py; new module site_settings.py reads them. Better packaged and documented. 2004-04-28 Karl Chen * v1.6.4 release 2004-04-28 Karl Chen * Internationalization support. French translation started 2004-04-28 Karl Chen * Abstract some site-specific settings into output_settings.py 2004-04-23 Karl Chen * v1.6.3 release 2004-04-23 Karl Chen * Emit 404 instead of 200 for "error" pages (main motivation is to make Google stop spidering Error pages) 2004-04-23 Karl Chen * Better handling of inconsistent databases (collect errors and print message at end, instead of throwing exception) 2004-03-28 Karl Chen * v1.6.2 release 2004-03-27 Karl Chen * Improved caching: recover from broken cache files; use a temporary file; lock the cache file 2004-03-25 Karl Chen * Improved caching: don't cache all objects; specifically not Evaluationanswers 2004-03-24 Karl Chen * v1.6.1 release 2004-03-24 Karl Chen * Implement disk caching for CGI output 2004-03-24 Karl Chen * Disambiguate professors by first name, if necessary 2004-03-15 Karl Chen * v1.5.0 release 2004-03-13 Karl Chen * New intuitive URL scheme for dynamic pages 2004-03-11 Karl Chen * v1.3.4 release 2004-03-10 Karl Chen * Bug fixes and misc. improvements 2004-02-23 Karl Chen * v1.3.2 release 2004-02-23 Karl Chen * Bug fixes 2003-12-14 Karl Chen * v1.3.1 release 2003-12-12 Karl Chen * Recreated website using pure Docutils and CSS (no ht2html) 2003-11-30 Karl Chen * Named project 'GoodProfOrNot'. Released at http://goodprofornot.sourceforge.net under GPL. Created web site. 2003-11-17 Karl Chen * v1.3.0 release 2003-11-09 Karl Chen * Plot aggregate statistics (at /stats/) 2003-11-04 Karl Chen * Output logic overhaul 2003-11-04 Karl Chen * Changed 'course.level' from varchar(24) to tinyint and separated 'Undergraduate' into LD UG, UD UG. Requires running scripts/upgrade_database_r873.py 2003-10-20 Karl Chen * v1.2.0 release 2003-10-17 Karl Chen * 2003-10-19 - added plots 2003-10-17 Karl Chen * Added bars in course,instructor lists. Rewrote bar API 2003-10-16 Karl Chen * Greatly improved efficiency by looking up relational objects lazily (merged in changes from BOINC; refactored to db_base.py so we only have to maintain 1 file now) 2003-10-13 Karl Chen * Added newsgroups 2003-09-15 Karl Chen * Import scripts 2003-07-24 Karl Chen * v1.1.0 release