build- ES modules are now be bundled.
- ES modules can now be transformed to AMD modules.
- Minification and other transforms now happen after bundling instead of before.
- Fix -—module-resolution default from polyserve overriding polymer.json
- Fixed issue where the
--module-resolutionwasn't being handled for theservecommand.
- Added
--npmand--component-dirglobal flags, which are passed to thebuild,lint,test, andservecommands. - All dash-case command line arguments are now converted to camelCase before overwriting options from polymer.json.
- Compile/minify steps can now parse object-rest-spread and dynamic-import.
- Fixed issue #950 where tagged template literals (such as
Polymer.html) were incorrectly transpiled - Automatically generate a
.gitignorefile when execute init command and selectelementorapplication. - Added ability to use globs on
analyzeandlintcommands - JS compile build transformer will now rewrite bare module specifiers to paths.
- Add
--module-resolutionflag which can benone(the default) ornode. - Update dependencies.
- Added support for
excludeoption inpolymer.jsonfor the build command'sminifyandcompileoptions forcss,jsandhtmlfiles. - Added
--fixoption topolymer lint. When passed, some warnings with simple mechanical solutions will be fixed.- Also supports warnings which can be addressed with less-safe changes via
an interactive prompt and the
--editsflag. Seepolymer lint --helpfor more info.
- Also supports warnings which can be addressed with less-safe changes via
an interactive prompt and the
- Added
--watch(shorthand-w) option topolymer lint. When passed, we will watch the filesystem for changes and rerun the linter immediately afterwards.- Also works with
--fixto automatically fix and report warnings as you work!
- Also works with
buildAdded a CLI argument for setting thebasePathoption:--base-path.- Derives node version check from the package.json.
- The polymer.json project config can now specify paths to exclude when minifying files and compiling JavaScript. See https://github.com/Polymer/polymer-project-config/issues/50 for more.
- Updated css-slam, bower and other dependencies.
- Updated Polymer 2.0 element test file template to use ES6.
- Update JS minification package babili to the new package-name babel-minify.
- Updated to latest WCT and Polyserve versions to support npm and
<script type=module>in on-the-fly compilation and tests.
- Upgraded web-component-tester to v6.2.0 and polyserve 0.22.1 for better ES module support.
- Upgraded web-component-tester to v6.1.5 to address IE11 issues.
- Upgraded web-component-tester to v6.1.4 to address IE11 issues.
- Upgraded web-component-tester to v6.1.3 to address yarn installation issues.
- Upgraded web-component-tester to v6.1.2.
- Fix issue where the
--fragmentflag was being ignored. - Added support for
polymer test --npmoption.
- Fixed the
polymer serve --npmoption.
- Upgraded to Polymer Build ^2.0.0 which uses Polymer Bundler ^3.0.0.
- When no specific option is set for Bundler's
rewriteUrlsInTemplatesthe CLI attempts to get the version of Polymer for the project usingbower. When Polymer 2.x is discovered,rewriteUrlsInTemplatesis defaulted tofalse. In case of Polymer 1.x or where version can not be identified, it defaults totrue. Any user settings override these defaults. - Fix issue where negative
extraDependenciesglobs were not working. - test: Add support for WCT
config-fileoption.
- Fixed issue #710 where the es5 custom elements adapter would not be added when bundling.
- Fixed issue #767 where hyphenated option names for
buildcommand were effectively ignored.
- Added support for optional polymer-project-config provision of bundler options instead of only boolean value for the
bundleproperty of build definitions. See the Polymer Project Config 3.4.0 release notes for details on new options available in polymer.json. - Includes Polymer Build fixes to push-manifest generation and others. See Polymer Build 1.6.0 release notes.
- Includes Polymer Bundler fixes to shell strategy and others. See Polymer Bundler 2.2.0 release notes.
- Updated lint rule to
polymer-2in thepolymer-2-elementtemplate. - Drop 1.x init templates. Bump
shopinit template to latest version.
- Updated dependency on latest polymer-project-config so that bundled presets include prefetch link generation.
buildEntrypoints will now be properly cached by generated service workers, and assets will be fetched by service workers using relative URLs to support apps mounted at non-root host paths.buildThebasePathoption no longer adds a prefix to service workers or push manifests. Relative URLs are used instead.
- Updates dependencies on latest polymer-build and polymer-bundler to reduce extraneous html tag output when bundling and generating prefetch links.
- Update element and application templates to latest stable versions
- Prefetch links are now compatible with bundler and differential serving w/ base tag hrefs in entrypoint documents.
- Official 1.0.0 release of the Polymer CLI! 🎉
buildSupport for newbasePathbuild config option that remaps paths to assist in serving at non-root paths, such as when doing differential serving of multiple builds from the same host. Affects service worker generation, push manifest generation, and also updates the entrypoint's<base>tag if found.buildBuilding your project will now write a copy of yourpolymer.jsonto the build directory. This provides a log of the build options used at the time, including expansion of presets.
- Updated dependencies to support official
polymer-analyzer2.0.0 andweb-components-tester6.0.0 releases.
- Fix the CLI preset flag.
- Fix an issue where compiling JS would crash in versions of node with native async iterators.
bundleno longer emits any JS or CSS files which have been inlined into bundles.
-
buildSupport build configuration "presets". -
buildPerformance improvements, including reduction of extraneous insertions of html, head and body tags. -
bundlehas many bug fixes and support for lazy imports. -
Update polyserve to 0.19.0 which adds HTTP compression and JS compilation for Mobile Safari and Vivaldi browsers.
-
Produce much smaller output when compiling many JS files to ES5 by inserting babel helpers only once, at the toplevel entrypoint.
-
init: Propagatedescriptionfrominitto application templates inindex.htmlmeta tag. -
New Command Aliases: Commands now support aliases.
polymer installhas been aliased underpolymer i.
initsmall template fixes.servenow respects theentrypointconfigured inpolymer.json.- Remove ability to run a locally installed version of the CLI if it exists in the current working directory. This unexpected behavior was never documented but some users could be running an incorrect version of the CLI as a result.
- Update Node.js version pre-run check to match latest supported versions.
v0.18.0 contains our latest work to support both Polymer 1.x & 2.0 projects. There are a bunch of big new features included in this update, as well as several breaking changes since the latest version. Here is a quick summary of the major changes for anyone who is updating from our previous latest/v0.17.0 version:
- New Polymer 2.0 Templates:
polymer inithas added new Polymer 2.0 templates for starter elements, applications, and our latest Polymer Starter Kit & Shop applications. Runpolymer initto see the whole list. - Updated
lintCommand:polymer lintis now powered by our newest version of polymer-linter. The new linter can show you the exact location of any problems in your code, and is much more configurable. Runpolymer help lintfor more information. - Updated
buildCommand:polymer buildis now powered by our newest version of polymer-build, which provides even more optimizations and features for customizing your build. Runpolymer help buildfor more information. - New Build Output: The biggest change to
polymer buildbehavior is that it no longer defaults to outputting two, optimized build targets. The new default behavior is to generate a single/build/defaultdirectory with all configurable optimizations turned off by default. To customize your build(s) and include different optimizations, you can either include CLI flags (like--js-compile) or custom polymer.json build configurations. See the latest polymer.json "builds" specification for more information. - New
analyzeCommand: Generates a JSON blob of metadata about your element(s). This can be useful to have for tooling and analysis. - New
installCommand: Likebower install, but with support for installing "variants" as defined in yourbower.json. See the glossary for more information. - Remove Node v4 support: Node v4 is no longer in Active LTS, so as per the Polymer Tools Node.js Support Policy the Polymer CLI will not support Node v4 going forward. Please update to Node v6 or later to continue using the latest verisons of Polymer tooling.
See the Full v0.18.0 Pre-Release Changelog
build: Add--add-push-manifest/addPushManifestoption for generating apush-manifest.jsonfile for your project.build: Fix a bug where--insert-prefetch-linkswould generate 404ing imports.build: Update automaticwebcomponentsjspolyfilling to move it and all affected elements following it into the body so that thecustom-elements-es5-adapter.jscan work properly in IE11. (See #627)init: Init template elements now properly inherit from the given element/app name.init: Fixpolymer-2-elementtemplate serving by removing iron-component-page until it can support Polymer 2.0 class-based elements.init: Update polymer 2.0 application & element tests to improve and fix broken tests.init: Update polymer 1.x application & element template WCT dependency to^6.0.0-prerelease.5.init: Update polymer application & element READMEs.serve: Update to polyserve@v0.17.0 to support autocompilation when serving to Chromium, Edge browsers.- [Breaking] Remove Node v4 support: Node v4 is no longer in Active LTS, so as per the Polymer Tools Node.js Support Policy the Polymer CLI will not support Node v4. Please update to Node v6 or later to continue using the latest verisons of Polymer tooling.
build: Update automaticwebcomponentsjspolyfilling to usecustom-elements-es5-adapter.jsinstead of brokenwebcomponents-es5-loader.js. Fixes compiled, bundled builds in Chrome. (See #605)
- The experimental linter has graduated to be the new default. Removed
polymer experimental-lintcommand.polymer lintnow runs polymer-linter. See the README andpolymer lint --helpfor more info.
- When running
polymer buildand compiling JS to ES5, we will also rewrite script includes ofwebcomponents-loader.jstowebcomponents-es5-loader.js.
- Add PSK 3.0 (Polymer 2.0 Polymer Starter Kit) template to the init command.
- Automatically include un-optimized
webcomponentsjspolyfills in builds. - Update Polymer Analyzer, Polymer Bundler and Polymer Linter dependencies
- Bundles now include optimizations specified in builds.
- Much more detailed output of
analyzecommand.
- New
buildBehavior: New build options have been added to give you more control over the generated build. These options can be defined in your project'spolymer.json, or via CLI flags. Runpolymer build --helpto see a list of new supported CLI flags.- Previously default behaviors (minifying JavaScript, generating service workers, etc) are now turned off by default.
- Multiple builds can now be defined in your project's
polymer.json. See the latest documentation for information on configuring your project build(s).
init: Add new 2.0 polymer element & application templates.- Update dependencies.
- New
experimental-lintcommand: configurable with per-project rulesets, either with cli args or in your polymer.json. Will soon replace thelintcommand, for now run it aspolymer experimental-lint. Specify "polymer-2", "polymer-2-hybrid", or "polymer-1" to customize the lint warnings that you receive. Runpolymer help experimental-lintfor more detail.
- Fixed a bug where
polymer initwould crash if run from a folder with a package.json that's missing a name property. https://github.com/Polymer/polymer-cli/issues/186 - Fixed a bug where
polymer buildwouldn't analyze behaviors correctly. - Fixed a bug where
polymer testwould complain about the version of wct it was bundled with. - Updated dependencies.
- Updated dependencies.
- Added
analyzecommand: Generates a JSON blob of metadata about your element(s). Useful for tooling and analysis. - Added
installcommand: Installs "variants" defined in yourbower.json. - Upgrade
polyservetov0.6.0-prerelease.6to handle serving variants - Upgrade
web-component-testerto6.0.0-prerelease.1to handle testing variants - Upgrade
polymer-buildtov0.6.0-alpha.1, which includes an upgrade to the newpolymer-analyzer. build: Rename the--include-dependenciesflag to--extra-dependenciesbuild: css is now minifiedbuild: Lots of bug fixes due to the new polymer-build library and analyzer.polymer.json: Rename theincludeDependencies&sourceGlobsfields toextraDependencies&sources, respectively- Added support for v7.x of Node.js, dropped support for v5.x. Please move to an actively maintained version of Node.js for the best experience.
- Upgrade web-component-tester 6.0 which brings a number of breaking changes to the
testcommand. init: Fix duplicate names for sub-generators in a directory
- Upgrade
web-component-testertov5.0.0, which includes a new major version of mocha. See the wct changelog for more details. - Upgrade
polyservetov0.13.0. See the polyserve changelog for more details. build: Add support for relative root path in polymer.jsonbuild: clear the build directory before building (#332)init: Fix issue where the application element name always used the current working directory name by defaultinit: Fix undefined template description- Fix issue with command failures exiting as successes (#418)
- build: fail immediately if polymer.json is invalid
- build: Add missing support for
sourceGlobs&includeDependenciesin polymer.json - polymer-build@v0.4.1 (fixes ignored
staticFileGlobsbug)
- replace app-drawer-template with starter-kit
- replace unneccesary gulp dependency with vinyl-fs
- polymer-build@v0.4.0 fixes build path issues
- but wait... THERE'S MORE! polymer-build@v0.4.0 also handles external resources properly now
- fix bug where
--versionflag threw an exception
- Refactor build logic out into standalone library: https://github.com/Polymer/polymer-build. Build behavior should remain the same from v0.12.0, but lots of work has been done in the new library to fix bugs and reduce build time/size.
- Refactor build file optimization streams
- Send an error code on polymer command run error
- gulp-typings@2.0.0
- github@1.1.0
- Update command-line-* suite of dependency, refactor to accomodate
- Refactor init command to be more easily testable, reduce startup times
- Catch exception thrown by findup when finding gulpfiles
- Add input linting argument, and fix major bug with paths
- init: Don’t crash when a package.json is present with no name
- Speed up start time, move last of the commands to load their dependencies at runtime
- Add demo and description for element template (#229)
- specify the sync interface when searching templates for package.json
- Removes unneccesary liftoff dependency
- Add update-notify to notify users when their cli is out of date
- Add tests for init command