Edgewall Software

Changes between Version 16 and Version 17 of TracTicketsCustomTimeFields


Ignore:
Timestamp:
Apr 15, 2010, 11:57:22 AM (14 years ago)
Author:
hoff.st@…
Comment:

added extensive note on more details and basically how ticket data is handled

Legend:

Unmodified
Added
Removed
Modified
  • TracTicketsCustomTimeFields

    v16 v17  
    1010Praise to the flexible, modularized software design of Trac developers!
    1111
     12But now at least basic knowledge on how ticket data is handled inside Trac is needed.[[BR]]
     13(I found not much hints so had to study the code and initially did most things wrong. A multiple dozen not working or buggy local code revisions later, after discussion in #python, etc. I decided on the implementation detailed below. Please discuss, if you know better, I'm still a Python beginner.)
     14
    1215 * extend ''ticket.model'', ''ticket.web_ui'', ''util.datefmt'' and ''ticket/templates/ticket.html'' to
    13   * allow for reading unix time stamp values from db table ''ticket_custom''
    14   * convert unix time stamp values to localized time string
     16  * allow for reading POSIX microsecond time stamps from db table ''ticket_custom''
     17   * stored there as string for full compatibility with current custom fields implementation
     18   * convert to datetime.datetime values and go on using that values internally like is done for core time values ''time'' and ''changetime''
     19  * prepare time field display in ticket view (ticket.html)
     20   * convert datetime.datetime time stamps to localized time strings
     21   * add single quote arround strings read from db, i.e. left from former string based date field definitions
     22   * add time format hint for input form fields
    1523  * parse user input and consolidate different flavors of time stamps
    16   * write back unix time stamp to db
    17   * send out properly formatted notification
     24   * initially done with help of ''mxDateTime.Parser''
     25   * prepared for internal fall back to datetime based parser logic (still to be done) like is done for pytz with some basic internal logic
     26  * write back POSIX microsecond time stamps to db
     27  * take care for data used to send out properly formatted notification
     28   * patched version of [th:wiki:AnnouncerPlugin AnnouncerPlugin] for now
     29   * still unsure on patching Trac Ticket Notifications itself, since it looks like almost dead code (sorry, but Announcer is years ahead) and Announcer is already officially attempting to replace Trac Ticket Notifications (see below)
    1830
    1931=== Related Trac Plugins ===
     
    2335
    2436=== Status of Development ===
    25 Currently doing bug-fixes on my own. Assume to come out with some clean patches soon. I've setup [http://bitbucket.org/hasienda/shelf/ my place at bitbucket.org] recently, that'll make collaboration via a Mercurial repository easier than via Sourceforge.net.
     37No longer bug-fixing here and there, but doing a fresh and hopefully clean new implementation as detailed above. Assume to come out with some patches soon. I've setup [http://bitbucket.org/hasienda/shelf/ my place at bitbucket.org] recently, that'll make collaboration via a Mercurial repository easier than via Sourceforge.net.
    2638
    27 Code was published but removed later from Mercurial repository (see ''custom-time'' branch) at
     39Code of former implementation was published but removed later from Mercurial repository (see ''custom-time'' branch) at
    2840 http://traccustom-time.hg.sourceforge.net:8000/hgroot/traccustom-time/traccustom-time
    2941because I re-based on a clone of rblank's Mercurial repository with SVN changes up to trac SVN changeset r9443 and moved changes to Mercurial patch queue, and there is no sane way to push to repository (just volatile changesets), will not dare to push again before substantial clearing with core developers is reached, however patch files will get published somehow (starting with #9209)
     
    4052 * fixed: Server internal exception turned out to be caused by different versions of trac installed in /usr and /usr/local on my test system interfering on build time
    4153Problems on ticket change/preview
    42  * move to microsecond timestamp causes invalid dates because of faulty calculations
     54 * fixed: move to microsecond timestamp caused a mess with calculations (added '* 10E07' instead of '* 10E06' and the like)
    4355
    4456==== Making ''mxDateTime.Parser'' an option ====