hanami-sasso 0.1.2 → 0.1.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 315106e023562a74e105f47a8dfc7d15d63efb084c8d1fce9c5f3e21e815e660
4
- data.tar.gz: 57b624b6fd75a7104f119c798f9fb4c3c36bd7232bd0d338e78083d82bc3778f
3
+ metadata.gz: 8f897c6fad6effbca905552fda4068d25571f8ad2fd0f937b050ea2c5ed9be42
4
+ data.tar.gz: a78549bb3e56da0f9f56778c899749b73e4d4dbe731d4633f6f1770cc3c5b04d
5
5
  SHA512:
6
- metadata.gz: fb3890de732902250be1020c2fe15e8f1350e94f8cc76ff92b417cba977298525a6ece36903ca853109e4fbad28c9c5eddc2704447e91502f170a3c4069baac0
7
- data.tar.gz: 0f5962c1af1f52284fc5cde4c56c170e62728b874b23ed7ab72449052cfdd474319238d3a5ed5838599587291431809de39891101409045b204202e3005c30f0
6
+ metadata.gz: 657a2e872a738816df41c1c2d6044bbd9c38c1796cdd07f8ec0021212079eb1708003710ede8e64d43f81fc8b7113be0b47f326e2db77a924df0fffd4735d91d
7
+ data.tar.gz: badb21bbc8400ba3eed37f4ccd5e0ee05f32d28d558f683c842829ba7b2ddad2eb2779c0e2659eac153398a1d4bf8ce7db538be53a771c334050e3047fcaeef9
data/CHANGELOG.md CHANGED
@@ -3,8 +3,78 @@
3
3
  All notable changes to **hanami-sasso** are documented here.
4
4
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
5
5
 
6
+ This gem versions independently of the `sasso` compiler gem — it depends on a
7
+ *range* of it, so its own number could not honestly name a compiler version.
8
+ Each release notes the range it requires; `Sasso::CORE_VERSION` reports the
9
+ compiler actually installed.
10
+
6
11
  ## [Unreleased]
7
12
 
