Guild icon
swift-developers-japan
archived / showcase_archived
フォーラム形式で立て直しました。 https://discord.com/channels/291054398077927425/1169443325795901531
Avatar
Kishikawa Katsumi 5/17/2023 11:19 AM
SwiftのToolchainの新しいのが出たらそれを使うようにするPull Requestを送ってくれるようなCIを整えた。別になんてことないスクリプトなんだけど一番新しい swift-5.9-DEVELOPMENT-SNAPSHOT-yyyy-mm-dd-a タグをとってくる方法が意外と難しかったから共有したい。 https://github.com/kishikawakatsumi/swift-power-assert/blob/main/.github/workflows/update_toolchain.yml
11:20 AM
APIでは出てこないしリポジトリクローンして git tag しても出てこないんだけどあれはなんか特殊なタグなのかしら?
Avatar
あれ、普通にcloneして出てこないんでしたっけ
11:26 AM
Avatar
Kishikawa Katsumi 5/17/2023 11:29 AM
おおー、これはいいかも。Swift.orgのデータソースがこれなのね。
11:30 AM
git cloneして出てくるんだけど上には出てこないんだよね。前方一致でフィルタしてソートしてやっと見つかる。
Avatar
Kishikawa Katsumi 5/17/2023 11:33 AM
これでいいやん。こんなのあったのか🤩
Avatar
公式Dockerイメージの作成にこれらのubuntu版とかが使われてる。
Avatar
Kishikawa Katsumi 5/17/2023 11:34 AM
さすがにタグを1つ取るだけのためにSwiftのリポジトリをクローンするのはGitHubに申し訳ないなと思っていた。
Avatar
地球にやさしい
Avatar
Kishikawa Katsumi 5/17/2023 11:37 AM
これはいい。ありがとうございます。
👍 1
Avatar
https://github.com/uber/mockolo/releases/tag/2.0.0 mockolo2.0.0リリースしました。protocol用のモックを簡単に作れます。 みんなもテストダブルを使ってテストを書こう
2.0.0 Major Update mockolo uses SwiftSyntax508.0.0 from this version. This will solve many installation issues. Along with this, build support for mockolo itself in lower Xcode versions will be ter...
🎉 9
12:16 AM
個人的にはLinuxでも動くようになったのがポイントです
Avatar
omochimetaru 5/19/2023 2:22 AM
リリース担当なのが凄い Uberの人は最近は関わってないんですか?
Avatar
ほとんど顔みないですね。Uber内でどういう立ち位置になってるんだろうなぁ
Avatar
omochimetaru 5/19/2023 2:28 AM
一度製品のテストスイートに組み込んでたらメンテやめられなさそうだけどなあ。 (edited)
Avatar
Kishikawa Katsumi 5/26/2023 12:29 PM
https://swift-ast-explorer.com をオーバーホールした。 ツリービューとかポップオーバーにライブラリ使ってたのを自分で書き直したりして細かい調整がきくようになったのでいろいろ見やすくできた。SwiftSyntax使うとき最初に必要な情報はだいたい全部みえるようになったと思う。 (edited)
Visualize Swift AST and select nodes within the editor, a great way to learn about the structure of Swift syntax trees.
👏 3
Avatar
https://github.com/noppefoxwolf/RefreshControl UIRefreshControlを魔改造したRefreshControlを作りました (edited)
A customized refresh control based on UIRefreshControl. - GitHub - noppefoxwolf/RefreshControl: A customized refresh control based on UIRefreshControl.
😯 1
Avatar
Kishikawa Katsumi 9/8/2023 9:46 PM
UIRefreshControlはAppleのコンポーネントのうち品質の悪いものの一つって感じだったけど、今はそうでもない?一から作るより改造したほうがいいの?
Avatar
UIKitの中だとまぁまぁ悪い方ですね、ただ1から作るとそれはそれで結構大変なんですよね…
1:57 AM
PullToRefreshライブラリブームが落ち着いて、新しめのちゃんと動くやつが減ってきてるというのもあって、RefreshControlの決定版みたいなのが欲しい。
Avatar
かなりscrollviewにハック仕掛けてるから作るのも難しいですよね
Avatar
勝手にcontentInsets入れたりしますからね ただその辺はUIRefreshControlも適当な作りになっているっぽい↓ https://zenn.dev/ueeek/articles/20230408pull_to_refresh_top_inset
😂 1
Avatar
Kishikawa Katsumi 9/9/2023 7:42 AM
なるほどね。状況はあまり変わってないんかな。汎用的にうまく動くPullToRefreshコンポーネントを作るのは大変だけど、自分のアプリでだけ完璧に動くっていうのはUIRefreshControlを制御するより作った方が早いって印象。
Avatar
Twitterがevilになって特許を行使してAPIが消える未来
Avatar
Kishikawa Katsumi 9/9/2023 7:44 AM
PullToRefreshの特許Twitterが持ってるのか!そりゃそうか。でもあと10年くらいか・・・?
7:47 AM
PullToRefreshって本当は上に新しい情報が積まれるタイプのTimeline形式かせいぜいメールソフトくらいしか使いやすい場面ないんだけど、なんかいろんなところで単なるリロードとして使われるようになってしまって、特許を行使したら金になるんだろうか。
Avatar
どうでしょうね。そういう事しない、って事になってますが。
7:48 AM
もう所有者が違うので…
🥲 5
Avatar
PullToRefresh、ちゃんと裏側で更新してれば要らない気もするので、そろそろ別の更新UIパラダイムが来てほしい
Avatar
あれは、新しいコンテンツがでるかでないか確率的になっていることころに、確率的に餌がもらえる猿のような中毒性の効果があるので良いUIとなっている
12:41 PM
というのが自分の見解
Avatar
https://github.com/noppefoxwolf/BuildAtPlugin ビルド成功したけど前のビルドが実行されているみたいなのを調べるためにBuildした時刻をDateに生やすプラグイン作ってみた
Contribute to noppefoxwolf/BuildAtPlugin development by creating an account on GitHub.
4:19 AM
ただ、これを入れてから問題が起きなくなった…。素粒子?
😭 4
Avatar
観測するコードを入れたから揺らぎがなくなった説w
t_aruaru 3
👁️ 1
Avatar
ビルドキャッシュ周りがおかしくて更新されてなかったのが、そのプラグインの更新は必ず捕捉出来ておかしくならなかったとかなんでしょうか…(不思議)
Avatar
たまたまだとは思うのでしばらく様子見てみます。 これで直るなら直るでワークアラウンドではあるんだけどw
Avatar
↑ちゃんと壊れた&コンソールにビルド時間出すとシミュレータ触る前に気が付けて便利だった。 UIも提供しても良いかもなぁ
Avatar
splash screenに埋めこみたいすね。LaunchScreen.storyboardあたりに突っ込めないかしら
Avatar
Dynamic Islandとかノッチの裏にデバッグ情報隠しておくとスクショで見れるみたいなハックがある
⁉️ 3
7:29 AM
LaunchScreen.storyboardはすぐ流れちゃうしなー
Avatar
Avatar
noppe
https://github.com/noppefoxwolf/BuildAtPlugin ビルド成功したけど前のビルドが実行されているみたいなのを調べるためにBuildした時刻をDateに生やすプラグイン作ってみた
だいぶ日が空いたリプライになっちゃいますけど,ビルド時の情報を埋め込む系はマクロもありかもですね. https://www.hackingwithswift.com/swift/5.9/macros
Macros example code from Swift 5.9
Avatar
マクロの実行タイミングが確か相性悪いみたいな話だった気がします。
t_naruhodo 1
Avatar
Kishikawa Katsumi 10/5/2023 11:49 AM
マクロはめちゃめちゃ積極的にキャッシュするので使う側に変更がなかったらマクロはキャッシュを使って再実行はされないんです。
11:50 AM
なのでDateを埋め込むようなマクロをAppDelegateに書いてもマクロを使う側のコードに変更が入らないので最初に実行された結果がずっと表示されます。
Avatar
なるほどー.Language Server でコンパイルが走っちゃったらコードを書いてた時の日時がキャッシュされてそのままになっちゃったりするんですかね...
Avatar
Kishikawa Katsumi 10/5/2023 11:52 AM
マクロの開発時にも不便なので毎回マクロを変換するオプションとかあるといいですけどね。
Avatar
ビルド用のインクリメンタルビルドとIDEサポートのためのインクリメンタルビルドって別になってるような気もする > コードを書いてた時の日時 (edited)
Avatar
全然自分が作ってないんだけど、apple design award受賞してるパズルアプリがUIKitでつくられてて興奮した。 https://www.blackboxpuzzles.com (edited)
Blackbox is a tribute to being different. Learn what your phone is capable of, explore your world, and solve puzzles upon puzzles without touching your screen.
29 2
👀 1
Avatar
プレビュー系のライブラリ
  • 最近全然新しいのが出てない
  • 画像は見れるけど動画が見れない
  • トランジションが要求するビューの制約が多い
  • QLPreviewControllerはリモートのリソースを読みにいけない
  • KingfisherかNukeに依存してたりする
あたりで良いやつがなかったので作りました。 https://github.com/noppefoxwolf/MediaViewer
(edited)
Contribute to noppefoxwolf/MediaViewer development by creating an account on GitHub.
😍 4
Exported 52 message(s)
Timezone: UTC+0