Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Sage 9 #1590

Merged
merged 94 commits into from
Aug 30, 2016
Merged

[WIP] Sage 9 #1590

merged 94 commits into from
Aug 30, 2016

Conversation

retlehs
Copy link
Member

@retlehs retlehs commented Dec 19, 2015

work in progress, no ETA for release at this time

goals

@QWp6t QWp6t changed the title Sage 9 [WIP] Sage 9 Dec 20, 2015
@retlehs retlehs added the 9.0.0 label Dec 21, 2015
@retlehs retlehs modified the milestone: 9.0.0 Dec 21, 2015
@QWp6t
Copy link
Member

QWp6t commented Jan 11, 2016

npm WARN deprecated [email protected]: Please use gulp-cssnano instead.

@joaovpmamede
Copy link

I guess even gulp could be dropped in favor of something like:

browser-sync-webpack-plugin
or by looking at one recipe from browserSync repo (e.g. webpack.monkey-hot-loader)

@rob006
Copy link
Contributor

rob006 commented Feb 19, 2016

drop bower in favor of npm

Why?

@austinpray
Copy link
Contributor

@rob006 with webpack you can use npm, bower, and or manually vendored scripts together with no problems. However, going forward, we are going to recommend using npm. The packages in npm's registry are higher-quality and usually built with UMD/module loading in mind.

As far as community sentiment: a lot of the react community doesn't even bother to publish to bower. Angular 2 dropped support for bower as well.

@rob006
Copy link
Contributor

rob006 commented Feb 19, 2016

@austinpray I'm just curious what is wrong with bower so people want use package manager designed for JS for all frontend dependencies (which may not contain any JS content, for example css frameworks or font sets). And I always get some irrational arguments like "bower's tree is flat" or "bower is unreliable because depend on GitHub, and GitHub can be DDoSed". So Sage drop bower because some specific issue, or just because npm is cooler?
Personally I pretty like separation of PHP dependencies (composer), frontend dependencies (bower) and node dependencies which are used only as development tools (npm).

Angular 2 dropped support for bower as well.

No, it doesn't, it just not support all features of bower. It even use bower:
https://github.com/angular/angular/blob/master/bower.json
https://github.com/angular/angular/blob/master/package.json#L46

@evanfuture
Copy link

There have been a lot more times recently when a package I really wanted to use just wasn't available on bower, and I had to add it manually to my overrides files instead of just installing it. Its not that you can't keep using bower, but I'd say that most things you'd install that have a bower.json file will also have a package.json file.

@QWp6t
Copy link
Member

QWp6t commented Feb 19, 2016

@rob006, I think you might have missed apray's opening sentence. Here it is again.

with webpack you can use npm, bower, and or manually vendored scripts together with no problems

So feel free to keep using Bower if that's what you're into. But we will most likely be pulling Sage 9 dependencies from npm.

@rob006
Copy link
Contributor

rob006 commented Feb 19, 2016

@QWp6t I have not missed that, I just ask what is the reason of dropping bower and what is npm advantage. I'm not a bower fanboy, if there is something wrong with bower I'd like to know that. If it's only personal preferences, just say it, I'm fine with it.

@austinpray
Copy link
Contributor

@rob006 a 100% logical reason to drop bower is that it is not needed. For the purposes of sage as it appears out of the box: npm and bower have overlapping features. We simply do not require 3 package managers.

If you personally enjoy bower or your project calls for bower, it will still be just as easy to use. If not easier than before.

@retlehs retlehs mentioned this pull request Feb 19, 2016
@retlehs
Copy link
Member Author

retlehs commented Mar 10, 2016

@ptrckvzn has been working on webpack with sage 9 😍 more info: https://discourse.roots.io/t/sage-9-webpack/6066

WatsonWeb and others added 28 commits July 2, 2016 03:46
Remove path.extname() check to fix build:production task.

Currently path.extname() is being supplied an object when it expects a string, resulting in a fatal error during production builds.

Removal is the cleanest solution as it's an unnecessary check, assets[name] will always be an object.
Wrapper will now pass through $template if locate_template() turns up zero
results.
Rework template wrapper, bring back template_part()
* Isolate scope of included files
* Load composer dependencies before loading Sage procedural code

Note that scope isolation was originally proposed by @al-the-x in 2014,
and we rejected it at the time. Our theory at the time was that shared
scope might be expected by WordPress developers. But since then we've done
quite a number of things that are atypical of WordPress development,
including our use of namespaces, which in itself is a form of scope
isolation.
Remove path.extname() check
added link to podcast to readme
moved contributing.md to .github
1. Update dependencies
   - Add font-awesome as dependency
   - Switch to Bootstrap 4 dev branch
   - Remove eslint airbnb style (we're not using it)

2. Imported images and fonts should go into dist/images
   and dist/fonts, respectively

3. Only lint our own code, not external code (fixes #1633)
#1696)

* Set dynamically aboslute public path on 'npm run watch'; fix http/https hardcoded in watch.js

* WEBPACK_PUBLIC_PATH fix
@QWp6t QWp6t merged commit 7623ad0 into master Aug 30, 2016
@QWp6t QWp6t deleted the sage-9 branch August 30, 2016 02:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.