Bug 1131284 - Review Request: webkitgtk4 - GTK+ Web content engine library
Summary: Review Request: webkitgtk4 - GTK+ Web content engine library
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Michael Catanzaro
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-08-18 22:01 UTC by Kalev Lember
Modified: 2014-08-22 13:17 UTC (History)
4 users (show)

Fixed In Version: webkitgtk4-2.5.3-3.fc21
Clone Of:
Environment:
Last Closed: 2014-08-22 13:17:26 UTC
Type: ---
Embargoed:
mcatanzaro: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Kalev Lember 2014-08-18 22:01:08 UTC
Spec URL: https://kalev.fedorapeople.org/webkitgtk4.spec
SRPM URL: https://kalev.fedorapeople.org/webkitgtk4-2.5.3-1.fc22.src.rpm
Description:
This is a new parallel-installable version of webkitgtk. We currently have 3 webkitgtk library packages in F21/rawhide:

webkitgtk -- gtk2 version of WK1 API
webkitgtk3 -- gtk3 version of WK1 API
libwebkit2gtk -- gtk3 version of WK2 API, built as a subpackage from webkitgtk3 srpm

This package here, webkitgtk4, is supposed to eventually supersede libwebkit2gtk. Currently it's parallel-installable with all 3 listed above, but once everything linking against the WK2 API has been ported over to link with the webkitgtk4 package, I'll drop the libwebkit2gtk subpackage from webkitgtk3 and add necessary obsoletes to webkitgtk4.

Fedora Account System Username: kalev

Comment 1 Kalev Lember 2014-08-18 22:02:40 UTC
Koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=7384513 (it can take several hours to build)

Comment 2 Christopher Meng 2014-08-18 23:20:16 UTC
What about those 3rd party resources? Does FESCo approve them?

Comment 3 Michael Catanzaro 2014-08-19 00:30:16 UTC
FYI this is what openSUSE is doing:

webkitgtk (version 2.4.x, WebKit1 compiled against GTK+2, same as us)
webkitgtk3 (version 2.4.x, WebKit1 compiled against GTK+3, same as us)
webkit2gtk3 (version 2.5/2.6, WebKit2 compiled against GTK+3, your webkitgtk4)

I guess for them, the 3 at the end means gtk3. I think your naming might be slightly less bad than theirs, but it's confusing either way.

Comment 4 Kalev Lember 2014-08-19 00:46:18 UTC
Yes, the naming here is not ideal. tpopela discussed different naming options with upstream last week and they advised us to go with webkitgtk4:

11:40 <tpopela> <KaL> in webkitgtk3, 3 is not for gtk, but the wk binary version
11:40 <tpopela> <KaL> so I would use webkitgtk4
11:40 <tpopela> <KaL> don't use webkit2gtk4 for the name of the package
11:41 <tpopela> so we should really go for webkitgtk4

Comment 5 Michael Catanzaro 2014-08-19 01:50:00 UTC
OK great, that's Carlos, do what he suggests!

