Disclaimer: This message has been sent to multiple lists in spite of
keeping users and tech authors informed about the new features
available. I apologize if you receive multiple copies of this message


Hello once again !

After not few hours of really hard work I'm so excited to announce the
release of TracGViz 1.3.3 . This package (plugin) provides components
so that Trac may be integrated with Google Visualization API and other
technologies provided by Google (e.g. iGoogle gadgets). This means
that it puts together three great platforms
(Trac, iGoogle gadgets, and Google Visualization API) by providing
components so that Trac be able to use widgets and related
technologies provided by Google. Therefore :

- It allows to feed data managed by Trac to widgets based on Google
  Visualization API.
- It allows to embed iGoogle Gadgets in wiki pages using WikiFormatting.

I am sure that this version will be much more useful. In case
something wrong's been detected please create a ticket [1]_ including
all the relevant information.

This release incorporates data sources providing information about
files placed under version control. They have been tested with Trac
Mercurial connector (i.e. `hg`) and Subversion  (i.e. `svn`), but
other backends will be tested in the (near) future. We'd appreciate
that you test the current implementation by using different VCS (e.g.
`mtn`, `git`, ...). Since Trac's Version Control API has been used,
everything should be ok, but if you find out that something's wrong
then, please, let us know [1]_.

The other data sources incorporated in this release offer the data
gathered by custom reports defined using TracReports and TracQuery
language. In order to implement these features some architectural
changes had to be introduced. As a result, now developpers can
implement dynamic data sources having schemas that vary according to
some run-time values. To do all this, RPC handlers for version control
and TracReports have been implemented. Those components could be
included in TracXmlRpcPlugin as well.

Finally, the last major feature introduced is Macro Aliases. This
makes even easier to embed iGoogle gadgets in Trac wiki pages since
gadget URLs are hidden to the end-users, which employ instead a macro
name (i.e. alias) they are familiar with. If you want to know more,
please read the details below.

Until now there are about 230 downloads. This is great, and also means
that (possibly) some of you have found it useful. Feedback is welcomed
and we really appreciate to hear your suggestions, and success
histories, as well as to receive bug reports, and patches. For us it's
good to hear people saying : «This is wrong and I dont like it».
That's the only way to know what you really want and make things
better ;o).

Coming soon
==============

- Support for GViz API QL
- Functional tests
- reStructuredText encoder
- Perhaps there are no data sources left, but if you find one, will be
included ;o)
- More docs & tutorials ...
- more ... see CHANGES and TODO files for details ;)


Hope you all like it !

What's new in version 1.3.3
---------------------------

- New ! Since version 1.3.3 macro aliases are supported so that
  embedding iGoogle gadgets in wiki pages be even easier. Aliases are
  names of macros configured using `gadgets.aliases` option. They
  are shortcuts to use iGoogleGadget with a fixed gadget URL. For
  example, if the aforementioned option is set to
  `MotionChart=http://www.google.com/ig/modules/motionchart.xml`
  then the following snippets are equivalent (so users wont need to
  remember gadget URLs anymore but names they are familiar with ;).

    [[iGoogleGadget(url=http://www.google.com/ig/modules/motionchart.xml,
    _table_query_url=http://spreadsheets.google.com/tq?range=B3%3AG17&key=1234,
    _table_query_refresh_interval=5)]]

    [[iGoogleGadget(url=gadget:google:modules:motionchart,
    _table_query_url=[gviz:google:sheet:1234:B3-G17],
    _table_query_refresh_interval=5)]]

    [[MotionChart(_table_query_url=[gviz:google:sheet:1234:B3-G17],
    _table_query_refresh_interval=5)]]

- Aliases for Google's visualization gadgets are offered by default.

- TracLinks expressions are supported in `gadgets.aliases` config
  options used to define iGoogleGadget macro aliases.

- New ! GVizTicketList now lists the tickets created in a Trac
  environment together with their attributes. Custom fields, if
  available, are also included in separate columns. That's why the
  columns in the data tables returned as well as their order can
  change from time to time, depending upon the plugins enabled in the
  particular environment and other factors.

- New ! ReportRPC now provides an interface to Trac's report module
  via XML-RPC protocol. So far report execution is only supported for
  reports defined by using SQL and TracQuery syntax. This means that
  saved custom queries specified using URLs are not supported yet,
  but will be (hopefully) in a near future. In the mean time a
  `NotImplementedError` exception is raised.

- New ! GVizAvailableReports now lists available reports and their
  data, including report ID, title, description and the query string
  used to select the tickets to be included in each report.

- Important ! Architectural change. From now on Request objects
  can be supplied in to IGVizDataProvider.get_data_schema method.
  This change allows to implement more dynamic data providers
  since schemas can vary depending upon the run-time values provided
  for some parameters.

- New ! GVizReportProvider now offers the data included in custom Trac
  Reports defined by Trac users. This is a very dynamic data
  provider, and also the first example where schema can change
  depending upon the report specification.

- New ! VersionControlRPC now provides an interface to Trac's Version
  Control API via XML-RPC protocol. Therefore information about files
  in the project's repository and also about changesets is available
  using standard protocols. It is posible to list files and folders
  (`ls`) recursively with depth limit and filters written like
  UNIX filename patterns. File attributes (e.g. size, content type,
  ...), data about revisions (e.g. message, author, ...) in a given
  (time) interval, file and folder history, and full description of
  changes performed at a given revision, are some of the features
  supported so far. Looking forward for further useful data to
  be published ! This feature was «tested» using Mercurial (`hg`)
  SCM and Subversion (`svn`) VCS, but the code *SHOULD* work as
  long as connectors compliant with Trac's Version Control API be used.
  Otherwise, please let me know.

