rabbit-slide-unasuke-rubykaigi-2025-followup 1.0.0

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 951f086db750b63117017d1af33367828b170d605842b08906c589c97ea7d156
4
+ data.tar.gz: 737703105efbbaa0f7eceaded2d838f7e82535fa69a2a1d50c2f4b98b06b842c
5
+ SHA512:
6
+ metadata.gz: 7e59ad96970e83256b8bcf92331cb95be81d7bb67f3cd588ea511fcc5ef215273832e9589ae95938f3a502402f13907feef68b9b6b08949d372b48a4fdd8431e
7
+ data.tar.gz: f2d9da6efa0652c70fafe8f412e8e032a5a576b8e01139c2fa6c39151a9fa7aa3ff63b8294e4d74a0c1e98d7d9971846eaa7beaf418ac9a4764395d237ad3584
data/.rabbit ADDED
@@ -0,0 +1,2 @@
1
+ --size 1920,1080
2
+ slide.md
data/README.md ADDED
@@ -0,0 +1,24 @@
1
+ # RubyKaigi 2025 followup
2
+
3
+ https://rhc.connpass.com/event/356128/
4
+
5
+ ## 作者向け
6
+
7
+ ### 表示
8
+
9
+ rake
10
+
11
+ ### 公開
12
+
13
+ rake publish
14
+
15
+ ## 閲覧者向け
16
+
17
+ ### インストール
18
+
19
+ gem install rabbit-slide-unasuke-rubykaigi-2025-followup
20
+
21
+ ### 表示
22
+
23
+ rabbit rabbit-slide-unasuke-rubykaigi-2025-followup.gem
24
+
data/Rakefile ADDED
@@ -0,0 +1,17 @@
1
+ require "rabbit/task/slide"
2
+
3
+ # Edit ./config.yaml to customize meta data
4
+
5
+ spec = nil
6
+ Rabbit::Task::Slide.new do |task|
7
+ spec = task.spec
8
+ # spec.files += Dir.glob("doc/**/*.*")
9
+ # spec.files -= Dir.glob("private/**/*.*")
10
+ # spec.add_runtime_dependency("rabbit-theme-YOUR-THEME")
11
+ end
12
+
13
+ desc "Tag #{spec.version}"
14
+ task :tag do
15
+ sh("git", "tag", "-a", spec.version.to_s, "-m", "Publish #{spec.version}")
16
+ sh("git", "push", "--tags")
17
+ end
data/config.yaml ADDED
@@ -0,0 +1,23 @@
1
+ ---
2
+ id: rubykaigi-2025-followup
3
+ base_name: slide
4
+ tags: ["ruby", "tls"]
5
+ presentation_date: 2025-08-30
6
+ presentation_start_time:
7
+ presentation_end_time:
8
+ version: 1.0.0
9
+ licenses: ["MIT"]
10
+ slideshare_id:
11
+ speaker_deck_id:
12
+ vimeo_id:
13
+ youtube_id:
14
+ width: 1920
15
+ height: 1080
16
+ source_code_uri: https://github.com/unasuke/rubykaigi-2025-followup
17
+ author:
18
+ markup_language: :markdown
19
+ name: unasuke
20
+ email: yusuke1994525@gmail.com
21
+ rubygems_user: unasuke
22
+ slideshare_user:
23
+ speaker_deck_user:
Binary file
data/img/icon.jpg ADDED
Binary file
data/img/timetable.png ADDED
Binary file
data/slide.md ADDED
@@ -0,0 +1,78 @@
1
+ # QUIC(TLS 1.3)実装進捗
2
+
3
+ author
4
+ : unasuke
5
+
6
+ content-source
7
+ : RubyKaigi 2025 follow up
8
+
9
+ date
10
+ : 2025-08-30
11
+
12
+ theme
13
+ : theme
14
+
15
+ # 自己紹介
16
+
17
+ * Name: うなすけ
18
+ * Work: フリーランス
19
+ * Kaigi on Rails 2025オーガナイザー (09/26-27 開催)
20
+ * {::tag name='x-small'}GitHub <https://github.com/unasuke>{:/tag}
21
+ * {::tag name='x-small'}Fediverse <https://mstdn.unasuke.com/@unasuke>{:/tag}
22
+ * {::tag name='x-small'}X <https://twitter.com/yu_suke1994>{:/tag}
23
+ * {::tag name='x-small'}<https://unasuke.com>{:/tag}
24
+
25
+ ![](img/icon.jpg){:relative_width='24' align='right' relative_margin_right='-8' relative_margin_top='20'}
26
+
27
+ # 元ネタない勢(1人)
28
+
29
+ ![](img/timetable.png){:relative_width='100'}
30
+
31
+ # 経緯
32
+ 1. QUICプロトコルをRubyで実装したい
33
+ 2. 一旦Python実装のRuby移植は不完全ながらできた(これがGrantでの成果)
34
+ 3. より"Rubyらしい"コードになるように実装し直している
35
+ 4. *QUICを実装するためにはTLS 1.3を実装しないといけない* ← イマココ
36
+
37
+ \\nずっとTLS 1.3の実装してる
38
+
39
+
40
+ # 進捗
41
+ 実際にご覧いただこう
42
+
43
+ # 今のは何?
44
+ * `www.example.com` に対して (https) HTTP/1.1 でGET requestを飛ばしている
45
+ * TLS handshakeをする
46
+ * 返ってきた暗号化されたデータを解く
47
+ * 標準出力に表示しておしまい
48
+
49
+ # 取り組んでいたこと
50
+ * Client側Handshake flowのリファクタ
51
+ * そもそもHTTPSでreq/resをするサンプルクライアントの実装
52
+ * 色々不足していたものたちの実装&リファクタ
53
+
54
+ # 取り組んでいたことlist
55
+ * [QUIC実装月報 2025年3月 \| うなすけとあれこれ](https://blog.unasuke.com/2025/quic-impl-monthly-report-202503/)
56
+ * 進捗らしい進捗があるのはここだけかも
57
+ * [QUIC実装月報 2025年4月 \| うなすけとあれこれ](https://blog.unasuke.com/2025/quic-impl-monthly-report-202504/)
58
+ * [QUIC実装月報 2025年5月 \| うなすけとあれこれ](https://blog.unasuke.com/2025/quic-impl-monthly-report-202505/)
59
+ * [QUIC実装月報 2025年6月 \| うなすけとあれこれ](https://blog.unasuke.com/2025/quic-impl-monthly-report-202506/)
60
+ * [QUIC実装月報 2025年7月 \| うなすけとあれこれ](https://blog.unasuke.com/2025/quic-impl-monthly-report-202507/)
61
+
62
+ # やってたよ
63
+ ruby-jp discordの `#weekly-shinchoku` で垂れ流しています
64
+
65
+ ![](img/discord-log.png){:relative_width='60'}
66
+
67
+ # 実際にご覧いただこう2
68
+ 実際にご覧いただこう
69
+
70
+ # HELP ME
71
+ 会場にお越しのTLS有識者の方
72
+
73
+
74
+ # 今後の展望
75
+ * 明日からまた開発中断します
76
+ * Kaigi on Rails 2025のため……
77
+ * 10月から復活!
78
+ * したい……
data/slide.rab ADDED
@@ -0,0 +1,32 @@
1
+ = タイトル
2
+
3
+ # : subtitle
4
+ # サブタイトル
5
+ : author
6
+ unasuke
7
+ # : institution
8
+ # 所属
9
+ # : content-source
10
+ # イベント名
11
+ # : date
12
+ # 2025-08-28
13
+ # : allotted-time
14
+ # 5m
15
+ # : start-time
16
+ # 2025-08-28T14:01:18+09:00
17
+ # : end-time
18
+ # 2025-08-28T14:06:18+09:00
19
+ # : theme
20
+ # default
21
+
22
+ = 最初のスライド
23
+
24
+ * 項目1
25
+ * 項目2
26
+ * 項目3
27
+
28
+ = 二番目のスライド
29
+
30
+ # image
31
+ # src = https://raw.github.com/rabbit-shocker/rabbit/master/sample/lavie.png
32
+ # relative_height = 100
data/theme.rb ADDED
@@ -0,0 +1,113 @@
1
+ @default_foreground ||= @foreground
2
+ @default_background ||= @background
3
+ @default_shadow_color ||= @shadow_color
4
+
5
+ # pp font_families
6
+ font_color = '#333'
7
+ @default_font = 'BIZ UDPGothic'
8
+ @font_family = find_font_family(@default_font)
9
+ @bold_font = @default_font
10
+ @bold_font_family = find_font_family(@bold_font)
11
+ @monospace_font = 'Cica'
12
+ @monospace_font_family = find_font_family(@monospace_font)
13
+
14
+ @xxxx_large_font_size = screen_size(10 * Pango::SCALE)
15
+ @xxx_large_font_size = screen_size(8 * Pango::SCALE)
16
+ @xx_large_font_size = screen_size(6 * Pango::SCALE)
17
+ @x_large_font_size = screen_size(4.5 * Pango::SCALE)
18
+ @large_font_size = screen_size(4 * Pango::SCALE)
19
+ @normal_font_size = screen_size(3.5 * Pango::SCALE)
20
+ @small_font_size = screen_size(3.2 * Pango::SCALE)
21
+ @x_small_font_size = screen_size(3 * Pango::SCALE)
22
+ @xx_small_font_size = screen_size(2.8 * Pango::SCALE)
23
+ @xxx_small_font_size = screen_size(2.5 * Pango::SCALE)
24
+ @script_font_size = @x_small_font_size
25
+ @large_script_font_size = @small_font_size
26
+ @x_large_script_font_size = @large_font_size
27
+ @title_slide_title_font_size = @xxx_large_font_size
28
+
29
+ @block_quote_fill_color = "#f8f8f8"
30
+ @preformatted_fill_color = "#f8f8f8"
31
+ @default_headline_line_color = font_color
32
+
33
+ # @title_slide_background_image = 'img/title_bg.png'
34
+ # @slide_background_image = 'img/bg.png'
35
+
36
+ # set_foreground(@default_foreground)
37
+ # set_background(@default_background)
38
+
39
+ add_image_path("ruby-images")
40
+ include_theme("default-icon")
41
+ # include_theme("default-title-text")
42
+ include_theme("default-text")
43
+ include_theme("default-title-slide")
44
+ include_theme("default-slide")
45
+ include_theme("default-item-mark")
46
+ include_theme("default-method-list")
47
+ include_theme("default-preformatted")
48
+ include_theme("default-block-quote")
49
+ include_theme("default-foot-text")
50
+ include_theme("default-description")
51
+ include_theme("image")
52
+ include_theme("table")
53
+ include_theme("newline-in-slides")
54
+ include_theme("per-slide-background-color")
55
+ include_theme("background-image-toolkit")
56
+ include_theme("per-slide-background-image")
57
+ include_theme("body-background-image")
58
+ include_theme("tag")
59
+ include_theme("syntax-highlighting")
60
+ include_theme("default-comment")
61
+
62
+ include_theme("title-slide-background-image")
63
+ include_theme("slide-background-image")
64
+
65
+ match(TitleSlide, "*") do |elems|
66
+ elems.horizontal_centering = true
67
+ elems.prop_set("size", @large_font_size)
68
+ set_font_family(elems)
69
+ end
70
+
71
+ match(TitleSlide, Title) do |titles|
72
+ titles.prop_set("size", @title_slide_title_font_size)
73
+ titles.padding_bottom = @space * 2
74
+ titles.prop_set("weight", "SemiBold")
75
+ end
76
+
77
+ match(Slide, HeadLine) do |heads|
78
+ heads.prop_set("size", @large_font_size)
79
+ heads.prop_set("weight", "bold")
80
+ end
81
+
82
+ match(TitleSlide) do |slides|
83
+ # slides.margin_left = 900
84
+ slides.vertical_centering = true
85
+ slides.prop_set "foreground", font_color
86
+ slides.prop_set("weight", "bold")
87
+ end
88
+ match(TitleSlide, Subtitle) do |subtitle|
89
+ subtitle.margin_top = -20
90
+ subtitle.prop_set("size", @large_font_size)
91
+ end
92
+ match(TitleSlide, Author) do |author|
93
+ author.margin_top = 50
94
+ author.prop_set("size", @large_font_size)
95
+ author.prop_set("weight", "normal")
96
+ end
97
+ match(TitleSlide, Place) do |place|
98
+ place.prop_set("size", @small_font_size)
99
+ end
100
+ match(TitleSlide, "*") do |elems|
101
+ elems.horizontal_centering = true
102
+ end
103
+
104
+ match(TitleSlide, Date) do |dates|
105
+ dates.prop_set("size", @small_font_size)
106
+ # dates.prop_set("style", "italic")
107
+ end
108
+
109
+ match(TitleSlide, ContentSource) do |sources|
110
+ sources.prop_set("size", @small_font_size)
111
+ sources.margin_bottom = @space
112
+ # sources.prop_set("style", "italic")
113
+ end
metadata ADDED
@@ -0,0 +1,67 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rabbit-slide-unasuke-rubykaigi-2025-followup
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - unasuke
8
+ bindir: bin
9
+ cert_chain: []
10
+ date: 2025-08-30 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: rabbit
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: 2.0.2
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: 2.0.2
26
+ description: https://rhc.connpass.com/event/356128/
27
+ email:
28
+ - yusuke1994525@gmail.com
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files: []
32
+ files:
33
+ - ".rabbit"
34
+ - README.md
35
+ - Rakefile
36
+ - config.yaml
37
+ - img/discord-log.png
38
+ - img/icon.jpg
39
+ - img/timetable.png
40
+ - pdf/rubykaigi-2025-followup-slide.pdf
41
+ - slide.md
42
+ - slide.rab
43
+ - theme.rb
44
+ homepage: https://slide.rabbit-shocker.org/authors/unasuke/rubykaigi-2025-followup/
45
+ licenses:
46
+ - MIT
47
+ metadata:
48
+ source_code_uri: https://github.com/unasuke/rubykaigi-2025-followup
49
+ markup_language: markdown
50
+ rdoc_options: []
51
+ require_paths:
52
+ - lib
53
+ required_ruby_version: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: '0'
58
+ required_rubygems_version: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ requirements: []
64
+ rubygems_version: 3.6.9
65
+ specification_version: 4
66
+ summary: RubyKaigi 2025 followup
67
+ test_files: []