You are here: Foswiki>Tasks Web>Item9567 (28 Jan 2015, MichaelDaum)Edit Attach

Item9567: the core/tools/build.pl should refuse to build if the minifiers are not present.

pencil
Priority: Normal
Current State: Confirmed
Released In: n/a
Target Release: n/a
Applies To: Extension
Component: BuildContrib
Branches:
Reported By: SvenDowideit
Waiting For:
Last Change By: MichaelDaum
again, because we want to be use that release artifacts are in fact 'reasonable'

-- SvenDowideit - 27 Aug 2010

Currently the code tries, in order: And then returns a warning if missing.

For CSS it tries:
  • cssmin
  • yui
  • CSS::Minifier

For the Core extensions we need to decide on which one is required. I typically have not paid attention to this.

-- GeorgeClark - 06 Jan 2015

We should remove all but the node.js based ones. I.E. YUI can't deal with utf8 and modern javascript anymore as it basically is unmaintained.

-- MichaelDaum - 06 Jan 2015

I'm going to hold on doing anything with this. I have the js based tools installed, so our foswiki releases should be fine. As these are probably moving targets, it would probably be best to actually do some version checks. Unfortunately for the cssmin that I currently have installed, it doesn't show a version. I've got the latest Uglify uglifyjs --version    uglify-js 2.4.16

We need to document the requirements better at http://foswiki.org/Development/BuildingARelease#Before_generating_a_release_package: It doesn't mention cssmin, so that needs some clarification. Also, are these restrictions applicable to ALL packages built by BuildContrib, or only our Foswiki releases. Need to decide when we simply refuse to build, vs. allow uncompressed / unmininified builds.

-- GeorgeClark - 28 Jan 2015

We should forget about the perl-based minifiers or the yui one.

Instead we depend on node.js base tools such as uglifyjs. These are standard. cssmin and yui aren't able to minify correctly the more modern js code.

-- MichaelDaum - 28 Jan 2015
 

ItemTemplate edit

Summary the core/tools/build.pl should refuse to build if the minifiers are not present.
ReportedBy SvenDowideit
Codebase 1.0.9, trunk
SVN Range
AppliesTo Extension
Component BuildContrib
Priority Normal
CurrentState Confirmed
WaitingFor
Checkins
TargetRelease n/a
ReleasedIn n/a
CheckinsOnBranches
trunkCheckins
masterCheckins
ItemBranchCheckins
Release01x01Checkins
Topic revision: r5 - 28 Jan 2015, MichaelDaum
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy