- Fixed data URI inlining to inline SVG resouces
- Fixed infinite recursion on CSS minification
- Fixed issue with
mime
that breaks a build
- Replaced
uglify-js
touglify-es
- Added posibility to config JavaScript minifier with
--js-pack-config
CLI option orjsPackConfig
field in config file - Fixed exception handling when command run in child process and exception is connected with dependencies
- Update dependencies
- Fixed issue with
clap
(bumped to^1.2.3
)
- Update
basis.resource
with non-string argument exception such way, that it works with relative paths as well as namespace basis paths (@istrel, #26) - Minor fixes
- Fixed build issue when
--js-pack
is used
- Update dependencies
- Migrated to ESTree AST format for JavaScript (@smelukov)
- Fixed option processing that takes several values, i.e.
--theme
and--ignore-warnings
(@smelukov, #21)
- Fixed position resolving in CSS (@smelukov, #20)
- Fixed image inlining in CSS (i.e.
--css-inline-image
option)
- Migrated to CSSTree AST format for CSS (at least 2x boost in CSS processing)
- Fixed warning on implicit usage of
module
in basis.js core module
- Fixed warning on implicit usage of
__filename
in basis.js core module
- Fixed
--js-bundle-name
option when using from CLI
- Implemented
--ignore-warnings
option to ignore warnings, may take a list of patterns (@naorunaoru, #18)
- Added tools version to banner
- Implemented file content inlining for
[basis.]asset()
- Fixed cache invalidation for l10n culture packages (@fateevv, #17)
- Fixed output build done message in silent mode
- Fixed output warnings message in silent mode
- Fixed exception on duplicate template path definition. Extractor throws a fatal warning on duplication. (#16)
- Fixed issue when all themes styles activated on app start. Theme styles work as expected now.
- Fixed issue when plugins filename are resolving before filtering by
target
setting (#14) - Fixed exception when
l10n
markup token introducing by non-base
theme template (#15)
- Fixed
npm
publish issue fix
- Implemented JavaScript bundle mode for
build
- New option
--js-bundle
to produce a JavaScript bundle with optional argumentformat
(currentlyjs
orjson
) - New option
--js-bundle-name
to set a custom base name for bundle file (makes sense when--js-bundle
is using, extension is choosing according toformat
)
- New option
- Implemented symlink feature and
addSymlink()
method for plugin API - Fixed plugin relative path processing
- Changed path format for implicit
SourceWrappers
to neutral one (change prefix#N
→.N
) to fix issue whenSourceWrapper#path
is using as<b:include>
source (src
attribute value)
- Fixed wrong inclusion culture packages in bundle when using
--l10n-package
(#13)
- Don't pack JavaScript with implicit
jsPackCmd
, but usinguglify.js
instead or explicitjsPackCmd
if specified - Fixed warning count on build in non-verbose mode
- Added warning count output for each build handler summary
- Implemented option
--l10n-package
to store l10n cultures outside of bundle (except selected one) and load them asynchronously on demand (@fateevv) - Bump
basisjs-tools-ast
to 1.4.0
- Added support for
<link rel="image-src">
(@istrel) - Added support for basis.js 1.7 dictionaries
- Added deletion all non-culture and non-meta branches from dictionaries
- Fixed markup token issue for basis.js prior 1.7
- Fixed
anim:
class name renaming (--css-optimize-names
) - Fixed class renaming in CSS usage data when
--css-optimize-names
is used
- fix build done time output
- bump
basisjs-tools-ast
to1.3.0
(usingCSSO
1.8.0 with usage data support)
- new target
css-usage
that output collectedCSS
usage data inJSON
format
- new CLI option
--css-usage
to use usage data (class names white list and scopes) forCSS
compression - new CLI option
--stat
to output build statistics in non-verbose mode
- fix
csso
version issue
- support of new
basis.js
template declaration resources format - add
preset
support (w/o parallel running)
- add non-style resource list if any to template description in resource map (makes non-style resources work as in dev)
- fix CLI values overriding by preset values (CLI values has higher priority)
- return non-zero code on parallel task running when one of task is failed (#9)
- make possible to specify input file when presets are setup
- always exit on
Flow#exit()
but throw exception in some cases - bump dependencies
- FIX: first url in
srcset
isn't parse correctly if value starts with whitespaces
- FIX: issue when execute
basis.js
modules with all debug info cut off (because of--js-cut-dev
) - FIX: try to use plugin only if
target
setting is not set or has some special value (fixes #7)- For every builder tasks (except
find
)build
value should be used. To set specific command its name should be starts withbuild:
prefix, i.e.build:lint
forlint
.
- For every builder tasks (except
- NEW: basic plugins support similar to dev-server (replacement for preprocess settings). See example basisjs-tools-babel-plugin by @wuzyk
preprocess
andextFileTypes
options aren't supported inbasis.config
anymore
- NEW: support for
srcset
attribute on<img>
and<source>
elements (for HTML and templates) - extract: better warn message construct when process arguments from
basis.dev.warn()
andbasis.dev.error()
- lint: fix output warnings with no file (wrongly omit before)
- extract: don't warn on ids with no css rulesets for them (#3)
- lint: check for top level duplicate
var
declarations - build: don't exit on
closure-compiler
notify message about stdin input - extract: don't warn on unknown type for
<script>
(since could be used for templates) - bump dependencies
- build: new option
--silent
to prevent any output tostdout
- build: new value
none
for--target
option (prevents file writing to FS) - build: don't minimize
id
names when--css-optimize-names
is using, since unsafe as tools don't found everyid
usage case for now
- extract: return paths reltaive to
base
- extract: remove old
basis.js
l10n support in result (prior to1.0
) - extract: fix
require
resolving for paths w/o extension forbasis.js
1.5
- bump
csso
version to1.4.2
Initial release as separate module
- output
app
profile by default - doesn't create any file anymore
- to output extract log
--target log
should be used - remove
none
value for--target
- no more
AST
modifications on extract (basis.resource
,basis.require
etc.) - make
basis.js
config parse error as fatal - support for images in
<meta name="msapplication-*">
- fix: exception on html extract when
<link>
has nohref
attribute - make template isolate prefix reproducible (preparation for script and style freeze,
basis.js
support required) - take in account special comment (
/* basisjs-tools:disable-warnings */
) in css to avoid warnings for this file - improve warnings about missed files
- warn on broken links (fatal) in some missed hard cases (didn't check before):
- reference by namespace in template, i.e.
<b:include src="foo.bar"/>
- broken links in markup
l10n
tokens (warn doesn't add to flow)
- reference by namespace in template, i.e.
- drop support for
basis.l10n
v1 (basis.js
prior1.0
) - add some checks for duplicate parameter/property names in strint mode
- add some ES6 globals to dict
- return promise
- add support to work as child process
- add parallel run support
- add presets support
- basic
--single-file
implementation - fix
--css-inline-image
option - remove
zip
target - make command multi-run ready
- support for images in
<meta name="msapplication-*">
- prevent accident original files rewrite
- compress implicit template names for
l10n
markup tokens (reduce build size) - don't set
type="text/javascript"
for<script>
in resulting html
- return promise
- add support to work as child process
- add parallel run support
- add presets support
- make possible set default reporter (
console
) via option - implement
junit
reporter
- new command
find
that resolve filename bybasis.js
file reference - trailing slash is not adding to
--base
and--output
values --output
option available only forbuild
command- new option
--theme
that specify what themes should used for result (all themes by default), for now it's just ignore warnings for not in list themes - remove options:
--js-build-mode
--(css-|js-)no-single-file
--css-cut-unused
--tmpl-pregenerate
--js-info
- use
basisjs-tools-ast
andbasisjs-tools-config
as dependencies - strip code for
basis.js
prior1.0
and related refactoring - set min
node.js
version to0.12
- many other bug fixes, improvements and refactoring