並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 1036件

新着順 人気順

bundlerの検索結果241 - 280 件 / 1036件

  • 新卒によるRubyKaigi2023参加レポート - ANDPAD Tech Blog

    今年は春に帰ってきた日本のRubyコミュニティによる祭典RubyKaigi。今年は長野県松本市のまつもと市民芸術館にて5/11~5/13の3日間で開催されました。*1 アンドパッドは昨年に引き続きスポンサー&ブース出展を行い、新卒を含む総勢24人での参加となりました! 本記事では、23卒エンジニア4人(大山・神戸・高橋・長谷川)によるRubyKaigi2023参加レポートを、熱量たっぷりでお送りいたします! 会場の様子 会場にはLarge Hall・Small Hall・Open Studioの3つのホールとブースがあり、ブースでは29社が出展されていました。 各社オリジナルの体験型コンテンツやノベルティを配布していたほか、エンジニアから事業の説明を受けたり、使用技術のこだわりを聞いたりなど、他社のエンジニアとの交流を深めることができました! 図:ブースの様子 そして開催day2からはスタ

      新卒によるRubyKaigi2023参加レポート - ANDPAD Tech Blog
    • Railsでモジュラモノリスを実現する3つの代表的パターン 5つの基準で見たそれぞれの評価

      「【ハイブリッド開催】Rubyで追求するモジュラモノリスの可能性」は、バックエンドにRubyを採用している株式会社タイミー、hacomono社、ワンキャリア社が、Rubyにおけるモジュラモノリスの可能性や良い点、悪い点を共有する勉強会です。ここで株式会社タイミーの須貝氏が登壇。まずは、Railsでモジュラモノリスを実現する3つの代表的パターンと、各パターンの評価について話します。 須貝氏の自己紹介 須貝俊 氏:では、「RailsでModular Monolithを選択された御社に質問したいN個の疑問」というタイトルで発表をしたいと思います。 (スライドを示して)まずは自己紹介をしたいと思います。須貝と申します。タイミーには、2022年1月からジョインしています。スポットワークシステム領域というところで、チーム名がIronBank Squadという、企業さま向けの請求や、ワーカーさまへの給与

        Railsでモジュラモノリスを実現する3つの代表的パターン 5つの基準で見たそれぞれの評価
      • Ten Years of TypeScript - TypeScript

        Today is TypeScript’s birthday! But this birthday is a special one – 10 years ago today, on October 1st, 2012, TypeScript was unveiled publicly for the first time. The Early Days When TypeScript first debuted, there was a lot of skepticism – and understandably so. To some JavaScript users, a team trying to bring static types to JavaScript might have sounded like an evil plot or a joke. But the fea

          Ten Years of TypeScript - TypeScript
        • Announcing Parcel CSS: A new CSS parser, compiler, and minifier written in Rust!

          I'm very excited to announce @parcel/css, a new CSS parser, compiler, and minifier written in Rust! Check it out on GitHub, or try a live demo right in your browser. Parcel CSS has significantly better performance than existing tools, while also improving minification quality. In addition to minification, Parcel CSS handles compiling CSS modules, tree shaking, automatically adding and removing ven

            Announcing Parcel CSS: A new CSS parser, compiler, and minifier written in Rust!
          • Publish, ship, and install modern JavaScript for faster applications  |  Articles  |  web.dev

            Publish, ship, and install modern JavaScript for faster applications Stay organized with collections Save and categorize content based on your preferences. Over 90% of browsers are capable of running modern JavaScript, but the prevalence of legacy JavaScript remains a large source of performance problems on the web today. Modern JavaScript Modern JavaScript is not characterized as code written in

            • Create a Vite-React Chrome Extension in 90 seconds

              The bundler configuration for a Chrome Extension can be pretty complex. When I started making Chrome Extensions, they were small projects for clients who wanted to automate a task. I was starting a new Chrome Extension almost every week, and it took too much time to configure a new project. Then I thought, "We already have a manifest; why do we need more config files?" That's the idea behind CRXJS

                Create a Vite-React Chrome Extension in 90 seconds
              • Improved Next.js and Gatsby page load performance with granular chunking  |  Articles  |  web.dev

                Improved Next.js and Gatsby page load performance with granular chunking Stay organized with collections Save and categorize content based on your preferences. A newer webpack chunking strategy in Next.js and Gatsby minimizes duplicate code to improve page load performance. Chrome is collaborating with tooling and frameworks in the JavaScript open-source ecosystem. A number of newer optimizations

                • All JavaScript and TypeScript Features of the last 3 years

                  TypeScript as envisioned by Stable DiffusionThis article goes through almost all of the changes of the last 3 years (and some from earlier) in JavaScript / ECMAScript and TypeScript . Not all of the following features will be relevant to you or even practical, but they should instead serve to show what’s possible and to deepen your understanding of these languages. There are a lot of TypeScript fe

                    All JavaScript and TypeScript Features of the last 3 years
                  • SvelteKit はどのようにコンパイルしているのか?

                    フロントエンドの技術選定 によって Svelte と SvelteKit を使って管理画面を作ることに決めました。Unicorn Cloud ID Manager (以下UCIDM) の管理画面を SvelteKit を使って開発しています。 UCIDM のフロントエンドのアーキテクチャBFF (Backend For Frontend) サーバーに Node.js を配置し、サーバーサイドレンダリングを採用したフロントエンドを提供しています。マイクロサービスでは一般的なアーキテクチャだと思います。 エンドユーザー (ブラウザ) は BFF サーバーに対して認証を行い、BFF サーバーが UCIDM API サーバーと認証します。エンドユーザーは透過的に UCIDM API サーバーが返す情報を参照できますが、直接 UCIDM API とは通信できません。これはセキュリティを担保する上での

                      SvelteKit はどのようにコンパイルしているのか?
                    • Rails 6.1のままRuby 3.2にアップデートし、YJITの恩恵を受ける

                      先日、携わっているサービスで一番大きいRailsアプリをRuby 3.2にアップデートし、YJITを有効化できました。 方針を検討した結果、今回はRails 6.1およびPsych 3系のままRuby 3.2にアップデートする戦略をとったため、その手順をまとめます。 先週にメインのサービスをRuby 3.2にしてYJITを有効にできました! 実際に速くなったし嬉しい大YJIT記念日だ🎉 https://t.co/Wkhc6fDfj9 — Hiroshi Shimoju (@shimoju_) July 19, 2023前提#今回のRailsアプリはサービスの機能がほぼすべて詰まっているモノリスで、歴史も8年と比較的長いです。 アップデート前のバージョンはRuby 3.0、Rails 6.1で、Psychは3系。 正攻法では、おおむね以下の手順でアップデートを進めていくことになります。 R

                      • 近況 2021 - pockestrap

                        おはようございます。ぽっけです。2021年12月21日目の、朝…じゃないな、夜です。 この記事はRubyist近況Advent Calendar 2021 21日目の記事です。 20日目は id:Sixeight さんの近況でした。Ruby Prizeのお祝いありがとうございます! 私はキーボードはずっとHHKB Pro 2 Type-Sをつかっています。 この記事では、ここ1年ぐらいの自分の話を適当に書こうと思います。 退職 本日が株式会社ビットジャーニーへの最終出社でした。近況っぽい話ですね。2019年の2月に入社したので、3年弱在籍していたことになります。 1.7ヶ月ほど無職を満喫します。旅行に行きたいけど、コロナが厳しそうで悲しい……。 次の会社ではRailsアプリケーションエンジニアとしても働きますが、業務としてRBSの開発も行う予定です。1 Ruby Ruby関連では、コミッタ

                          近況 2021 - pockestrap
                        • GitHub Appsの作成とOrgへの所有権の委譲手順 - メドピア開発者ブログ

                          CTO室SREの @sinsoku です。 ドキュメントをテックブログとして書いておくと一石二鳥なことに気づいたので、ここに書きます。 GitHub Appsが必要なユースケース GitHub Actions で使用できる secrets.GITHUB_TOKEN には以下の制限があります。 secrets.GITHUB_TOKEN を使用した操作では新しいワークフローが実行されません Actions で作成したプルリクで Actions のテストが動かない 他リポジトリのコードを参照できません プライベートリポジトリのgemやnpmの取得ができない この問題を回避するため、GitHub Appsで一時的なアクセストークンを生成して使用します。 なぜ Personal Access Token(PAT)を使うべきではないか? PATを使用することは以下の理由から推奨していません。 PATを

                            GitHub Appsの作成とOrgへの所有権の委譲手順 - メドピア開発者ブログ
                          • 既存のバンドラの手法は間違っている | POSTD

                            最近のバンドラは、アプリケーションコードのどの部分をいつ遅延読み込みするかを開発者が決めなければなりません。 開発者は以下のように、コードベースにdynamic importを挿入することによって、遅延読み込みをする場所とタイミングを決定します。 async function doSomething() { const chunk = await import('./my-chunk'); console.log(chunk.someSymbol); } 開発者は以下を行う必要があります。 コードのどの部分が遅延読み込みに適しているかを判断します。 既存のアプリケーションワークフローとの互換性がある方法で遅延読み込みを実行します(遅延読み込みは本質的に非同期ですが、遅延読み込みを実行するための理想的な関数は同期型の可能性があるため、遅延読み込みコードを設置できる場所は限られます)。 ./m

                              既存のバンドラの手法は間違っている | POSTD
                            • ESM treeshake に対応したバンドルサイズを計算してくれる Shakerphobia を作った

                              bundlephobia.com というサイトがあります。これは npm のモジュールを参照した際のバンドルサイズを算出してくれるサービスです。 便利なんですが、基本的に dist/.. 等の package.json の main で配られるものだけをターゲットにしているので、 ESM Treeshake で一部のモジュールだけ import {} from ... した際のバンドルサイズがわからない、という問題がありました。 なので、それに対応したものを自分で作りました。netlify にデプロイしてあります。 こんな感じです。 使い方 https://shakerphobia.netlify.app/?pkg=<>&imports=<a,b,c> どうやって動いてるか URL を踏むと、 cdn.skypack.dev (その実体は npm) からソースコードを落としてきて、 Web

                                ESM treeshake に対応したバンドルサイズを計算してくれる Shakerphobia を作った
                              • Rails 6: Docker/docker-compose/dipで`rails new`力を取り戻す|TechRacho by BPS株式会社

                                2020.02.27 Rails 6: Docker/docker-compose/dipで`rails new`力を取り戻す こんにちは、hachi8833です。いつからrails newが面倒になってきたのでしょう。 小さめのアプリケーションをスクラッチで書くことをrails new力と呼んでるけど、保守や負債解消や機能追加だけやってると、めちゃくちゃこの力が衰える。くだらないアプリをいっぱい作らないとなーって思った。 — 鶏胸肉 (@yoshi_hirano) October 27, 2019 rails new力が少しずつ返ってきた。これ定期的にやらないとだめだな。 — 鶏胸肉 (@yoshi_hirano) October 26, 2019 私の場合rails newする機会が多いので、Evil Martians流のDocker開発環境構築の次の段階として、自分用にDocker環

                                  Rails 6: Docker/docker-compose/dipで`rails new`力を取り戻す|TechRacho by BPS株式会社
                                • Rubyにもポータビリティを! シングルバイナリを作る3つの方法

                                  この記事はRuby Advent Calendar 2020の17日目です。 TL;DR GraalVM: 問題無く動作するがgemとか考えるとめんどそう。JavaのエコシステムやJS/Pythonなど別言語と組み合わせたい時には便利。 RubyPacker: gem/bunlder含めて特に問題なく動く。フルスペックRubyが必要なら現状でベスト mruby-cli: ビルド速度含めて最軽量。使えるならこれがベストシナリオ。エコシステムが弱いのが欠点 はじめに 皆さんはRubyをなんに使っていますか? 多くの方は 「Railsを使ったWebアプリケーション」 と回答されるのではないでしょうか? 私の場合は少し違ってCLIのコマンドを作るのによく使います。Bashよりちょっと凝ったことをするのに自分にはちょうど良いんですよね。手に馴染んでるので。 ただ、今この手の用途に一番利用されるのはG

                                    Rubyにもポータビリティを! シングルバイナリを作る3つの方法
                                  • BUNDLE_ONLY is now available

                                    I recently added BUNDLE_ONLY option to Bundler. This is the long-awaited feature from 8+ years ago that allows you to install only the gem groups you need, available from bundler 2.3.19. https://github.com/rubygems/bundler-features/issues/59 https://github.com/rubygems/bundler/pull/4907 https://github.com/rubygems/rubygems/issues/4048 https://github.com/rubygems/rubygems/pull/5759 For example, in

                                      BUNDLE_ONLY is now available
                                    • Designing a Ruby Serverless Runtime

                                      Last week, Google announced the public beta of the Ruby runtime for Cloud Functions, Google’s functions-as-a-service (FaaS) hosting platform. Ruby support has lagged a bit behind other languages over the past year or so, but now that we’ve caught up, I thought I’d share some of the design process behind the product. This article is not a traditional design document. I won’t go through the design i

                                      • 個人的にTerser & Babelの好きなところ · GitHub

                                        Terser & Babel の好きなところ.md だれ? (credit: @tomo_e さん) Sho Miyamoto / @antidotech 新卒 2 年目 ウェブチーム フロント、BFF、CDN Introduction 今日話すこと 普段あまり気にしない(かもしれない)ビルドツールたちが頑張ってやってくれてること ぼくたちにも手伝えること 今日日のビルドツールたち Transpiler Bundler Minifier Babel Webpack Terser tsc Rollup UglifyJS (etc.) Parcel babel-minify Minifier & Transpiler どのバンドルツールを使ってもお世話になるツール AST を見てソースコードを加工する Minifier: Terser https://github.com/terser/ter

                                          個人的にTerser & Babelの好きなところ · GitHub
                                        • Gem in a BoxでプライベートなRubyGemsをDockerで簡単に構築する - YOMON8.NET

                                          Gem in a Boxを使って、Dockerでローカル環境にRubyGemsを構築して、Gemをアップロードするところまで書きます。 github.com Gem in a Boxは公式でも以下の RUNNING GEM IN A BOX の項目で紹介されてます。 Run your own gem server - RubyGems Guides 作業前提 Dockerfile作成 設定ファイル準備(config.ru) 設定ファイル準備(Gemfile) Dockerイメージのビルド Gem in a Boxの起動 テスト用のGemを作成してアップロードしてみる Bundlerでテンプレート出力 テンプレート調整 Gemのビルドとアップロード Gemのアップロード Gemを利用してみる 作業前提 この手順を実行するために必要なのは、DockerとGitだけです。 Docker Git

                                            Gem in a BoxでプライベートなRubyGemsをDockerで簡単に構築する - YOMON8.NET
                                          • React Labs: What We've Been Working On – June 2022 – React

                                            React 18 was years in the making, and with it brought valuable lessons for the React team. Its release was the result of many years of research and exploring many paths. Some of those paths were successful; many more were dead-ends that led to new insights. One lesson we’ve learned is that it’s frustrating for the community to wait for new features without having insight into these paths that we’r

                                              React Labs: What We've Been Working On – June 2022 – React
                                            • 週刊Railsウォッチ(20190729-1/2前編)Rails 6のリリースは近そう?、Evil MartiansのRails+Docker記事、Railsパフォーマンス測定ほか|TechRacho by BPS株式会社

                                              2019.07.29 週刊Railsウォッチ(20190729-1/2前編)Rails 6のリリースは近そう?、Evil MartiansのRails+Docker記事、Railsパフォーマンス測定ほか こんにちは、hachi8833です。夏がやってまいりました。 各記事冒頭には⚓でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 毎月第一木曜日に「公開つっつき会」を開催しています: お気軽にご応募ください ⚓週刊Railsウォッチ「公開つっつき会」第13回のお知らせ(無料) お申込み: 週刊Railsウォッチ公開つっつき会 第13回|IT勉強会ならTECH PLAY[テックプレイ] 1年目を越えた第13回目公開つっつき会は、8月1日(木)19:30〜

                                                週刊Railsウォッチ(20190729-1/2前編)Rails 6のリリースは近そう?、Evil MartiansのRails+Docker記事、Railsパフォーマンス測定ほか|TechRacho by BPS株式会社
                                              • 社内向けのgemをGitHub Packagesのプライベートgemとしてpublishする方法 - BOOK☆WALKER inside

                                                こんにちは。 メディアサービス開発部 Webアプリケーション開発課のフサギコ(髙﨑)です。 Ruby on Railsによるバックエンドの実装運用と、AWSによるサービスインフラの設計構築を中心とした、いわゆるテックリードのような立ち位置で働いています。 2月11日から12日にかけて、アイドルマスターのM@STERS OF IDOL WORLD!!!!! 2023で東京ドームにいたのですが、その余韻が未だに抜けきりません。毎年となるとさすがに大変そうですが、2~3年に1度くらいの頻度ではぜひ、M@STERS OF IDOL WORLD、開催してほしいですね。次は2025年でしょうか。 さて、本記事では社内向けのgemをGitHub Packagesのプライベートgemとしてpublishし、ローカルでの開発時やCI/CD時にインストールする方法についてお話します。 共通なコードをgem化し

                                                  社内向けのgemをGitHub Packagesのプライベートgemとしてpublishする方法 - BOOK☆WALKER inside
                                                • ruby-jp Slack で雑に Ruby コミッターさんへ質問を投げてみた - 虚無庵

                                                  昨日の Fukuoka.rb はドタキャンしてしまいました。 最近 ruby-jp という Slack ワークスペースができました。元々は RailsDM で使われていたワークスペースのようです。 pocke.hatenablog.com そんな訳で ruby-jp が爆誕。すごい活発なので楽しいです。 ruby-jp Slack で Ruby コミッターさんたちに質問してみた ruby-hacking チャンネルで質問してみた。 質問: コミッターさん達から見て「ここに人が欲しい」とかあるのでしょうか? 回答 https://github.com/ruby/ruby/blob/master/doc/maintainers.rdoc の unmaintained をメンテしてくれる人 unmaintained のライブラリのメンテ、簡単じゃない、さほど使われてないから unmaintain

                                                    ruby-jp Slack で雑に Ruby コミッターさんへ質問を投げてみた - 虚無庵
                                                  • Deno/Node を vscode ワークスペースで共存させたい

                                                    次の記事の 2023 年版です。 tl;dr 次のコードを "deno.enable": true にしない(Node環境のまま)Node+Deno両方の型チェックが通る vscode 環境にする。 // .ts 拡張子を許可 import { dep } from "./dep.ts"; // node_modules から npm module を解決 import ts from "typescript"; // deno/node 共用で Deno に型をつける const Deno: typeof import("@deno/shim-deno").Deno = (globalThis as any).Deno ?? (await import("@deno/shim-deno")).Deno; const source = ts.createSourceFile("test.t

                                                      Deno/Node を vscode ワークスペースで共存させたい
                                                    • package.json の imports / exports フィールド - 別にしんどくないブログ

                                                      この記事は Node.js その2 Advent Calendar 2020 の 2 日目の記事です。投稿が大幅に遅れて申し訳ございません。 Node.js v15.3.0 から ES Modules が experimental から stable になりました 🎉 nodejs.org 今年はモジュール周りも大きく飛躍しました。個人的に仕事で探求していたこともあってモジュール周りを追うことが多かったです。 ES Modules を使って import できる npm パッケージも増えてきています。 そこで今回はモジュール関連で追加された package.json のフィールドについてまとめて紹介します。 以前会社のブログに書いた内容と重複する部分もありますが、そこでは紹介できなかった機能も紹介したいと思います。 blog.cybozu.io また、この記事の内容は Node.js の

                                                        package.json の imports / exports フィールド - 別にしんどくないブログ
                                                      • 脆弱性から学ぶRubyの仕組み(CVE-2022-28739編)

                                                        脆弱性から学ぶRubyの仕組み(CVE-2022-28739編) 最近業務でRubyを使うようになったのだが、これまで業務で使ったことのない言語だったので日々言語仕様などを勉強している。 加えて、業務上の別件でセキュリティ周りも勉強しておきたく、良い機会なので「脆弱性の側面からRubyの仕組みについて学ぶ」という暴挙に出てみようと思う。 Ruby 言わずとしれたプログラミング言語の一種。日本発の言語。 「Rubyってなんぞ。石か?」という方はWikipedia参照。 脆弱性 コンピュータ上のバグや仕様の不具合から生じる、セキュリティ上の欠陥の総称。 予期せぬ挙動のうち、セキュリティ的によろしくない挙動を起こすものとも言える? いろんな書籍やWebサイトでいろんな説明がされているため、抽象的なニュアンスはなんとなくわかるような気がするが、どのように言語化すればより正確な説明になるのか未だにわ

                                                          脆弱性から学ぶRubyの仕組み(CVE-2022-28739編)
                                                        • SorbetでRailsアプリの型シグネチャ作成とメンテを行ってみた(翻訳)|TechRacho by BPS株式会社

                                                          概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: How I write and maintain type signatures in my Rails app with Sorbet | Connor Shea 原文公開日: 2021/05/14 原著者: Connor Shea -- コロラド州出身のWeb開発者、特に好きなものはRuby、ゲーム、GIF、CSS要素を垂直に中央揃えすること 本記事アイキャッチ画像のSorbetアイコンは、Apache License 2.0に基づいてhttps://github.com/sorbet/sorbetより引用しました。 最小限の手間でRailsアプリに型チェックを追加する Sorbetは、Stripe社が開発したRuby用の段階的型チェッカーです。リリース前の約1年間は冷やかされ気味でしたが、2019年初頭にTypeScript

                                                            SorbetでRailsアプリの型シグネチャ作成とメンテを行ってみた(翻訳)|TechRacho by BPS株式会社
                                                          • Announcing Parcel v2!

                                                            The Parcel team is beyond excited to announce that v2.0.0 stable is now available! 🎉 Parcel 2 brings the zero configuration experience you know and love from Parcel 1, and makes it scalable and extensible to projects of any size and complexity. It is already being used in production at some of the biggest companies in the industry including Atlassian, Adobe, and Microsoft. Check out our new websi

                                                              Announcing Parcel v2!
                                                            • Replit — Why We Switched From Webpack To Vite

                                                              At Replit, our mission is to make programming more accessible. We provide people with free compute in the cloud so that they can build apps on any device. Among the most popular ways to create apps on the web today is React. Historically, however, React tooling has been slow on Replit. While the JavaScript ecosystem has produced excellent tools for professional developers, many of the most popular

                                                                Replit — Why We Switched From Webpack To Vite
                                                              • 2023-10-10のJS: Rollup 4.0.0、Viteの今後(Rustify Vite)、pnpm v8.9.0

                                                                JSer.info #664 - Rollup 4.0.0がリリースされました。 Release v4.0.0 · rollup/rollup Node.js 14/16のサポート終了、Acornの代わりにSWCをパーサに使うように変更されています。 SWC利用に伴うオプションの削除や非推奨なオプションの削除などが含まれています。 Viteの現在と今後についてがViteConfで発表されています。 動画: https://viteconf.org/23/replay/vite_keynote スライド: State of Vite (ViteConf 2023) ViteはDevビルドにesbuild、ProdビルドにRollupを使うためビルド結果に差異が出やすいなどの問題があります。 そのため、Rollup互換を意識したRolldownというBundlerをRustで開発するという話。

                                                                  2023-10-10のJS: Rollup 4.0.0、Viteの今後(Rustify Vite)、pnpm v8.9.0
                                                                • ライブラリのアップデートを自動化した仕組みの紹介 - Classi開発者ブログ

                                                                  こんにちは!学習動画・Webテストの開発を行っています エンジニアの daichi (id:kudoa) です。 この記事では、最近チームで導入したライブラリアップデートを自動化した仕組みとその経緯について紹介します。 なぜ自動化しようと思ったか サービスを開発するだけではなく、日々の運用も必要です。 その運用業務の1つとして、ライブラリのアップデートがあります。 これはサービスを運用する上では大切なことではありますが、日々ライブラリアップデートのPRをさばき続けるのも大変です。 その時間をできるだけ減らし、その分空いた時間をユーザーへの価値提供や将来の投資に充てるために、今回の自動化の仕組みを作成しました。 この辺りの話は以前勉強会でLTしたことがありますので、興味があればご覧ください。 作ったもの 前置きは長くなりましたが、凝ったものを作ったわけではありません。 作成したものはライブラ

                                                                    ライブラリのアップデートを自動化した仕組みの紹介 - Classi開発者ブログ
                                                                  • プロパティベーステスト (Property Based Testing) を Ruby で書き雰囲気を味わう - DIGGLE開発者ブログ

                                                                    2023 年 10 月 30 日に『実践プロパティベーステスト ― PropErとErlang/Elixirではじめよう』(以下 実践プロパティベーステスト本)という本が出版されました。 プロパティベーステストというのは、テストの一手法なのですが、これまでとは違う範囲をカバーするテストです。 今回はそれを Ruby に適用するとどうなるか検証、また似ている既知との概念と対比して理解を深めました。 これは Ruby Advent Calendar 2023 15 日目の記事です。 プロパティベーステストとはどのような形式か 既知の概念との対比 普段書いているテストと、プロパティベーステスト データ(テーブル)駆動テストと、プロパティベーステスト ファジングと、プロパティベーステスト 型と、プロパティベーステスト まとめ 実践プロパティベーステスト本は 2023 年 12 月現在、テストの一手

                                                                      プロパティベーステスト (Property Based Testing) を Ruby で書き雰囲気を味わう - DIGGLE開発者ブログ
                                                                    • Hybrid npm packages (ESM and CommonJS)

                                                                      Warning: This blog post is outdated. It may contain incorrect information. Update 2019-11-22: ESM support in Node.js is not experimental, anymore. This post was updated to reflect that. Conditional exports are now explained. In this blog post, we look at npm packages that contain both ES modules and CommonJS modules. Required knowledge: How ES modules are supported natively on Node.js. You can rea

                                                                      • Under-the-hood of web bundlers (e.g. Webpack)

                                                                        Webpack is somewhat of a black box for most developers. Tools like “create-react-app” abstract most of the bundler functionality away. I did some research into it and began building my own light-weight web bundler to understand more about what it entails. This is part of my “under-the-hood of” series: Type systems (e.g. TypeScript)

                                                                          Under-the-hood of web bundlers (e.g. Webpack)
                                                                        • Start a New React Project – React

                                                                          If you want to build a new app or a new website fully with React, we recommend picking one of the React-powered frameworks popular in the community. You can use React without a framework, however we’ve found that most apps and sites eventually build solutions to common problems such as code-splitting, routing, data fetching, and generating HTML. These problems are common to all UI libraries, not j

                                                                            Start a New React Project – React
                                                                          • Kamal README: 37signalsの多機能コンテナデプロイツール(翻訳)|TechRacho by BPS株式会社

                                                                            更新情報 コンテナデプロイツールであるKamalは、元はMRSKという名前でしたが、2023/08/23にリリースされたv0.16.0でKamalに変更され、リポジトリもリネームされました。 その後、コミットcfe7793でREADMEの内容がKamal公式サイト(kamal-deploy.org)に移されました。 そこで、本記事では利便性のため、可能な限りドキュメント移行直前の最新の内容に沿って更新翻訳しました。今後の最新情報についてはKamal公式サイト(kamal-deploy.org)を参照してください。 概要 MITライセンスに基づいて翻訳・公開いたします。 英語記事: kamal/README.md at main · basecamp/kamal 原文更新日: 2023/08/23(cfe7793) ライセンス: MIT 本記事更新時点のバージョン: Release v0.1

                                                                              Kamal README: 37signalsの多機能コンテナデプロイツール(翻訳)|TechRacho by BPS株式会社
                                                                            • Announcing TypeScript 5.2 RC - TypeScript

                                                                              Today we’re excited to announce our Release Candidate of TypeScript 5.2! Between now and the stable release of TypeScript 5.2, we expect no further changes apart from critical bug fixes. To get started using the RC, you can get it through NuGet, or through npm with the following command: npm install -D typescript@rc Here’s a quick list of what’s new in TypeScript 5.2! using Declarations and Explic

                                                                                Announcing TypeScript 5.2 RC - TypeScript
                                                                              • CVE-2020-10663: JSON における安全でないオブジェクトの生成の脆弱性について(追加の修正)

                                                                                Posted by mame on 19 Mar 2020 RubyにバンドルされているJSON gemに、安全でないオブジェクトの生成を可能とする脆弱性が報告されました。 この脆弱性は CVE-2020-10663 として登録されています。 ユーザのみなさんにはJSON gemを更新することを強くおすすめします。 詳細 対象のシステムにJSONドキュメントをパースさせる際に、JSON gem(Rubyにバンドルされているものを含む)に対して任意のオブジェクトを生成させることができます。 これは CVE-2013-0269 と同じ問題です。 当時の修正は不完全で、JSON.parse(user_input)は対処していましたが、JSON(user_input)やJSON.parse(user_input, nil)などといった他のスタイルのJSONパースが対処されていませんでした。 攻撃に

                                                                                • Rails 7: guard-livereload gemで開発中にライブリロードする|TechRacho by BPS株式会社

                                                                                  Rails 7の新規アプリで遊んでいると、やはりライブリロード機能(ファイル更新を監視してブラウザを自動リロードする、いわゆるホットリロード)が欲しくなったので、guard-livereload gemでDocker環境にライブリロード機能を導入しました。Rails 7でちょっと便利になった点があります。 環境 Docker(docker-compose)環境が前提 Docker Desktop for Mac: 4.4.2 (73305) Engine: 20.10.12 Compose: v2.2.3 Rails 7 + Ruby 3.1 Rails 7サーバーを./bin/devで起動できることが前提 インストール方法 Gemfileに以下を追加し、bundle installを実行します。 group :development do # (略) + gem "guard-liver

                                                                                    Rails 7: guard-livereload gemで開発中にライブリロードする|TechRacho by BPS株式会社