Example #1
0
def pack(target, sources, no_compress):
    from cStringIO import StringIO

    outtype, outtxt = target.split(".")[-1], ''
    jsm = JavascriptMinify()

    for f in sources:
        suffix = None
        if ':' in f: f, suffix = f.split(':')
        if not os.path.exists(f) or os.path.isdir(f): continue
        timestamps[f] = os.path.getmtime(f)
        try:
            with open(f, 'r') as sourcefile:
                data = unicode(sourcefile.read(), 'utf-8', errors='ignore')

            if outtype == "js" and (
                    not no_compress) and suffix != "concat" and (".min."
                                                                 not in f):
                tmpin, tmpout = StringIO(data.encode('utf-8')), StringIO()
                jsm.minify(tmpin, tmpout)
                outtxt += unicode(tmpout.getvalue() or '',
                                  'utf-8').strip('\n') + ';'
            else:
                outtxt += ('\n/*\n *\t%s\n */' % f)
                outtxt += '\n' + data + '\n'

        except Exception, e:
            print "--Error in:" + f + "--"
            print frappe.get_traceback()
Example #2
0
def pack(target, sources, no_compress):
	from cStringIO import StringIO
	
	outtype, outtxt = target.split(".")[-1], ''
	jsm = JavascriptMinify()
		
	for f in sources:
		suffix = None
		if ':' in f: f, suffix = f.split(':')
		if not os.path.exists(f) or os.path.isdir(f): continue
		timestamps[f] = os.path.getmtime(f)
		try:
			with open(f, 'r') as sourcefile:			
				data = unicode(sourcefile.read(), 'utf-8', errors='ignore')
			
			if outtype=="js" and (not no_compress) and suffix!="concat" and (".min." not in f):
				tmpin, tmpout = StringIO(data.encode('utf-8')), StringIO()
				jsm.minify(tmpin, tmpout)
				outtxt += unicode(tmpout.getvalue() or '', 'utf-8').strip('\n') + ';'
			else:
				outtxt += ('\n/*\n *\t%s\n */' % f)
				outtxt += '\n' + data + '\n'
				
		except Exception, e:
			print "--Error in:" + f + "--"
			print frappe.get_traceback()
Example #3
0
def pack(target, sources, no_compress, verbose):
    from cStringIO import StringIO

    outtype, outtxt = target.split(".")[-1], ''
    jsm = JavascriptMinify()

    for f in sources:
        suffix = None
        if ':' in f: f, suffix = f.split(':')
        if not os.path.exists(f) or os.path.isdir(f):
            print("did not find " + f)
            continue
        timestamps[f] = os.path.getmtime(f)
        try:
            with open(f, 'r') as sourcefile:
                data = unicode(sourcefile.read(), 'utf-8', errors='ignore')

            extn = f.rsplit(".", 1)[1]

            if outtype == "js" and extn == "js" and (
                    not no_compress) and suffix != "concat" and (".min."
                                                                 not in f):
                tmpin, tmpout = StringIO(data.encode('utf-8')), StringIO()
                jsm.minify(tmpin, tmpout)
                minified = tmpout.getvalue()
                if minified:
                    outtxt += unicode(minified or '',
                                      'utf-8').strip('\n') + ';'

                if verbose:
                    print("{0}: {1}k".format(f, int(len(minified) / 1024)))
            elif outtype == "js" and extn == "html":
                # add to frappe.templates
                outtxt += html_to_js_template(f, data)
            else:
                outtxt += ('\n/*\n *\t%s\n */' % f)
                outtxt += '\n' + data + '\n'

        except Exception:
            print("--Error in:" + f + "--")
            print(frappe.get_traceback())

    if not no_compress and outtype == 'css':
        pass
        #outtxt = cssmin(outtxt)

    with open(target, 'w') as f:
        f.write(outtxt.encode("utf-8"))

    print("Wrote %s - %sk" %
          (target, str(int(os.path.getsize(target) / 1024))))
