bridgetown-sasso 0.1.1 → 0.1.3

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: bdf313bc217ec7e05741e0e9f8af7efa8c1cdffb157f2ea15b1e926e47ab1d5f
4
- data.tar.gz: aa21986e24d17c3eec1e62721a96024818e4a20a3c47fb7d7c6b07e8c5618410
3
+ metadata.gz: d843208c8cc668056c317382e3f4c870a33a2e50c9f4b4f3c2daec840f64e8b3
4
+ data.tar.gz: ddeea6e8100ad3567dd1d4e6b6c5bcd6ea4ab2b088883b37d1ab3bc26c78e1a3
5
5
  SHA512:
6
- metadata.gz: 2475e4447f1f42a9d6e3ae69e2cc29a0d8d9f1d626dbd56cc28cc4ea70c51847bd815e803d9699c684dd128a43ca93b0b02dba1c7b4fe25885bd6a123184c09d
7
- data.tar.gz: 1927e8c1a67bb87eb59e0d43be030d472165123c9ff1622758a7e9d5b5d3deb026e19e8a5185507089ca5b8c668b2c7f3bc99d818041c8b796da00e72dd06496
6
+ metadata.gz: a5ce35b023153e75d415372ababcb7ffd4dd54e68c52d5b95c67a8f280c151b53034256ced49eb2b414593d97ec782e6c52f7f47f39b2416021af5e93c9f3c70
7
+ data.tar.gz: 19c66eb970a7b0f111b7416b169fe9b0f5bdb7026c661769e8650be50b490306ca572d5aad6b97251db9b3b10e4f1c33a4d9c209ed2a6d8e79c0b2c940a1c333
data/CHANGELOG.md CHANGED
@@ -3,8 +3,56 @@
3
3
  All notable changes to **bridgetown-sasso** are documented here.
4
4
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
5
5
 
6
+ This plugin 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.3] - 2026-09-17
14
+
15
+ Now requires the `sasso` gem **>= 0.14.0** (was `>= 0.2.7`), and **Ruby >= 3.2**.
16
+
17
+ ### Removed
18
+
19
+ - **Ruby 3.1 support** (`required_ruby_version` is now `>= 3.2.0`), following the
20
+ `sasso` engine gem, which dropped it in 0.14.0. It is off the CI matrix too.
21
+
22
+ ### Changed
23
+
24
+ - Bumped the `sasso` engine-gem floor to **>= 0.14.0**. From that release the
25
+ engine gem's version tracks the compiler crate it bundles, so the floor names
26
+ the compiler as well: core 0.14.0, at **dart-sass 1.104.1** parity, where 0.2.7
27
+ carried core 0.6.3 (1.101.0).
28
+ - **Your compiled CSS changes**, because the compiler's output moved with the
29
+ core. It stays byte-identical to dart-sass — the plugin's own test asserts that
30
+ — but it is not byte-identical to what 0.2.7 produced, so a build that diffs or
31
+ digests its `.css` output sees one round of churn. The engine gem's
32
+ [CHANGELOG](https://github.com/momiji-rs/sasso-ruby/blob/main/CHANGELOG.md)
33
+ lists every change; the two most likely to appear in a Bridgetown site:
34
+ - **Serialization only** — the CSS means the same thing, spelled differently.
35
+ Compressed `hsl`/`hwb` route through `rgb`, and a legacy color with a
36
+ fractional channel writes percentages, so `darken(#336699, 10%)` compresses
37
+ to `rgb(15%,30%,45%)` rather than `hsl(210,50%,30%)`.
38
+ - **Not serialization only** — global `whiteness()` / `blackness()` are no
39
+ longer built-ins and now pass through as plain CSS, matching dart-sass. This
40
+ one changes what the browser does: `whiteness(#f00)` used to compile to `0%`,
41
+ and now emits an unknown CSS function, which makes the declaration invalid
42
+ and the browser drop it. It is also silent — no error, no warning — so it is
43
+ the one to grep for. Use `color.whiteness()` via `@use "sass:color"`.
44
+ - No change to this plugin's own API or configuration. Verified green against
45
+ `sasso` 0.14.0 (5 tests, 12 assertions), including the byte-for-byte
46
+ standalone-compile check.
47
+
48
+ ## [0.1.2] - 2026-06-25
49
+
50
+ Now requires the `sasso` gem **>= 0.2.7** (was `>= 0.2.3`), whose library API
51
+ omits the trailing newline (adopting core sasso 0.6.3, byte-for-byte dart-sass
52
+ parity). The builder re-adds the conventional trailing newline when writing a
53
+ build artifact, so compiled `.css` files end with a single newline like
54
+ dart-sass's CLI — for both expanded and compressed output.
55
+
8
56
  ## [0.1.1] - 2026-06-15
9
57
 
10
58
  Now requires the `sasso` gem **>= 0.2.3**, which brings two dart-sass parity
@@ -25,10 +25,17 @@ Gem::Specification.new do |spec|
25
25
  end
26
26
  spec.require_paths = ["lib"]
27
27
 
28
- spec.required_ruby_version = ">= 3.1.0"
28
+ # Follows the `sasso` engine gem, which dropped Ruby 3.1 in 0.14.0 (3.1 left
29
+ # security maintenance in March 2025). A 3.1 install could not resolve the
30
+ # dependency below in any case.
31
+ spec.required_ruby_version = ">= 3.2.0"
29
32
 
30
33
  spec.add_dependency "bridgetown", ">= 2.0"
31
- spec.add_dependency "sasso", ">= 0.2.3", "< 1"
34
+ # The compiler engine gem. From 0.14.0 its version tracks the core compiler
35
+ # crate it bundles, so this floor names the compiler too: 0.14.0 carries core
36
+ # 0.14.0 (dart-sass 1.104.1 parity), where 0.2.7 carried core 0.6.3 (1.101.0).
37
+ # `< 1` allows the rest of the 0.x line — this plugin uses one method of it.
38
+ spec.add_dependency "sasso", ">= 0.14.0", "< 1"
32
39
 
33
40
  spec.add_development_dependency "bundler"
34
41
  spec.add_development_dependency "minitest", "~> 5.0"
@@ -29,7 +29,9 @@ module BridgetownSasso
29
29
  css = ::Sasso.compile(src, style: style, load_paths: extra_load_paths)
30
30
  dest = site.in_dest_dir(output.to_s)
31
31
  FileUtils.mkdir_p(File.dirname(dest))
32
- File.write(dest, css)
32
+ # sasso >= 0.2.7's library API omits the trailing newline; a built CSS
33
+ # artifact conventionally ends with one (and dart-sass's CLI writes it).
34
+ File.write(dest, "#{css}\n")
33
35
  Bridgetown.logger.info("bridgetown-sasso:", "#{source} -> #{output} (#{style})")
34
36
  end
35
37
  end
@@ -3,5 +3,5 @@
3
3
  module BridgetownSasso
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.1"
6
+ VERSION = "0.1.3"
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bridgetown-sasso
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.3
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-15 00:00:00.000000000 Z
11
+ date: 2026-09-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bridgetown
@@ -30,7 +30,7 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 0.2.3
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.3
43
+ version: 0.14.0
44
44
  - - "<"
45
45
  - !ruby/object:Gem::Version
46
46
  version: '1'
@@ -149,7 +149,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - ">="
151
151
  - !ruby/object:Gem::Version
152
- version: 3.1.0
152
+ version: 3.2.0
153
153
  required_rubygems_version: !ruby/object:Gem::Requirement
154
154
  requirements:
155
155
  - - ">="