yui / yui3

A library for building richly interactive web applications.
http://yuilibrary.com/
Other
4.12k stars 1.29k forks source link

YUI 3.13.0 - What happended to the /yui3/build/assets directory? #1322

Closed glively closed 10 years ago

glively commented 10 years ago

YUI 3.13.0 - What happened to the /yui3/build/assets directory? This folder existed in previous YUI3 releases, but not 3.13.0. I do not see any mention of this in the release notes.

After updating our DEV site to use 3.13.0, we're seeing 404 errors when a YUI widget tries to access "assets/skins/sam/sprite.png".

The issue appears to come from the tabview.css file located in yui\build\tabview\assets\skins\sam

clarle commented 10 years ago

Ping @jconniff.

ezequiel commented 10 years ago

@glively,

Thanks.

In YUI 3.11.0, the assets folder was moved into src\common. Therefore, sprite.png is now found in src\common\assets\skins\sam.

glively commented 10 years ago

Thanks @ezequiel.

The assets folder did in fact exist in the build release of 3.12. Now we updated to 3.13 and are receiving 404 errors trying to find the sprite.png file.

As you mentioned, I do in fact see the src\common\assets\skins\sam in 3.13. However I do not see a common folder OR an assets folder under the /build directory, and this is what we deploy to our server; not the /src directory.

derek commented 10 years ago

@glively I suspect the reason you are not finding the /build/assets/skins/sam/sprite.png file is because you are deploying a Shifter-based build? Please correct me if I'm wrong. A build from $ shifter --walk does not copy files into /build/assets/, but a build from $ grunt release does. This is because grunt-yui-contrib's release task is in charge of aggregating the skins and dumping them into /build/assets/.

For example, here's the current CDN deployment, which includes all the correct files

Via http://yui.yahooapis.com/3.13.0/build/assets/skins/sam/tabview.css

.yui3-tab-label{
    background:#d8d8d8 url(http://yui.yahooapis.com/3.13.0/assets/skins/sam/sprite.png) repeat-x;border:solid #a3a3a3;
    border-width:1px 1px 0 1px;
    color:#000;
    cursor:pointer;
    font-size:85%;
    padding:.3em .75em;
    text-decoration:none
}

You can verify that sprite.png exists @ http://yui.yahooapis.com/3.13.0/build/assets/skins/sam/sprite.png.

The reason this file disappeared from the CDN after 3.10.0 is because we did a cleanup of the /build/ directory (https://github.com/yui/yui3/pull/865/) to remove anything that wasn't built by Shifter, which includes the /build/assets/ directory. While it seems like a bug that Grunt would introduce new files that Shifter doesn't, I'd also contend that creating the rollup skins shouldn't be Shifter's job. But, one of those is opposing views is incorrect, so some more thought will have to go into determining the most appropriate solution.

FWIW, there's an open ticket against Grunt (https://github.com/yui/grunt-yui-contrib/issues/5) to do a release verification against the /build/ and /release/{version}/dist/ directories to ensure they contain the same files. Once that is implemented, inconcistencies like this will be caught.

As a resolution to your specific issue, please deploy builds from $ grunt release or a release zip, not $ shifter --walk. Please let me know if my assumption that you are using Shifter is incorrect. Thanks!

glively commented 10 years ago

@derek Thank you for your feedback. I didn't use any particular build method myself. I just downloaded the latest YUI3 3.13.0 code from the YUI3 download site (https://github.com/yui/yui3/releases), unzipped it, grabbed the contents of the build folder and copied it do our dev server into a yui3-13.0 folder.

Thank you

ezequiel commented 10 years ago

@glively,

Oops, I think you downloaded the wrong zip file. Here's the one containing a deployable build directory: http://yui.zenfs.com/releases/yui3/yui_3.13.0.zip

glively commented 10 years ago

@ezequiel

You are correct! Thank you.

glively commented 10 years ago

resolved