mayu-live 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5814cbef30ce17db08763d4a5573090a92766e1c376e60e889ea923ec6edbd4e
4
- data.tar.gz: f0ab5e3c58fdaee8dda0287dd39839b816974828e154f5d5c9423b0b1909227e
3
+ metadata.gz: d60c146397cbe38cfc7e659f0681d90e6bbac5e278ba95a60527ff8f66ba1280
4
+ data.tar.gz: d4f35ae4cdfa457b9ac1bca877626b8e045a870cfb723699bae500a54293938a
5
5
  SHA512:
6
- metadata.gz: 377ade35d2d0d21a816fd942dc02dd22b488e760b888711dd892b4c8df62915254978f20671d66845faca1862d1e757ff2d9b6708e208b030bc14971695b6b93
7
- data.tar.gz: 411834ef98447e08c511ba70cbdc36c87852063e74a19177e275cdab6723a3b874e495b9505d552928346fe0bb5ee97e646684acd5f7128d79bef8b6eb5c9e6c
6
+ metadata.gz: dbf52fb2fe61b49ffef476d8ce75edc96904d7f0a9372f3ee2949137068f1932db51b502e254de932cb06dbdd6f2057152057b780d2774a2ce4c53743be5624c
7
+ data.tar.gz: a33c40fb0f20f7643979e5486ad2c83c1798d2ce042511bb3d143cf127f8a822b3ab7da3f8ac94df968a2c0de559e20cd28680299c9410d3d113d4aea032c179
data/exe/mayu CHANGED
@@ -23,10 +23,6 @@ else
23
23
  puts "\e[2mYJIT is not supported!\e[0m"
24
24
  end
25
25
 
26
- if RubyVM::MJIT.enabled?
27
- puts "\e[1mMJIT is enabled!\e[0m"
28
- end
29
-
30
26
  require "mayu/banner"
31
27
  require "mayu/commands"
32
28
 
data/lib/mayu/commands.rb CHANGED
@@ -16,6 +16,10 @@ module Mayu
16
16
 
17
17
  case argv
18
18
  in ["dev", *rest]
19
+ # Initialize RMagick on start to avoid the following error:
20
+ # objc[88493]: +[__NSCFConstantString initialize] may have been in progress in another thread when fork() was called.
21
+ # We cannot safely call it or ignore it in the fork() child process. Crashing instead.
22
+ require "rmagick"
19
23
  require_relative "server"
20
24
  Server.start(load_config(:dev))
21
25
  in ["devbundle", *rest]
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
  Self =
3
3
  setup_component(
4
- assets: ["rKxGn-R511h2m1nlvs18PwsPwrzW-iGCNVojf-x0LRg=.css"],
4
+ assets: ["Cd9Qx4lhkbeZyruovAokW1FL3tHSmMOxOc-2y1h7Zvc=.css"],
5
5
  styles: {
6
6
  button: "app/components/MyComponent.button?dhhHwAZl"
7
7
  }
@@ -41,10 +41,11 @@ module Mayu
41
41
  params(
42
42
  source: String,
43
43
  source_path: String,
44
- source_line: Integer
44
+ source_line: Integer,
45
+ minify: T::Boolean
45
46
  ).returns(TransformResult)
46
47
  end
47
- def self.transform(source:, source_path:, source_line: 1)
48
+ def self.transform(source:, source_path:, source_line: 1, minify: true)
48
49
  # Required here because it's not necessary in production..
49
50
  # kinda messy. need to rewrite the entire "resources" thing...
50
51
  require "mayu/css"
@@ -55,7 +56,8 @@ module Mayu
55
56
  File.basename(source_path, ".*")
56
57
  ).delete_prefix("./")
57
58
 
58
- result = Mayu::CSS.transform(source_path_without_extension, source)
59
+ result =
60
+ Mayu::CSS.transform(source_path_without_extension, source, minify:)
59
61
 
60
62
  output = result.code.encode("utf-8")
61
63
 
@@ -94,9 +96,9 @@ module Mayu
94
96
 
95
97
  sig do
96
98
  params(
97
- classes: T::Hash[String, String],
98
- elements: T::Hash[String, String],
99
- exports: T::Hash[Symbol, T.untyped]
99
+ classes: T::Hash[Symbol, String],
100
+ elements: T::Hash[Symbol, String],
101
+ exports: T::Hash[String, T.untyped]
100
102
  ).returns(T::Hash[Symbol, String])
101
103
  end
102
104
  def self.join_classes(classes, elements, exports)
@@ -113,19 +115,18 @@ module Mayu
113
115
  sig do
114
116
  params(
115
117
  klass: String,
116
- exports: T::Hash[Symbol, T.untyped],
117
- classes: T::Hash[String, String]
118
+ exports: T::Hash[String, T.untyped],
119
+ classes: T::Hash[Symbol, String]
118
120
  ).returns(String)
119
121
  end
120
122
  def self.join_class(klass, exports, classes)
121
- case exports[klass.to_sym]
122
- in composes:
123
+ if composes = exports[klass]&.composes
123
124
  [
124
125
  klass,
125
- *composes.map do
126
- case _1
127
- in { type: "local", name: }
128
- classes[name]
126
+ *composes.map do |compose|
127
+ case compose
128
+ in Mayu::CSS::ComposeLocal
129
+ classes[compose.name.to_sym]
129
130
  end
130
131
  end
131
132
  ].join(" ")
@@ -3,6 +3,7 @@
3
3
 
4
4
  require "ripper"
5
5
  require "syntax_suggest"
6
+ require "syntax_suggest/api"
6
7
  require "syntax_suggest/code_line"