Example #4
0
def pack(target, sources, no_compress, verbose):
	from cStringIO import StringIO

	outtype, outtxt = target.split(".")[-1], ''
	jsm = JavascriptMinify()

	for f in sources:
		suffix = None
		if ':' in f: f, suffix = f.split(':')
		if not os.path.exists(f) or os.path.isdir(f):
			print "did not find " + f
			continue
		timestamps[f] = os.path.getmtime(f)
		try:
			with open(f, 'r') as sourcefile:
				data = unicode(sourcefile.read(), 'utf-8', errors='ignore')

			extn = f.rsplit(".", 1)[1]

			if outtype=="js" and extn=="js" and (not no_compress) and suffix!="concat" and (".min." not in f):
				tmpin, tmpout = StringIO(data.encode('utf-8')), StringIO()
				jsm.minify(tmpin, tmpout)
				minified = tmpout.getvalue()
				if minified:
					outtxt += unicode(minified or '', 'utf-8').strip('\n') + ';'

				if verbose:
					print "{0}: {1}k".format(f, int(len(minified) / 1024))
			elif outtype=="js" and extn=="html":
				# add to frappe.templates
				outtxt += html_to_js_template(f, data)
			else:
				outtxt += ('\n/*\n *\t%s\n */' % f)
				outtxt += '\n' + data + '\n'

		except Exception:
			print "--Error in:" + f + "--"
			print frappe.get_traceback()

	if not no_compress and outtype == 'css':
		pass
		#outtxt = cssmin(outtxt)

	with open(target, 'w') as f:
		f.write(outtxt.encode("utf-8"))

	print "Wrote %s - %sk" % (target, str(int(os.path.getsize(target)/1024)))
Example #5
0
def pack(target, sources, no_compress, verbose):
    from six import StringIO

    outtype, outtxt = target.split(".")[-1], ""
    jsm = JavascriptMinify()

    for f in sources:
        suffix = None
        if ":" in f:
            f, suffix = f.split(":")
        if not os.path.exists(f) or os.path.isdir(f):
            print("did not find " + f)
            continue
        timestamps[f] = os.path.getmtime(f)
        try:
            with open(f, "r") as sourcefile:
                data = text_type(sourcefile.read(), "utf-8", errors="ignore")

            extn = f.rsplit(".", 1)[1]

            if (outtype == "js" and extn == "js" and (not no_compress)
                    and suffix != "concat" and (".min." not in f)):
                tmpin, tmpout = StringIO(data.encode("utf-8")), StringIO()
                jsm.minify(tmpin, tmpout)
                minified = tmpout.getvalue()
                if minified:
                    outtxt += text_type(minified or "",
                                        "utf-8").strip("\n") + ";"

                if verbose:
                    print("{0}: {1}k".format(f, int(len(minified) / 1024)))
            elif outtype == "js" and extn == "html":
                # add to frappe.templates
                outtxt += html_to_js_template(f, data)
            else:
                outtxt += "\n/*\n *\t%s\n */" % f
                outtxt += "\n" + data + "\n"

        except Exception:
            print("--Error in:" + f + "--")
            print(frappe.get_traceback())

    with open(target, "w") as f:
        f.write(outtxt.encode("utf-8"))

    print("Wrote %s - %sk" %
          (target, str(int(os.path.getsize(target) / 1024))))
Example #6
0
def pack(target, sources, no_compress, verbose):
	from cStringIO import StringIO

	outtype, outtxt = target.split(".")[-1], ''
	jsm = JavascriptMinify()

	for f in sources:
		suffix = None
		if ':' in f: f, suffix = f.split(':')
		if not os.path.exists(f) or os.path.isdir(f):
			print "did not find " + f
			continue
		timestamps[f] = os.path.getmtime(f)
		try:
			with open(f, 'r') as sourcefile:
				data = unicode(sourcefile.read(), 'utf-8', errors='ignore')

			extn = f.rsplit(".", 1)[1]

			if outtype=="js" and extn=="js" and (not no_compress) and suffix!="concat" and (".min." not in f):
				tmpin, tmpout = StringIO(data.encode('utf-8')), StringIO()
				jsm.minify(tmpin, tmpout)
				minified = tmpout.getvalue()
				outtxt += unicode(minified or '', 'utf-8').strip('\n') + ';'

				if verbose:
					print "{0}: {1}k".format(f, int(len(minified) / 1024))
			elif outtype=="js" and extn=="html":
				# add to frappe.templates
				content = data.replace("\n", " ").replace("'", "\'")
				outtxt += """frappe.templates["{key}"] = '{content}';\n""".format(\
					key=f.rsplit("/", 1)[1][:-5], content=content)
			else:
				outtxt += ('\n/*\n *\t%s\n */' % f)
				outtxt += '\n' + data + '\n'

		except Exception, e:
			print "--Error in:" + f + "--"
			print frappe.get_traceback()