jsreport

javascript based business reporting platform

LGPL-3.0 License

Downloads
350.1K
Stars
1.2K
Committers
17

Bot releases are visible (Hide)

jsreport - 2.5.0

Published by bjrmatos over 5 years ago

highlights of updates

general updates

  • we now log each extension's version at the startup
  • the Ace based editor of studio was replaced by Monaco, and all extensions were updated to support it
  • all extensions dependencies were updated to ensure that we don't use vulnerable packages, so npm audit now reports 0 vulnerabilities in most cases
  • update to Chrome 76.0.3803.0

core

  • fix bug in script manager that was preventing call the scripts's callback multiple times in parallel
  • fix not getting last log Rendering request x finished in request debug logs
  • fix parse templatingEngines.forkOptions.execArgv as array
  • fix Odata XML generation for _id fields
  • fix some errors about concurrent update validation
  • fix some errors with folders (when moving and resolving)

assets

  • the default allowedFiles pattern when allowLocalFilesAccess is enabled should be **/*.*
  • improved error message when asset not found

authentication

  • fix don't generate hash for string that is already hashed
  • fix don't getting focus on first field on NewUser modal

authorization

  • fix bug when readPermissions is eq null

browser-client

  • expose server error in reject

child-templates

  • add parallelLimit option to better control processing of child templates

chrome-pdf

  • chrome’s printBackground option should default to true when no specified (server side default)

cli

  • show real error message when MODULE_NOT_FOUND error happens during start

fs-store

  • fix some compaction and persistent operations issues
  • increase compactionInterval to 15s

handlebars

  • update handlebars to fix security issue

html-to-xlsx

  • fix special case with rowspan/colspan layout
  • allow text wrap if overflow is "auto"

import-export

  • importing does not refresh the page
  • add import/export context menu actions
  • add full import mode

pdf-utils

  • fix some issues with hidden span elements that were failing when some css was present in page
  • add ui to disable pdf utils operation
  • improve error message when pdfCreatePagesGroup, pdfAddPageItem is called with undefined
  • add pdfUtils methods to jsreport-proxy (pdfUtils.parse, pdfUtils.prepend, pdfUtils.append, pdfUtils.merge, pdfUtils.outlines)

reports

  • use options.reportName for file name and allow customize blobName

sample-template

  • add modal to create samples

scheduling

  • fix generating tasks after enabling a scheduling that has been disabled for some time

  • fix cloning schedule not getting values in chrome picker

scripts

  • add API to extend jsreport-proxy methods jsreport.scripts.addProxyMethods

studio

  • fix some ui issues with concurrent update validation
  • validate duplicated entity name when creating entity in studio
  • add "Run and undock preview" to toolbar
  • use monaco editor for the editor
  • add UI to display information about extensions
  • improved keyboard shortcuts on mac
jsreport - 2.4.0

Published by bjrmatos over 5 years ago

highlights of updates

general updates

  • all extensions were updated to not expose all options by default to the /api/extensions route, this prevents leaking some sensitive information to the browser. extensions now need to explicitly define what options they need to expose to the http api.
  • all extensions were updated to fix an issue with usage of deep merge object library. in some cases they were using a library that was not merging arrays correctly. (new version of node.extend.without.arrays)
  • all extensions which uses the studio and handle references to other entities now use the new EntityRefSelect, which it is a control designed for entities references with folders supports
  • all extensions dependencies were updated to ensure that we don't use vulnerable packages, so npm audit now reports 0 vulnerabilities in most cases
  • update to Chrome 73.0.3679.0

core

  • expose Request factory in jsreport instance
  • fix some condition in validation of reserved names of folders
  • fix validation of duplicated name and reserved name for folder when using upsert operations
  • add validation of duplicated human readable key prop (in most entities is the shortid field)
  • add fields (_id, shortid, creationDate, modificationDate) to entity types by default
  • show real error when require fails inside the sandbox of script
  • improve error message of timeout of scripts

assets

  • add more strict validation for allowAssetsLinkedToFiles (validation is done now also on server)

authentication

  • disable autocomplete for password fields in authentication forms. this prevents getting warnings in some security audit tools

chrome-pdf

  • extension now also exposes a new recipe chrome-image, which generates
    image from html

express

  • fix some logic to allow configuring secure cookies
  • req.context.http data is now generated for any route, not just when rendering
  • /api/extensions no longer returns all extensions options, now it needs that each extension define which properties should be exposed
  • omit password field of /api/settings route

html-to-xlsx

  • add new implementation that adds supports for different features (font-family, border-color, cell data types, formula, cell formats, conversion js trigger, insert table output into xlsx template)

import-export

  • fix show errors when importing zip
  • add option import into folder, which allows importing all the entities o zip inside a target directory

pdf-utils

  • support generating table of contents (TOC)
  • fix some issues when parsing group, items text across different OS

scheduling

  • clean pending task when the schedule gets disabled
  • running jobs should not update modificationDate of schedules

scripts

  • catch sync errors when trying to use jsreport-proxy document store

studio

  • fix some problems that was preventing having full folders support
  • add entity fuzzy finder (entity navigation modal) (ctrl + p)
  • save request logs outside of render request lifecycle and save it in intervals
  • fix error when template with header is deleted
  • add validation for concurrent save of entities

tags

  • update entity tree toolbar buttons to be inside menu

version-control

  • fix for folder support: persist folders changes first

xlsx

  • properly order legacyDrawingHF
jsreport - 2.3.0

Published by bjrmatos almost 6 years ago

add support for structuring jsreport entities into folders πŸŽ‰πŸŽ‰πŸŽ‰πŸ’Ό

entities in extensions were updated to support folders
https://jsreport.net/blog/introducing-folders

highlights of updates

  • assets - support binary assets, asset resolution now supports name paths {#asset /folder/folder2/asset}
  • authorization - permissions now take into account entity hierarchies and inherit permissions from parent folders when it is appropriate
  • child-templates - passing stringified objects is now supported, child template resolution now supports name paths {#child /folder/childTemplate}
  • chrome-pdf - added new strategy chrome-pool that reuses chrome instances for better performance
  • cli - support concurrent starting of jsreport keepAlive instances
  • core - sanitize and validate options right after loading config
  • debug - avoid crashes for requests without logs
  • express - add options to allow expose headers to jsreport scripts (not exposed by default)
  • fs-store - fix some issue with locks, and add support to represent folders hierarchies in file system
  • html-to-xlsx - fix more complex cases when using rowspan
  • import-export - import was adapted to restore folders hierarchies, and support legacy exports (exports that were created with previous versions in which folder entity was not implemented)
  • pdf-utils - add new option mergeWholeDocuments in operation that improves performance significantly, add support for merging static external pdfs
  • public-templates - fix internal bug when creating sharing token
  • reports - refresh studio tabs when it is active
  • resources - fix internal bug that was preventing templates to have resources
  • sample-template - update samples to be grouped and show a hierarchy with folders
  • scheduling - refresh studio tabs when it is active
  • scripts - fix exposing context values as top level properties of request, disallow throwing non errors and improve error message when it happens, fix don’t hang when Promise variable is defined at the top of scripts
  • studio - add support for showing folders in entity tree, drag and drop is supported to move entities between folders, add option requestLogEnabled to control if we should store request logs
  • template - template name resolution now supports name paths /folder/folder2/template1
  • version-control - limit diff feature just for smaller files, skip diff for big files and all binary files, list of changes in commit history and uncommitted changes now show path of entities
  • xlsx - add some fixes to support more cases of xlsx
  • updated to chrome 72

all extensions dependencies were updated to ensure that we don't use vulnerable packages, so npm audit now reports 0 vulnerabilities in most cases

jsreport - 2.2.0

Published by pofider about 6 years ago

  • pdf-utils - safer execution of merges and appends in the sandbox, propagating group helpers also to the nested rendering
  • fs-store crash safe writes for flat documents like
  • html-to-xlsx - make excel working in libreoffice
  • reports - automatic old reports cleanup
  • sample-template - fixed orders example
  • core - make config from env prior to the file even for nested props
  • chrome - new version 70
jsreport - 2.1.1

Published by bjrmatos over 6 years ago

  • upgrade to puppeteer version 1.5.0
  • core -> use deep clones in document store to avoid accidental documents edit (previously it was just shallow clone)
  • core -> support disabling extension by cli args or env var
  • fs-store -> deps updates to make it run with electron
  • fs-store -> syncModifications now disables files watch too when it is false
  • fs-store -> new option usePolling to decide if we should use polling or native os watching for the files watcher, defaults to true
  • fs-store -> fix bug which was causing unexpected updates to entities (use deep clones instead of shallow clones when applying changes)
  • fs-store -> do not write dedicated files (helpers.js, header.html, etc) if prop is not defined
  • fs-store -> deletes dedicated files (helpers.js, header.html, etc) for null set
  • support for running studio in dev mode just with particular extensions list (this means that now there is a new mode where studio will just compile particular extensions, not all)
  • html-to-xlsx -> don't throw on htmlEngine not set and instead use a default engine
  • express -> add new mountOnAppPath option to support mounting routes under appPath. this is useful when there is no proxy + url rewriting involved in user setup. mountOnAppPath config when true makes jsreport routes available with appPath as prefix
  • data -> modify template.data entity type definition to allow null, this fix a bug when data was unset from template and next render throw an error about data not being a valid object
  • chrome-pdf -> fix usage of scale option
jsreport - 2.1.0

Published by pofider over 6 years ago

  • nicer error messages in templating engines and scripts
  • fix for propagating helpers into chrome headers execution
  • hiding some props from odata to improve security
  • don't duplicate base tag
  • pdf utils can be now used without storing templates
  • fix for displaying request logs in studio
  • Chromium 68.0.3419.0
  • docker with authentication requires extensions_authentication_cookieSession_secret to be set
jsreport - 2.0.0

Published by pofider over 6 years ago

Major release

please read details here
https://jsreport.net/blog/jsreport-v2-released

jsreport - 2.0.0-beta

Published by pofider over 6 years ago

The first beta for the upcoming jsreport v2. See the announcement blog post.
https://jsreport.net/blog/jsreport-v2-beta

jsreport - 1.10.0

Published by pofider over 6 years ago

This release contains only bug fixes but also the bigger changes are in the full docker image.

Bug fixes

  • assets - automatic bom strip jsreport/jsreport-assets#21, propagate shared helpers to child templates jsreport/jsreport-assets#22
  • browser-client - new methods toObjectURL and to toBlob
  • scheduling - postpone scheduler start until jsreport is fully initialized
  • xlsx - fixed escaping jsreport/jsreport-xlsx#30

Docker changes

  • The full image now uses node 8 and includes also phantomjs2, chrome-pdf, pdf-utils and version-control
jsreport - 1.9.2

Published by pofider almost 7 years ago

  • critical hotfix of 1.9 adding phantom headers back #361
  • small fix in licensing and trial expiration dialog
jsreport - 1.9.1

Published by pofider almost 7 years ago

Change in the config files
The config files are now being applied in the following order (only one is applied):

  1. The config file specified using configFile option/arg/env
  2. The config file based on the NODE_ENV | JSREPORT_ENV with name dev|prod.config.json
  3. The config file with name jsreport.config.json

Using config files based on the NODE_ENV turned out to be error prone and confusing for many users and we decided to keep things simple and in the end default to single config file jsreport.config.json. This is also back compatible because the NODE_ENV config files are applied with priority.

United temporary files locations
jsreport now stores all temp files to temp/jsreport where sub folders typically reflect temp files of particular extensions. The files are no longer fragmented into several directories.

Many hotfixes

  • hotfix for rendering shortcut #356
  • fix for rowspan and colspan in html-to-xlsx recipe
  • fix docker-full wkhtmltopdf to support headers
  • support entity names with [] in fs store
  • limit sizes od output headers generated in debug extension
  • fixed import to mongo
  • fixed cloning for cloning phantom-pdf templates in studio
  • fixed setting cron in scheduler studio UI
  • fixed scripts ordering
  • fixed reformating feature in studio
  • escape = in xlsx recipe

See particular extension's release for details

jsreport - 1.8.2

Published by pofider about 7 years ago

  • fix jsreport hanging in "Not initialized" state when verifying enterprise license
jsreport - 1.8.1

Published by pofider about 7 years ago

  • smaller docker images
  • base tag extension
  • fixed importing of large assets
  • child templates support for multiple parameters
jsreport - 1.7.0

Published by pofider over 7 years ago

  • add authorizationServer options to authenticate with external authorization server. which enables single sign on support #274
  • enable authentication extension in executable 4142c3f #285
  • softly deprecate (with warnings) some logger options: providerName, logDirectory
  • introduce new logger options format to have complete control of output and level in logging #283
  • fix a bug where script workers are staying alive when using node < 5.8.0 pofider/node-script-manager#14
  • fix a bug when using global Handlebars object in jsreport executable #277
  • use cached license info also for negative responses
  • add UI to set custom margin in phantom-pdf recipe
  • fix flexbox issues for Safari, IE in studio jsreport/jsreport-studio#30
  • update cli to generate new logger options format
  • update dependencies in extensions
jsreport - 1.6.0

Published by pofider over 7 years ago

  • studio preview tab undocking - UI productivity improvement jsreport/jsreport-studio#7
  • scheduling ui improvements - Run now button jsreport/jsreport-scheduling#2 and visual cron editor jsreport/jsreport-scheduling#5
  • fop-pdf writes output to the debug log
  • xlsx support for complex paths jsreport/jsreport-xlsx#20
  • phantom-pdf recipe support complex margin settings jsreport/jsreport-phantom-pdf#17
  • jsreport-cli up doesn't start web server during rendering anymore
jsreport - 1.5.0

Published by pofider over 7 years ago

jsreport - 1.5.1

Published by pofider over 7 years ago

jsreport - 1.4.0

Published by pofider over 7 years ago

  • include jsreport-tags
  • replaced q with bluebird to speed up performance
jsreport - 1.3.3

Published by pofider over 7 years ago

  • fixed child templates data cloning
  • updated odata server
  • increased licensing timeout
jsreport - 1.3.2

Published by pofider almost 8 years ago

  • defaultPhantomjsVersion option for phantom-pdf recipe
  • fixed permission handing in import-export recipe
  • fixed default server.js file - correctly handling promise
  • fixed jsreport-extension-starter-kit