[xsl] [ANN] xmlroff 0.3.5

Subject: [xsl] [ANN] xmlroff 0.3.5
From: Tony Graham <Tony.Graham@xxxxxxx>
Date: Sat, 27 Aug 2005 10:50:30 +0100
 xmlroff (http://xmlroff.org/) is an open source XSL Formatter written in
 C. xmlroff 0.3.5 adds fo:external-graphic support to the GNOME Print backend.


Tony Graham.


Changes between 0.3.4 and 0.3.5

* fo:external-graphic works (but requires 'content-height' and
* Stopped removing 'fo:external-graphic' in libfo-compat.xsl (Tim Waugh)
* Able to build in separate directory (Matthew Daniel)
* Default 'auto' output format determines format from output file extension
* Added conformance section to documentation

Changes between 0.3.3 and 0.3.4

* Add '--format' parameter for PDF or PostScript output
* Reduced memory leakage
* Partially re-implemented fo:external-graphic support
* Corrected whitespace handling in libfo-compat.xsl (Tim Waugh)
* Corrected "url()" handling
* 86% symbol docs coverage

Changes between 0.3.2 and 0.3.3

* Added support for 'border', 'border-left', 'border-right',
  'border-top', 'border-bottom', 'border-style', 'border-width', and
  'border-color' properties (Julian Rosse)
* Removed border-related properties and 'padding' from libfo-compat.xsl
* Corrected whitespace handling in libfo-compat.xsl
* Added removal of more unsupported properties in libfo-compat.xsl
* Corrected drawing 'dashed', 'dotted', 'groove', and 'hidden' border
* Partially re-implemented fo:external-graphic support
* Build fixes to work with latest GCC (Tim Waugh)


2005-08-17  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* === Released 0.3.5 ===

	* docs/Makefile.am: Added conformance-body.xml to $(content_files).

	* libfo/fo-doc-gp.c: Restored clipping of layouts.

2005-08-16  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* NEWS: Updated for 0.3.5.

	* fo/fo-fo.c: Added some doc comments.

2005-08-14  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* Makefile.am: Added '$(srcdir)' to includes in $(INCLUDES) so can
	build in separate 'object directory'. (Matthew Daniel)

	* property/fo-property-role.c, property/fo-property-role.h:
	Updated to match latest spec-dump.

2005-07-30  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* xmlroff.fo: Added introductory paragraph.  Added 'auto' option
	for '--format'.

2005-07-29  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* libfo/fo-doc-gp.c: Added a comment.

2005-07-20  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* libfo-compat.xsl: Stopped removing fo:external-graphic. (Tim

2005-07-10  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* libfo/fo-doc-gp.c: Finally got external graphics working okay.

2005-07-09  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* libfo/fo-doc-gp.c: Added initial support for 'auto' output

	* INSTALL.in: Added explanation of result of 'xmlroff xmlroff.fo'.

	* README: Updated dependencies.

	* configure.in: Upped version to 0.3.5.

2005-07-08  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* === Released 0.3.4 ===

	* libfo-compat.xsl: Changed to removing all fo:external-graphic.
2005-07-07  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* NEWS: Updated for 0.3.4.

	* libfo/fo-libfo-context.c, libfo/fo-libfo-context.h: Added
	(unusable) SVG output format.

	* datatype/fo-uri-specification.c: Added some doc comments.

	* expr/fo-expr-eval.c: Stopped compiler error about return value
	from void function.

	* libfo/fo-doc-gp.c: Equating 'auto' format to 'pdf' for now.

2005-07-05  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* libfo/fo-doc-gp-private.h, libfo/fo-doc-gp.c: Added setting
	output format from FoLibfoContext.  Removed some testing code.

	* fo/fo-external-graphic.c: Stopped offsetting image by
	content-height when placing image.

	* expr/fo-expr-eval.c: Corrected handling of quoted URLs.

	* xmlroff.fo: Added '--format' option.

	* libfo-compat.xsl: Removed munging of URLs in 'src' attributes.

2005-06-27  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* expr/fo-expr-env.c: Removed 'url' from list of functions.

	* expr/fo-expr-eval.c, expr/fo-expr-eval.h: Added handling
	'url(...)' instead of treating as a function.

	* expr/fo-expr-func.c, datatype/fo-uri-specification.c,
	datatype/fo-uri-specification.h: Changed to use

	* libfo/fo-doc-gp-private.h, libfo/fo-doc-gp.c, libfo/fo-doc-gp.h:
	Trying to implement image rendering.

	* libfo/fo-libfo-context.c, libfo/fo-libfo-context.h: Added

	* libfo/fo-libfo-basic.c, libfo/fo-doc-private.h, libfo/fo-doc.c,
	libfo/fo-doc.h: Added a FoLibfoContext argument to

	* xmlroff.c: Added '-format' parameter for setting output file

	* libfo/Makefile.am, libfo-0.3.pc.in, configure.in, Makefile.am:
	Added dependency on GdkPixbuf for handling external graphics.

2005-06-13  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* result-to-fo.c: Removed a commented-out #include.

	* area/fo-area-table-cell.c: Added workaround for '-0' max_height

	* datatype/fo-integer.c: Added getting integer value from FoNumber
	datatype.  Really should be a fo_datatype_get_integer_value()

	* property/fo-property-src.c, property/fo-property-src.h:
	Whitespace and copyright year changes only.

	* libfo-compat.xsl: Added template to quote unquoted content of
	'url(...)' in 'src' properties.

2005-06-12  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* libfo-compat.xsl: Added 'background-image' to set of unsupported

	* libfo-compat.xsl: Fix for whitespace handling (Tim Waugh).

2005-05-03  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* property/fo-property-font-family.c, property/fo-property-id.c,
	libfo/fo-font-desc.c, property/fo-property-dominant-baseline.c,
	fo/fo-block-area.c, fo-context-util.c, result-to-fo.c: Fixed
	memory leaks.

	* property/fo-property-keep-with-next.c,
	property/fo-property-keep-together.c, datatype/fo-keep.h,
	datatype/fo-length-range.c, datatype/fo-length-range.h,
	fo/fo-table.c, area/fo-area-spanning-table-cell.c,
	area/fo-area-table-cell.c, area/fo-area-table-continuation.c,
	area/fo-area-table.c, datatype/fo-keep.c, area/fo-area-area.c:
	Changed FoKeep and FoLengthRange to use FoEnum enums.

	* configure.in: Upped version to 0.3.4.

2005-05-01  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* === Released 0.3.3 ===

	* NEWS: Updated for 0.3.3.

	* fo-context-util.c: Added a g_object_unref() to try to solve a
	memory leak.  No effect.

	* fo-object.c: Minor changes to fo_object_sprintf() and
	fo_object_debug_sprintf() messages.

	* libfo-compat.xsl: Removed border-related template rules since
	border shorthands now supported by xmlroff.

2005-04-25  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* expr/fo-expr-eval.c: Added handling 'border' property
	expressions with one to three tokens.  Reindented two functions.

	* libfo/fo-xsl-formatter.c: Corrected initial comment.

	* fo/fo-root.c: Forcing 'media-usage' value to 'paginate' since
	that's all that's supported.

	* property/fo-property-util.c: fo_property_util_resolve_wsc_enum()
	returns FoWsc, not individual component since its type can be

2005-04-07  Julian Rosse  <gnome@xxxxxxxxxxxxxxxxxxxxxxxx>

	* fo-context.c, fo-context.h, fo-context-private.h,
	fo-context-util.c, property/Makefile.am,
	property/fo-all-property.h, property/fo-property-border.c,
	Added code for 'border', 'border-left', 'border-right', 'border-top',
	and 'border-bottom' properties.

2005-03-31  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* libfo/fo-doc-gp.c: Added fo_doc_gp_do_callbacks(),
	fo_doc_gp_do_line_callbacks(), and fo_doc_gp_do_run_callbacks() to
	handle PangoXSL 'callback' attributes after GNOME Print has
	rendered the text of the layout.

	* fo/fo-root.c: Added fo_root_resolve_media_usage() to force
	acceptable 'media-usage' value.

	* fo/fo-fo.c, fo/fo-fo.h: Added FO_FO_ERROR_DATATYPE_REPLACE error

	* fo/fo-external-graphic.c: Commented out a g_assert_not_reached()
	since is reached by half-implemented graphics support.

	* expr/fo-expr-eval.c: Moved an fo_expr_context_push_stack() to
	stop warnings.

2005-03-20  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* datatype/fo-wsc.c: Allowed FoWsc components to be NULL.

2005-03-18  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* libfo-compat.xsl: Removed message about normalizing text nodes.

	* libfo-compat.xsl: Removed 'text()' template rule that did
	normalize-space() on all text.  It has been unneeded since
	addition of <xsl:preserve-space>.

2005-03-17  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* expr/fo-expr-eval.c: Partially completed evaluating
	width-style-color expressions.

	* property/fo-property-util.c: Added checking specific width and
	style enums when validating width and style.

	* libfo-compat.xsl: Added removal of many more unsupported

2005-03-16  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* README: Added note about compatibility and libfo-compat.xsl.

	* area-to-pdf.c: Corrected (hopefully) drawing of 'dash',
	'dotted', and 'groove' border styles.

	* fo-context-util.c (fo_context_util_border_resolve): Handling
	'hidden' style equivalent to 'none' (but will be different for

2005-03-15  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* libfo-compat.xsl: Added 'margin' to set of properties removed by

	* expr/fo-expr-eval.c: Moved a fo_expr_context_push_stack() to
	where it is needed.

	* libfo/fo-doc-gp.c (fo_doc_gp_setdash): Set segment count to zero
	when solid.

2005-03-11  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* configure.in: Zeroed interface age and binary age since FoObject

	* xmlroff.spec.in: Build fixes (Tim Waugh).

	* datatype/fo-tblr.c: Removed some unused includes.

	* property/fo-property-util.h, expr/fo-expr-eval.h,
	property/fo-property-util.c, expr/fo-expr-eval.c,
	datatype/Makefile.am, fo-all-datatype.h, datatype/fo-wsc.c,
	datatype/fo-wsc.h: Added FoWsc datatype for 'width-style-color'
	for 'border' shorthands.

2005-03-10  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* property/fo-property.c, datatype/fo-length-bp-ip-d.c,
	datatype/fo-length-conditional.c, datatype/fo-length-range.c,
	datatype/fo-length.c, datatype/fo-name.c, datatype/fo-number.c,
	datatype/fo-pcw.c, datatype/fo-percentage.c, datatype/fo-space.c,
	datatype/fo-string.c, datatype/fo-tblr.c, datatype/fo-unknown.c,
	datatype/fo-uri-specification.c, fo/fo-fo.c,
	datatype/fo-boolean.c, datatype/fo-char.c, datatype/fo-color.c,
	datatype/fo-enum.c, datatype/fo-error.c, datatype/fo-expression.c,
	datatype/fo-id.c, datatype/fo-integer.c, datatype/fo-keep.c,
	area/fo-area.c, fo-object.h, fo-node.c, fo-object.c, fo-token.c:
	Renamed FoObject.sprintf to print_sprintf to avoid problems when
	compiling with -D_FORTIFY_SOURCE=2.

	* fo-context.c, fo-context.h, fo-context-private.h,
	fo-context-util.c, property/Makefile.am,
	property/fo-all-property.h, property/fo-property-border-style.c,
	property/fo-property-border-width.h, property/fo-property-eval.c:
	Added 'border-style' and 'border-width' properties (Julian Rosse).

	* Makefile.am: Made XML data directory track the xmlroff version

	* libfo-compat.xsl: Rewrote message for '@height' template so
	message is correct no matter which attribute is being matched,
	making it easier to add more unsupported properties that will be

	* libfo-compat.xsl: Added xsl:preserve-space for all FOs with
	#PCDATA in their content model.  Removed 'padding' template since
	'padding' supported by xmlroff.  Added
	'fo:region-body/@region-name' template rule (Tim Waugh).

2005-03-06  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* expr/fo-expr-eval.c, expr/fo-expr-eval.h: Added
	fo_property_eval_border_style() for 'border-style' property.

2005-03-05  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* fo-context-util.c: fo_context_util_border_resolve(): Added
	resolving 'border-color' (Julian Rosse).

	* configure.in: Upped version to 0.3.3.

2005-03-03  Tony Graham  <tonygraham@xxxxxxxxxxxxxxxxxxxxx>

	* datatype/fo-pcw.c, datatype/fo-pcw.h, datatype/fo-tblr.c,
	datatype/fo-tblr.h: Made initial comments a bit more indicative of
	purpose of datatype.

Current Thread