13
+ ## [0.1.4] - 2026-10-30
14
+
15
+ Works with the `sasso` gem **0.21.0**. The requirement stays **>= 0.14.0, < 1**.
16
+
17
+ ### Changed
18
+
19
+ - **Verified against `sasso` 0.21.0** (core 0.21.0), green with no code change
20
+ (9 runs, 30 assertions). The floor is not raised: this gem calls only
21
+ `Sasso.compile`, whose signature 0.21.0 keeps, and a lower floor lets an app
22
+ hold the compiler back while it fixes its stylesheets (below).
23
+ - **A `bundle update` can now break `sasso:compile`.** The `< 1` range admits
24
+ 0.21.0, and its compiler is stricter than 0.14's: some stylesheets that
25
+ compiled before now raise `Sasso::CompileError`, which fails `sasso:compile`
26
+ and therefore `assets:precompile`. The usual causes are a built-in given an
27
+ argument name it does not declare (`math.max(1, 2, $x: 999)`), an argument
28
+ passed both by position and by name, and selectors dart-sass's grammar rejects
29
+ (`[a=1]`, `a^b`). Some output also changes, a few cases in meaning. The engine
30
+ gem's
31
+ [CHANGELOG](https://github.com/momiji-rs/sasso-ruby/blob/main/CHANGELOG.md)
32
+ (section `0.21.0`) lists every change. To stay on the old compiler while you
33
+ fix them, pin it in your app's Gemfile: `gem "sasso", "< 0.21"`.
34
+ - **A new warning, `bogus-combinators`**, prints during `sasso:compile` when a
35
+ rule with a repeated or leading combinator (`a > + b`) is dropped. The rule was
36
+ dropped before too, silently. This gem does not yet forward the engine's new
37
+ `silence_deprecations:` option, so the warning can only be fixed at its source.
38
+
39
+ ### Added
40
+
41
+ - Ruby 4.0 on the CI matrix. On 4.0, `sasso` resolves to 0.14.1 or later, the
42
+ first release with a Ruby 4.0 binary.
43
+
44
+ ## [0.1.3] - 2026-09-17
45
+
46
+ Now requires the `sasso` gem **>= 0.14.0** (was `>= 0.2.7`), and **Ruby >= 3.2**.
47
+
48
+ ### Removed
49
+
50
+ - **Ruby 3.1 support** (`required_ruby_version` is now `>= 3.2.0`), following the
51
+ `sasso` engine gem, which dropped it in 0.14.0. It is off the CI matrix too.
52
+
53
+ ### Changed
54
+
55
+ - Bumped the `sasso` engine-gem floor to **>= 0.14.0**. From that release the
56
+ engine gem's version tracks the compiler crate it bundles, so the floor names
57
+ the compiler as well: core 0.14.0, at **dart-sass 1.104.1** parity, where 0.2.7
58
+ carried core 0.6.3 (1.101.0).
59
+ - **Your compiled CSS changes**, because the compiler's output moved with the
60
+ core. It remains byte-identical to dart-sass; it is not byte-identical to what
61
+ 0.2.7 wrote, so `assets:precompile` output — and anything digesting it — sees
62
+ one round of churn. The engine gem's
63
+ [CHANGELOG](https://github.com/momiji-rs/sasso-ruby/blob/main/CHANGELOG.md)
64
+ lists every change; the two most likely to appear in a Hanami app:
65
+ - **Serialization only** — the CSS means the same thing, spelled differently.
66
+ Compressed `hsl`/`hwb` route through `rgb`, and a legacy color with a
67
+ fractional channel writes percentages, so `darken(#336699, 10%)` compresses
68
+ to `rgb(15%,30%,45%)` rather than `hsl(210,50%,30%)`.
69
+ - **Not serialization only** — global `whiteness()` / `blackness()` are no
70
+ longer built-ins and now pass through as plain CSS, matching dart-sass. This
71
+ one changes what the browser does: `whiteness(#f00)` used to compile to `0%`,
72
+ and now emits an unknown CSS function, which makes the declaration invalid
73
+ and the browser drop it. It is also silent — no error, no warning — so it is
74
+ the one to grep for. Use `color.whiteness()` via `@use "sass:color"`.
75
+ - No change to this gem's own rake tasks or configuration. Verified green against
76
+ `sasso` 0.14.0 (9 runs, 30 assertions).
77
+
8
78
  ## [0.1.2] - 2026-06-25
9
79
 
10
80
  ### Changed
data/hanami-sasso.gemspec CHANGED
@@ -26,13 +26,23 @@ Gem::Specification.new do |spec|
26
26
  end
27
27
  spec.require_paths = ["lib"]
28
28
 
29
- spec.required_ruby_version = ">= 3.1.0"
29
+ # Follows the `sasso` engine gem, which dropped Ruby 3.1 in 0.14.0 (3.1 left
30
+ # security maintenance in March 2025). A 3.1 install could not resolve the
31
+ # dependency below in any case.
32
+ spec.required_ruby_version = ">= 3.2.0"
30
33
 
31
34
  # The gem's runtime code requires only the compiler (+ Rake for the tasks); it
32
35
  # integrates with Hanami's `assets:precompile` when present but never loads the
33
36
  # framework itself. Targets Hanami 2.1+.
34
37
  spec.add_dependency "rake", ">= 13.0"
35
- spec.add_dependency "sasso", ">= 0.2.7", "< 1"
38
+ # From 0.14.0 the engine gem's version tracks the core compiler crate it
39
+ # bundles, so this floor names the compiler too: 0.14.0 carries core 0.14.0
40
+ # (dart-sass 1.104.1 parity), where 0.2.7 carried core 0.6.3 (1.101.0). `< 1`
41
+ # allows the rest of the 0.x line — the API surface used here is two methods.
42
+ # Not raised for 0.21.0: nothing here uses its one new option
43
+ # (`silence_deprecations:`), and a low floor lets an app pin the compiler back
44
+ # when the stricter 0.21 core rejects one of its stylesheets.
45
+ spec.add_dependency "sasso", ">= 0.14.0", "< 1"
36
46
 
37
47
  spec.add_development_dependency "bundler"
38
48
  spec.add_development_dependency "minitest", "~> 5.0"
@@ -3,5 +3,5 @@
3
3
  module HanamiSasso
4
4
  # The plugin version floats independently of the `sasso` compiler gem; the
5
5
  # gemspec pins the compiler with a range.
6
- VERSION = "0.1.2"
6
+ VERSION = "0.1.4"
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hanami-sasso
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.4
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-06-25 00:00:00.000000000 Z
11
+ date: 2026-10-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -30,7 +30,7 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 0.2.7
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.2.7
43
+ version: 0.14.0
44
44
  - - "<"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '1'
@@ -109,7 +109,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
109
109
  requirements:
110
110
  - - ">="
111
111
  - !ruby/object:Gem::Version
112
- version: 3.1.0
112
+ version: 3.2.0
113
113
  required_rubygems_version: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - ">="