7
8
  require "syntax_suggest/explain_syntax"
8
9
  require "syntax_suggest/lex_all"
data/lib/mayu/version.rb CHANGED
@@ -2,5 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  module Mayu
5
- VERSION = "0.0.5"
5
+ VERSION = "0.0.6"
6
6
  end
data/mayu-live.gemspec CHANGED
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
17
17
 
18
18
  spec.homepage = "https://mayu.live/"
19
19
  spec.license = "AGPL-3.0"
20
- spec.required_ruby_version = ">= 3.2.0"
20
+ spec.required_ruby_version = ">= 3.3.0"
21
21
 
22
22
  spec.metadata["homepage_uri"] = spec.homepage
23
23
  spec.metadata["source_code_uri"] = "https://github.com/mayu-live/framework"
@@ -43,15 +43,15 @@ Gem::Specification.new do |spec|
43
43
  spec.require_paths = ["lib"]
44
44
 
45
45
  # Core dependencies
46
- spec.add_dependency "async", "~> 2.3.0"
46
+ spec.add_dependency "async", "~> 2.8.0"
47
47
  spec.add_dependency "async-container", "~> 0.16.12"
48
- spec.add_dependency "async-http", "~> 0.59.4"
48
+ spec.add_dependency "async-http", "~> 0.61.0"
49
49
  spec.add_dependency "brotli", "~> 0.4.0"
50
50
  spec.add_dependency "mime-types", "~> 3.4.1"
51
51
  spec.add_dependency "msgpack", "~> 1.6.0"
52
52
  spec.add_dependency "nanoid", "~> 2.0.0"
53
53
  spec.add_dependency "prometheus-client", "~> 4.0.0"
54
- spec.add_dependency "protocol-http", "~> 0.23.12"
54
+ spec.add_dependency "protocol-http", "~> 0.25.0"
55
55
  spec.add_dependency "pry", "~> 0.14.2"
56
56
  spec.add_dependency "rack", ">= 3.0.4.1", "< 3.0.9.0"
57
57
  spec.add_dependency "rake", "~> 13.0.6"
@@ -68,10 +68,11 @@ Gem::Specification.new do |spec|
68
68
  spec.add_dependency "image_size", "~> 3.2.0"
69
69
  spec.add_dependency "kramdown", "~> 2.4.0"
70
70
  spec.add_dependency "rouge", "~> 4.0.0"
71
- spec.add_dependency "mayu-css", "~> 0.0.3"
71
+ spec.add_dependency "mayu-css", "~> 0.1.2"
72
72
  spec.add_dependency "rmagick", "~> 5.3.0"
73
73
  spec.add_dependency "source_map", "~> 3.0.1"
74
74
  spec.add_dependency "syntax_tree", "~> 5.3.0"
75
75
  spec.add_dependency "syntax_tree-haml", "~> 3.0.0"
76
76
  spec.add_dependency "syntax_tree-xml", "~> 0.1.0"
77
+ spec.add_dependency "base64", "~> 0.2.0"
77
78
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mayu-live
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andreas Alin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-12-11 00:00:00.000000000 Z
11
+ date: 2024-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: async
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 2.3.0
19
+ version: 2.8.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 2.3.0
26
+ version: 2.8.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: async-container
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.59.4
47
+ version: 0.61.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.59.4
54
+ version: 0.61.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: brotli
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -128,14 +128,14 @@ dependencies:
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 0.23.12
131
+ version: 0.25.0
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 0.23.12
138
+ version: 0.25.0
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: pry
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -316,14 +316,14 @@ dependencies:
316
316
  requirements:
317
317
  - - "~>"
318
318
  - !ruby/object:Gem::Version
319
- version: 0.0.3
319
+ version: 0.1.2
320
320
  type: :runtime
321
321
  prerelease: false
322
322
  version_requirements: !ruby/object:Gem::Requirement
323
323
  requirements:
324
324
  - - "~>"
325
325
  - !ruby/object:Gem::Version
326
- version: 0.0.3
326
+ version: 0.1.2
327
327
  - !ruby/object:Gem::Dependency
328
328
  name: rmagick
329
329
  requirement: !ruby/object:Gem::Requirement
@@ -394,6 +394,20 @@ dependencies:
394
394
  - - "~>"
395
395
  - !ruby/object:Gem::Version
396
396
  version: 0.1.0
397
+ - !ruby/object:Gem::Dependency
398
+ name: base64
399
+ requirement: !ruby/object:Gem::Requirement
400
+ requirements:
401
+ - - "~>"
402
+ - !ruby/object:Gem::Version
403
+ version: 0.2.0
404
+ type: :runtime
405
+ prerelease: false
406
+ version_requirements: !ruby/object:Gem::Requirement
407
+ requirements:
408
+ - - "~>"
409
+ - !ruby/object:Gem::Version
410
+ version: 0.2.0
397
411
  description: |
398
412
  Mayu Live is a live updating server side VirtualDOM framework for Ruby,
399
413
  inspired by modern frontend tools that exist in the JavaScript ecosystem.
@@ -611,14 +625,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
611
625
  requirements:
612
626
  - - ">="
613
627
  - !ruby/object:Gem::Version
614
- version: 3.2.0
628
+ version: 3.3.0
615
629
  required_rubygems_version: !ruby/object:Gem::Requirement
616
630
  requirements:
617
631
  - - ">="
618
632
  - !ruby/object:Gem::Version
619
633
  version: '0'
620
634
  requirements: []
621
- rubygems_version: 3.4.1
635
+ rubygems_version: 3.5.3
622
636
  signing_key:
623
637
  specification_version: 4
624
638
  summary: Server side VDOM framework