paul@6 | 1 | Introduction
|
paul@6 | 2 | ------------
|
paul@6 | 3 |
|
paul@6 | 4 | The EventAggregator macro for MoinMoin can be used to display event calendars
|
paul@6 | 5 | or listings which obtain their data from pages belonging to specific
|
paul@253 | 6 | categories (such as CategoryEvents) or from remote event sources. The start
|
paul@253 | 7 | and end dates are read from the page describing each event, and the calendar
|
paul@253 | 8 | is automatically filled out with the details of each event, colouring each
|
paul@253 | 9 | event period in a specially generated colour. Maps showing event locations are
|
paul@253 | 10 | also supported, given the availability of appropriate map images and location
|
paul@253 | 11 | information.
|
paul@6 | 12 |
|
paul@44 | 13 | The EventAggregatorSummary action can be used to provide iCalendar and RSS
|
paul@44 | 14 | summaries of event data based on pages belonging to specific categories, as
|
paul@44 | 15 | described above. The category, start and end parameters are read directly from
|
paul@44 | 16 | the request as URL or form parameters: these restrict the extent of each
|
paul@44 | 17 | generated summary.
|
paul@10 | 18 |
|
paul@47 | 19 | The EventAggregatorNewEvent action can be used to conveniently create new
|
paul@47 | 20 | event pages, displaying a simple form which can be filled out in order to
|
paul@47 | 21 | provide elementary event details such as the event title or summary, the
|
paul@47 | 22 | categories to which the page will be assigned, and the start and end dates of
|
paul@47 | 23 | the event.
|
paul@47 | 24 |
|
paul@88 | 25 | The eventfeed script can be used to import events from RSS feeds, inserting
|
paul@88 | 26 | new pages into a Wiki.
|
paul@88 | 27 |
|
paul@80 | 28 | Important Notices
|
paul@80 | 29 | -----------------
|
paul@80 | 30 |
|
paul@349 | 31 | In release 0.10, the EventAggregatorSupport module has been converted into a
|
paul@349 | 32 | package. Upon upgrading, it may be necessary to locate the source and compiled
|
paul@349 | 33 | module files (EventAggregatorSupport.py and EventAggregatorSupport.pyc) and
|
paul@349 | 34 | remove them. Otherwise, these files may disrupt the functioning of the newly-
|
paul@349 | 35 | installed software.
|
paul@349 | 36 |
|
paul@277 | 37 | In release 0.9, much of the common support code has been moved to the
|
paul@277 | 38 | MoinSupport distribution, thus introducing that distribution as a dependency
|
paul@277 | 39 | which must be installed for EventAggregator to work. See the documentation
|
paul@277 | 40 | regarding dependencies for further details.
|
paul@277 | 41 |
|
paul@320 | 42 | Release 0.8.4 fixes time zone offset calculations for time regimes west of the
|
paul@320 | 43 | prime meridian.
|
paul@320 | 44 |
|
paul@287 | 45 | Release 0.8.3 fixes end dates in events aggregated from remote iCalendar
|
paul@287 | 46 | sources.
|
paul@287 | 47 |
|
paul@234 | 48 | Release 0.7.1 restores MoinMoin 1.9.x compatibility which was accidentally
|
paul@234 | 49 | lost in the 0.7 release.
|
paul@234 | 50 |
|
paul@148 | 51 | Release 0.6.2 fixes various bugs in HTML production done by the actions. It is
|
paul@153 | 52 | strongly recommended to upgrade from earlier versions to this or a later
|
paul@153 | 53 | release.
|
paul@137 | 54 |
|
paul@148 | 55 | In release 0.6.2, support for MoinMoin 1.5.x has been dropped. Since usage of
|
paul@117 | 56 | the Xapian search software is practically a necessary part of deploying this
|
paul@117 | 57 | solution, and yet Xapian only became integrated with MoinMoin from version 1.6
|
paul@117 | 58 | onwards, few deployments should have involved MoinMoin 1.5.x.
|
paul@117 | 59 |
|
paul@102 | 60 | In release 0.6, support for event times has been introduced. Due to the
|
paul@102 | 61 | complicated nature of times, time zones, time regimes, and so on, the
|
paul@102 | 62 | behaviour of the software may change in future versions to support common
|
paul@102 | 63 | use-cases in a more convenient fashion. Please be aware that implicitly chosen
|
paul@102 | 64 | or generated time or time zone information may change for events, particularly
|
paul@106 | 65 | those whose times are ambiguous or ill-defined. It is highly recommended that
|
paul@106 | 66 | the pytz library be installed - see the documentation regarding dependencies
|
paul@106 | 67 | for more information.
|
paul@102 | 68 |
|
paul@80 | 69 | In release 0.5, the "download this calendar" and "subscribe to this calendar"
|
paul@80 | 70 | links have been fixed to return only events within the specified period and to
|
paul@80 | 71 | work with day- and month-relative calendars. Users who have bookmarks in their
|
paul@80 | 72 | Web browser or feed reader should replace these bookmarks by visiting the
|
paul@88 | 73 | bookmarked page and acquiring new versions of these links, once
|
paul@88 | 74 | EventAggregator has been upgraded.
|
paul@80 | 75 |
|
paul@6 | 76 | Installation
|
paul@6 | 77 | ------------
|
paul@6 | 78 |
|
paul@90 | 79 | To install the support library and MoinMoin-related scripts, consider using
|
paul@144 | 80 | the moinsetup tool. See the "Recommended Software" section below for more
|
paul@144 | 81 | information.
|
paul@144 | 82 |
|
paul@144 | 83 | With moinsetup and a suitable configuration file, the installation is done as
|
paul@144 | 84 | follows with $EADIR referring to the EventAggregator distribution directory
|
paul@144 | 85 | containing this README.txt file:
|
paul@10 | 86 |
|
paul@247 | 87 | python moinsetup.py -f moinsetup.cfg -m install_extension_package $EADIR
|
paul@247 | 88 | python moinsetup.py -f moinsetup.cfg -m install_actions $EADIR/actions
|
paul@247 | 89 | python moinsetup.py -f moinsetup.cfg -m install_macros $EADIR/macros
|
paul@342 | 90 | python moinsetup.py -f moinsetup.cfg -m install_parsers $EADIR/parsers
|
paul@247 | 91 | python moinsetup.py -f moinsetup.cfg -m install_theme_resources $EADIR
|
paul@247 | 92 | python moinsetup.py -f moinsetup.cfg -m edit_theme_stylesheet screen.css event-aggregator.css
|
paul@247 | 93 | python moinsetup.py -f moinsetup.cfg -m edit_theme_stylesheet print.css event-aggregator.css
|
paul@247 | 94 | python moinsetup.py -f moinsetup.cfg -m edit_theme_stylesheet print.css event-aggregator-print.css
|
paul@10 | 95 |
|
paul@144 | 96 | The first command above uses the setup.py script provided as follows:
|
paul@10 | 97 |
|
paul@10 | 98 | python setup.py install --prefix=path-to-moin-prefix
|
paul@10 | 99 |
|
paul@342 | 100 | The second, third and fourth commands install the actions, macros and parsers
|
paul@342 | 101 | respectively.
|
paul@6 | 102 |
|
paul@342 | 103 | The fifth command installs the theme resources in the available theme
|
paul@144 | 104 | directories.
|
paul@10 | 105 |
|
paul@144 | 106 | The remaining commands activate the styles provided by EventAggregator by
|
paul@144 | 107 | editing the screen.css and print.css files which are typically provided by
|
paul@144 | 108 | themes. These commands add imports of the following form to the theme
|
paul@144 | 109 | stylesheets:
|
paul@10 | 110 |
|
paul@10 | 111 | @import "event-aggregator.css";
|
paul@10 | 112 |
|
paul@345 | 113 | Additional Installation Tasks
|
paul@345 | 114 | -----------------------------
|
paul@345 | 115 |
|
paul@345 | 116 | See the "Dependencies" section below for details of the software featured in
|
paul@345 | 117 | this section.
|
paul@238 | 118 |
|
paul@345 | 119 | EventAggregator depends on MoinSupport having been installed. This is because
|
paul@345 | 120 | a lot of useful functionality common to a number of MoinMoin extensions now
|
paul@345 | 121 | resides in the MoinSupport distribution.
|
paul@345 | 122 |
|
paul@345 | 123 | The following command can be run with $MSDIR referring to the MoinSupport
|
paul@345 | 124 | distribution directory:
|
paul@345 | 125 |
|
paul@345 | 126 | python moinsetup.py -f moinsetup.cfg -m install_extension_package $MSDIR
|
paul@345 | 127 |
|
paul@345 | 128 | To support iCalendar summary production for calendars as well as the
|
paul@345 | 129 | capability of aggregating iCalendar format event sources, the vContent
|
paul@345 | 130 | software needs to be obtained and installed.
|
paul@238 | 131 |
|
paul@238 | 132 | The following command can be run with $VCDIR referring to the vContent
|
paul@238 | 133 | distribution directory:
|
paul@238 | 134 |
|
paul@247 | 135 | python moinsetup.py -f moinsetup.cfg -m install_extension_package $VCDIR
|
paul@238 | 136 |
|
paul@345 | 137 | In each case, the install_extension_package method merely runs the setup.py
|
paul@345 | 138 | script provided by the software concerned, installing the software under the
|
paul@345 | 139 | configured installation "prefix".
|
paul@238 | 140 |
|
paul@27 | 141 | Useful Pages
|
paul@27 | 142 | ------------
|
paul@27 | 143 |
|
paul@27 | 144 | The pages directory contains a selection of useful pages using a syntax
|
paul@27 | 145 | appropriate for use with MoinMoin 1.6 or later. These pages can be created
|
paul@144 | 146 | through the Wiki and their contents copied in from each of the files. An
|
paul@144 | 147 | easier installation method is to issue the following commands:
|
paul@144 | 148 |
|
paul@247 | 149 | python moinsetup.py -f moinsetup.cfg -m make_page_package $EADIR/pages pages.zip
|
paul@247 | 150 | python moinsetup.py -f moinsetup.cfg -m install_page_package pages.zip
|
paul@144 | 151 |
|
paul@144 | 152 | You may need to switch user in order to have sufficient privileges to copy the
|
paul@238 | 153 | page package into the Wiki. For example:
|
paul@238 | 154 |
|
paul@247 | 155 | sudo -u www-data python moinsetup.py -f moinsetup.cfg -m install_page_package pages.zip
|
paul@27 | 156 |
|
paul@203 | 157 | Resource Pages
|
paul@203 | 158 | --------------
|
paul@203 | 159 |
|
paul@203 | 160 | For the map view, some resource pages are provided with EventAggregator.
|
paul@203 | 161 | Unlike the help pages which are most likely to be left unedited, the resource
|
paul@203 | 162 | pages should be modified and updated with additional map and place details.
|
paul@203 | 163 | Consequently, upgrading these pages is not necessarily desirable when new
|
paul@203 | 164 | releases of EventAggregator are made available, and thus these pages are kept
|
paul@203 | 165 | separate from the help pages.
|
paul@203 | 166 |
|
paul@203 | 167 | To install the resource pages, use the following commands:
|
paul@203 | 168 |
|
paul@247 | 169 | python moinsetup.py -f moinsetup.cfg -m make_page_package $EADIR/resource_pages resource_pages.zip
|
paul@247 | 170 | python moinsetup.py -f moinsetup.cfg -m install_page_package resource_pages.zip
|
paul@203 | 171 |
|
paul@203 | 172 | You may need to switch user in order to have sufficient privileges to copy the
|
paul@238 | 173 | page package into the Wiki. For example:
|
paul@238 | 174 |
|
paul@247 | 175 | sudo -u www-data python moinsetup.py -f moinsetup.cfg -m install_page_package resource_pages.zip
|
paul@203 | 176 |
|
paul@10 | 177 | Using the Macro
|
paul@10 | 178 | ---------------
|
paul@10 | 179 |
|
paul@117 | 180 | It should now be possible to edit pages and use the macro as follows:
|
paul@6 | 181 |
|
paul@20 | 182 | <<EventAggregator(CategoryEvents)>>
|
paul@6 | 183 |
|
paul@6 | 184 | As arguments to the macro, you must indicate a comma-separated list of
|
paul@6 | 185 | categories to be inspected for event data. For example:
|
paul@6 | 186 |
|
paul@20 | 187 | <<EventAggregator(CategoryEvents,CategoryTraining)>>
|
paul@6 | 188 |
|
paul@6 | 189 | By default, this should display a calendar in a collection of tables, one for
|
paul@6 | 190 | each month containing events. To show a collection of month-by-month listings,
|
paul@6 | 191 | use the 'mode' argument as follows:
|
paul@6 | 192 |
|
paul@20 | 193 | <<EventAggregator(CategoryEvents,mode=list)>>
|
paul@20 | 194 |
|
paul@253 | 195 | To use remote event sources instead of categories in the Wiki, specify each
|
paul@253 | 196 | source using explicit source parameters:
|
paul@253 | 197 |
|
paul@253 | 198 | <<EventAggregator(source=GriCal,source=FSFE)>>
|
paul@253 | 199 |
|
paul@253 | 200 | This will aggregate events from the GriCal and FSFE calendars residing on
|
paul@253 | 201 | remote Web sites, provided that these sources have been defined in the event
|
paul@253 | 202 | sources dictionary.
|
paul@253 | 203 |
|
paul@330 | 204 | To use a search pattern, use the search parameter and specify the search
|
paul@330 | 205 | criteria just as you would when using the standard search macros:
|
paul@330 | 206 |
|
paul@330 | 207 | <<EventAggregator(search="title:MonthCalendarEvents/")>>
|
paul@330 | 208 |
|
paul@330 | 209 | This will aggregate events found on subpages of the MonthCalendarEvents page.
|
paul@330 | 210 |
|
paul@20 | 211 | See pages/HelpOnEventAggregator for more detailed information.
|
paul@6 | 212 |
|
paul@47 | 213 | Using the Actions
|
paul@47 | 214 | -----------------
|
paul@6 | 215 |
|
paul@20 | 216 | To obtain an iCalendar summary, the EventAggregatorSummary action can be
|
paul@20 | 217 | selected from the actions menu on any page. Alternatively, a collection of
|
paul@24 | 218 | parameters can be specified in the URL of any Wiki page.
|
paul@6 | 219 |
|
paul@24 | 220 | See pages/HelpOnEventAggregatorSummary for more detailed information.
|
paul@6 | 221 |
|
paul@47 | 222 | To create new events using the EventAggregatorNewEvent action, the appropriate
|
paul@47 | 223 | menu entry can be selected in the actions menu. Alternatively, clicking on a
|
paul@47 | 224 | day number in a calendar view will invoke the action and pre-fill the form
|
paul@47 | 225 | with the start date set to the selected day from the calendar.
|
paul@47 | 226 |
|
paul@47 | 227 | See pages/HelpOnEventAggregatorNewEvent for more detailed information.
|
paul@47 | 228 |
|
paul@88 | 229 | Running the Scripts
|
paul@88 | 230 | -------------------
|
paul@88 | 231 |
|
paul@238 | 232 | Note that remote event sources are likely to be more useful than the scripts
|
paul@238 | 233 | described below. However, these scripts may be useful for certain kinds of
|
paul@238 | 234 | application.
|
paul@238 | 235 |
|
paul@88 | 236 | To import events from an RSS feed, the eventfeed script integrated with the
|
paul@88 | 237 | moin program can be used as follows:
|
paul@88 | 238 |
|
paul@88 | 239 | moin --config-dir=path-to-wiki --wiki-url=example.com/ \
|
paul@88 | 240 | import eventfeed --url=url-of-events-feed
|
paul@88 | 241 |
|
paul@88 | 242 | Thus, to import events from the FSFE events RSS feed, the following command
|
paul@88 | 243 | could be used:
|
paul@88 | 244 |
|
paul@88 | 245 | moin --config-dir=path-to-wiki --wiki-url=example.com/ \
|
paul@88 | 246 | import eventfeed --url=http://www.fsfe.org/events/events.en.rss
|
paul@88 | 247 |
|
paul@88 | 248 | If this command is being used with sudo, make sure to use the -u option so
|
paul@88 | 249 | that the script can operate as the appropriate user. For example:
|
paul@88 | 250 |
|
paul@88 | 251 | sudo -u www-data moin --config-dir=path-to-wiki --wiki-url=example.com/ \
|
paul@88 | 252 | import eventfeed --url=http://www.fsfe.org/events/events.en.rss
|
paul@88 | 253 |
|
paul@88 | 254 | It may also be necessary to set PYTHONPATH directly before the moin program
|
paul@88 | 255 | name and even to explicitly use the path to that program.
|
paul@88 | 256 |
|
paul@6 | 257 | Recommended Software
|
paul@6 | 258 | --------------------
|
paul@6 | 259 |
|
paul@249 | 260 | See the "Dependencies" section below for essential software.
|
paul@249 | 261 |
|
paul@144 | 262 | The moinsetup tool is recommended for installation since it aims to support
|
paul@144 | 263 | all versions of MoinMoin that are supported for use with this software.
|
paul@144 | 264 |
|
paul@144 | 265 | See the following page for information on moinsetup:
|
paul@144 | 266 |
|
paul@144 | 267 | http://moinmo.in/ScriptMarket/moinsetup
|
paul@144 | 268 |
|
paul@6 | 269 | The Xapian search software is highly recommended, if not technically
|
paul@6 | 270 | essential, for the acceptable performance of the EventAggregator macro since
|
paul@6 | 271 | the macro makes use of search routines in MoinMoin that can dominate the time
|
paul@6 | 272 | spent processing requests.
|
paul@6 | 273 |
|
paul@6 | 274 | See the following page for information on Xapian and MoinMoin:
|
paul@6 | 275 |
|
paul@6 | 276 | http://moinmo.in/HelpOnXapian
|
paul@6 | 277 |
|
paul@338 | 278 | Troubleshooting: Categories
|
paul@338 | 279 | ---------------------------
|
paul@6 | 280 |
|
paul@6 | 281 | See here for a bug related to category recognition:
|
paul@6 | 282 |
|
paul@6 | 283 | http://moinmo.in/MoinMoinBugs/1.7TemplatesNotAppearing
|
paul@6 | 284 |
|
paul@6 | 285 | This affects installations where migrations between versions have occurred,
|
paul@6 | 286 | yet the Wiki configuration retains old regular expression details.
|
paul@6 | 287 |
|
paul@338 | 288 | Troubleshooting: Xapian
|
paul@338 | 289 | -----------------------
|
paul@338 | 290 |
|
paul@208 | 291 | Xapian can be troublesome, especially where file permissions are concerned: if
|
paul@208 | 292 | something acquires a lock on the index (for example, the moin script, possibly
|
paul@208 | 293 | invoked via moinsetup) nothing else will be able to modify the index, and this
|
paul@208 | 294 | may cause pages to become detached from their categories in the index.
|
paul@208 | 295 |
|
paul@208 | 296 | To resolve index issues, try and run the following command (with the appropriate
|
paul@208 | 297 | options):
|
paul@208 | 298 |
|
paul@208 | 299 | moin --config-dir=path-to-wiki --wiki-url=example.com/ index build --mode=rebuild
|
paul@208 | 300 |
|
paul@208 | 301 | It may be necessary to manually remove locks. This can be done as follows:
|
paul@208 | 302 |
|
paul@342 | 303 | find path-to-wiki/data/cache/xapian -depth -name "*lock" -type d -exec rmdir '{}' \;
|
paul@208 | 304 |
|
paul@338 | 305 | Troubleshooting: Plain Text Formatting
|
paul@338 | 306 | --------------------------------------
|
paul@338 | 307 |
|
paul@338 | 308 | Plain text formatting is used in certain places in EventAggregator, but the
|
paul@338 | 309 | formatter is rather broken in MoinMoin 1.8 and in previous releases. See the
|
paul@338 | 310 | following page for a summary:
|
paul@338 | 311 |
|
paul@338 | 312 | http://moinmo.in/FeatureRequests/TextPlainFormatterRewrite
|
paul@338 | 313 |
|
paul@338 | 314 | A patch is supplied in the patches directory to fix link formatting in the
|
paul@338 | 315 | plain text formatter, and once copied into the root directory of the MoinMoin
|
paul@338 | 316 | 1.8 sources it can be applied as follows:
|
paul@338 | 317 |
|
paul@338 | 318 | patch -p1 < patch-plain-text-link-formatting-1.8.diff
|
paul@338 | 319 |
|
paul@6 | 320 | Contact, Copyright and Licence Information
|
paul@6 | 321 | ------------------------------------------
|
paul@6 | 322 |
|
paul@10 | 323 | See the following Web pages for more information about this work:
|
paul@6 | 324 |
|
paul@6 | 325 | http://moinmo.in/MacroMarket/EventAggregator
|
paul@10 | 326 | http://moinmo.in/ActionMarket/EventAggregator
|
paul@6 | 327 |
|
paul@6 | 328 | The author can be contacted at the following e-mail address:
|
paul@6 | 329 |
|
paul@6 | 330 | paul@boddie.org.uk
|
paul@6 | 331 |
|
paul@6 | 332 | Copyright and licence information can be found in the docs directory - see
|
paul@6 | 333 | docs/COPYING.txt and docs/LICENCE.txt for more information.
|
paul@6 | 334 |
|
paul@106 | 335 | Dependencies
|
paul@106 | 336 | ------------
|
paul@106 | 337 |
|
paul@106 | 338 | EventAggregator has the following basic dependencies:
|
paul@106 | 339 |
|
paul@106 | 340 | Packages Release Information
|
paul@106 | 341 | -------- -------------------
|
paul@106 | 342 |
|
paul@394 | 343 | MoinSupport Tested with 0.5
|
paul@277 | 344 | Source: http://hgweb.boddie.org.uk/MoinSupport
|
paul@277 | 345 |
|
paul@385 | 346 | vContent Tested with 0.2.1
|
paul@345 | 347 | Source: http://hgweb.boddie.org.uk/vContent
|
paul@345 | 348 |
|
paul@106 | 349 | pytz Tested with 2007k (specifically 2007k-0ubuntu2)
|
paul@106 | 350 | Source: http://pytz.sourceforge.net/
|
paul@106 | 351 |
|
paul@106 | 352 | If time zone handling is not required, pytz need not be installed, but this
|
paul@106 | 353 | may result in iCalendar summaries being produced that provide insufficient
|
paul@106 | 354 | time zone information for the correct interpretation of time information in
|
paul@106 | 355 | those summaries. Thus, it is highly recommended that pytz be installed.
|
paul@106 | 356 |
|
paul@388 | 357 | New in EventAggregator 0.10.3 (Changes since EventAggregator 0.10.2)
|
paul@388 | 358 | --------------------------------------------------------------------
|
paul@388 | 359 |
|
paul@388 | 360 | * Added support for remote iCalendar event sources using particular content
|
paul@388 | 361 | types instead of text/calendar.
|
paul@395 | 362 | * Added aggregation and improved formatting of iCalendar pages and regions.
|
paul@398 | 363 | * Re-added the "pages" dependency to the macro, since its absence causes the
|
paul@398 | 364 | non-script-based navigation to fail to update the calendar.
|
paul@388 | 365 |
|
paul@364 | 366 | New in EventAggregator 0.10.2 (Changes since EventAggregator 0.10.1)
|
paul@364 | 367 | --------------------------------------------------------------------
|
paul@364 | 368 |
|
paul@364 | 369 | * Fixed iCalendar event writing.
|
paul@367 | 370 | * Added an iCalendar parser.
|
paul@368 | 371 | * Accessibility improvements: introduced table captions for the display of
|
paul@373 | 372 | table headings; added link titles; supported the opening of pop-up menus
|
paul@373 | 373 | and map labels using links and link targets.
|
paul@380 | 374 | * Fixed event parser formatting of wiki text from page-based events.
|
paul@381 | 375 | * Removed the "pages" dependency from the macro, suggested by Marcel Häfner,
|
paul@381 | 376 | permitting cached page content to be used where appropriate.
|
paul@364 | 377 |
|
paul@360 | 378 | New in EventAggregator 0.10.1 (Changes since EventAggregator 0.10)
|
paul@360 | 379 | ------------------------------------------------------------------
|
paul@360 | 380 |
|
paul@360 | 381 | * Properly removed the EventAggregatorSupport.py file from the project.
|
paul@360 | 382 | * Fixed event region formatting when an alternative write function is
|
paul@360 | 383 | provided.
|
paul@360 | 384 |
|
paul@349 | 385 | New in EventAggregator 0.10 (Changes since EventAggregator 0.9)
|
paul@349 | 386 | ---------------------------------------------------------------
|
paul@345 | 387 |
|
paul@349 | 388 | * Fixed quoting of special date parameters in navigation URLs and download
|
paul@349 | 389 | dialogue URLs.
|
paul@352 | 390 | * Fixed the resolution of whole calendar download/subscription links in day
|
paul@352 | 391 | views.
|
paul@355 | 392 | * Added support for showing events that occupy instants in time in day
|
paul@355 | 393 | views, consolidating times in the timescale used for each day and showing
|
paul@355 | 394 | the times specified for the events concerned for each common point in
|
paul@355 | 395 | time.
|
paul@355 | 396 | * Adjusted labels of navigation links to indicate multiple days where a day
|
paul@355 | 397 | view shows many days.
|
paul@345 | 398 | * Changed iCalendar serialisation to use the vContent library, making
|
paul@345 | 399 | vContent a requirement of this software.
|
paul@349 | 400 | * Refactored the library, replacing the support module with a package
|
paul@349 | 401 | containing separate modules for the different library activities.
|
paul@345 | 402 |
|
paul@320 | 403 | New in EventAggregator 0.9 (Changes since EventAggregator 0.8.5)
|
paul@277 | 404 | ----------------------------------------------------------------
|
paul@277 | 405 |
|
paul@277 | 406 | * Moved much of the support library to the MoinSupport distribution, thus
|
paul@277 | 407 | introducing a dependency on that software.
|
paul@294 | 408 | * Added support for in-page updates of the event views so that navigation
|
paul@294 | 409 | between days, months and different views does not cause a full-page
|
paul@294 | 410 | reload if JavaScript is enabled.
|
paul@294 | 411 | * Tidied up the new event form, showing a list of known locations for
|
paul@294 | 412 | selection, making the event location affect the chosen time zone/regime if
|
paul@294 | 413 | the location is known, and hiding latitude and longitude fields unless an
|
paul@294 | 414 | unknown location is to be specified.
|
paul@294 | 415 | * The EventLocationsDict or equivalent can now retain time zone/regime
|
paul@294 | 416 | information about each location.
|
paul@312 | 417 | * Added an event parser that can format special page regions in different
|
paul@323 | 418 | ways and support links directly to such regions.
|
paul@323 | 419 | * Permitted Wiki markup in the description and location metadata.
|
paul@330 | 420 | * Added support for search patterns so that event pages can be obtained
|
paul@330 | 421 | through arbitrary searches and do not have to belong to particular
|
paul@330 | 422 | categories.
|
paul@337 | 423 | * Encoded map location pop-up headings as plain text in order to handle
|
paul@337 | 424 | locations specified using Wiki formatting.
|
paul@342 | 425 | * Permitted events with map references but without location details to be
|
paul@342 | 426 | positioned in maps.
|
paul@339 | 427 | * Improved navigation between months and days, and between view modes for
|
paul@339 | 428 | both levels of calendar view.
|
paul@277 | 429 |
|
paul@320 | 430 | New in EventAggregator 0.8.5 (Changes since EventAggregator 0.8.4)
|
paul@320 | 431 | ------------------------------------------------------------------
|
paul@320 | 432 |
|
paul@320 | 433 | * Fixed iCalendar quoting for newlines in calendar data.
|
paul@320 | 434 |
|
paul@320 | 435 | New in EventAggregator 0.8.4 (Changes since EventAggregator 0.8.3)
|
paul@320 | 436 | ------------------------------------------------------------------
|
paul@320 | 437 |
|
paul@320 | 438 | * The calculation of hour and minute offsets for time regimes west of the
|
paul@320 | 439 | prime meridian was not producing correct results since the day offset
|
paul@320 | 440 | provided by pytz was not being considered in the calculation. Such regimes
|
paul@320 | 441 | should now produce the expected (hour, minute) offsets such that events
|
paul@320 | 442 | employing these regimes can be positioned correctly on a UTC timescale.
|
paul@320 | 443 |
|
paul@287 | 444 | New in EventAggregator 0.8.3 (Changes since EventAggregator 0.8.2)
|
paul@287 | 445 | ------------------------------------------------------------------
|
paul@287 | 446 |
|
paul@287 | 447 | * The end dates defined in events from remote iCalendar event sources were
|
paul@287 | 448 | not correctly adjusted when aggregating such events. Thus, events with a
|
paul@287 | 449 | day-level resolution will have appeared one day longer in calendars and
|
paul@287 | 450 | summaries than was actually specified in the source data. This adjustment
|
paul@287 | 451 | has now been introduced.
|
paul@287 | 452 |
|
paul@265 | 453 | New in EventAggregator 0.8.2 (Changes since EventAggregator 0.8.1)
|
paul@265 | 454 | ------------------------------------------------------------------
|
paul@265 | 455 |
|
paul@265 | 456 | * Improved the error handling around remote event source data retrieval,
|
paul@265 | 457 | introducing handling of missing resources and unsupported content types.
|
paul@275 | 458 | * Improved the presentation of download and subscription links, adding
|
paul@275 | 459 | webcal: URL links for suitable calendar clients.
|
paul@265 | 460 |
|
paul@255 | 461 | New in EventAggregator 0.8.1 (Changes since EventAggregator 0.8)
|
paul@255 | 462 | ----------------------------------------------------------------
|
paul@255 | 463 |
|
paul@255 | 464 | * Changed the EventAggregatorNewEvent action to not save new event pages
|
paul@255 | 465 | directly, instead invoking the textual page editor for the page so that
|
paul@255 | 466 | the page text can be changed and the page saved without a redundant
|
paul@255 | 467 | initial version being created. Cancelling the editing operation will also
|
paul@255 | 468 | avoid the creation of unwanted event pages.
|
paul@256 | 469 | * Added a page break before each map in the print view, adding a page break
|
paul@256 | 470 | after each map to fully isolate unpositioned events on separate pages.
|
paul@260 | 471 | * Fixed errors where empty location fields were given in vCalendar events.
|
paul@260 | 472 | * Reintroduced event sorting in the list and table views.
|
paul@262 | 473 | * Fixed location positioning where some events employing an unknown location
|
paul@262 | 474 | do not position that location whereas others do (using "geo" information).
|
paul@255 | 475 |
|
paul@236 | 476 | New in EventAggregator 0.8 (Changes since EventAggregator 0.7.1)
|
paul@236 | 477 | ----------------------------------------------------------------
|
paul@230 | 478 |
|
paul@230 | 479 | * Added remote event aggregation with support for iCalendar event sources.
|
paul@230 | 480 | * Added support for explicit latitude and longitude event properties.
|
paul@230 | 481 | * Added support for decimal latitude and longitude values.
|
paul@238 | 482 | * Introduced in-page updates of the new event form, avoiding full-page
|
paul@238 | 483 | reloads when editing the initial details of an event.
|
paul@230 | 484 |
|
paul@234 | 485 | New in EventAggregator 0.7.1 (Changes since EventAggregator 0.7)
|
paul@234 | 486 | ----------------------------------------------------------------
|
paul@234 | 487 |
|
paul@234 | 488 | * Restored MoinMoin 1.9.x compatibility around WikiDict access.
|
paul@234 | 489 |
|
paul@180 | 490 | New in EventAggregator 0.7 (Changes since EventAggregator 0.6.4)
|
paul@153 | 491 | ----------------------------------------------------------------
|
paul@153 | 492 |
|
paul@153 | 493 | * Added a day view which shows events ordered according to their timespans
|
paul@153 | 494 | within each day.
|
paul@192 | 495 | * Added a map view which shows events according to their location. This
|
paul@192 | 496 | requires map images to be uploaded to a designated page, and map locations
|
paul@192 | 497 | to be defined on a designated page.
|
paul@153 | 498 | * Switched to using moinsetup for the installation procedure.
|
paul@180 | 499 | * Introduced formatting of description, location and topic information in
|
paul@180 | 500 | the list and table views and in RSS format summaries.
|
paul@214 | 501 | * Introduced support for days as calendar period units in the list view.
|
paul@214 | 502 | * Added "Help" and "New event" links alongside the calendar view controls,
|
paul@214 | 503 | giving the download and view controls centre alignment.
|
paul@180 | 504 |
|
paul@180 | 505 | New in EventAggregator 0.6.4 (Changes since EventAggregator 0.6.3)
|
paul@180 | 506 | ------------------------------------------------------------------
|
paul@180 | 507 |
|
paul@180 | 508 | * Fixed pop-up element labels where one limit of a calendar has not been
|
paul@180 | 509 | specified.
|
paul@180 | 510 |
|
paul@180 | 511 | New in EventAggregator 0.6.3 (Changes since EventAggregator 0.6.2)
|
paul@180 | 512 | ------------------------------------------------------------------
|
paul@180 | 513 |
|
paul@180 | 514 | * Fixed category membership parsing.
|
paul@180 | 515 | * Fixed open-ended calendars and their pop-up summaries.
|
paul@153 | 516 |
|
paul@148 | 517 | New in EventAggregator 0.6.2 (Changes since EventAggregator 0.6.1)
|
paul@148 | 518 | ------------------------------------------------------------------
|
paul@109 | 519 |
|
paul@136 | 520 | * Fixed HTML encoding in the forms generated by the actions.
|
paul@117 | 521 | * Dropped MoinMoin 1.5.x support, since Xapian search is not available for
|
paul@117 | 522 | that version and is virtually a necessity.
|
paul@109 | 523 | * Fixed form handling to be compatible with MoinMoin 1.9.x, since that
|
paul@109 | 524 | particular release series introduced an incompatible request API that
|
paul@109 | 525 | breaks existing code (no longer providing access to query string
|
paul@109 | 526 | parameters via the form attribute, and only returning single values
|
paul@109 | 527 | unless the new getlist method on form-like objects is used).
|
paul@110 | 528 | * Fixed the direct writing of requests to be compatible with MoinMoin 1.9.
|
paul@113 | 529 | * Added pop-up elements showing information about the calendar/view
|
paul@113 | 530 | resources available for download or subscription.
|
paul@113 | 531 | * Added download/subscription links which open the form associated with the
|
paul@113 | 532 | EventAggregatorSummary action and permit editing of the supplied values.
|
paul@109 | 533 |
|
paul@137 | 534 | New in EventAggregator 0.6.1 (Changes since EventAggregator 0.6)
|
paul@137 | 535 | ----------------------------------------------------------------
|
paul@137 | 536 |
|
paul@137 | 537 | * Fixed HTML encoding in the forms generated by the actions.
|
paul@137 | 538 |
|
paul@82 | 539 | New in EventAggregator 0.6 (Changes since EventAggregator 0.5)
|
paul@82 | 540 | --------------------------------------------------------------
|
paul@82 | 541 |
|
paul@82 | 542 | * Added print stylesheet rules in order to improve the printed versions of
|
paul@82 | 543 | calendars.
|
paul@84 | 544 | * Fixed definition list parsing to handle completely empty definitions
|
paul@84 | 545 | (having no space after the "::" token) which previously captured text from
|
paul@84 | 546 | subsequent lines, and merely empty definitions which previously would have
|
paul@84 | 547 | produced a single empty value for definitions providing lists of values.
|
paul@88 | 548 | * Added a script to import events from RSS feeds.
|
paul@88 | 549 | * Added support for a link entry in event pages, although this does not
|
paul@88 | 550 | replace the link information provided by the RSS and iCalendar summaries.
|
paul@89 | 551 | * Fixed the production of the summaries when pages with no available edit
|
paul@89 | 552 | log information are to be included.
|
paul@102 | 553 | * Added support for event times and time zone/regime information. This is
|
paul@102 | 554 | subject to revision.
|
paul@82 | 555 |
|
paul@65 | 556 | New in EventAggregator 0.5 (Changes since EventAggregator 0.4)
|
paul@65 | 557 | --------------------------------------------------------------
|
paul@65 | 558 |
|
paul@65 | 559 | * Changed the EventAggregatorNewEvent action to substitute only the stated
|
paul@65 | 560 | title, not the full page title, into the new page.
|
paul@66 | 561 | * Changed event colouring to use the event summary as the basis for
|
paul@66 | 562 | calculating the colour used in the calendar. This means that related
|
paul@66 | 563 | events can be coloured identically if their summaries are the same.
|
paul@71 | 564 | * Added support for multiple events on a single event page.
|
paul@71 | 565 | * Introduced EventPage and Event abstractions in order to better support new
|
paul@71 | 566 | features.
|
paul@78 | 567 | * Introduced basic and advanced modes to the EventAggregatorNewEvent action,
|
paul@78 | 568 | along with date swapping to correct cases where the start is given as
|
paul@78 | 569 | being later than the end of an event.
|
paul@77 | 570 | * Fixed the "download this calendar" and "subscribe to this calendar" links
|
paul@77 | 571 | by propagating the "raw" calendar start and end values within the macro.
|
paul@77 | 572 | These links should yield events only within the period defined for a
|
paul@77 | 573 | calendar, not all events in a calendar's categories. This fix also ensures
|
paul@77 | 574 | that the links for year- and month-relative calendars are correct, rather
|
paul@77 | 575 | than the specific links generated previously. Thus, a "this year's events"
|
paul@77 | 576 | link will now continue to produce a resource with the current year's
|
paul@77 | 577 | events, rather than the events from the year when the link was generated.
|
paul@65 | 578 |
|
paul@51 | 579 | New in EventAggregator 0.4 (Changes since EventAggregator 0.3)
|
paul@51 | 580 | --------------------------------------------------------------
|
paul@51 | 581 |
|
paul@51 | 582 | * Added a table view in the macro, using special topic/category styles to
|
paul@51 | 583 | provide background colours for events.
|
paul@56 | 584 | * Added category propagation from calendars to the new event form provided
|
paul@56 | 585 | by the EventAggregatorNewEvent action.
|
paul@56 | 586 | * Added a default template parameter to the macro, employed by the new event
|
paul@56 | 587 | form.
|
paul@56 | 588 | * Added a parent page parameter which is used by the new event form to place
|
paul@56 | 589 | new event pages in a particular location specific to a calendar or
|
paul@56 | 590 | collection of events.
|
paul@56 | 591 | * Improved the presentation of pop-up event information elements.
|
paul@59 | 592 | * Added navigation between display modes (calendar, list and table views).
|
paul@59 | 593 | * Ensured that calendar settings are retained when creating new events for a
|
paul@59 | 594 | calendar.
|
paul@59 | 595 | * Fixed various problems with events not having topics.
|
paul@51 | 596 |
|
paul@45 | 597 | New in EventAggregator 0.3 (Changes since EventAggregator 0.2)
|
paul@45 | 598 | --------------------------------------------------------------
|
paul@45 | 599 |
|
paul@45 | 600 | * Added a parameter to the EventAggregatorSummary action to select the
|
paul@45 | 601 | source of event descriptions for the RSS feed.
|
paul@45 | 602 | * Updated the documentation to cover the RSS support.
|
paul@47 | 603 | * Added the EventAggregatorNewEvent action.
|
paul@45 | 604 |
|
paul@41 | 605 | New in EventAggregator 0.2 (Changes since EventAggregator 0.1)
|
paul@41 | 606 | --------------------------------------------------------------
|
paul@41 | 607 |
|
paul@41 | 608 | * Improved the calendar view in the macro to use the fixed table layout
|
paul@41 | 609 | algorithm and to provide cells spanning potentially many columns for
|
paul@41 | 610 | continuing events. Introduced pop-up elements in order to show truncated
|
paul@41 | 611 | event names.
|
paul@41 | 612 | * Made the "weekly" naming policy the default in the calendar view.
|
paul@41 | 613 | * Improved the list view in the macro.
|
paul@41 | 614 | * Introduced RSS 2.0 feed support.
|
paul@41 | 615 | * Improved the help pages.
|
paul@41 | 616 |
|
paul@6 | 617 | Release Procedures
|
paul@6 | 618 | ------------------
|
paul@6 | 619 |
|
paul@356 | 620 | Update the EventAggregatorSupport __version__ attribute and the setup.py
|
paul@18 | 621 | version details.
|
paul@6 | 622 | Change the version number and package filename/directory in the documentation.
|
paul@51 | 623 | Update the setup.py and PKG-INFO files.
|
paul@6 | 624 | Update the release notes (see above).
|
paul@6 | 625 | Tag, export.
|
paul@6 | 626 | Archive, upload.
|
paul@10 | 627 | Update the MacroMarket and ActionMarket (see above for the URLs).
|