- New ! GVizSourceFiles now offers information about individual
  files and those located in a folder. This data source supports filters
  (i.e. UNIX filename patterns), and recursive lookup with optional
  depth value. It is also possible to get the data for an specific
  revision. The results are mostly file attributes (e.g. size,
  extension, content type ...), but the actual values depend upon
  the capabilities supported by the specific repository connector in
  use.

- New ! GVizSourceFileHistory now makes available the modifications
  performed on  a group of files during a given time interval.
  Boundary values may be either datetime values or revision
  identifiers (supported by the specific repository connector).
  Clients'll get back detailed information about the changes performed
  on the given files in the different revisions together with the
  file's attributes at that specific time.
  This data source supports filters (i.e. UNIX filename
  patterns) as well as recursive lookup with optional depth value.
  Multiple datetime formats are supported as usual.

- New ! GVizChangesetDetails now provides a detailed report
  containing all the individual changes comitted at
  once onto the repository and recorded in separate changesets. It
  is possible to specify multiple changeset identifiers (supported by
  the specific repository connector) (and | or) time intervals.
  Boundary values may be either datetime values or changeset
  identifiers.

- New ! GVizChangesets now provides meta-data describing the
  different changesets committed to the repository related to a
  Trac environment (i.e. revision ID, messages, author, and date). It
  is possible to limit the results by specifying a time interval.
  Boundary values may be either datetime values or changeset
  identifiers.

- All the data providers interacting with the repository have been
  «tested» using the connector for Mercurial SCM (i.e. `hg`). In this
  case there are a few open issues that seem to be related with the
  lack of support in TracMercurial for `copy` events (but it's not a
  definitive conclusion). The current implementation *SHOULD* work
  with other connectors compatible with Trac's Version Control API,
  but THERE IS NO WARRANTY OF ANY KIND if you use another VCS.
  However if your connector is not causing any trouble then you the
  use of the aforementionned data sources *SHOULD NOT* cause any
  damage to both your environment and your repository. Further tests
  will be performed in the future but there's no clear schedule.
  You could be the first one to test them. Suggestions, patches and
  further feedback is welcome in order to overcome the actual
  limitations.

- Added api.IHashLibrary interface so that plugins and extensions can
  contribute with other secure hash, message digest and checksum
  algorithms in order to compute `sig` field in GViz API responses.

- All the code needed to support secure hash algorithms provided by
  `hashlib` module can be found from now on in class `stdhash.HashLib`.
  It supports the following methods : `sha1`, `sha224`, `sha256`,
  `sha384`, `sha512`, and `md5`. Additional algorithms may also be
  available depending upon the OpenSSL library that Python uses on
  your platform.

- All the code needed to support checksum algorithms provided by
  `zlib` module can be found from now on in class `stdhash.ZLibChecksum`.
  It supports the following methods : `adler32`, `crc32`

- Minor adjustments to adapt support for `sig` parameter to the
  recent introduction of `IHashLibrary` interface.

- Bug fixed: Formerly `sig` value was included in GViz API response
  only if both, the hash method was setup and the `sig` parameter was
  set in the request. From now on only the first condition has to
  be met in order to send the hash value back to the client.

- Bug fixed: Minor bug while displaying instances of `datetime`
  using plain text encoders.

- Support in `DataTable.SingleValueToJS` for automatic
  conversion of instances of `xmlrpclib.DateTime` and `int` values
  (POSTFIX timestamp) into instances of `datetime`. This allows to
  supply such values in columns having types `date`, `datetime`, and
  `timeofday` (not possible with gviz_api 1.0).

- Support in `DataTable.SingleValueToJS` for automatic
  conversion of unicode strings using utf-8 encoding. This allows to
  supply such strings in columns having `string` type (not possible
  with gviz_api 1.0).

- Module `rpc` has been added to group all RPC handlers offered
  by `TracGViz` package.

- Documentation added to highlight the use of
  `timeline.ticket_show_details` option in `trac.ini` in order to
  retrieve all events related to ticket changes (e.g. attachments).

- Bug fixed: TimelineRPC doesnt fail when filter definitions
  provided by instances of ITimelineEventProvider interface contain
  a third (i.e. `checked`) element. It also handles unicode
  characters appropriately.

- Few optimizations and refactorings (e.g. unnecessary imports have
  been removed) ... bah!


Acknowledgements
======================

- Trac devs
- Google devs

Keep up the good work !

Useful links
===============

.. [1] Report an issue
        
(https://opensvn.csie.org/traccgi/swlcu/newticket?component=plugin_trac_gviz)

.. [2] Trac integration with Google Visualization API
         (https://opensvn.csie.org/traccgi/swlcu/wiki/En/Devel/TracGViz)

.. [3] TracGViz 1.3.2 @ PyPI
         (http://pypi.python.org/pypi/TracGViz/1.3.2)

.. [4] Direct download link
         
(http://pypi.python.org/packages/2.5/T/TracGViz/TracGViz-1.3.2-py2.5.egg#md5=aa9af20d5ee2d98c16706eef14c94430)

.. [5] Using TracLinks expressions to embed iGoogle gadgets
         
(https://opensvn.csie.org/traccgi/swlcu/wiki/En/Devel/TracGViz/TracLinks)

-- 
Regards,

Olemis.

Blog ES: http://simelo-es.blogspot.com/
Blog EN: http://simelo-en.blogspot.com/

Featured article:

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"iGoogle Developer Forum" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/Google-Gadgets-API?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to