Maintenance release with no user-visible changes (documentation reference updates, small code style updates).
Maintenance release changing only the URL of the package homepage, which old domain now hosts very different kind of content.
We started the rapport package back in 2011 but never thought of
that the version number should ever exceed ONE - because we are shy
guys. Now, almost 3 years later, so much stuff have changes in the
package, that time has come for a major version bump. Most important
updates since the birth of the package:
- dropped dependecy packages (
evaluateandascii) and implemented custom solutions for our custom needs - some part of the package were out-sourced to the
panderpackage in the name of modularity panderbecame more popular compared torapport- new syntax for template headers with YAML syntax instead our custom solution
- new file extension (
rapportinstead oftpl) not to confuse new-comers - bunch of fiddles with naming conventions
- build a production-ready system on the top of the package at rapporter.net
- take part in Google Summer of Code 2013 increasing the number of available templates
Most recent changes since 0.51:
- helpers and statistical functions move to
rapportoolspackage - ditched the
rpprefix for all those (rp.max became max -- for those who load the package directly) - ditched
tplprefix for tempalte functions as was confusing and everyrapporttemplate specific function starts withrapportnow - changing dependencies to Imports instead of cluttering the global namespace
- code review and doc update
- new variables available for easy access of template metadata (rapport.data, rapport.template, rapport.inputs)
Please note that the functions can still be accessed by the old names to preserve backward-compatibility, but will be definitely removed later to keep the clutter in the namespace at a minimal level. So please be advised to update your functions if building on the top (or parts) of rapport.
Function name changes:
- tpl.find -> rapport.read
- tpl.tangle -> rapport.tangle
- tpl.list -> rapport.ls
- tpl.header -> rapport.header
- tpl.body -> rapport.body
- tpl.info -> rapport.info
- tpl.meta -> rapport.meta
- tpl.inputs -> rapport.inputs
- tpl.example -> rapport.example
- tpl.rerun -> rapport.rerun
- tpl.renew -> rapport.renew
- tpl.export -> rapport.export
- tpl.check -> rapport.check.template
- tpl.paths -> rapport.path
- tpl.paths.reset -> rapport.path.reset
- tpl.paths.add -> rapport.path.add
- tpl.paths.remove -> rapport.path.remove
Variable name changes inside of templates:
- rp.data -> rapport.data
Option name changes:
- tpl.file.name -> rapport.file.name
- tpl.file.path -> rapport.file.path
- tpl.user -> rapport.user
- rp.use.labels -> rapport.user.labels
- tpl.paths -> rapport.path
- rp.tags -> rapport.tags
- graph.reply -> rapport.graph.replay
Classes:
- rp.meta -> rapport.meta
- rp.inputs -> rapport.inputs
- matchable inputs do not use
match.argfor matching any more. Instead, a simple%in%with indexing is used, so exact match is required. valueattribute is not used to store values that you choose from -optionsattribute is used instead, withvalueholding the (default) value(s) from theoptionslist.- new attribute
allow_multiplewas introduced in matchable inputs. IfTRUE, it will allow one to match values fromoptionslist multiple times. Defaults toFALSE. - for factor matchable inputs, matching is not performed on factor levels, but on values (just like in character inputs).
Template header specification updates:
- Template header specification is rewritten. Custom cumbersome syntax is no more, and the header content is 100% pure YAML. See
?tpl.metaand?tpl.inputsfor details on new metadata and input specification. - Input specification relies on R class system, and the old one is deprecated (though kept for backwards compatibility). Only atomic vector classes are currently supported:
character,complex,integer,logical,numericandraw. - More robust
lengthchecks are manageable viaexactlyandmin/maxattributes. optioninputs are removed. You should usematchableattribute incharacterandfactorinputs instead. Multiple matches are now allowed.boolean,stringandnumberinputs are removed andlogical,characterandnumericare to be used instead, respectively.- Added
integerandrawinputs. - Fine-tune control over inputs is achieved via class-specific options that resemble native R object methods and/or attributes, e.g.
nlevelsfor factors, orncharfor character vectors.
Others changes:
- Added
yamlpackage to dependencies. tpl.inputsandtpl.metawill now perform validation of inputs and metadata, respectively. Warnings are issued if unsupported fields are found.dataRequiredmetadata attribute is deprecated. Dataset is required if the template contains non-standalone inputs (see?tpl.inputsfor details).
Bug fixes:
- Duplicate input names are not allowed in the templates.
is.emptynow returnsTRUEfor zero-length objects.
-
Removed
asciiandevaluatepackages and introducedpanderThis was a quite big change in the backend which resulted in some removed functions of prior version. For example
tpl.tangleis dropped temporarily and most of the custom options were moved topanderOptions()andevalsOptions()frompanderpackage. -
The repository was moved to Rapporter's organisation GH account from @aL3xa
New features:
- towards method/class-based reporting (issue #42)
Changes:
- removing most packages from 'Depends' and using NAMESPACE imports instead
- rearrange "templates" directory: subtemplates and internationalized templates goes to separate directories
Bug fixes:
- typos in templates
New features:
- New global options:
- to specify exported documents and generated images (dynamic) name and path
- to generate "portable" HTML files
- raw pandoc/asciidoc etc. outputs are also saved with appropriate extension
Changes:
- removing
makes.plotfunction - performance boost in
rp.prettyascii(rounding) tpl.exportreturns the generated document's filename- tweaks in
htest
Bug fixes:
- fixed: deadlinks in exported documents to Rapport homepage
- fixed: NULL-indexing bug in tpl.meta
This is a hotfix release:
- fixed .onLoad/windowsFont call error
- fixed #47 (#36) of custom RefClassField
- removed
RJSONIOdependency (just like:table.jsonfunction) - small documentation and CSS tweaks
New features:
- Introduced own
skewness()andkurtosis()functions to get rid ofmomentsdependency. - Option (default set to FALSE) to view generated plots without exporting (
replayPlot) - Same option let users resize generated (and saved) images on the fly while printing rapport classes and later exporting
Changes:
- Removed
momentsandlatticeExtrafrom package dependencies. - Updated demo
rapport()will now check for packages specified in the template header and throw error if something goes wrong while loading.tpl.examplenow usesreadlinesinstead of reading fromstdin(Windows and Eclipse/StatET bug)tpl.exportnow checks if specified backend is installed and throws an error if not.- Checking if a plot was generated in
evalsis done with the help ofreplayPlotinstead of file size checks (for OS independence).
Bug fixes:
- Windows path issue
- Windows default grDevice bug with checking if a plot was generated (by checking file size changes)
- Formatting issues with non-pandoc backends
Initial CRAN release.