Vue㧠Webã³ã³ãã¼ãã³ããä½ã£ã¦ Reactã§ä½¿ã / 20241030-cloudsign-vuefes_after_night
2024å¹´5æ15æ¥ãã17æ¥ã¾ã§ãæ²ç¸çé£è¦å¸ã®é£è¦æåè¸è¡åå ´ãªã¯ã¼ã¨ã§RubyKaigi 2024ãéå¬ããã¾ããã3æ¥ç®ã®åºèª¿è¬æ¼ã¯Rubyã®ä½è ã§ãããã¾ã¤ãã¨ããã²ããããç»å£ãããâ Better Rubyãã¨ããã¿ã¤ãã«ã§è¬æ¼ãè¡ãã¾ããã ã¾ã¤ãã¨ããã¯ãRubyã®è¯ããRubyãããè¯ãããããã®4ã¤ã®å´é¢ãRubyã®æªæ¥åã«ã¤ãã¦è©±ãã¾ããã ã¾ã¤ãã¨ããã«ãããã¼ãã¼ã Rubyã®è¯ã ãRubyã¯æ¬å½ã«ç´ æ´ãããè¨èªã§ããããæ¥æ¬èªã§èªç»èªè³ã¨è¨ãã¾ããã¨ã¾ã¤ãã¨ããã¯è©±ãå§ããRubyã®è¯ãã«ã¤ãã¦é ã«ç´¹ä»ãã¾ããã 楽ãã ã¾ãæåã«Rubyã®è¯ãã¨ããã¨ãã¦ãã³ã¼ããæ¸ãã¦ãã¦æ¥½ããã¨ããç¹ãåãä¸ãã¾ãããRubyã®å ¬å¼ãµã¤ãã«ãããA PROGRAMMER'S BEST FRIENDãã¨ããã¹ãã¼ã¬ã³ã¯ããâ ããã°ã©ãã¼ãã³ã¼ããæ¸ãã¨ãã«Rubyãåã§ã
ããã«ã¡ã¯ãSREã®kyontanã§ããRubyã大好ããªã®ã§Rubyã®è©±ããã¾ããã¡ãªã¿ã«ãªã¯ã«ã¼ãã¯RubyKaigi 2024ã¸Gold Sponsorã¨ãã¦åè³ãã¦ãã¾ã! *1ããã²æ²ç¸ã§ãä¼ããã¾ãããã ããã¯ããã¢ããªã±ã¼ã·ã§ã³ã®ã¡ã¢ãªæ¶è²»éã示ãã°ã©ããªã®ã§ãããã¾ããgemãå ¥ãæ¿ããã ãã§ãããªã«å¬ããå¤åãè¦ãããã¨ã¯æã£ã¦ãã¾ããã§ãããä»æ¥ã¯ãããªgemã®è©±ããã¾ãã 話ã¯é¡ã£ã¦2023å¹´4æã®ããæ¥ãã¤ã³ã¿ã¼ããããçºãã¦ããã¨ãããShopifyãpitchforkã¨ããOSSãå ¬éããã¨ããæ å ±ãç®ã«çã¾ãã¾ããã 調ã¹ã¦ã¿ãã¨ãã©ãããèåãªRackãµã¼ãã¼å®è£ ã®1ã¤ã§ããunicornã®æ´¾ççã§ãããã¡ã¢ãªä½¿ç¨éã®åæ¸ã«ç¹åãã¦ãããããã®ã§ãã github.com ããã¯ã¹ã¿ãã£ãµããªå°ä¸é«ã®ãã®ãªã½ã¼ã¹ãã«é£ããã¤ã¯ããµã¼ãã¹ç¬¬ä¸ä½ã§ãã api
ææ³ ã¹ã¬ãããã¼ã¹ åè unicornã¯ããã»ã¹ãã¼ã¹ pumaã¯ã¹ã¬ãããã¼ã¹ MRIã®ã¹ã¬ãã Jrubyã»Rubiniusã®ã¹ã¬ãã ã¹ãã¼ã¯ã©ã¤ã¢ã³ã railsã¸ã®å°å ¥ è¨å® åèURL è¨å®ãã¡ã¤ã«ã®èªã¿è¾¼ã¿ è¨å®é ç® bind: ãã¤ã³ã port: ãã¤ã³ã(portã¨host) ssl_bind: ãã¤ã³ã(SSL) workers: ã¯ã¼ã«ã¼æ° threads: ã¹ã¬ããæ°ã®minã»max environment: ç°å¢ demonize: ãã¼ã¢ã³å pidfile: pidãã¡ã¤ã«ç½®ãå ´ stdout_redirect: æ¨æºåºå/æ¨æºã¨ã©ã¼ãåºåãããã¡ã¤ã« preload_app!: ããªãã¼ã before_fork{}: åã¯ã¼ã«ã¼ã®ãã©ã¼ã¯åã®å¦ç on_worker_boot{}: åã¯ã¼ã«ã¼ã®bootåã®å¦ç prune_bundler: phas
ãã®è¨äºã§æ±ã£ã¦ããã㨠æ¬è¨äºã§ã¯Ruby 3.3ã§å°å ¥ãããPrismã¨ããæ°ãããã¼ãµã¼ã«ã¤ãã¦æ±ã£ã¦ãã¾ã Prismãæã¤ããã¼ã¹æã«åé¡ãçºçããå ´åã§ãå¯è½ãªéãæå³ã®ããçµæãè¿å´ãããã¨ããæ©è½ã«çç®ãã¦ä¸è¨ã«ã¤ãã¦è©±ãã¾ã Rubyãè¨è¿°ããéã®éçºè ä½é¨ãã©ããããåä¸ãã¦ããã®ãï¼ ãå¯è½ãªéãæå³ã®ããçµæããã©ããã£ã¦çµã¿ç«ã¦ã¦ããã®ãï¼ æå¾ã«ä¸»ãã¼ãããå¤ãã¾ãããPrismã®åããæ¹ã«ã¤ãã¦ã話ãã¦ãã¾ã ã¯ããã« ããã«ã¡ã¯ã¦ã©ã³ããããªã¼ã§æ¨è¦åºç¤ã®æ¹åããã£ã¦ããnasaã§ã å»å¹´ã®12/25ã«ãRubyã®ææ°ãã¼ã¸ã§ã³ããµã³ã¿ããããå±ãã¾ãããhttps://www.ruby-lang.org/ja/news/2023/12/25/ruby-3-3-0-released/ ææ°ãã¼ã¸ã§ã³ã®Ruby 3.3.0ã§ã¯Prismã¨ããæ°ãããã¼ãµã¼ãå°
I'm not sure yet what to think of this proposal, but if it gets introduced, please lets make sure to improve the allignment of the ennnnnd. Rather than: Yasushi ANDO wrote: module MyModule class MyClass def my_method 10.times do if rand < 0.5 p :small ennnnnd please put the first character of the ennnnd in the same column as the outermost construct it closes: module MyModule class MyClass def my_m
ä»å¹´ã§30æ³ã社ä¼äºº9å¹´ç®ãå¨ç±³5å¹´ç®ã«ãªã£ããä»å¹´ã¯ 趣å³ã§RJITãä½ããä»äºã§YJITãè¶ é«éåãã åãã¦è«æãå½éä¼è°ã«æ稿ããæ¡æããã åä¾ã¨ããªã¹ã¯ã¼ã«ã«è¡ãå§ãã ã¨ããæãã®ä¸å¹´ã ã£ãã ä»äº 大å¤ããããããã¨ã«ãèªåãä»ä¸çªèå³ã®ããä»äºã§ããYJITã®é«éåã«éä¸ã§ããä¸å¹´ã ã£ãã ãããããã£ããã代表ä½ã¯ä»¥ä¸ã®ä¸ã¤ããªã¨æãã ã¹ã¿ãã¯ãªãã©ã³ãã®ã¬ã¸ã¹ã¿ã¢ãã±ã¼ã¿ æé©åæªå¯¾å¿ãªã¡ã½ããå¼ã³åºãã®ãã©ã¼ã«ãã㯠ä¾å¤ãã³ãã©ã®ã³ã³ãã¤ã« ã©ãããã³ããã¼ã¯ãããªãéããªã£ãã ç¹ã«äºã¤ç®ã¨ä¸ã¤ç®ã¯ãèªåã§çºæ¡ãã¦ãã¤ä¸»ã«åãéè¦æ§ã訴ãã¦ãã奴ã§ã ãããã§å¤§ããªææãåºãã¨ãã¯ããªãéææããã£ãã åç¬ã®PRã§Railsãã³ãã7%éããªã£ãæã¯ãããæ給ãããã¨æã£ãããå®éãã¡ããã¡ãæ給ããã ãã³ããã¼ã¯ãéããã¦ããä¸æ¹ãåã¯æ¬çªã¢ããªã®æé©å
åã¯Rustã§Rubyã®JITãæ¸ãä»äºããã¦ããã®ã ããå»å¹´ã®12æãããããã趣å³ã§ã¯Rubyã§Rubyã®JITãæ¸ãã¦ããã ããã¾ã§ã¯Cè¨èªã§ã³ã¼ãçæãè¡ãªãMJITã5å¹´ãããã¡ã³ããã¦ããã®ã ããå æãRubyã§æ©æ¢°èªãç´æ¥ã¢ã»ã³ãã«ããRJITã«å·®ãæ¿ããã github.com ãªã®ã§ãä»Rubyã®masterãã©ã³ãã«ã¯ãä¼ç¤¾ã§æ¥åã¨ãã¦éçºãã¦ããRust製ã®YJITã¨ãåã趣å³ã§éçºãã¦ããRuby製ã®RJITã®2ã¤ã®JITã³ã³ãã¤ã©ãåå¨ãã¦ãããä½è«ã ããJITã®éçºããããã¦Rubyã®ä½è ã§ããã¾ã¤ãã¨ããã®ã³ãããæ°ãæè¿æããã ãªãMJITããããã®ã MJITãçµæ§ããã°ã£ã¦ãã¦ãå»å¹´éçºãã¦ããRuby 3.2ã§ã¯MJITã®ã³ã³ãã¤ã©ã®å®è£ ãCããRubyã«ãã«ã¹ã¯ã©ããããä¸ãããã¯ã°ã©ã¦ã³ãå¦çãpthreadããfork + SIGCHLDã§è¡
Ruby 3.3.0 ãå ¬éããã¾ãããRuby 3.3ã§ã¯Prismã¨ããæ°ãããã¼ãµã¼ã®è¿½å ãæ°ãããã¼ãµã¼ã¸ã§ãã¬ã¼ã¿ã¼ã§ããLramaã«ããBisonã®ç½®ãæããRJITã¨ããæ°ããªJITã®ä»çµã¿ã追å ãYJITã®é«éåãªã©æ§ã ãªæ¹åãè¡ããã¦ãã¾ãã Prism default gemã¨ãã¦Prismãã¼ãµãå°å ¥ãã¾ããã Prismã¯ãRubyè¨èªã®ããã®ãã¼ã¿ãã«ã§ãã¨ã©ã¼ãã¬ã©ã³ãã§ãä¿å®å¯è½ãªå帰ä¸éãã¼ãµã§ãã Prismã¯æ¬çªç°å¢ã§ä½¿ç¨ããæºåãæ´ã£ã¦ãããç©æ¥µçã«ã¡ã³ããã³ã¹ããã¦ãã¾ããRipperã®ä»£ããã«ä½¿ç¨ãããã¨ãã§ãã¾ãã Prismã®ä½¿ç¨æ¹æ³ã«ã¤ãã¦ã¯ã詳細ãªããã¥ã¡ã³ãã¼ã·ã§ã³ãããã¾ãã Prismã¯ãCRubyã«å é¨çã«ä½¿ç¨ãããCã©ã¤ãã©ãªã¨ãRubyã³ã¼ãã解æããå¿ è¦ãããä»»æã®ãã¼ã«ã«ä½¿ç¨ã§ããRuby gemã®2ã¤ã®ã³ã³ãã¼ãã³ããæã£
æ¥æ¬ã®ãã¯ã¤ãå®®å´ãããéããã¾ããyoshinoã§ãã å æ¥ãXMLã§ã¬ã¹ãã³ã¹ãè¿ãAPIããã£ãã®ã§ãrequire 'rexml/document'ã§ãã¼ããã¦XMLããã¼ã¹ãããã¨ããã¨ãcannot load such file -- rexml/documentãèµ·ãã¦ãã¾ãäºè±¡ã«ééãã¾ããã Ruby 3.0.0 Releasedã«ããã°ãRuby3.0ããrexmlã¨rssã¯bundled gemã«ãªã£ãããã§ãã ãã®ãªãªã¼ã¹è¨äºã§ã¯ãlibraryã¨ãã¦æ¬¡ã®ãããªè¨èã使ããã¦ãã¦ã standard libraries ( stdlib files ) default gems bundled gems default gemsã§ãbundled gemsã§ããªãgem (ãã®ä»ã®gem ) ãå ·ä½çã«ä½ãéããã ã£ã?ãã¨ãªã£ãã®ã§ããã®4ã¤ã®è¨èã«ã¤ãã¦èª¿ã¹ã¾
Development Division/Repro Team/Feature 1 Unit ã® Watsonã§ããFeature 1 Unit 㯠Repro Tool ã®æ©è½éçºã¨ä¿å®ãæ ã£ã¦ãã¾ãã å¼ç¤¾ã§ãå©ç¨ãã¦ãã Oj gem ã®ããã©ã¼ãã³ã¹æ¹å PR ãéã£ã話ã¨ããã® PR ã®å 容ã«ã¤ãã¦å ±æãã¾ãã ãã¨ã®ã¯ãã¾ã 以åãååã Ruby on Rails 㧠JSON ãè¿ã REST API ãä½æããéãJSON ã®ã¨ã³ã³ã¼ãé¨åã®ããã©ã¼ãã³ã¹è¨æ¸¬ããã¦ãã¾ãããJSON ã®ã¨ã³ã³ã¼ãæ¹æ³ã¯ JSON.generateãActiveSupport::JSON.encodeãOj gem ãå©ç¨ããæ¹æ³ãªã©è²ã ããã¾ãããç§ã¨ãã¦ã¯ Oj gemã® ã»ããããã©ã¼ãã³ã¹çã«ããã ãããããã¡ããå©ç¨ããã»ããè¯ãã®ã§ã¯ã¨æã£ã¦ããã¾ããã è¨æ¸¬çµæãæè¦ããã確
Rubyã®ã³ã¼ããç®ã«ããã¨ã ä»ã®è¨èªã¨ä¼¼ãé¨åããããã¨ã«æ°ãä»ãã¯ãã§ãã æ§æã®å¤ãã¯ã(ä»ã®è¨èªã®ä¸ã§ãç¹ã«)PerlãPythonã Javaããã°ã©ãã¼ã«ã¨ã£ã¦é¦´æã¿ã®ãããã®ã«ãªã£ã¦ãã¾ãã ããããªããããããè¨èªã«æ £ã親ããã§ããã®ãªãã Rubyãå¦ã¶ã®ã¯ããããã©ãã£ã¦ãã¨ãªãã¯ãã§ãã ãã®ããã¥ã¡ã³ãã¯2é¨æ§æã«ãªã£ã¦ãã¾ãã ãã®ãã¼ã¸ã§ã¯ãããã°ã©ãã³ã°è¨èªXããRubyã¸ç§»ã£ã¦ããéã«å½¹ç«ã¤æ å ±ããã£ã¨ç´¹ä»ãã¾ãã åå¥ã®ãã¼ã¸ã§ã¯ãRubyã®ä¸»ãªè¨èªæ©è½ãç´¹ä»ãã¤ã¤ã ããªããæ £ã親ããã§ããè¨èªã¨ã®æ¯è¼ãè¡ãã¾ãã æ±ãããã¦ãããã¨: è¨èªXããRuby㸠Cã»C++ããRuby㸠JavaããRuby㸠PerlããRuby㸠PHPããRuby㸠PythonããRuby㸠éè¦ãªè¨èªæ©è½ã¨ç¥ã£ã¦ããã¹ãã㨠ããã§ã¯ãRubyãå¦ç¿ããä¸ã§åºä¼
ããããã®ã¯ã©ããã¨ããæè¿ã®èããæ¸ãã¦ããã¾ããã¨ã¯ãã£ã¦ããã ãããã¯graphql-rubyã®ããã¥ã¡ã³ãã«æ¸ãã¦ããã¾ããRails + graphql-ruby + RSpecãåæã§ãã åãã£ã¼ã«ãã®ãã¹ã ãã£ã¼ã«ãããæ£ããå¤ãåå¾ã§ããããã¤ã¾ãRailsã®ã¢ãã«ã¨graphql-rubyã¨ã®é£æºãæ£ãããã¨ããç¹ããã¹ããã¾ãã次ã®ããã«ã¹ãã¼ãã®ãªãã¸ã§ã¯ãããåæ å ±ãåå¾ãã¦ãresolveãå®è¡ãã¾ãã # ãã¨ãã° spec/graphql/types/user_type_spec.rb ã«æ¸ã user_type = MySchema.types['User'] user = FactoryBot.create(:user, name: 'Foo') expect(user_type.fields['name'].resolve(user, nil, ni
ããã«ã¡ã¯ããµã¼ãã¼ãµã¤ãã¨ã³ã¸ãã¢ã®å±±ç°ã§ãã Rubyã«åã·ã¹ãã ãå ¥ã£ã¦ããããã°ãçµã¡ã¾ããããå¼ç¤¾ã®Railsããã¸ã§ã¯ãã®ä¸é¨ã§ãRBSãå°å ¥ãã¾ããã ãã®ãã¨ã«ã¤ãã¦æ¨å¹´è¡ãããKaigi on Rails 2022ã«ã¦ãRBSã¨Steepã§å§ããåã®ããRailséçºã¨ãã®éç¨ãã¨ããã¿ã¤ãã«ã§çºè¡¨ãã¾ããã ãã®è¨äºã§ã¯çºè¡¨ã®å 容ã«ã¤ãã¦ããããã¦æ´çããå 容ããã®å¾ã®ç¶æ³ã«ã¤ãã¦ç´¹ä»ãã¾ãã è¨äºã®ç®ç RBSãå°å ¥ããèæ¯ å¯¾è±¡ã¨ãªãRailsã¢ããªã±ã¼ã·ã§ã³ ã©ããã£ã¦é²ããã RBSã®åé¡ ãã£ã¬ã¯ããªæ§æ èªä½ã¯ã©ã¹ã»ã¢ã¸ã¥ã¼ã«ãªã©ã®RBS Gemã®RBS(RBS Collectionã«ãã) Gemã®RBS(RBS Collectionã«ãªã) å½åã®éç¨ã«ã¼ã« å¤æ´å¾ã®éç¨ã«ã¼ã« RBS RailsããçæãããRBS æ¨æºã©ã¤ãã©ãªã®RBS CIã®å°å ¥
ï¼èªåã¯Railsãæ¸ããã¨ãå¤ããããã³ãã¨ã³ãã®çµé¨ã¯ä¹ããã§ããè¦æ¹ã«ã ãã¶åããããã¨æãã¾ãã®ã§ããã®ãããå·®ãå¼ãã¦ãèªã¿ããã ããã°ã¨æãã¾ããðââï¸ï¼ ããã«ã¡ã¯ããHotwireãä»äºã§ä½¿ãæ©ä¼ããã£ãã®ã§ãå®éã«ä½¿ã£ã¦ã¿ã¦æãããè¯ãã£ãç¹ãè¾ãã£ãç¹ãåãã¦ããã±ã¼ã¹ãåãã¦ããªãã±ã¼ã¹ãå ±æãã¾ããã Hotwireã¨ã¯ï¼ Turbo Driveã¨ã¯ï¼ Turbo Framesã¨ã¯ï¼ Turbo Streamsã¨ã¯ï¼ Stimulusã¨ã¯ï¼ Hotwireã®ã㢠è¯ãã£ãç¹ ãµã¼ãã¼ãµã¤ãã«éä¸ã§ãã Railsã®è³ç£ããã«ã«æ´»ããã å¾ä»ãã§æ®µéçã«SPA風ã®æåã追å ã§ãã å¦ç¿ã³ã¹ããä½ã éçºã³ã¹ããä½ã WebSocketã¯å¿ é ã§ã¯ãªã è¾ãã£ãç¹ã»è¾ããªããããªç¹ DOMæ´æ°æã«ã¬ã¹ãã³ã¹ãå¾ ããªãã¨ãããªã SPAã®ã¦ã¼ã¶ã¼ä½é¨ã¨ã¯ã ãã¶éã He
æè¿Rubyãå¦ã³ç´ããããã¢ã«ã´ãªãºã ã®åºç¤ç·´ãããããã¦ããã®ã ããdebug.gemããã³vscode-rdbgã便å©ãããã®ã§ç´¹ä»ã debug.gemãvscode-rdbgã¨ã¯ debug.gem( https://github.com/ruby/debug )ã¨ã¯æè¿ã®Rubyã®ã¢ãã³ãªdebuggerãããã¾ã§lib/debug.rbãbyebugãdebaseãªã©ããã£ããããããã®ããã¤ãã®èª²é¡ã解決ããdebuggerã¨ãªã£ã¦ãããRuby 3.1 ã® debug.gem ãèªæ ¢ããã - ã¯ãã¯ãããéçºè ããã° ã«èæ¯ãåºæ¬çãªä½¿ãæ¹ã詳ããè¼ã£ã¦ããã ã¾ãRubyKaigi 2022ã®ruby/debug - The best investment for your productivity - RubyKaigi 2022ã§ãç´¹ä»ããããScriptable
â Ruby ã®ä¸ã«ãã解決ã§ããã¨å¬ãã人ãå¤åå¤ãã¿ããªåé¡ Ruby éçºãã¼ã (ã³ã¢ãã¼ã )ã«ã¯å£ºã¨å¼ã°ãããããããã§ããã¨ã¨ã¦ãå¬ãããã¨ãããã¿ãæ¾ãè¾¼ã hackmd ã®ãã¼ã¸ãããã¾ããissue ãªã©ã«ãã¦ä½ã£ãã¨ããã§èª°ããé²ããããã§ããªãããproject ã«ãã¦ã epic ããããããã¤ãã¯ä½ãããããã¨ãã大ããã®ãã®ãæãã¤ãããããã«å ¥ãã¦ãã¾ãã ä»å㯠Ruby Advent Calendar 2022 ã®14æ¥ç®ã®è¨äºã¨ãã¦ããã®å£ºã®ä¸ããçæããã夢ãããã¤ãåãåºãã¦ãç´¹ä»ãã¾ãã ã©ã¤ãã©ãªã®Ractor å¯¾å¿ Ruby 3.0 ã®ç®çã¨ãã¦å ¥ã£ã Ractor ã§ãããRuby ã®ã©ã¤ãã©ãªã Ractor ã§åããã¨ããã¨ã¾ã ããããªãããããåããªãã ãããã¨ããã¹ãã¼ã¿ã¹ã§ããRubyGems ã Bundler ã§ãããã¯ã¼ã¯ã¢ã¯ã»
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}