This page contains information about changes to the PowerBI Visual Tools (pbiviz).
- Treated renderingEvents issue as an error when certification-audit and certification-fix are used.
- Switched to a new webpack plugin.
- Added rendering events to the visual templates.
- Updated packages.
- Fixed missing validation for
authorobject in pbiviz.json. Theauthorobject withnameandemailfields is now required. - Updated packages.
- Changed source map generation to
eval-source-map. - Fixed load source map error.
- Updated packages.
- Fixed issue with missing
lib/*files in latest versions. - Updated packages
- BREAKING CHANGE: Removed Node.js polyfills from webpack configuration for improved security and reduced bundle size. Node.js modules (crypto, buffer, stream, etc.) are no longer automatically available in the browser environment.
- Removed browserify polyfill packages from dependencies (assert, buffer, crypto-browserify, console-browserify, constants-browserify, domain-browser, events, https-browserify, os-browserify, path-browserify, process, punycode, querystring-es3, readable-stream, stream-browserify, stream-http, string_decoder, timers-browserify, tty-browserify, url, util, vm-browserify, browserify-zlib)
- Action Required: Review your visual code for Node.js module usage and remove them or update to browser-compatible alternatives
- Changed source map generation to
inline-source-map. It includes source maps into the end of file instead of separate one. It's required because of latest changes in Power BI that forbids loading.mapfiles. - Updated packages
- Fixed issue with
process/browsernot being resolved correctly in webpack config
- Fixed bug with source maps generation (now using
eval-source-mapinstead ofsource-map)
- Added
--certification-auditflag topbiviz packagecommand. It audits the visual package for possible certification issues. - Added
--certification-fixflag topbiviz packagecommand. It fixes found certification issues in the visual package. Please carefully test the built package to ensure its functionality is not broken after that.
- Introduced pbiviz.js support. This feature allows generate configuration dynamically using benefits of JavaScript. It allows you to easily use any js logic to build your pbiviz file using environment variables or other parameters.
- Updated dependencies to the latest versions.
- Updated to ESLint v9
- Updated to TypeScript v5
--use-defaultflag forpbiviz packageandpbiviz lintcommands is deprecated. Recommeded config is used by default
- Fixed subtotal feature check
- Changed path for storing certificates. It allows the certificate to be reused regardless of tools version. New path is
({home directory}/pbiviz-certs). - Windows version lower 10 is deprecated.
- Resolve of symlinks is disabled.
- Fixed bug with missing plugins for Eslint.
- New flag
--use-defaultforpbiviz packageandpbiviz lintcommands. Use this command to lint files according to recommended lint config.
- Added the node: false option to the webpack plugin to eliminate the use of the potentially dangerous new Function() method, which ensures compatibility with the Node.js runtime.
- Introduced support for *.mjs ECMAScript modules.
- Updated R-based visuals settings.ts file to work properly with the new API
- Updated packages
- New command
pbiviz lintto run lint check from tools. It'll use eslintrc file from the root of the visual, if there is no such file, recommended one will be used instead.
- Updated packages
- Updated to Typescript 5.0 ⚠
- New flag
--pbiviz-fileto specify path to pbiviz.json file
- Fixed errors output when packaging the visual
- Fixed
RHTMLtemplate render error
- Integrated PAC validation
- Updated crypto import to fix error in old Node versions
- New flag
--skip-apito skip verifying api version. It might produce different errors in visual, so use it only in some specific cases (ex. installing something during the build process brakes packages managed by monorepo managers). - New flag
--all-localesto disable optimization using localization loader. It's recommended not to use this flag because all locales take a huge amount of package size. If you need just a few of them follow this guide. In this case, only declared in stringResources locales will be added to your visual package.
- Now option
--install-certis command. The new usage ispbiviz install-cert⚠
- Now option
--install-certis command. New usage ispbiviz install-cert - Fixed bug with the incorrect detection of the installed API version
- Implemented common solution for webpack loaders on different environments
- Fixed broken imports in webpack.config for some cases
- Migrated to TypeScript
- Migrated to eslint
- Fixed vulnerabilities
- Migrated to newest CommanderJS
- Migrated to NodeJS 18.0 ⚠
optionsinVisual.constructor()is optional. It's made to match PowerBI interface and to support strict mode- LocalizationLoader has been moved to
powerbi-visuals-webpack-plugin
- Fixed path to localization loader
- Implemented new flag
--no-statsto disable statistics files - Fixed vulnerabilities
- Replaced
base64-inline-loaderwith webpackasset/inline
- Fixed vulnerabilities
- Updated
powerbi-visuals-webpack-pluginto 3.2.0
-
Added loader to reduce localizations size. REQUIRES
powerbi-visuals-utils-formattingutilsversion 5.1 and higher.Now loader deletes all unused in stringResources folder locales.
-
Fixed vulnerabilities
- Fixed vulnerabilities
- Reverted to stable version
- Removed vulnerabilities
- StringResources (Localizations) are supported in Developer Mode.
- Update
powerbi-visuals-webpack-pluginto 3.1.0 - Fixed vulnerabilities
Update templates visuals to:
- Support new visuals-api version 5.1.0
- Replace
enumerateObjectInstancesbygetFormattingModelAPI - Import and use
powerbi-visuals-utils-formattingmodel
- Updated dependencies, fixed npm audit issues
- Removed polyfills and 'Internet Explorer` browser support
- Removed
--targetoption forpbiviz-startandpbiviz-packagecommands
- Fix custom visual package upload to desktop version of PowerBI
- Removed environment logging in this version
- Downgraded "powerbi-visuals-webpack-plugin"
- This release version includes changes from previous betta versions: 3.4.0, 3.4.1, 3.4.2, 3.4.3.
- Updated webpack assets compilation
- Added environment logging for debugging purposes
- Fixed certificate date verification for different regional settings
- Migrated from
requestlib to nodehttpsstandard method - Removed
friendly-errors-webpack-pluginusage - Removed or updated deprecated dependencies
- Fixed vulnerabilities
- Fixed certificate verification for 'non-english' environment
- Removed old API ( 2.6.0 and bellow) templates logic
- Removed
pbiviz-updatemethod - Removed
--api [version]flag - Migrated to
webpack-dev-serverv4
- Extended
"powerbi-visuals-api"usage up to version 3.2.0 and higher
- Fixed certificate issues
- Fixed an issue when previous API version was used for a new package build
- Starting from tools version 3.3.0, it expects usage of "powerbi-visuals-api": ">=3.8.0"
- Added support for CV modal dialog
- Removed npm-force-resolutions package
- Fixed preinstall to prevent instalation failure because of npm-force-resolutions
- Fixed pbiviz.json dependencies option usage
- Fixed LessCompiler for old visuals
- Fixed webpack Node.js polyfill issue in webpack 5+"
- Removed deprecated packages
- Added visuals compatibility with webpack v5
- Removed lodash: _.template, ._findindex, .difference
- Packages update
- Webpack plugin update
- npm audit package-lock patch
- Fix output library name for debug mode
- Command package rolling back to fix issues with some commands running
- Packages update. Fixed #304
- Packages update: Uglify-js is replaced by Terser
- Fix loading the old visual projects
- Fix loading old
formattingutilsin the old visual projects.
- Update
powerbi-visuals-webpack-pluginto 2.2.1
- Fix vscode workspace settings template
- Fix certificate tool error handling
- Fix webpack configureation include regex
- Templates update
- Templates update
- Packages update
- Remove
@babel/polyfill - Replace
webpack-visualizer-pluginbywebpack-bundle-analyzer
- Add extensions for .svg.eot files to
base64-inline-loaderconfiguration - Exclude
code-jspackage to process by Babel - Include
@babel/plugin-syntax-dynamic-importplugin for Babel - Update
core-jspackage to version 3.x.x.
- Add
base64-inline-loaderto load images
- Release. Now Webpack is default builder for Custom Visuals.
- What’s new in powerbi-visuals-tools v3?
- TypeScript v3.0.1 by default
- ES6 Modules supported
- New versions of D3v5 and other external libraries are supported
- Reduced package size
- Improved API performance
- For the full details please check this article.
- Added Analytics Pane support Note: API v2.4.0 skipped as it does not include any public changes
- custom visuals now support a landing page
- Update package-lock.json to fix vulnerabilities
- Deprecated
applySelectionFilterfromISelectionManager
- Compression option for compressing visual package
- Fix launch webpack build triggering
- Update powerbi-visuals-webpack-plugin to 2.1.0
- Add support to import .css and.less files
- Fix reloading capabilities.json
- Resolve issue of starting dev server after copy certs from global instance
- Serve old visual project by nodejs server instead webpack dev server
- Resolve dev server certificates from global instance of pbiviz.
- Replace VisualServer.js by webpack-dev-server
- Set
sourceTypeto "unambiguous" for babel configuration
- Update powerbi-visuals-webpack-plugin to 2.0.0
- Remove minification by babel (remove
babel-preset-minifypackage).
- Update powerbi-visuals-webpack-plugin to 1.0.15
- Install the latest patch of
powerbi-visuals-api - The
pbiviz.jsonvalues of visual templates overrides global template values - Remove unnecessary
setApiVersionandupdateApifromVisualGenerator - Fix including styles into visual package
- Update powerbi-visuals-plugin to version 1.0.13
- Prevent using define function in context of module
- Update powerbi-visuals-plugin to version 1.0.11
- Update powerbi-visuals-plugin to version 1.0.10
- Remove jasmine-node package
- Tools observe changes in
pbiviz.jsonandcapabilities.jsonfiles and rebuild the visual. webpack-visualizer-pluginreplaced bywebpack-bundle-analyzerto visualize the webpack bundle stats.
- Webpack based tools
- Skip precompilation for the visual with ES6 modules
- Update package.json. Fix package installation
- TypeScript external modules support
- Generate certificates on development server starts
- Resolve PowerShell params issue on Win8.
- Resolve PowerShell script launching issue.
- Check certificate path in
--install-certcommand.
- Added
selectionManager.registerOnSelectCallback()method for Report Bookmarks support
- Added
pbiviz --create-certfor generating new unique certificate
- Increase typescript to 2.3.3 version
- Added ILocalizationManager
- Upgrade dependencies
- Added Authentication API call support
- Added launchUrl API call support
- FIX: Localization schema will be ignored if API doesn't support localization
- Added new type "fillRule" (gradient) support in capabilities schema
- Added "rule" property support in capabilities schema for object properties
- Fixed sub commands help output in "Using:" section
- Return innerHTML method for RHTML visual sample
- Remove innerHTML method from sample visual
- Added RESJSON support
- Add name validation to pbiviz new command, restrict usage of symbols in the file visual name.
- Added visual name validation
- Added auto-install npm dependencies
- Updated npm dependencies
- Fixed settings generation
- Fix issue in Capabilities.objects does not support "text" type
- Add
pbiviz updateto support updating visual API type definitions and schema - Add
--api-versionflag topbiviz newto support creating visuals with a specific api version - Add support for alpha release of API v1.2.0
Initial public release