395 lines
18 KiB
Markdown
395 lines
18 KiB
Markdown
|
---
|
||
|
title: Compass v0.10.0 Beta History
|
||
|
crumb: CHANGELOG
|
||
|
body_id: changelog
|
||
|
layout: article
|
||
|
---
|
||
|
|
||
|
0.10.0.rc6 (May 8, 2010)
|
||
|
------------------------
|
||
|
* [Compass Core] The configuration constant `$firefox2-ellipsis` has been
|
||
|
renamed to `$use-mozilla-ellipsis-binding` to reflect the fact that
|
||
|
it must be used for any version of mozilla less than 3.6.
|
||
|
* [CLI] The the new Sub-command based CLI will now recognize abbreviated
|
||
|
commands as long as the abbreviation is unambiguous.
|
||
|
For instance, `compass w` is a shortcut for `compass watch` and
|
||
|
`compass com` for `compass compile` but `compas co` will not work
|
||
|
for compile because it also matches `compass config`.
|
||
|
* [Rails] When configuring Sass during initialization,
|
||
|
Compass now passes the template locations as an array of tuples
|
||
|
instead of as a hash. This preserves ordering in all versions
|
||
|
of ruby and ensures that the deprecated imports do not take precedence.
|
||
|
|
||
|
0.10.0.rc5 (May 2, 2010)
|
||
|
------------------------
|
||
|
|
||
|
* [Rails] The default location for compass extensions has moved from
|
||
|
`vendor/plugins/compass/extensions` to `vendor/plugins/compass_extensions`.
|
||
|
* [Rails] The rails template has been updated to use the latest haml and compass versions.
|
||
|
* [Compass Core] Global reset no longer automatically resets the *:focus.
|
||
|
This allows browsers to use their default :focus styles which is considered
|
||
|
a best practice. If you wish to reset :focus styles simply include this in
|
||
|
your stylesheets:
|
||
|
`*:focus { @include reset-focus; }`
|
||
|
* [Compass Core] A new mixin `replace-text-with-dimensions` has been added.
|
||
|
This is the same as the `replace-text` mixin except that it will read the
|
||
|
dimensions from the image and set them for you on the element.
|
||
|
* [Compass Core] If you want Firefox 2 Support (via -moz-binding) for the
|
||
|
`ellipsis` mixin, you must now set `$firefox2-ellipsis` to `true` before
|
||
|
importing the module.
|
||
|
* [Compass Core] The `compass/text/ellipsis` module is now imported
|
||
|
automatically by the `compass/text` module.
|
||
|
* [Compass Core] The gradient mixins now accept a background image that will
|
||
|
be placed over the gradient. Credit: [Will Leinweber](http://bitfission.com/)
|
||
|
* [Compass Core] You can now opt out of support for specific browsers in
|
||
|
the css3 module. See [the docs](/docs/reference/compass/css3/shared/)
|
||
|
for more details.
|
||
|
|
||
|
|
||
|
0.10.0.rc4 (April 27, 2010)
|
||
|
---------------------------
|
||
|
* Lot of new docs can be found at: [http://compass-style.org/docs/](http://compass-style.org/docs/).
|
||
|
* The `unobtrusive-logo` mixin is deprecated and will be removed.
|
||
|
If you use this, please move the source to your project.
|
||
|
* The CSS3 modules were refactored to share a common implementation that
|
||
|
abstracts the browser prefixes that are supported and gives
|
||
|
greater control to the user over which prefixes are generated.
|
||
|
Depending on what mixins you were using you might see some changes to
|
||
|
what prefixes get generated by default and the order that they are
|
||
|
emitted. The goal of this change is to provide a more future-proof
|
||
|
implementation.
|
||
|
* The unnecessary import of the `float` module from the `hacks` module
|
||
|
was removed. If you were relying on this, you'll need to
|
||
|
import the float module explicitly now.
|
||
|
* The `pretty-bullets` mixin will now infer the image dimensions by
|
||
|
reading the image file if the image dimensions are not provided.
|
||
|
* The old CLI is now deprecated and a warning message will be printed
|
||
|
out if you use it. The new CLI is better and can be learned
|
||
|
by typing `compass help`. Credit: [Alexander Kahn](http://akahn.net)
|
||
|
* The `background-clip` mixin now accepts the value of `text`. Credit: [Thomas Reynolds]()
|
||
|
* The display: box model and associated properties are now part of the
|
||
|
css3 module. Credit: [Lorin Tackett](http://blog.lorintackett.com/)
|
||
|
* The compass gem is now built with a simple `gem build compass.gemspec`.
|
||
|
This should make it play nicer with tools like
|
||
|
[bundler](http://gembundler.org/).
|
||
|
|
||
|
0.10.0.rc3 (April 13, 2010)
|
||
|
---------------------------
|
||
|
* This release addresses several bugs in rc2.
|
||
|
|
||
|
0.10.0.rc2 (April 12, 2010)
|
||
|
---------------------------
|
||
|
**IMPORTANT:**
|
||
|
|
||
|
* Compass now depends on Sass 3 -- Please be prepared to upgrade.
|
||
|
Things won't break but you'll have a lot of deprecation warnings.
|
||
|
Upgrading is pretty easy thanks to the `sass-convert` tool. See the
|
||
|
[Sass Changelog](http://beta.sass-lang.com/docs/yardoc/file.SASS_CHANGELOG.html)
|
||
|
for more information.
|
||
|
* All compass stylesheets are now written in the SCSS syntax,
|
||
|
if you import compass framework stylesheets with an explicit
|
||
|
`.sass` extension, then you'll receive deprecation warnings
|
||
|
directing you to update your stylesheets.
|
||
|
* A new command line switch `--syntax` (or `-x`) has been added
|
||
|
to commands that install stylesheets into your project that
|
||
|
allows you to select the syntax to use (scss or sass)
|
||
|
* A new configuration option `preferred_syntax` now exists
|
||
|
and defaults to `:scss`. Please update your project's configuration
|
||
|
file with `preferred_syntax = :sass` if you prefer to use the
|
||
|
indentation-based syntax.
|
||
|
* You may silence deprecation warnings by adding
|
||
|
`sass_options = {:quiet => true}` to your configuration.
|
||
|
|
||
|
0.10.0.pre9 (March 6, 2010)
|
||
|
---------------------------
|
||
|
|
||
|
* Fix a ruby 1.9 bug in the image_size helper functions for jpeg images.
|
||
|
* Silence a deprecation warning.
|
||
|
|
||
|
|
||
|
0.10.0.pre7 & 0.10.0.pre8 (February 23, 2010)
|
||
|
---------------------------------------------
|
||
|
|
||
|
* Rails 3 compatibility fixes
|
||
|
* Fix for rgba colors with the new gradient mixins
|
||
|
* A better error message if a color stop list is not passed in to the gradient mixins.
|
||
|
|
||
|
0.10.0.pre6 (February 22, 2010)
|
||
|
-------------------------------
|
||
|
|
||
|
**IMPORTANT:**
|
||
|
|
||
|
* Rails users need to update their compass initializer.
|
||
|
* The CSS 3 Gradient mixins were re-written and their usage has changed.
|
||
|
|
||
|
Read on for the details:
|
||
|
|
||
|
### CLI
|
||
|
* Fixed some issues with colorized output.
|
||
|
* Don't force the user to specify the configuration path when calling compass config
|
||
|
|
||
|
### Compass Core
|
||
|
* Fix to the bang_hack mixin (Credit: Mark Rajcok)
|
||
|
* Support :first-child and :last-child pseudo selectors for +horizontal-list. (Credit: Cody Robbins)
|
||
|
* Clear the sticky footer so that it works correctly with grid layouts.
|
||
|
* The css3 gradient module has been re-written and has a new, much simpler mixins. If you have been using the css3 gradient mixins, you'll need to update your sass stylesheets. The new mixins can be seen in action [here](http://compass-style.org/examples/css3/gradients.html).
|
||
|
* Added new helper functions: `image_width("path/to/image.png")` & `image_height("path/to/image.png")` that return the size in pixels. (Credit: Deepak Jois & Richard Aday)
|
||
|
|
||
|
### Blueprint
|
||
|
* Take margins into account in liquid grid. (Credit: Christoffer Eliesen)
|
||
|
|
||
|
### Rails
|
||
|
* Several Rails 3 bug fixes (Credit: Jacques Crocker)
|
||
|
* Don't set unset options on the Sass::Plugin
|
||
|
* Fixed a setup bug and handle compass configuration changes at rails boot.
|
||
|
|
||
|
**IMPORTANT:** Existing rails projects _must_ change their compass initializer file to:
|
||
|
|
||
|
require 'compass'
|
||
|
rails_root = (defined?(Rails) ? Rails.root : RAILS_ROOT).to_s
|
||
|
Compass.add_project_configuration(File.join(rails_root, "config", "compass.rb"))
|
||
|
Compass.configure_sass_plugin!
|
||
|
Compass.handle_configuration_change!
|
||
|
|
||
|
### Internals
|
||
|
* New APIs for dealing with configuration changes and accessing a compiler instance.
|
||
|
* Provide a convenience function for discovering extensions: `Compass.discover_extensions!` that can be called during project configuration w/ other ruby frameworks.
|
||
|
|
||
|
### Extensions
|
||
|
|
||
|
* Don't force an extension to register itself just because it has ruby code.
|
||
|
This makes it easier for extensions to provide Sass functions from ruby.
|
||
|
|
||
|
Special thanks to Daniel Hofstetter for fixing my typos.
|
||
|
|
||
|
0.10.0.pre5 (January 18, 2010)
|
||
|
------------------------------
|
||
|
* Fixed a bug in the grid builder in ruby 1.8.6 (Credit: [Richard Wöber][der-rich])
|
||
|
* Better sudo handling for the rails installer via environment variables or prompt. (Credit: Ryan Shaw, Evan Sharp)
|
||
|
* Removed support for the rip package manager.
|
||
|
* Support for scss files in the compass watcher.
|
||
|
* Cache buster timestamps were not working in some cases.
|
||
|
* Make ANSI color output work on windows.
|
||
|
* Command line switch (--boring) to turn off colorized output.
|
||
|
* Strip trailing slash from directory and path configuration variables.
|
||
|
* Added a --poll option to the compass watch subcommand to force polling.
|
||
|
* Fixed a test failure in ruby 1.9 due to faulty test code.
|
||
|
* Move the frameworks directory back to the top level. There's not actually a good reason for it to be buried in the ruby source.
|
||
|
* Upgrade FSSM. (Hopfully) Fixes a watcher issue that caused the watcher to not trigger for some users.
|
||
|
* Silence a deprecation warning in Rails 3.
|
||
|
|
||
|
0.10.0.pre4 (January 04, 2010)
|
||
|
------------------------------
|
||
|
* Fixed an FSSM loading issue that broke the compass watcher.
|
||
|
* Fixed some compatibility issues with edge versions of Sass.
|
||
|
|
||
|
0.10.0.pre3 (January 02, 2010)
|
||
|
------------------------------
|
||
|
|
||
|
Bug fixes:
|
||
|
|
||
|
* [Blueprint] Bug Fix: variable referenced in a non-script context within the
|
||
|
dquo mixin in the fancy_type module.
|
||
|
* [Rails] fixed win32 sudo incompatibility issue in the rails installer template.
|
||
|
(Credit: [Jonathan Silverman][jsilver])
|
||
|
* [Rails] Update the gem dependencies for the rails installer template.
|
||
|
* If the configuration file changes, wipe out the sass cache and force compilation
|
||
|
* Upgrade the vendored version of FSSM to version 0.1.2.
|
||
|
Fixes some bugs with jruby and adds inotify support for linux.
|
||
|
(Credit: [Travis Tilley][ttilley])
|
||
|
* Patched hide-text to account for items that are not left aligned.
|
||
|
(Credit: [Josh Pyles][pixelmatrix])
|
||
|
|
||
|
Minor Enhancements:
|
||
|
|
||
|
* Support for SCSS files if haml edge is installed.
|
||
|
* Color any stderr or stdout output from the `Sass::Engine` red during compilation.
|
||
|
* [Configuration] The sass cache location can now be set in the compass config
|
||
|
file using the `cache_dir` property and the cache can be disabled by setting
|
||
|
`cache = false`.
|
||
|
* [Compass Core] `+min-height`, `+min-width`, and `+bang-hack` mixins in the
|
||
|
compass/utilities/general/min.sass module.
|
||
|
(Credit: [Adam Stacoviak][adamstac])
|
||
|
* [Command Line] If you only want to compile certain files, you can now
|
||
|
specify them when invoking compass compile. E.g. `compass compile src/foo.sass`
|
||
|
* [Compass Core] Split out `+hide-text` as its own mixin.
|
||
|
(Credit: [Andrew Vit][avit])
|
||
|
* Some code cleanup for the compass project compiler.
|
||
|
* Removed the dependency on RMagic for grid image generation.
|
||
|
(Credit: [Richard Wöber][der-rich])
|
||
|
|
||
|
0.10.0.pre2 (November 30, 2009)
|
||
|
--------------------------------
|
||
|
Bug fixes:
|
||
|
|
||
|
* The line-height in the compass reset should have been 1 and not 1em.
|
||
|
* Fixed the reference in the rails initializer to the compass configuration file.
|
||
|
* Use the correct error formatting function based on what sass version is installed.
|
||
|
* Boolean properties like line_comments can now be set to false in configuration files
|
||
|
|
||
|
0.10.0.pre1 (November 29, 2009)
|
||
|
--------------------------------
|
||
|
|
||
|
Deprecated in this release:
|
||
|
|
||
|
* The usless blueprint "modules" folder will be removed. Please update your
|
||
|
blueprint imports by removing the modules folder. Deprecation warnings will be
|
||
|
emitted if you use the old imports.
|
||
|
* Blueprint mixins that used to accept a "body selector" argument, are now
|
||
|
deprecated, instead you should pass `true` to them and mix them into
|
||
|
the selector of your choice.
|
||
|
* If you are using the `+opacity` or `+inline-block` mixins, you may need to update your imports.
|
||
|
* In your configuration file, setting `http_images_path` to `:relative` is
|
||
|
deprecated in favor of setting `relative_assets` to `true`
|
||
|
* The YUI framework has been extracted to a plugin.
|
||
|
If you use it, please follow the [installation instructions](http://github.com/chriseppstein/yui-compass-plugin)
|
||
|
|
||
|
Command-Line:
|
||
|
|
||
|
* The compass command-line tool has been re-written to allow be easier to
|
||
|
use and be more flexible. The old command line is still supported at
|
||
|
this time. "compass help" will get you started on using the new
|
||
|
command line syntax.
|
||
|
* Allow specification of a height for the grid image
|
||
|
* For the truly hardcore compass users, you may now create a
|
||
|
compass project using "compass create my_project --bare"
|
||
|
and you'll have a completely bare project created for you with no
|
||
|
sass files provided for you.
|
||
|
* Get stats on your compass project with "compass stats". You'll
|
||
|
need to install the "css_parser" ruby gem to get stats on your
|
||
|
css files.
|
||
|
|
||
|
Configuration:
|
||
|
|
||
|
* The entire configuration infrastructure has been re-written to make it
|
||
|
easier to support the various sources of configuration data (project type,
|
||
|
config file, command line, and hard coded defaults)
|
||
|
* Whether to generate relative links to assets is now controlled by a
|
||
|
separate boolean configuration flag called `relative_assets` in the
|
||
|
configuration file and `--relative-assets` on the command line.
|
||
|
Setting `http_images_path` to `:relative` is deprecated.
|
||
|
* You may now configure the http locations for your project by simply setting
|
||
|
`http_path` for the top level path of the project. You
|
||
|
may also set `http_images_dir`, `http_stylesheets_dir`, and
|
||
|
`http_javascripts_dir` relative to the `http_path` instead of
|
||
|
setting the absolute `http_XXX_path` counterparts.
|
||
|
* You may now configure the fonts directory for your project (fonts_dir).
|
||
|
By default, for standalone projects, it is the "fonts" subdirectory of
|
||
|
your css directory. Rails projects will default to "public/fonts".
|
||
|
|
||
|
Compass Core:
|
||
|
|
||
|
* A new helper function `stylesheet_url(path)` can now be used to refer
|
||
|
to assets that are relative to the css directory.
|
||
|
* Compass sprite mixins are now more flexible and feature rich.
|
||
|
* Fixed the append_selector function to allow comma-delimited selectors
|
||
|
for both arguments instead of just the first
|
||
|
* There is no longer any outline on unstyled links in the :active and :focused states.
|
||
|
* IE6 bug fixes for sticky-footer
|
||
|
* New CSS3 Compatibility Mixins. You can import them all with `@import compass/css3.sass`
|
||
|
* `+opacity(amount)` where amount should be between 0 and 1, where 0 is transparent and 1 is opaque.
|
||
|
* `+opaque` and `+transparent` mixins for convenience. Built on top of the opacity mixin.
|
||
|
* `+border-radius(amount)` as well as the following convenience mixins:
|
||
|
* `+border-top-left-radius(amount)`
|
||
|
* `+border-top-right-radius(amount)`
|
||
|
* `+border-top-right-radius(amount)`,
|
||
|
* `+border-bottom-left-radius(amount)`
|
||
|
* `+border-bottom-right-radius(amount)`
|
||
|
* `+border-top-radius(amount)`
|
||
|
* `+border-right-radius(amount)`
|
||
|
* `+border-left-radius(amount)`
|
||
|
* `+border-bottom-radius(amount)`
|
||
|
* `+box-shadow(!horiz_offset, !vert_offset, !blur, !color)`
|
||
|
* `+box-sizing(!sizing_mode)`
|
||
|
* Column support via the following mixins:
|
||
|
* `+column-count`
|
||
|
* `+column-gap`
|
||
|
* `+column-width`
|
||
|
* `+column-rule-width`
|
||
|
* `+column-rule-style`
|
||
|
* `+column-rule-color`
|
||
|
* `+column-rule`
|
||
|
* `+background-clip(clip)` where clip can be `padding-box` or `border-box`
|
||
|
* `+background-origin(origin)` where origin can be `padding-box`, `border-box`, or `content-box`
|
||
|
* `+background-size(size)` where size is a width and height. E.g. "50% 75%"
|
||
|
* `+font-face` should be mixed into the top level of your document.
|
||
|
Usage Example: `+font-face("this name", font-files("this.woff", "woff", "this.otf", "opentype"), "fonts/this.eot", "thisname")`
|
||
|
* Simple Background Gradient Support:
|
||
|
* `+gradient` - Generic background gradient mixin
|
||
|
* `+radial-gradient` - Radial gradient mixin
|
||
|
* `+linear-gradient` - Linear gradient mixin
|
||
|
* `+h-gradient` - Horizontal linear gradient mixin
|
||
|
* `+v-gradient` - Vertical linear gradient mixin
|
||
|
* `+text-shadow` - Create a text shadow effect.
|
||
|
* Transforms Support:
|
||
|
* `+transform`
|
||
|
* `+scale`
|
||
|
* `+rotate`
|
||
|
* `+translate`
|
||
|
* `+skew`
|
||
|
* Transition Support:
|
||
|
* `+transition-property`
|
||
|
* `+transition-duration`
|
||
|
* `+transition-timing-function`
|
||
|
* `+transition-delay`
|
||
|
* `+transition`
|
||
|
* The import for `+inline-block` has moved from compass/utilities/general/inline_block
|
||
|
to compass/css3/inline_block
|
||
|
* The import for `+opacity` has moved from compass/utilities/general/opacity
|
||
|
to compass/css3/opacity
|
||
|
* Note: If you are using the `+opacity` or `+inline-block` mixins,
|
||
|
you may need to update your imports.
|
||
|
|
||
|
Blueprint:
|
||
|
|
||
|
* Make the primary blueprint mixins easier to use by allowing them to be nested when passing true as the first argument.
|
||
|
The old approach of passing a selector as the first argument is now deprecated in favor of a simple flag to indicate nesting or not.
|
||
|
|
||
|
YUI:
|
||
|
|
||
|
* YUI was upgraded to 2.7.0
|
||
|
* Yahoo has deprecated the YUI CSS framework, as such YUI has been extracted to a plugin.
|
||
|
If you use it, please install it with: `sudo gem install compass-yui`
|
||
|
|
||
|
Extensions:
|
||
|
|
||
|
* Extensions can now be installed locally by unpacking them into a project's
|
||
|
"extensions" directory. Rails projects use "vendor/plugins/compass/extenstions".
|
||
|
* Extensions can deliver html to projects if they like. The html can be in
|
||
|
haml and will be transformed to html and can contain inline, compass-enabled
|
||
|
sass.
|
||
|
* All files can be processed using ERB before being copied into the user's
|
||
|
project.
|
||
|
* Compass extensions can now add support for other application frameworks.
|
||
|
These extensions can help compass understand the project structure of that
|
||
|
framework as well as provide runtime integration for ruby-based apps.
|
||
|
Contact me if you plan to do this -- the first couple times may be a little
|
||
|
rough.
|
||
|
* Compass extensions can now add new command line commands. Contact me if you
|
||
|
plan to do this -- the first couple times may be a little rough.
|
||
|
* Extensions can now provide help documentation just after a project is
|
||
|
created and on demand when the user uses the command line help system.
|
||
|
This can be done via the manifest file or by adding a USAGE.markdown file
|
||
|
at the top level of the framework template.
|
||
|
|
||
|
Miscellaneous:
|
||
|
|
||
|
* The compass configuration object is no longer a singleton, this makes it
|
||
|
possible for other ruby software to manage multiple compass projects at a
|
||
|
time.
|
||
|
* Compass no longer requires rubygems in order to work, this is a ruby
|
||
|
best-practice.
|
||
|
* All sass provided by compass now uses css-style property syntax.
|
||
|
* The command line tool is now tested using the cucumber testing framework.
|
||
|
|
||
|
Many thanks to the following Contributors:
|
||
|
|
||
|
* Brandon Mathis - CSS3 (+opacity, +border-radius) and sprites
|
||
|
* Eric Meyer - CSS3 (+box-shadow, +columns, +box-sizing)
|
||
|
* Jacques Crocker - Merb Compatibility fixes
|
||
|
* Gabriel Mansour - Fixes to +unstyled-link
|
||
|
* John Debs - IE6 Fixes for +sticky-footer
|
||
|
* Brian Johnson - Upgraded to YUI 2.7.0
|
||
|
* Beau Smith - fixing my dyslexia.
|
||
|
|