sasso-rails 0.1.6 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +75 -0
- data/README.md +16 -4
- data/lib/sasso/rails/version.rb +7 -4
- metadata +5 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 73d0547c3d8d12c8781a672098800fba93d8518c51fcd98a8065f0e8d4249768
|
|
4
|
+
data.tar.gz: aad074d78f43edb67b1f8ea43012d855afb35652d8e1e9514464a862725bc251
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 358ba16009d6ab754d9b8c50ca3e9c061ca88c9b51431b898aafbbfb09075896880ad75c2f9b4cb266400e6352d9339124253ed09d2beb679915e1697e341c21
|
|
7
|
+
data.tar.gz: 47334488762747b64da86a8da675d20dbfb0a15022750169a2135daecc830e262e9d5220723175e22a181de0706d698657e7db42f3d95b10bb8587d544944248
|
data/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,81 @@ the engine-gem version range it requires.
|
|
|
8
8
|
|
|
9
9
|
## [Unreleased]
|
|
10
10
|
|
|
11
|
+
## [0.1.8] - 2026-10-30
|
|
12
|
+
|
|
13
|
+
Requires the `sasso` gem **>= 0.14.0** (unchanged); works with **0.21.0**, which a
|
|
14
|
+
fresh `bundle install` or `bundle update sasso` now resolves.
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- **Ruby 4.0** in CI. It needs `sasso` **>= 0.14.1**, the first engine-gem
|
|
19
|
+
release with a precompiled 4.0 binary (0.14.0's source gem does not build on
|
|
20
|
+
4.0); Bundler picks one automatically unless your app pins `sasso` 0.14.0.
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
|
|
24
|
+
- **Upgrading to `sasso` 0.21.0 can break `sasso:build`.** It adopts core 0.15.0
|
|
25
|
+
through 0.21.0, and some stylesheets that compiled under 0.14.0 now raise
|
|
26
|
+
`Sasso::CompileError` — and so fail `assets:precompile` on deploy. The likely
|
|
27
|
+
ones in a Rails app: a built-in called with an argument name it does not
|
|
28
|
+
declare (`math.max(1, 2, $x: 999)`), an argument passed both by position and
|
|
29
|
+
by name, and selectors that dart-sass's grammar rejects (`[a=1]`, `a^b`). Some
|
|
30
|
+
output also changes meaning, not only bytes (compressed `color()`, a quoted
|
|
31
|
+
attribute value's whitespace, a non-ASCII space in a selector), and asset
|
|
32
|
+
digests change once again. Run `bin/rails sasso:build` after the upgrade, and
|
|
33
|
+
read the engine gem's
|
|
34
|
+
[CHANGELOG](https://github.com/momiji-rs/sasso-ruby/blob/main/CHANGELOG.md)
|
|
35
|
+
(section `0.21.0`) for the full list. Pin `gem "sasso", "~> 0.14.0"` in your
|
|
36
|
+
Gemfile to stay on the old compiler while you fix stylesheets.
|
|
37
|
+
- **A new `bogus-combinators` deprecation warning** may appear in `sasso:build`
|
|
38
|
+
/ `sasso:watch` output, for a rule whose selector has a repeated or leading
|
|
39
|
+
combinator (`a > + b`). The compiler already dropped those rules silently; the
|
|
40
|
+
warning is the only sign the CSS lost them. This gem does not expose
|
|
41
|
+
`silence_deprecations:`, so fix the selector to clear it.
|
|
42
|
+
- The `sasso` floor stays at **>= 0.14.0**: this gem uses none of 0.21.0's new
|
|
43
|
+
options, and raising it would force the breakage above onto apps that pinned
|
|
44
|
+
the older compiler. No change to this gem's own API, generators, or rake
|
|
45
|
+
tasks. Verified green against `sasso` 0.21.0 (23 runs, 70 assertions).
|
|
46
|
+
|
|
47
|
+
## [0.1.7] - 2026-09-17
|
|
48
|
+
|
|
49
|
+
Requires the `sasso` gem **>= 0.14.0** (was `>= 0.2.7`), and **Ruby >= 3.2**.
|
|
50
|
+
|
|
51
|
+
### Removed
|
|
52
|
+
|
|
53
|
+
- **Ruby 3.1 support** (`required_ruby_version` is now `>= 3.2.0`), following the
|
|
54
|
+
`sasso` engine gem, which dropped it in 0.14.0. CI had already stopped testing
|
|
55
|
+
3.1 because the current Rails dep tree does not resolve there; now no dep set
|
|
56
|
+
does.
|
|
57
|
+
|
|
58
|
+
### Changed
|
|
59
|
+
|
|
60
|
+
- Bumped the `sasso` engine-gem floor to **>= 0.14.0**. From that release the
|
|
61
|
+
engine gem's version tracks the compiler crate it bundles, so the floor names
|
|
62
|
+
the compiler too: core 0.14.0, at **dart-sass 1.104.1** parity, where 0.2.7
|
|
63
|
+
carried core 0.6.3 (1.101.0).
|
|
64
|
+
- **Your built CSS will change, and so will its digest.** The compiler's output
|
|
65
|
+
moved with the core, so a Propshaft/Sprockets fingerprint computed over a
|
|
66
|
+
stylesheet's bytes changes on the next `assets:precompile` even when the
|
|
67
|
+
stylesheet did not — expect one cache-busting round of new asset URLs. The
|
|
68
|
+
engine gem's
|
|
69
|
+
[CHANGELOG](https://github.com/momiji-rs/sasso-ruby/blob/main/CHANGELOG.md)
|
|
70
|
+
lists every change; the ones most likely to show up in a Rails app:
|
|
71
|
+
- **Serialization only** — the CSS means the same thing, it is spelled
|
|
72
|
+
differently. A legacy color with a fractional channel writes its rgb triple
|
|
73
|
+
as percentages, and compressed `hsl`/`hwb` route through `rgb`, so
|
|
74
|
+
`darken(#336699, 10%)` compresses to `rgb(15%,30%,45%)` rather than
|
|
75
|
+
`hsl(210,50%,30%)`. Source-map `mappings` also change: a declaration whose
|
|
76
|
+
value is a bare `$name` now maps back to the variable's definition.
|
|
77
|
+
- **Not serialization only** — global `whiteness()` / `blackness()` are no
|
|
78
|
+
longer built-ins and now pass through as plain CSS, matching dart-sass. This
|
|
79
|
+
one changes what the browser does: `whiteness(#f00)` used to compile to `0%`,
|
|
80
|
+
and now emits an unknown CSS function, which makes the declaration invalid
|
|
81
|
+
and the browser drop it. It is also silent — no error, no warning — so it is
|
|
82
|
+
the one to grep for. Use `color.whiteness()` via `@use "sass:color"`.
|
|
83
|
+
- No change to this gem's own API, generators, or rake tasks. Verified green
|
|
84
|
+
against `sasso` 0.14.0 (23 runs, 70 assertions).
|
|
85
|
+
|
|
11
86
|
## [0.1.6] - 2026-06-25
|
|
12
87
|
|
|
13
88
|
Requires the `sasso` gem **>= 0.2.7** (was `>= 0.2.6`).
|
data/README.md
CHANGED
|
@@ -19,7 +19,9 @@ Why this gem over the alternatives:
|
|
|
19
19
|
|
|
20
20
|
## Compatibility
|
|
21
21
|
|
|
22
|
-
- **Ruby** ≥ 3.1.
|
|
22
|
+
- **Ruby** ≥ 3.2 (the `sasso` engine gem dropped 3.1 in 0.14.0), tested on
|
|
23
|
+
3.2–4.0. Ruby 4.0 needs `sasso` ≥ 0.14.1, the first release with a 4.0
|
|
24
|
+
binary; Bundler resolves one unless your app pins 0.14.0.
|
|
23
25
|
- **Rails** ≥ 7.0 (`railties >= 7.0`), on **either** asset pipeline. Verified
|
|
24
26
|
end-to-end (`generate sasso:install` → `sasso:build` → production
|
|
25
27
|
`assets:precompile` → served CSS) on:
|
|
@@ -155,9 +157,19 @@ $ bundle lock --add-platform x86_64-linux aarch64-linux \
|
|
|
155
157
|
|
|
156
158
|
## Versioning
|
|
157
159
|
|
|
158
|
-
This gem versions independently of the `sasso` compiler gem
|
|
159
|
-
range
|
|
160
|
-
|
|
160
|
+
This gem versions independently of the `sasso` compiler gem, which it depends on
|
|
161
|
+
by *range* rather than by exact version — so its own number does not name a
|
|
162
|
+
compiler. See the [gemspec](sasso-rails.gemspec) for the current range and the
|
|
163
|
+
[CHANGELOG](CHANGELOG.md) for which release moved it; `Sasso::CORE_VERSION`
|
|
164
|
+
reports the compiler your app actually has installed. An app may pin a specific
|
|
165
|
+
compiler version in its own `Gemfile`.
|
|
166
|
+
|
|
167
|
+
A compiler upgrade within the range is not always a drop-in. **`sasso` 0.21.0
|
|
168
|
+
rejects some stylesheets that 0.14.x compiled** (stricter built-in argument
|
|
169
|
+
checking and selector grammar) and changes some output, so run
|
|
170
|
+
`bin/rails sasso:build` after `bundle update sasso`, and read the engine gem's
|
|
171
|
+
[CHANGELOG](https://github.com/momiji-rs/sasso-ruby/blob/main/CHANGELOG.md)
|
|
172
|
+
before deploying. `gem "sasso", "~> 0.14.0"` keeps the older compiler.
|
|
161
173
|
|
|
162
174
|
## License
|
|
163
175
|
|
data/lib/sasso/rails/version.rb
CHANGED
|
@@ -2,9 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
module Sasso
|
|
4
4
|
module Rails
|
|
5
|
-
# Versioned INDEPENDENTLY of both the `sasso` gem and the `sasso` crate
|
|
6
|
-
#
|
|
7
|
-
#
|
|
8
|
-
|
|
5
|
+
# Versioned INDEPENDENTLY of both the `sasso` gem and the `sasso` crate: the
|
|
6
|
+
# gemspec depends on a RANGE of the engine gem, so a compiler bump does not
|
|
7
|
+
# force a lockstep release of this integration gem. The range itself lives in
|
|
8
|
+
# the gemspec and is deliberately not restated here — this comment claimed
|
|
9
|
+
# `>= 0.1.1` through two floor bumps. `Sasso::CORE_VERSION` reports the
|
|
10
|
+
# compiler actually installed.
|
|
11
|
+
VERSION = "0.1.8"
|
|
9
12
|
end
|
|
10
13
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sasso-rails
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.8
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- momiji-rs
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-10-30 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: railties
|
|
@@ -30,7 +30,7 @@ dependencies:
|
|
|
30
30
|
requirements:
|
|
31
31
|
- - ">="
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: 0.
|
|
33
|
+
version: 0.14.0
|
|
34
34
|
- - "<"
|
|
35
35
|
- !ruby/object:Gem::Version
|
|
36
36
|
version: '1'
|
|
@@ -40,7 +40,7 @@ dependencies:
|
|
|
40
40
|
requirements:
|
|
41
41
|
- - ">="
|
|
42
42
|
- !ruby/object:Gem::Version
|
|
43
|
-
version: 0.
|
|
43
|
+
version: 0.14.0
|
|
44
44
|
- - "<"
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
46
|
version: '1'
|
|
@@ -79,7 +79,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
79
79
|
requirements:
|
|
80
80
|
- - ">="
|
|
81
81
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: 3.
|
|
82
|
+
version: 3.2.0
|
|
83
83
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
84
84
|
requirements:
|
|
85
85
|
- - ">="
|