Comment 6 Kalev Lember 2014-08-19 20:16:18 UTC
(In reply to Christopher Meng from comment #2)
> What about those 3rd party resources?

Thanks for the comment. I guess you wanted me to investigate what's in Source/ThirdParty/ ? It currently has 4 subdirectories. 3 of those, leveldb, gtest, and qunit aren't used in the current build, so I went ahead and dropped those to make reviewing easier.

The last one is the ANGLE project which, in my understanding, is not meant to be a separate project and is just copied between chromium and webkit. Don't think it makes sense to split it out to a separate package.

* Tue Aug 19 2014 Kalev Lember <kalevlember> - 2.5.3-2
- Remove bundled leveldb, gtest, qunit in %%prep (#1131284)

Spec URL: https://kalev.fedorapeople.org/webkitgtk4.spec
SRPM URL: https://kalev.fedorapeople.org/webkitgtk4-2.5.3-2.fc22.src.rpm

Comment 7 Michael Catanzaro 2014-08-20 00:03:54 UTC
(In reply to Kalev Lember from comment #6)
> The last one is the ANGLE project which, in my understanding, is not meant
> to be a separate project and is just copied between chromium and webkit.
> Don't think it makes sense to split it out to a separate package.

It's a distinct upstream project, but it does not make releases and expects to be bundled [1] [2]. It wouldn't make sense as a separate package since every potential user (WebKit 2.4, WebKit 2.5/2.6, Chromium) would need a different version and a different set of patches (Source/ThirdParty/ANGLE/changes.diff).

The packaging guidelines are slightly vague here, but my reading is that since ANGLE is not a system library, we don't need to apply for a bundling exception. I'm not sure if that's the intent behind the guideline, though....

[1] http://code.google.com/p/angleproject/
[2] http://code.google.com/p/angleproject/wiki/ChoosingANGLEBranch

Comment 8 Michael Catanzaro 2014-08-20 14:45:31 UTC
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed


Issues:
=======

[!]: License field in the package spec file matches the actual license.

     I think the license field should be:

     BSD and BSD with advertising and ISC and LGPLv2 and LGPLv2+ and MIT and (MPLv1.1 or GPLv2+ or LGPLv2+)

[!]: If the package is under multiple licenses, the licensing breakdown must
     be documented in the spec.

     The guidelines say that you need to do this, but that does not look fun
     or reasonable. Maybe just a comment to say "it's complicated" would be OK?

[!]: Package contains no bundled libraries without FPC exception.
     
     We should probably apply for an exception for ANGLE, but let's not block on
     on that since we've already been bundling it for ages.

[!]: Fully versioned dependency in subpackages if applicable.

     No Requires: %{name}%{?_isa} = %{version}-%{release} in
     webkitgtk4-devel.

[!]: Packages should try to preserve timestamps of original installed files.

     Note: Looks like the timestamps of when the RPM was built. Optional.

We should probably inform upstream about the shared-lib-calls-exit and
unused-direct-shlib-dependency rpmlint warnings.

===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Development (unversioned) .so files in -devel subpackage, if present.
[x]: Header files in -devel subpackage, if present.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[!]: License field in the package spec file matches the actual license.
[x]: License file installed when any subpackage combination is installed.
[!]: If the package is under multiple licenses, the licensing breakdown must
     be documented in the spec.
[x]: %build honors applicable compiler flags or justifies otherwise.
[!]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[x]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: The spec file handles locales properly.
[x]: Package consistently uses macros (instead of hard-coded directory names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[x]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
     Note: Will obsolete libwebkit2gtk3, as mentioned in comment #0.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 0 bytes in 0 files.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[-]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[!]: Fully versioned dependency in subpackages if applicable.
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Scriptlets must be sane, if used.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[-]: %check is present and all tests pass.
     Note: Don't even think about trying this. :)
[!]: Packages should try to preserve timestamps of original installed files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: Dist tag is present (not strictly required in GL).
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Uses parallel make %{?_smp_mflags} macro.
[x]: The placement of pkgconfig(.pc) files are correct.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[-]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.
     Note: Arch-ed rpms have a total of 3420160 bytes in /usr/share. Looks like
     it's all locales.
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: webkitgtk4-2.5.3-2.fc22.x86_64.rpm
          webkitgtk4-devel-2.5.3-2.fc22.x86_64.rpm
          webkitgtk4-2.5.3-2.fc22.src.rpm
webkitgtk4.x86_64: W: shared-lib-calls-exit /usr/lib64/libjavascriptcoregtk-4.0.so.18.0.2 exit.5
webkitgtk4.x86_64: W: shared-lib-calls-exit /usr/lib64/libwebkit2gtk-4.0.so.37.1.1 exit.5
webkitgtk4.x86_64: W: shared-lib-calls-exit /usr/lib64/libwebkit2gtk-4.0.so.37.1.1 _exit.5
webkitgtk4.x86_64: W: no-documentation
webkitgtk4-devel.x86_64: W: only-non-binary-in-usr-lib
webkitgtk4-devel.x86_64: W: no-documentation
webkitgtk4-devel.x86_64: W: no-manual-page-for-binary jsc
3 packages and 0 specfiles checked; 0 errors, 7 warnings.


Rpmlint (installed packages)
----------------------------
# rpmlint webkitgtk4 webkitgtk4-devel
webkitgtk4.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libjavascriptcoregtk-4.0.so.18.0.2 /lib64/libz.so.1
webkitgtk4.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libjavascriptcoregtk-4.0.so.18.0.2 /lib64/libgcc_s.so.1
webkitgtk4.x86_64: W: shared-lib-calls-exit /usr/lib64/libjavascriptcoregtk-4.0.so.18.0.2 exit.5
webkitgtk4.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libwebkit2gtk-4.0.so.37.1.1 /lib64/libpangocairo-1.0.so.0
webkitgtk4.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libwebkit2gtk-4.0.so.37.1.1 /lib64/libcairo-gobject.so.2
webkitgtk4.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libwebkit2gtk-4.0.so.37.1.1 /lib64/libXrender.so.1
webkitgtk4.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libwebkit2gtk-4.0.so.37.1.1 /lib64/libXt.so.6
webkitgtk4.x86_64: W: shared-lib-calls-exit /usr/lib64/libwebkit2gtk-4.0.so.37.1.1 exit.5
webkitgtk4.x86_64: W: shared-lib-calls-exit /usr/lib64/libwebkit2gtk-4.0.so.37.1.1 _exit.5
webkitgtk4.x86_64: W: no-documentation
webkitgtk4-devel.x86_64: W: only-non-binary-in-usr-lib
webkitgtk4-devel.x86_64: W: no-documentation
webkitgtk4-devel.x86_64: W: no-manual-page-for-binary jsc
2 packages and 0 specfiles checked; 0 errors, 13 warnings.
# echo 'rpmlint-done:'


Requires
--------
webkitgtk4 (rpmlib, GLIBC filtered):
    /sbin/ldconfig
    geoclue2
    ld-linux-x86-64.so.2()(64bit)
    libEGL.so.1()(64bit)
    libGL.so.1()(64bit)
    libX11.so.6()(64bit)
    libXcomposite.so.1()(64bit)
    libXdamage.so.1()(64bit)
    libXrender.so.1()(64bit)
    libXt.so.6()(64bit)
    libatk-1.0.so.0()(64bit)
    libc.so.6()(64bit)
    libcairo-gobject.so.2()(64bit)
    libcairo.so.2()(64bit)
    libdl.so.2()(64bit)
    libenchant.so.1()(64bit)
    libfontconfig.so.1()(64bit)
    libfreetype.so.6()(64bit)
    libgcc_s.so.1()(64bit)
    libgcc_s.so.1(GCC_4.0.0)(64bit)
    libgdk-3.so.0()(64bit)
    libgdk-x11-2.0.so.0()(64bit)
    libgdk_pixbuf-2.0.so.0()(64bit)
    libgio-2.0.so.0()(64bit)
    libglib-2.0.so.0()(64bit)
    libgmodule-2.0.so.0()(64bit)
    libgobject-2.0.so.0()(64bit)
    libgstapp-1.0.so.0()(64bit)
    libgstaudio-1.0.so.0()(64bit)
    libgstbase-1.0.so.0()(64bit)
    libgstfft-1.0.so.0()(64bit)
    libgstpbutils-1.0.so.0()(64bit)
    libgstreamer-1.0.so.0()(64bit)
    libgsttag-1.0.so.0()(64bit)
    libgstvideo-1.0.so.0()(64bit)
    libgtk-3.so.0()(64bit)
    libgtk-x11-2.0.so.0()(64bit)
    libharfbuzz-icu.so.0()(64bit)
    libharfbuzz.so.0()(64bit)
    libicui18n.so.52()(64bit)
    libicuuc.so.52()(64bit)
    libjavascriptcoregtk-4.0.so.18()(64bit)
    libjpeg.so.62()(64bit)
    libjpeg.so.62(LIBJPEG_6.2)(64bit)
    libm.so.6()(64bit)
    libpango-1.0.so.0()(64bit)
    libpangocairo-1.0.so.0()(64bit)
    libpangoft2-1.0.so.0()(64bit)
    libpng16.so.16()(64bit)
    libpng16.so.16(PNG16_0)(64bit)
    libpthread.so.0()(64bit)
    librt.so.1()(64bit)
    libsecret-1.so.0()(64bit)
    libsoup-2.4.so.1()(64bit)
    libsqlite3.so.0()(64bit)
    libstdc++.so.6()(64bit)
    libstdc++.so.6(CXXABI_1.3)(64bit)
    libwebkit2gtk-4.0.so.37()(64bit)
    libwebp.so.5()(64bit)
    libxml2.so.2()(64bit)
    libxml2.so.2(LIBXML2_2.4.30)(64bit)
    libxml2.so.2(LIBXML2_2.6.0)(64bit)
    libxml2.so.2(LIBXML2_2.6.6)(64bit)
    libxslt.so.1()(64bit)
    libxslt.so.1(LIBXML2_1.0.11)(64bit)
    libxslt.so.1(LIBXML2_1.0.22)(64bit)
    libxslt.so.1(LIBXML2_1.0.24)(64bit)
    libxslt.so.1(LIBXML2_1.1.9)(64bit)
    libz.so.1()(64bit)
    libz.so.1(ZLIB_1.2.0)(64bit)
    rtld(GNU_HASH)

webkitgtk4-devel (rpmlib, GLIBC filtered):
    /usr/bin/pkg-config
    libc.so.6()(64bit)
    libdl.so.2()(64bit)
    libgcc_s.so.1()(64bit)
    libgio-2.0.so.0()(64bit)
    libglib-2.0.so.0()(64bit)
    libgobject-2.0.so.0()(64bit)
    libicui18n.so.52()(64bit)
    libicuuc.so.52()(64bit)
    libjavascriptcoregtk-4.0.so.18()(64bit)
    libm.so.6()(64bit)
    libpthread.so.0()(64bit)
    libstdc++.so.6()(64bit)
    libwebkit2gtk-4.0.so.37()(64bit)
    libz.so.1()(64bit)
    pkgconfig(glib-2.0)
    pkgconfig(gtk+-3.0)
    pkgconfig(javascriptcoregtk-4.0)
    pkgconfig(libsoup-2.4)
    rtld(GNU_HASH)
    webkitgtk4(x86-64)



Provides
--------
webkitgtk4:
    libjavascriptcoregtk-4.0.so.18()(64bit)
    libwebkit2gtk-4.0.so.37()(64bit)
    libwebkit2gtkinjectedbundle.so()(64bit)
    webkitgtk4
    webkitgtk4(x86-64)

webkitgtk4-devel:
    pkgconfig(javascriptcoregtk-4.0)
    pkgconfig(webkit2gtk-4.0)
    pkgconfig(webkit2gtk-web-extension-4.0)
    webkitgtk4-devel
    webkitgtk4-devel(x86-64)



Unversioned so-files
--------------------
webkitgtk4: /usr/lib64/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so

Source checksums
----------------
http://webkitgtk.org/releases/webkitgtk-2.5.3.tar.xz :
  CHECKSUM(SHA256) this package     : 010803e371ac92a3e0e297e929978f83a9a3c597e4a10d50363fb1aaa6ea18d6
  CHECKSUM(SHA256) upstream package : 010803e371ac92a3e0e297e929978f83a9a3c597e4a10d50363fb1aaa6ea18d6

NEEDSWORK

Comment 9 Kalev Lember 2014-08-21 00:46:27 UTC
(In reply to Michael Catanzaro from comment #8)
> [!]: License field in the package spec file matches the actual license.
> 
>      I think the license field should be:
> 
>      BSD and BSD with advertising and ISC and LGPLv2 and LGPLv2+ and MIT and
> (MPLv1.1 or GPLv2+ or LGPLv2+)

This is very accurate for the source code, but I don't think we need all that to describe the license of the resulting _binary_. The license tag in the spec file is supposed to describe the combined work, the compiled binaries as shipped in the binary rpm, and this opens up a way to considerably simplify the license tag.

https://fedoraproject.org/wiki/Licensing:FAQ#What_is_.22effective_license.22_and_do_I_need_to_know_that_for_the_License:_tag.3F explains how to deal with multiple licensing scenario and how to figure out what is the "effective" license of the combined work.

I believe we should be able to just state that:

License: LGPLv2

Where did you find BSD with advertising, by the way?


> [!]: If the package is under multiple licenses, the licensing breakdown must
>      be documented in the spec.
> 
>      The guidelines say that you need to do this, but that does not look fun
>      or reasonable. Maybe just a comment to say "it's complicated" would be
> OK?

If the combined work is under a single license (LGPLv2), I don't think we need to do this.


> [!]: Fully versioned dependency in subpackages if applicable.
> 
>      No Requires: %{name}%{?_isa} = %{version}-%{release} in
>      webkitgtk4-devel.

It seems to be already there for the -devel subpackage, or am I missing something?

Comment 10 Christopher Meng 2014-08-21 02:22:24 UTC
Hi Kalev,

Provides
--------
webkitgtk4:
    libjavascriptcoregtk-4.0.so.18()(64bit)
    libwebkit2gtk-4.0.so.37()(64bit)
    libwebkit2gtkinjectedbundle.so()(64bit)
    webkitgtk4
    webkitgtk4(x86-64)

Does libwebkit2gtkinjectedbundle.so need to be provided?

Comment 11 Michael Catanzaro 2014-08-21 03:36:21 UTC
(In reply to Kalev Lember from comment #9)
> I believe we should be able to just state that:
> 
> License: LGPLv2

OK, that's indeed clear from the licensing FAQ.

It's less clear from the licensing guidelines at https://fedoraproject.org/wiki/Packaging:LicensingGuidelines#Multiple_Licensing_Scenarios which is why I got confused. Guess it's better for me to learn this in my first review than later on!

> Where did you find BSD with advertising, by the way?

I didn't; I got three-clause confused with four-clause.

> If the combined work is under a single license (LGPLv2), I don't think we
> need to do this.

Yup.

> It seems to be already there for the -devel subpackage, or am I missing
> something?

Yes, it's clearly there. I did check the spec to make sure it was missing, but I must have been very blind.

(In reply to Christopher Meng from comment #10)
> Does libwebkit2gtkinjectedbundle.so need to be provided?

Good point. I was not sufficiently familiar with the rules for filtering provides. It does need to be filtered; applications do not link to it directly. So this and ANGLE are the only actual problems.

Comment 12 Michael Catanzaro 2014-08-21 03:41:09 UTC
(In reply to Michael Catanzaro from comment #11)
> Good point. I was not sufficiently familiar with the rules for filtering
> provides. It does need to be filtered; applications do not link to it
> directly. So this and ANGLE are the only actual problems.

Well, the License field should also be updated to simply LGPLv2.

Comment 13 Kalev Lember 2014-08-21 15:43:27 UTC
* Thu Aug 21 2014 Kalev Lember <kalevlember> - 2.5.3-3
- More package review fixes (#1131284)
- Correct the license tag to read LGPLv2
- Filter out provides for private libraries

Spec URL: https://kalev.fedorapeople.org/webkitgtk4.spec
SRPM URL: https://kalev.fedorapeople.org/webkitgtk4-2.5.3-3.fc22.src.rpm

Koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=7435643

Comment 14 Michael Catanzaro 2014-08-21 20:00:47 UTC
I still recommend applying for a bundling exception, but you and Chris are in a much better position to know if you need one than I am, and like I said earlier I don't want to block on that since this is just a version bump and we already do it.

ACCEPT

Comment 15 Kalev Lember 2014-08-21 21:14:10 UTC
Yep, should probably do that. Thanks for the thorough review, Michael!

Comment 16 Kalev Lember 2014-08-21 21:17:39 UTC
New Package SCM Request
=======================
Package Name: webkitgtk4
Short Description: GTK+ Web content engine library
Upstream URL: http://www.webkitgtk.org/
Owners: tpopela kalev
Branches: f21
InitialCC:

Comment 17 Gwyn Ciesla 2014-08-22 12:17:56 UTC
Git done (by process-git-requests).

Comment 18 Kalev Lember 2014-08-22 13:17:26 UTC
Package imported and building; closing the ticket.


Note You need to log in before you can comment on or make changes to this bug.