diff options
author | Gleb Mazovetskiy <glex.spb@gmail.com> | 2015-08-26 04:59:48 +0300 |
---|---|---|
committer | Gleb Mazovetskiy <glex.spb@gmail.com> | 2015-08-26 04:59:48 +0300 |
commit | 72a53828fac5f025848b62594c257fadcf24fb0c (patch) | |
tree | b4cffd4b97c20a940275c745f29ce07a625f0497 | |
parent | 5091bc672da48b7f45b6daa0270752844ddd5da7 (diff) |
Remove obsolete files, s/bootstrap-sass/bootstrap
33 files changed, 31 insertions, 1007 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 0113796..825c32f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,195 +1 @@ # Changelog - -## 3.3.5 - -Fix for standalone Compass extension compatibility. [#914](https://github.com/twbs/bootstrap-sass/issues/914) - -Framework version: Bootstrap **v3.3.5** - -## 3.3.4 - -No Sass-specific changes. - -Framework version: Bootstrap **v3.3.4** - -## 3.3.3 - -This is a re-packaged release of 3.3.2.1 (v3.3.2+1). - -Versions are now strictly semver. -The PATCH version may be ahead of the upstream. - -Framework version: Bootstrap **v3.3.2**. - -## 3.3.2.1 - -* Fix glyphicons regression (revert 443d5b49eac84aec1cb2f8ea173554327bfc8c14) - -## 3.3.2.0 - -* Autoprefixer is now required, and `autoprefixer-rails` is now a dependency for the ruby gem. [#824](https://github.com/twbs/bootstrap-sass/issues/824) -* Minimum precision reduced from 10 to 8 [#821](https://github.com/twbs/bootstrap-sass/issues/821) -* Requiring bootstrap JS from npm now works [#812](https://github.com/twbs/bootstrap-sass/issues/812) -* Fix Sass 3.4.x + IE10 compatibility issue [#803](https://github.com/twbs/bootstrap-sass/issues/803) -* Provide minified JS bundle [#777](https://github.com/twbs/bootstrap-sass/issues/777) -* Bower package is now at bootstrap-sass [#813](https://github.com/twbs/bootstrap-sass/issues/813) - - -## 3.3.1.0 - -* Variables override template at templates/project/_bootstrap-variables.sass -* Readme: Bower + Rails configuration - -## 3.3.0.1 - -* Fix loading issue with the ruby gem version - -## 3.3.0 - -* Improve libsass compatibility -* Support using Bower package with Rails - -## 3.2.0.2 - -Main bootstrap file is now a partial (_bootstrap.scss), for compatibility with Compass 1+. - -Fixed a number of bugs. [Issues closed in v3.2.0.2](https://github.com/twbs/bootstrap-sass/issues?q=is%3Aissue+is%3Aclosed+milestone%3Av3.2.0.2). - -## 3.2.0.1 - -Fixed a number of bugs: [Issues closed in v3.2.0.1](https://github.com/twbs/bootstrap-sass/issues?q=is%3Aissue+is%3Aclosed+milestone%3Av3.2.0.1). - -## 3.2.0.0 - -- Assets (Sass, JS, fonts) moved from `vendor/assets` to `assets`. `bootstrap.js` now contains concatenated JS. -- Compass generator now copies JS and fonts, and provides a better default `styles.sass`. -- Compass, Sprockets, and Mincer asset path helpers are now provided in pure Sass: `bootstrap-compass`, `bootstrap-sprockets`, and `bootstrap-mincer`. -Asset path helpers must be imported before `bootstrap`, more in Readme. -- Sprockets / Mincer JS manifest has been moved to `bootstrap-sprockets.js`. -It can be required without adding Bootstrap JS directory to load path, as it now uses relative paths. -- Sprockets: `depend_on_asset` (`glyphicons.scss`) has been changed to `depend_on` to work around an issue with `depend_on_asset`. -[More information](https://github.com/twbs/bootstrap-sass/issues/592#issuecomment-46570286). - -## 3.1.1.0 - -- Updated Bower docs - -## 3.1.0.2 - -- #523: Rails 3.2 compatibility -- Bugfixes from upstream up to 7eb532262fbd1112215b5a547b9285794b5360ab. - -## 3.1.0.1 - -- #518: `scale` mixin Sass compatibility issue - -## 3.1.0.0 - -* compiles with libsass master - -## 3.0.2.1 - -* fix vendor paths for compass - -## 3.0.0.0 - -* Fully automated (lots of string juggling) LESS -> Sass conversion. - *Gleb Mazovetskiy* -* Ported rake task from vwall/compass-twitter-bootstrap to convert Bootstrap upstream - *Peter Gumeson* -* Moved javascripts to us `bootstrap-component.js` to `bootstrap/component.js` - *Peter Gumeson* - -## 2.3.2.2 - -* Allow sass-rails `>= 3.2` - *Thomas McDonald* - -## 2.3.2.1 - -## 2.3.2.0 - -* Update to Bootstrap 2.3.2 - *Dan Allen* - -## 2.3.1.3 - -* Find the correct Sprockets context for the `image_path` function - *Tristan Harward, Gleb Mazovetskiy* - -## 2.3.1.2 - -* Fix changes to image url - *Gleb Mazovetskiy* -* Copy _variables into project on Compass install - *Phil Thompson* -* Add `bootstrap-affix` to the Compass template file - *brief* - -## 2.3.1.1 (yanked) - -* Change how image_url is handled internally - *Tristan Harward* -* Fix some font variables not having `!default` - *Thomas McDonald* - -## 2.3.0.0 -* [#290] Update to Bootstrap 2.3.0 - *Tristan Harward* -* Fix `rake:debug` with new file locations - *Thomas McDonald* -* Add draft contributing document - *Thomas McDonald* -* [#260] Add our load path to the global Sass load path - *Tristan Harward* -* [#275] Use GitHub notation in Sass head testing gemfile - *Timo Schilling* -* [#279, #283] Readme improvements - *theverything, Philip Arndt* - -## 2.2.2.0 -* [#270] Update to Bootstrap 2.2.2 - *Tristan Harward* -* [#266] Add license to gemspec - *Peter Marsh* - -## 2.2.1.1 -* [#258] Use `bootstrap` prefix for `@import`ing files in `bootstrap/bootstrap.scss` - *Umair Siddique* - -## 2.2.1.0 -* [#246] Update to Bootstrap 2.2.1 - *Tristan Harward* -* [#246] Pull Bootstrap updates from jlong/sass-twitter-bootstrap - *Tristan Harward* - -## 2.1.1.0 -* Update to Bootstrap 2.1.1 -* [#222] Remove 100% multiplier in vertical-three-colours -* [#227] Fix IE component animation collapse -* [#228] Fix variables documentation link -* [#231] Made .input-block-level a class as well as mixin - -## 2.1.0.1 -* [#219] Fix expected a color. Got: transparent. -* [#207] Add missing warning style for table row highlighting -* [#208] Use grid-input-span for input spans - -## 2.1.0.0 -* Updated to Bootstrap 2.1 -* Changed some mixin names to be more consistent. Nested mixins in Less are separated by a `-` when they are flattened in Sass. - -## 2.0.4.1 -* Fix `.row-fluid > spanX` nesting -* Small Javascript fixes for those staying on the 2.0.4 release -* Add `!default` to z-index variables. - -## 2.0.4.0 -* Updated to Bootstrap 2.0.4 -* Switched to Bootstrap 2.0.3+'s method of separating responsive files -* [#149, #150] Fix off by one error introduced with manual revert of media query breakpoints -* `rake debug` and `rake test` both compile bootstrap & bootstrap-responsive - -## 2.0.3.1 -* [#145, #146] Fix button alignment in collapsing navbar as a result of an incorrect variable - -## 2.0.3 -* Updated to Bootstrap 2.0.3 -* [#106] Support for Rails < 3.1 through Compass -* [#132] Add CI testing -* [#106] Support Rails w/Compass -* [#134] Fix support for Rails w/Compass - -## 2.0.2 -* [#86] Updated to Bootstrap 2.0.2 -Things of note: static navbars now have full width. (to be fixed in 2.0.3) `.navbar-inner > .container { width:940px; }` seems to work in the meanwhile -* [#62] Fixed asset compilation taking a *very* long time. -* [#69, #79, #80] \(Hopefully) clarified README. Now with less cat humour. -* [#91] Removed doubled up Sass extensions for Rails. -* [#63, #73] Allow for overriding of image-path -* [[SO](http://stackoverflow.com/a/9909626/241212)] Added makeFluidColumn mixin for defining fluid columns. Fluid rows must use `@extend .row-fluid`, and any column inside it can use `@include makeFluidColumn(num)`, where `num` is the number of columns. Unfortunately, there is a rather major limitation to this: margins on first-child elements must be overriden. See the attached Stack Overflow answer for more information. - -## 2.0.1 -* Updated to Bootstrap 2.0.1 -* Modified `@mixin opacity()` to take an argument `0...1` rather than `0...100` to be consistent with Compass. - -## 2.0.0 -* Updated to Bootstrap 2.0.0 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index 246b96d..0000000 --- a/CONTRIBUTING.md +++ /dev/null @@ -1,86 +0,0 @@ -# Contributing to bootstrap-sass - -## Asset Changes - -Any changes to `bootstrap-sass` assets (scss, javascripts, fonts) should be checked against the `convert` rake task. -For usage instructions, see the [README](/README.md). - -If something is broken in the converter, it's preferable to update the converter along with the asset itself. - - -## Bugs - -A bug is a _demonstrable problem_ that is caused by the code in the -repository. Good bug reports are extremely helpful - thank you! - -Guidelines for bug reports: - -1. **Does it belong here?** — is this a problem with bootstrap-sass, or - it an issue with [twbs/bootstrap](https://github.com/twbs/bootstrap)? - We only distribute a direct port and will not modify files if they're not - changed upstream. - -2. **Use the GitHub issue search** — check if the issue has already been - reported. - -3. **Isolate the problem** — ideally create a [reduced test - case](http://css-tricks.com/6263-reduced-test-cases/) and a live example. - -A good bug report shouldn't leave others needing to chase you up for more -information. Please try to be as detailed as possible in your report. What is -your environment? What steps will reproduce the issue? What browser(s) and OS -experience the problem? What would you expect to be the outcome? All these -details will help people to fix any potential bugs. - -Example: - -> Short and descriptive example bug report title -> -> A summary of the issue and the browser/OS environment in which it occurs. If -> suitable, include the steps required to reproduce the bug. -> -> 1. This is the first step -> 2. This is the second step -> 3. Further steps, etc. -> -> `<url>` (a link to the reduced test case) -> -> Any other information you want to share that is relevant to the issue being -> reported. This might include the lines of code that you have identified as -> causing the bug, and potential solutions (and your opinions on their -> merits). - -**[File a bug report](https://github.com/twbs/bootstrap-sass/issues/)** - - -## Pull requests - -**We will not accept pull requests that modify the SCSS beyond fixing bugs caused by *our* code!** - -We use a [converter script][converter-readme] to automatically convert upstream bootstrap, written in LESS, to Sass. - -Issues related to styles or javascript but unrelated to the conversion process should go to [twbs/bootstrap][upstream]. - -Pull requests that fix bugs caused by our code should not modify the SCSS directly, but should patch the converter instead. - -Good pull requests - patches, improvements, new features - are a fantastic -help. They should remain focused in scope and avoid containing unrelated -commits. If your contribution involves a significant amount of work or substantial -changes to any part of the project, please open an issue to discuss it first. - -Make sure to adhere to the coding conventions used throughout a project -(indentation, accurate comments, etc.). Please update any documentation that is -relevant to the change you're making. - -## Do not… - -Please **do not** use the issue tracker for personal support requests (use -[Stack Overflow](http://stackoverflow.com/)). - -Please **do not** derail or troll issues. Keep the -discussion on topic and respect the opinions of others. - -*props [html5-boilerplate](https://github.com/h5bp/html5-boilerplate/blob/master/CONTRIBUTING.md)* - -[upstream]: https://github.com/twbs/bootstrap -[converter-readme]: https://github.com/twbs/bootstrap-sass/blob/master/README.md#upstream-converter @@ -6,5 +6,9 @@ gemspec gem 'compass', require: false group :development do + gem 'term-ansicolor' +end + +group :debug do gem 'byebug', platforms: [:mri_21, :mri_22], require: false end @@ -1,353 +1,9 @@ -# Bootstrap for Sass -[![Gem Version](https://badge.fury.io/rb/bootstrap-sass.svg)](http://badge.fury.io/rb/bootstrap-sass) -[![npm version](https://img.shields.io/npm/v/bootstrap-sass.svg?style=flat)](https://www.npmjs.com/package/bootstrap-sass) -[![Bower Version](https://badge.fury.io/bo/bootstrap-sass.svg)](http://badge.fury.io/bo/bootstrap-sass) -[![Build Status](http://img.shields.io/travis/twbs/bootstrap-sass.svg)](http://travis-ci.org/twbs/bootstrap-sass) +# Bootstrap Ruby Gem -`bootstrap-sass` is a Sass-powered version of [Bootstrap](http://github.com/twbs/bootstrap), ready to drop right into your Sass powered applications. +This is the future home of the Bootstrap v4 ruby gem for Ruby on Rails (Sprockets) and Compass. -## Installation - -Please see the appropriate guide for your environment of choice: - -* [Ruby on Rails](#a-ruby-on-rails). -* [Compass](#b-compass-without-rails) not on Rails. -* [Bower](#c-bower). - -### a. Ruby on Rails - -`bootstrap-sass` is easy to drop into Rails with the asset pipeline. - -In your Gemfile you need to add the `bootstrap-sass` gem, and ensure that the `sass-rails` gem is present - it is added to new Rails applications by default. +There has not been a release yet, but if you'd like to try out the latest development version, add this to your Gemfile: ```ruby -gem 'bootstrap-sass', '~> 3.3.5' -gem 'sass-rails', '>= 3.2' -``` - -`bundle install` and restart your server to make the files available through the pipeline. - -Import Bootstrap styles in `app/assets/stylesheets/application.scss`: - -```scss -// "bootstrap-sprockets" must be imported before "bootstrap" and "bootstrap/variables" -@import "bootstrap-sprockets"; -@import "bootstrap"; -``` - -`bootstrap-sprockets` must be imported before `bootstrap` for the icon fonts to work. - -Make sure the file has `.scss` extension (or `.sass` for Sass syntax). If you have just generated a new Rails app, -it may come with a `.css` file instead. If this file exists, it will be served instead of Sass, so rename it: - -```console -$ mv app/assets/stylesheets/application.css app/assets/stylesheets/application.scss -``` - -Then, remove all the `//= require` and `//= require_tree` statements from the file. Instead, use `@import` to import Sass files. - -Do not use `//= require` in Sass or your other stylesheets will not be [able to access][antirequire] the Bootstrap mixins or variables. - -Require Bootstrap Javascripts in `app/assets/javascripts/application.js`: - -```js -//= require jquery -//= require bootstrap-sprockets -``` - -`bootstrap-sprockets` and `bootstrap` [should not both be included](https://github.com/twbs/bootstrap-sass/issues/829#issuecomment-75153827) in `application.js`. - -`bootstrap-sprockets` provides individual Bootstrap Javascript files (`alert.js` or `dropdown.js`, for example), while -`bootstrap` provides a concatenated file containing all Bootstrap Javascripts. - -#### Bower with Rails - -When using [bootstrap-sass Bower package](#c-bower) instead of the gem in Rails, configure assets in `config/application.rb`: - -```ruby -# Bower asset paths -root.join('vendor', 'assets', 'bower_components').to_s.tap do |bower_path| - config.sass.load_paths << bower_path - config.assets.paths << bower_path -end -# Precompile Bootstrap fonts -config.assets.precompile << %r(bootstrap-sass/assets/fonts/bootstrap/[\w-]+\.(?:eot|svg|ttf|woff2?)$) -# Minimum Sass number precision required by bootstrap-sass -::Sass::Script::Value::Number.precision = [8, ::Sass::Script::Value::Number.precision].max -``` - -Replace Bootstrap `@import` statements in `application.scss` with: - -```scss -$icon-font-path: "bootstrap-sass/assets/fonts/bootstrap/"; -@import "bootstrap-sass/assets/stylesheets/bootstrap-sprockets"; -@import "bootstrap-sass/assets/stylesheets/bootstrap"; -``` - -Replace Bootstrap `require` directive in `application.js` with: - -```js -//= require bootstrap-sass/assets/javascripts/bootstrap-sprockets -``` - -#### Rails 4.x - -Please make sure `sprockets-rails` is at least v2.1.4. - -#### Rails 3.2.x - -bootstrap-sass is no longer compatible with Rails 3. The latest version of bootstrap-sass compatible with Rails 3.2 is v3.1.1.0. - -### b. Compass without Rails - -Install the gem: - -```console -$ gem install bootstrap-sass -``` - -If you have an existing Compass project: - -1. Require `bootstrap-sass` in `config.rb`: - - ```ruby - require 'bootstrap-sass' - ``` - -2. Install Bootstrap with: - - ```console - $ bundle exec compass install bootstrap -r bootstrap-sass - ``` - -If you are creating a new Compass project, you can generate it with bootstrap-sass support: - -```console -$ bundle exec compass create my-new-project -r bootstrap-sass --using bootstrap +gem 'bootstrap', git: 'https://github.com/twbs/bootstrap-rubygem' ``` - -or, alternatively, if you're not using a Gemfile for your dependencies: - -```console -$ compass create my-new-project -r bootstrap-sass --using bootstrap -``` - -This will create a new Compass project with the following files in it: - -* [styles.sass](/templates/project/styles.sass) - main project Sass file, imports Bootstrap and variables. -* [_bootstrap-variables.sass](/templates/project/_bootstrap-variables.sass) - all of Bootstrap variables, override them here. - -Some bootstrap-sass mixins may conflict with the Compass ones. -If this happens, change the import order so that Compass mixins are loaded later. - -### c. Bower - -bootstrap-sass Bower package is compatible with node-sass 3.2.0+. You can install it with: - -```console -$ bower install bootstrap-sass -``` - -Sass, JS, and all other assets are located at [assets](/assets). - -By default, `bower.json` main field list only the main `_bootstrap.scss` and all the static assets (fonts and JS). -This is compatible by default with asset managers such as [wiredep](https://github.com/taptapship/wiredep). - -#### Node.js Mincer - -If you use [mincer][mincer] with node-sass, import bootstrap like so: - -In `application.css.ejs.scss` (NB **.css.ejs.scss**): - -```scss -// Import mincer asset paths helper integration -@import "bootstrap-mincer"; -@import "bootstrap"; -``` - -In `application.js`: - -```js -//= require bootstrap-sprockets -``` - -See also this [example manifest.js](/test/dummy_node_mincer/manifest.js) for mincer. - - -### Configuration - -#### Sass - -By default all of Bootstrap is imported. - -You can also import components explicitly. To start with a full list of modules copy -[`_bootstrap.scss`](assets/stylesheets/_bootstrap.scss) file into your assets as `_bootstrap-custom.scss`. -Then comment out components you do not want from `_bootstrap-custom`. -In the application Sass file, replace `@import 'bootstrap'` with: - -```scss -@import 'bootstrap-custom'; -``` - -#### Sass: Number Precision - -bootstrap-sass [requires](https://github.com/twbs/bootstrap-sass/issues/409) minimum [Sass number precision][sass-precision] of 8 (default is 5). - -Precision is set for Rails and Compass automatically. -When using ruby Sass compiler standalone or with the Bower version you can set it with: - -```ruby -::Sass::Script::Value::Number.precision = [8, ::Sass::Script::Value::Number.precision].max -``` - -#### Sass: Autoprefixer - -Bootstrap requires the use of [Autoprefixer][autoprefixer]. -[Autoprefixer][autoprefixer] adds vendor prefixes to CSS rules using values from [Can I Use](http://caniuse.com/). - -#### JavaScript - -[`assets/javascripts/bootstrap.js`](/assets/javascripts/bootstrap.js) contains all of Bootstrap JavaScript, -concatenated in the [correct order](/assets/javascripts/bootstrap-sprockets.js). - - -#### JavaScript with Sprockets or Mincer - -If you use Sprockets or Mincer, you can require `bootstrap-sprockets` instead to load the individual modules: - -```js -// Load all Bootstrap JavaScript -//= require bootstrap-sprockets -``` - -You can also load individual modules, provided you also require any dependencies. -You can check dependencies in the [Bootstrap JS documentation][jsdocs]. - -```js -//= require bootstrap/scrollspy -//= require bootstrap/modal -//= require bootstrap/dropdown -``` - -#### Fonts - -The fonts are referenced as: - -```scss -"#{$icon-font-path}#{$icon-font-name}.eot" -``` - -`$icon-font-path` defaults to `bootstrap/` if asset path helpers are used, and `../fonts/bootstrap/` otherwise. - -When using bootstrap-sass with Compass, Sprockets, or Mincer, you **must** import the relevant path helpers before Bootstrap itself, for example: - -```scss -@import "bootstrap-compass"; -@import "bootstrap"; -``` - -## Usage - -### Sass - -Import Bootstrap into a Sass file (for example, application.scss) to get all of Bootstrap's styles, mixins and variables! - -```scss -@import "bootstrap"; -``` - -You can also include optional bootstrap theme: - -```scss -@import "bootstrap/theme"; -``` - -The full list of bootstrap variables can be found [here](http://getbootstrap.com/customize/#less-variables). You can override these by simply redefining the variable before the `@import` directive, e.g.: - -```scss -$navbar-default-bg: #312312; -$light-orange: #ff8c00; -$navbar-default-color: $light-orange; - -@import "bootstrap"; -``` - -## Version - -Bootstrap for Sass version may differ from the upstream version in the last number, known as -[PATCH](http://semver.org/spec/v2.0.0.html). The patch version may be ahead of the corresponding upstream minor. -This happens when we need to release Sass-specific changes. - -Before v3.3.2, Bootstrap for Sass version used to reflect the upstream version, with an additional number for -Sass-specific changes. This was changed due to Bower and npm compatibility issues. - -The upstream versions vs the Bootstrap for Sass versions are: - -| Upstream | Sass | -|---------:|--------:| -| 3.3.5 | 3.3.5 | -| 3.3.4 | 3.3.4 | -| 3.3.2 | 3.3.3 | -| <= 3.3.1 | 3.3.1.x | - -Always refer to [CHANGELOG.md](/CHANGELOG.md) when upgrading. - ---- - -## Development and Contributing - -If you'd like to help with the development of bootstrap-sass itself, read this section. - -### Upstream Converter - -Keeping bootstrap-sass in sync with upstream changes from Bootstrap used to be an error prone and time consuming manual process. With Bootstrap 3 we have introduced a converter that automates this. - -**Note: if you're just looking to *use* Bootstrap 3, see the [installation](#installation) section above.** - -Upstream changes to the Bootstrap project can now be pulled in using the `convert` rake task. - -Here's an example run that would pull down the master branch from the main [twbs/bootstrap](https://github.com/twbs/bootstrap) repo: - - rake convert - -This will convert the latest LESS to Sass and update to the latest JS. -To convert a specific branch or version, pass the branch name or the commit hash as the first task argument: - - rake convert[e8a1df5f060bf7e6631554648e0abde150aedbe4] - -The latest converter script is located [here][converter] and does the following: - -* Converts upstream bootstrap LESS files to its matching SCSS file. -* Copies all upstream JavaScript into `assets/javascripts/bootstrap`, a Sprockets manifest at `assets/javascripts/bootstrap-sprockets.js`, and a concatenation at `assets/javascripts/bootstrap.js`. -* Copies all upstream font files into `assets/fonts/bootstrap`. -* Sets `Bootstrap::BOOTSTRAP_SHA` in [version.rb][version] to the branch sha. - -This converter fully converts original LESS to SCSS. Conversion is automatic but requires instructions for certain transformations (see converter output). -Please submit GitHub issues tagged with `conversion`. - -## Credits - -bootstrap-sass has a number of major contributors: - -<!-- feel free to make these link wherever you wish --> -* [Thomas McDonald](https://twitter.com/thomasmcdonald_) -* [Tristan Harward](http://www.trisweb.com) -* Peter Gumeson -* [Gleb Mazovetskiy](https://github.com/glebm) - -and a [significant number of other contributors][contrib]. - -## You're in good company -bootstrap-sass is used to build some awesome projects all over the web, including -[Diaspora](https://diasporafoundation.org/), [rails_admin](https://github.com/sferik/rails_admin), -Michael Hartl's [Rails Tutorial](http://railstutorial.org/), [gitlabhq](http://gitlabhq.com/) and -[kandan](http://kandan.io/). - -[converter]: https://github.com/twbs/bootstrap-sass/blob/master/tasks/converter/less_conversion.rb -[version]: https://github.com/twbs/bootstrap-sass/blob/master/lib/bootstrap-sass/version.rb -[contrib]: https://github.com/twbs/bootstrap-sass/graphs/contributors -[antirequire]: https://github.com/twbs/bootstrap-sass/issues/79#issuecomment-4428595 -[jsdocs]: http://getbootstrap.com/javascript/#transitions -[sass-precision]: http://sass-lang.com/documentation/Sass/Script/Value/Number.html#precision%3D-class_method -[mincer]: https://github.com/nodeca/mincer -[autoprefixer]: https://github.com/ai/autoprefixer @@ -1,8 +1,7 @@ lib_path = File.join(File.dirname(__FILE__), 'lib') $:.unshift(lib_path) unless $:.include?(lib_path) -load './tasks/bower.rake' -require './lib/bootstrap-sass' +require './lib/bootstrap' require 'rake/testtask' Rake::TestTask.new do |t| t.libs << 'test' @@ -20,7 +19,7 @@ task :debug do end end -desc 'Update bootstrap to bootstrap-sass' +desc 'Update bootstrap from upstream' task :update, :branch do |t, args| require './tasks/updater' Updater.new(branch: args[:branch]).update_bootstrap diff --git a/assets/images/.keep b/assets/images/.keep deleted file mode 100644 index e69de29..0000000 --- a/assets/images/.keep +++ /dev/null diff --git a/bootstrap-sass.gemspec b/bootstrap.gemspec index 89d4312..0732e1a 100644 --- a/bootstrap-sass.gemspec +++ b/bootstrap.gemspec @@ -1,17 +1,17 @@ lib = File.expand_path('../lib', __FILE__) $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) -require 'bootstrap-sass/version' +require 'bootstrap/version' Gem::Specification.new do |s| - s.name = "bootstrap-sass" + s.name = 'bootstrap' s.version = Bootstrap::VERSION - s.authors = ["Thomas McDonald"] - s.email = 'tom@conceptcoding.co.uk' - s.summary = "Twitter's Bootstrap, converted to Sass and ready to drop into Rails or Compass" - s.homepage = "https://github.com/twbs/bootstrap-sass" + s.authors = ['Twitter, Inc.'] + s.email = '' # TODO + s.summary = 'The most popular HTML, CSS, and JavaScript framework for developing responsive, mobile first projects on the web. http://getbootstrap.com' + s.homepage = 'https://github.com/twbs/bootstrap-rubygem' s.license = 'MIT' - s.add_runtime_dependency 'sass', '>= 3.3.0' + s.add_runtime_dependency 'sass', '>= 3.3.4' # Testing dependencies s.add_development_dependency 'minitest', '~> 5.8.0' @@ -27,8 +27,6 @@ Gem::Specification.new do |s| s.add_development_dependency 'jquery-rails', '>= 3.1.0' s.add_development_dependency 'slim-rails' s.add_development_dependency 'uglifier' - # Converter - s.add_development_dependency 'term-ansicolor' s.files = `git ls-files`.split("\n") s.test_files = `git ls-files -- test/*`.split("\n") diff --git a/bower.json b/bower.json deleted file mode 100644 index f32c7f5..0000000 --- a/bower.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "bootstrap-sass", - "homepage": "https://github.com/twbs/bootstrap-sass", - "authors": [ - "Thomas McDonald", - "Tristan Harward", - "Peter Gumeson", - "Gleb Mazovetskiy" - ], - "description": "bootstrap-sass is a Sass-powered version of Bootstrap, ready to drop right into your Sass powered applications.", - "moduleType": "globals", - "main": [ - "assets/stylesheets/_bootstrap.scss", - "assets/javascripts/bootstrap.js" - ], - "keywords": [ - "twbs", - "bootstrap", - "sass" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "lib", - "tasks", - "templates", - "test", - "*.gemspec", - "Rakefile", - "Gemfile" - ], - "dependencies": { - "jquery": ">= 1.9.0" - } -} diff --git a/composer.json b/composer.json deleted file mode 100644 index 9d55fa7..0000000 --- a/composer.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "name": "twbs/bootstrap-sass", - "description": "bootstrap-sass is a Sass-powered version of Bootstrap, ready to drop right into your Sass powered applications.", - "keywords": ["bootstrap", "css", "sass"], - "homepage": "http://github.com/twbs/bootstrap-sass", - "authors": [ - { - "name": "Thomas McDonald" - }, - { - "name": "Tristan Harward" - }, - { - "name": "Peter Gumeson" - }, - { - "name": "Gleb Mazovetskiy" - }, - { - "name": "Mark Otto" - }, - { - "name": "Jacob Thornton" - } - ], - "support": { - "issues": "https://github.com/twbs/bootstrap-sass/issues" - }, - "license": "MIT", - "extra": { - "branch-alias": { - "dev-master": "3.3.x-dev" - } - } -} diff --git a/lib/bootstrap-sass.rb b/lib/bootstrap.rb index 4a7163e..3f49538 100644 --- a/lib/bootstrap-sass.rb +++ b/lib/bootstrap.rb @@ -1,4 +1,4 @@ -require 'bootstrap-sass/version' +require 'bootstrap/version' module Bootstrap class << self # Inspired by Kaminari @@ -50,9 +50,6 @@ module Bootstrap require 'sass' ::Sass.load_paths << stylesheets_path - - # bootstrap requires minimum precision of 8, see https://github.com/twbs/bootstrap-sass/issues/409 - ::Sass::Script::Number.precision = [8, ::Sass::Script::Number.precision].max end def register_compass_extension @@ -66,7 +63,7 @@ module Bootstrap end def register_rails_engine - require 'bootstrap-sass/engine' + require 'bootstrap/engine' end def register_sprockets diff --git a/lib/bootstrap-sass/engine.rb b/lib/bootstrap/engine.rb index 4e7a4a1..321d626 100644 --- a/lib/bootstrap-sass/engine.rb +++ b/lib/bootstrap/engine.rb @@ -1,8 +1,8 @@ module Bootstrap module Rails class Engine < ::Rails::Engine - initializer 'bootstrap-sass.assets.precompile' do |app| - %w(stylesheets javascripts images).each do |sub| + initializer 'bootstrap.assets.precompile' do |app| + %w(stylesheets javascripts).each do |sub| app.config.assets.paths << root.join('assets', sub).to_s end end diff --git a/lib/bootstrap-sass/version.rb b/lib/bootstrap/version.rb index 0b27ed3..0b27ed3 100644 --- a/lib/bootstrap-sass/version.rb +++ b/lib/bootstrap/version.rb diff --git a/package.json b/package.json deleted file mode 100644 index 2096976..0000000 --- a/package.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "name": "bootstrap-sass", - "version": "3.3.5", - "description": "bootstrap-sass is a Sass-powered version of Bootstrap, ready to drop right into your Sass powered applications.", - "main": "assets/javascripts/bootstrap.js", - "repository": { - "type": "git", - "url": "git://github.com/twbs/bootstrap-sass" - }, - "keywords": [ - "bootstrap", - "sass", - "css" - ], - "contributors": [ - "Thomas McDonald", - "Tristan Harward", - "Peter Gumeson", - "Gleb Mazovetskiy" - ], - "license": "MIT", - "bugs": { - "url": "https://github.com/twbs/bootstrap-sass/issues" - }, - "devDependencies": { - "node-sass": "~3.2", - "mincer": "~1.3", - "ejs": "~2.3" - } -} diff --git a/sache.json b/sache.json deleted file mode 100644 index 02ec685..0000000 --- a/sache.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name": "bootstrap-sass", - "description": "bootstrap-sass is a Sass-powered version of Bootstrap, ready to drop right into your Sass powered applications", - "tags": ["bootstrap", "grid", "typography", "buttons", "ui", "responsive-web-design"] -} diff --git a/tasks/bower.rake b/tasks/bower.rake deleted file mode 100644 index e367e83..0000000 --- a/tasks/bower.rake +++ /dev/null @@ -1,30 +0,0 @@ -require 'find' -require 'json' -require 'pathname' - -namespace :bower do - - find_files = ->(path) { - Find.find(Pathname.new(path).relative_path_from(Pathname.new Dir.pwd).to_s).map do |path| - path if File.file?(path) - end.compact - } - - desc 'update main and version in bower.json' - task :generate do - require 'bootstrap-sass' - Dir.chdir Bootstrap.gem_path do - spec = JSON.parse(File.read 'bower.json') - - spec['main'] = - find_files.(File.join(Bootstrap.stylesheets_path, '_bootstrap.scss')) + - %w(assets/javascripts/bootstrap.js) - - spec['version'] = Bootstrap::VERSION - - File.open('bower.json', 'w') do |f| - f.puts JSON.pretty_generate(spec) - end - end - end -end diff --git a/tasks/updater.rb b/tasks/updater.rb index c7db6d6..5f8b386 100644 --- a/tasks/updater.rb +++ b/tasks/updater.rb @@ -25,7 +25,7 @@ require_relative 'updater/scss_conversion' require_relative 'updater/js_conversion' require_relative 'updater/logger' require_relative 'updater/network' -require 'bootstrap-sass/version' +require 'bootstrap/version' class Updater extend Forwardable @@ -72,7 +72,7 @@ class Updater # Update version.rb file with BOOTSTRAP_SHA def store_version - path = 'lib/bootstrap-sass/version.rb' + path = 'lib/bootstrap/version.rb' content = File.read(path).sub(/BOOTSTRAP_SHA\s*=\s*['"][\w]+['"]/, "BOOTSTRAP_SHA = '#@branch_sha'") File.open(path, 'w') { |f| f.write(content) } end diff --git a/templates/project/manifest.rb b/templates/project/manifest.rb index 43f6e62..bbf33cf 100644 --- a/templates/project/manifest.rb +++ b/templates/project/manifest.rb @@ -1,4 +1,4 @@ -description 'Bootstrap for Sass' +description 'Bootstrap' # Stylesheet importing bootstrap stylesheet 'styles.sass' diff --git a/templates/project/styles.sass b/templates/project/styles.sass index 0dcb8ab..f59fbe1 100644 --- a/templates/project/styles.sass +++ b/templates/project/styles.sass @@ -1,6 +1,6 @@ // Import custom Bootstrap variables @import "bootstrap-variables" -// Import Bootstrap for Sass +// Import Bootstrap @import "bootstrap" // or Import Bootstrap Flex //@import "bootstrap-flex" diff --git a/test/compass_test.rb b/test/compass_test.rb index 1811ca2..6a5123d 100644 --- a/test/compass_test.rb +++ b/test/compass_test.rb @@ -2,7 +2,7 @@ require 'test_helper' class CompassTest < Minitest::Test def test_create_project - command = 'rm -rf tmp/new-compass-project; bundle exec compass create tmp/new-compass-project -r bootstrap-sass --using bootstrap --trace --force' + command = 'rm -rf tmp/new-compass-project; bundle exec compass create tmp/new-compass-project -r bootstrap --trace --force' success = silence_stdout_if(!ENV['VERBOSE']) { system(command) } assert success, 'Compass project creation failed!' end diff --git a/test/compilation_test.rb b/test/compilation_test.rb deleted file mode 100644 index 8ff0e14..0000000 --- a/test/compilation_test.rb +++ /dev/null @@ -1,18 +0,0 @@ -require 'test_helper' -require 'fileutils' -require 'sass' - -class CompilationTest < Minitest::Test - def test_compilation - path = 'assets/stylesheets' - %w(_bootstrap _bootstrap-flex _bootstrap-grid _bootstrap-reboot).each do |file| - FileUtils.rm_rf('.sass-cache', secure: true) - engine = Sass::Engine.for_file("#{path}/#{file}.scss", syntax: :scss, load_paths: [path]) - FileUtils.mkdir_p("tmp/#{File.dirname(file)}") - File.open("tmp/#{file}.css", 'w') { |f| - f.write engine.render - } - assert true # nothing was raised - end - end -end diff --git a/test/dummy_node_mincer/apple-touch-icon-144-precomposed.png b/test/dummy_node_mincer/apple-touch-icon-144-precomposed.png Binary files differdeleted file mode 100644 index 622a865..0000000 --- a/test/dummy_node_mincer/apple-touch-icon-144-precomposed.png +++ /dev/null diff --git a/test/dummy_node_mincer/application.css.ejs.scss b/test/dummy_node_mincer/application.css.ejs.scss deleted file mode 100644 index 6b3235a..0000000 --- a/test/dummy_node_mincer/application.css.ejs.scss +++ /dev/null @@ -1,5 +0,0 @@ -@import "bootstrap"; - -#image-retina { - @include img-retina("apple-touch-icon-144-precomposed.png", "apple-touch-icon-144-precomposed.png", 72px, 72px); -} diff --git a/test/dummy_node_mincer/manifest.js b/test/dummy_node_mincer/manifest.js deleted file mode 100644 index 7935b97..0000000 --- a/test/dummy_node_mincer/manifest.js +++ /dev/null @@ -1,87 +0,0 @@ -'use strict'; - - -// Build script from https://github.com/nodeca/mincer/tree/master/examples - -// -// Require module -// - - -var Mincer = require('mincer'); - - -// -// Get Mincer environment -// - - -// -// Configure Mincers logger, by default, all -// messages are going to the middle of nowhere -// - - -Mincer.logger.use(console); - - -// -// Create and export environment -// - - -var environment = new Mincer.Environment(process.cwd()); - - -// -// Configure environment load paths (where to find ssets) -// - -// Include bootstrap scss load path -var bootstrapPath = '../../'; -environment.appendPath(bootstrapPath + 'assets/stylesheets'); - -// Include fonts load path -environment.appendPath(bootstrapPath + 'assets/fonts'); - -// Include dir with assets, root just for test -environment.appendPath('./'); - - -// -// Define environment essential *_path helper that will be available in the -// processed assets. See `assets/stylesheets/app.css.ejs` for example. -// - - -environment.ContextClass.defineAssetPath(function (pathname, options) { - var asset = this.environment.findAsset(pathname, options); - - if (!asset) { - throw new Error("File " + pathname + " not found"); - } - - return '/assets/' + asset.digestPath; -}); - - -// -// Create and compile Manifest -// - -var manifest_path = process.argv[2] || __dirname + '/assets'; - -var manifest = new Mincer.Manifest(environment, manifest_path); - - -manifest.compile(['application.css'], function (err, assetsData) { - if (err) { - console.error("Failed compile assets: " + (err.message || err.toString())); - process.exit(128); - } - - console.info('\n\nAssets were successfully compiled.\n' + - 'Manifest data (a proper JSON) was written to:\n' + - manifest.path + '\n\n'); - console.dir(assetsData); -}); diff --git a/test/dummy_rails/app/views/layouts/application.html.erb b/test/dummy_rails/app/views/layouts/application.html.erb index 7ce6339..4252061 100644 --- a/test/dummy_rails/app/views/layouts/application.html.erb +++ b/test/dummy_rails/app/views/layouts/application.html.erb @@ -1,7 +1,7 @@ <!DOCTYPE html> <html> <head> - <title>bootstrap-sass Dummy App</title> + <title>bootstrap Dummy App</title> <%= stylesheet_link_tag 'application', media: "all", 'data-turbolinks-track' => true %> <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %> <%= csrf_meta_tags %> diff --git a/test/dummy_rails/app/views/pages/root.html.slim b/test/dummy_rails/app/views/pages/root.html.slim index bc04d74..7a9dc59 100644 --- a/test/dummy_rails/app/views/pages/root.html.slim +++ b/test/dummy_rails/app/views/pages/root.html.slim @@ -1,7 +1,7 @@ .navbar.navbar-dark.bg-inverse: .container-fluid button.navbar-toggler.hidden-sm-up type="button" data-toggle="collapse" data-target="#c1" ☰ .collapse.navbar-toggleable-xs#c1 - a.navbar-brand href="#" Bootstrap for Sass Test Rails App + a.navbar-brand href="#" Bootstrap Test Rails App ul.nav.navbar-nav li.nav-item.active: a.nav-link href="#" ' Home diff --git a/test/dummy_rails/config/application.rb b/test/dummy_rails/config/application.rb index e990bdd..8efdd98 100644 --- a/test/dummy_rails/config/application.rb +++ b/test/dummy_rails/config/application.rb @@ -10,10 +10,10 @@ require 'rails' require "#{framework}/railtie" end -require 'slim-rails' -require 'jquery-rails' +require 'bootstrap' require 'compass' -require 'bootstrap-sass' +require 'jquery-rails' +require 'slim-rails' require 'uglifier' module Dummy diff --git a/test/dummy_sass_only/Gemfile b/test/dummy_sass_only/Gemfile deleted file mode 100644 index bfde6fa..0000000 --- a/test/dummy_sass_only/Gemfile +++ /dev/null @@ -1,4 +0,0 @@ -source 'https://rubygems.org' - -gem 'sass', '~> 3.3' -gem 'bootstrap-sass', path: '../..' diff --git a/test/dummy_sass_only/compile.rb b/test/dummy_sass_only/compile.rb deleted file mode 100644 index 09e6785..0000000 --- a/test/dummy_sass_only/compile.rb +++ /dev/null @@ -1,13 +0,0 @@ -require 'sass' -require 'bootstrap-sass' -require 'fileutils' - -scss_path = File.expand_path('./import_all.sass', File.dirname(__FILE__)) -css = Sass.compile File.read(scss_path), syntax: 'sass' - -if ARGV[0] - FileUtils.mkdir_p File.dirname(ARGV[0]) - File.open(ARGV[0], 'w') { |f| f.write css } -else - puts css -end diff --git a/test/dummy_sass_only/import_all.sass b/test/dummy_sass_only/import_all.sass deleted file mode 100644 index d57392f..0000000 --- a/test/dummy_sass_only/import_all.sass +++ /dev/null @@ -1 +0,0 @@ -@import 'bootstrap' diff --git a/test/node_mincer_test.rb b/test/node_mincer_test.rb deleted file mode 100644 index a0c70e6..0000000 --- a/test/node_mincer_test.rb +++ /dev/null @@ -1,23 +0,0 @@ -require 'test_helper' -require 'json' - -class NodeMincerTest < Minitest::Test - DUMMY_PATH = 'test/dummy_node_mincer' - - def test_image_helper - assert_match %r(url\(['"]?apple-touch-icon-144-precomposed.*png['"]?\)), @css - end - - def setup - tmp_dir = File.join GEM_PATH, 'tmp/node-mincer' - success = Dir.chdir DUMMY_PATH do - silence_stdout_if !ENV['VERBOSE'] do - system 'node', 'manifest.js', tmp_dir - end - end - assert success, 'Node.js Mincer compilation failed' - manifest = JSON.parse(File.read("#{tmp_dir}/manifest.json")) - css_name = manifest['assets']['application.css'] - @css = File.read("#{tmp_dir}/#{css_name}") - end -end diff --git a/test/node_sass_compile_test.sh b/test/node_sass_compile_test.sh deleted file mode 100644 index 42422c1..0000000 --- a/test/node_sass_compile_test.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -# Test compilation with node-sass binary - -mkdir -p tmp/node-sass -node-sass assets/stylesheets/_bootstrap.scss -o tmp/node-sass/ && \ -node-sass assets/stylesheets/_bootstrap-flex.scss -o tmp/node-sass/ && \ -node-sass assets/stylesheets/_bootstrap-grid.scss -o tmp/node-sass/ && \ -node-sass assets/stylesheets/_bootstrap-reboot.scss -o tmp/node-sass/ || \ -(echo "node-sass compilation failed" && exit 1) diff --git a/test/sass_test.rb b/test/sass_test.rb deleted file mode 100644 index 469c85f..0000000 --- a/test/sass_test.rb +++ /dev/null @@ -1,27 +0,0 @@ -require 'test_helper' -require 'shellwords' - -class SassTest < Minitest::Test - DUMMY_PATH = 'test/dummy_sass_only' - - # We check if the css includes a typical bootstrap class - def test_css_matcher - assert_match 'col-xs-1', @css - end - - def setup - Dir.chdir DUMMY_PATH do - %x[rm -rf .sass-cache/] - %x[bundle] - end - css_path = File.join GEM_PATH, 'tmp/bootstrap-sass-only.css' - command = "bundle exec ruby compile.rb #{Shellwords.escape css_path}" - success = Dir.chdir DUMMY_PATH do - silence_stdout_if !ENV['VERBOSE'] do - system(command) - end - end - assert success, 'Sass-only compilation failed' - @css = File.read(css_path) - end -end diff --git a/test/sprockets_rails_test.rb b/test/sprockets_rails_test.rb deleted file mode 100644 index 38707ca..0000000 --- a/test/sprockets_rails_test.rb +++ /dev/null @@ -1,27 +0,0 @@ -require 'test_helper' -require 'fileutils' -require 'find' -require 'shellwords' - -class SprocketsRailsTest < Minitest::Test - - def test_sprockets_digest_asset_refs - root = 'test/dummy_rails' - command = "bundle exec rake assets:precompile GEMFILE=#{GEM_PATH}/Gemfile RAILS_ENV=production" - compiled = Dir.chdir root do - silence_stderr_if !ENV['VERBOSE'] do - system(command) - end - end - assert compiled, 'Could not precompile assets' - Dir.glob(File.join(root, 'public', 'assets', 'app*.{css,js}')) do |path| - File.open(path, 'r') do |f| - f.read.scan /url\("?[^"]+\.(?:jpg|png|eot|woff2?|ttf|svg)[^"]*"?\)/ do |m| - assert_match /-[0-9a-f]{12,}\./, m - end - end - end - ensure - FileUtils.rm_rf %W(#{root}/public/assets/ #{root}/tmp/cache/), secure: true - end -end |