From 8acc00585e6c42d1b70ea677f7d3b84cb25a0328 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Wed, 20 May 2026 07:18:07 -0400 Subject: [PATCH 1/5] widgets: correct OH_Partner_frame.png dimensions, metadata, and test fixtures OH_Partner_frame.png had a 1px transparent row at y=0, so all visible content started at y=1. This caused the rendered Detailed widget to appear shifted down with an empty row at the top and the bottom pixel clipped off. The Detailed widget model also reported width: 230 but the frame image is 232px wide, causing the HTML embed to clip 2px off the right edge. Test fixtures regenerated to match the corrected frame. --- .../images/widget_logos/OH_Partner_frame.png | Bin 2545 -> 1795 bytes app/models/widget/account_widget/detailed.rb | 2 +- test/data/widget_badge/account/badge.png | Bin 5995 -> 4745 bytes .../widget_badge/account/new_text_image.png | Bin 754 -> 671 bytes .../text_without_commits_and_kudos.png | Bin 3013 -> 2041 bytes .../account/text_without_name.png | Bin 3385 -> 3171 bytes test/helpers/widgets_helper_test.rb | 2 +- .../widget/account_widget/detailed_test.rb | 4 ++-- 8 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/assets/images/widget_logos/OH_Partner_frame.png b/app/assets/images/widget_logos/OH_Partner_frame.png index 56d0a14cce1015bc4766977ca2fd70dbf446a315..9386b2f6fb9b292c4f631c194e41710bf77bd62e 100644 GIT binary patch delta 1747 zcmZ{iX;71g7KXoQ*>M>PL{bd!)&zoqq)BAaVjze?Ajncw zC_)g5K-n>@0xJ717?#K)J0YxM*aCs3b7$^Mf83cfbLPC~JoEl|&)4rGj>bc&=OhmU z0FdWgVJK=UUX~6h0JyIX0AY^+Kp>LBxBzeu1OT2p0Ki`W0F;eh=fhnzY3NIjNXXw^FVJqoB3yrpC`)V3j;*^fM4g*c?9(^x4F$^y(1o&}fqo5cqp5*YZrc;a6fk1C${|VSK zXT{#lrJLr(jrv9?+}{=KdFasHwI5H9 z@S4i|6Ul{xof8v7^K)O8xRcAPyl+`i)zc#jH94L63H7u)%!sx}IT`WANwUUiDdAc@Wm4IE}x_}U8R=1(tD?*fQygp@fl^^p_OXG-q8Z|8Wq~+Kr~_>iE<&k*1O}$>9o4V2k6c1Qzzvfq9WYFocp_cf8x$B{&9V(1E-Qw*EZ9vXj|bN$O?DdtK{Tc zHF7)66iu4S_UyKALu%i$-;*n6>--umCM8QuI$y4t zhu$7?_thwJMyeC_R-v~n?JUb)y2f^OgEk0^Z5 zLa+Gg??8ol`Qzl=+Z*$E1)&B~At9u7-$#J4pmL#hV=JyhhXgcHG-?!cXNtE61q1gYVMGnk2DSBIpe{@sbkYLhS~_qo z@B#?JLGXxD1NvWpKfxP^4f+4TZ#N_+MS#Zt94I({44Go#Axib%F524g%ewz{DK0zl zN(9OM15t2TEZmIXPb6W;WE>#?&>h#o`H8kF|7?>cAg8H-_PGyWyhwr&NH$K8-d91X z0C4C!5@F)x+_=nHbd<9{Ax@k@LuAr(zdLWTZdw)Q;(LSB%+h|7UGVV-zpUD1Oybz5 zx7eYE>hfC9;mKT+Y?^*A-O#|Nhc4{qeCshFTkFo{TQb_M)lk(Y=B9HFW~k(o$oCb&rCNQ9^ppX z3Y2`mZ?!Yp21pkMp7uZ#Khhm=#^i27);CSRM(wwW5?G@v!7z{j9nyHw)~XHqEWrlTyDL-cNPB z)|p|y+*$YHe%u0HZ$wil-JQ{AZw)o3f9#gwi(v~~211c5*3sS?UYCQ-b#_t*={D~z z_%|ZzLoHU5hb8VX%aL87X%@FV2byb{o(YGHt-Nw@xKNFO3!4~jvoFRzGU>S|Le;>? z<2SGw4iw~Xce!L=x~R}thqvJD_>+%vT{m?l&}xEbVg2uzQYDSb850s6(urw=dsxG2 z|4lqwy}fU=b4x7_p5Z_cPNdU+g~>e&PF89WXgNh=Qm-N?R^u&elu99vZp8 bu8bQKvI_}FQZ=(PZ(xecPo)SdP>R~1bJ literal 2545 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 diff --git a/app/models/widget/account_widget/detailed.rb b/app/models/widget/account_widget/detailed.rb index 414db3a3e..729308b9c 100644 --- a/app/models/widget/account_widget/detailed.rb +++ b/app/models/widget/account_widget/detailed.rb @@ -2,7 +2,7 @@ class Widget::AccountWidget::Detailed < Widget::AccountWidget def width - 230 + 232 end def height diff --git a/test/data/widget_badge/account/badge.png b/test/data/widget_badge/account/badge.png index fbe3bdeac37c1051deb094457e45e9cf69f09e38..63fbe3a21d5807898ca236a6de04f43183359318 100644 GIT binary patch literal 4745 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 Qp+5&SRJ4>Ulq_EV2NVkLwEzGB literal 5995 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 Pz0y{aQ7?%EsxOw#*de%KEs| zpIhHQuY6D$u+Pk7l@dch!0asMR?%S97t`4so?2a#c+t4;#X_d2tHBqFbqiZ(ZJAWH zRMlj4+|?J0yBrOt7WK2dnV~*q<62Hp#@;{MSU2#WxyX5dC!(o#*}=L^?xOt`8&w~e zo;`Ki!qnFA1jl-bO)1;1?`>vos@=@NJLQ8|J%^zG-x@WR1LX|oJeFnYDQ0b1s(Z~N zXi{NT)FHkKcS-J>ao_Zw#EDs7;ubn!CtBaPfjQy%^{Pi}Za=Q~^YvaaPi)bb&q5Z@ z<2YADB|g>g;6L3ExS}jz2H&%Pmp;#9Ds3zZsh-@z(0r%oTzA9&spFRSqv2Q0Ash4 z*>*q`uRUEHLn02pooeqfrBJ4QzP0W=mh1}$ceQBzVdnJg4)*Tma1C(sHgO5qQo<|R z`rv}dmMa3h7jFo$Iwk~sInJT-YjOCpmX>8V3qvyW@||uzP%Xc{v{~H!Q}r}?{r8{$ z9(sQG_v6+BMTPt851+Gmb~5#iM9C@1dW)x1?sm_58#dLt(6ex{Wb}cS+tYTgy!uad z?u^=N)2xdrCI(XImd|{wAWo z;lhVy?YRX~`(xm9C~INh!>{5Yt_F#l%K>h%n3zU*GzB^Hqo z@w~(TF0c0b0~Rjx7eCHfI!oH2>ExT){VEJUxDNO)+nlb-DJ4@j!`vr0xFow#aOqBW z+457e-{J!->s{{KoK{yj+tw;{kGbBZxc-cfk;GQrU0V-qm^qiHphf$DjCR+K*|{cZ ztn3w>dlGu954e3RdaZA)xkb3=Z2aq`Jda}@v$$L4+J0z#R@APi`L5tZrt!Tp;Rav3 z!b4MJ8QdbXuUIks&SBkNaozKB+_~FRev6+o^r@0P(EP38w@mqhJ1dzR9TWsOSeP1l z9Ujy_6W=|h`(ppMIFE^WV$z1Dx(3F&MkXPKhE@iqRwgFe24+?U28pF5DHG?5spF6q U&^U7gn1UEQUHx3vIVCg!07O<7e*gdg diff --git a/test/data/widget_badge/account/text_without_commits_and_kudos.png b/test/data/widget_badge/account/text_without_commits_and_kudos.png index 2d078b683a6f2ad32c7964ad3cefc5f6407b0468..69be581ef1fc3a4ff4f8b0bfa4f7e1b0026d6218 100644 GIT binary patch literal 2041 zcmc(gc{JN;7sr38u@$Ga6&+e#bZi-+mX57eyyR885>!b^LBddK+o`JBMdy zXFHpFoi)SGYEfOEMtn?D8FTBKtABl8+T7mQbySX6m{^$_UTQ4rU7TE{_RJpcA5~^` zbk~pC%ZCnkO=pKxhoN$VkvYC*X_>^zRR3~!?YLy0Qa9~bcb&Ls*TPs_QC4tOg!5Z( z<5%{u5O0%L8G)5izZVeg$SviAr>Cbu_Sv<0l>ObqkD2ZH(e(k3vZ`}B)BpU)WS$-$ zogfv%927$5$5&b_zQ%hLk95z>j4m%tf2Yr`ZLIwDCcJijobl;x_q(`8;$w1Ec4s{P zeSh=#+!zCSJ8WxhXLo!5=RVf1Mi7<6$pa==-x$%Q!?E#2`-$^mLT24?ukF!N}5=S6^$+QC!4R8#))-E*V!L zyeb3DPpWC}3|gI#RbPhE%225zOlL30B^@ z$aokj)>qOBnY|)f)kQ}Qgy_mKnEzm6qKPbC8z?- zLS9}~UP)C+Nd^W}g~1pavUUFhxM7`K(7yi;ymCln2LZ`{IuKmkP#y#%IMIJ?((hSG z1sT2{48aABR@KJ3;qWLA4;QREpfsiE@)WF!|5G)=Ud1S z+-Qcyf?5a`Z)5@K&+$$J-@in-j+ObQ@3&4=zphasQXjOBJUClkpkh(CC(>A3Ws zMudfFrOK%r!{`&f%_ppdTtd)G$+Cjkv%W;F6sUa}et1Rc_tE0%Qq$njWlpx}4(?FO zH^DQ!rVG{%$D{j%QM*2H+4(-Y@Dh`O~jix?PmZn{y`HB$k?N{L0$?Yhig%mQhShxRobDsls8VWOiU7eh`;azjDg%4BfNPq6q_B7f~O!(fsK$1qi& z(dKDHmY$A&{e|B%VtDbA`!uhix1qyXw?BqId%sxr0^5C-@vAu*{E`~Y^P6Hkf7C+6 zj0YI|$6O0R*|Tb6!F`YcHjC|Z&q=?c$SayR8v3=-chc%M(+ilaJUnXwadZ@Lw4&7T zj5@u2Zp~|c^7sOdV(lsa$4*WdDd0rZ-hE@hghD8|dkqn#x$l#`m?zAeT4_IEwt*A_ zj_MC6Hn~_;xywbgi1Oq7Vy-K+{fi%8(!;o7WZ66e?auFz<6nE@>v2R@@4_J7kn1PcCDNX(YxB1h5bP%->p*~ X{ygqn_EZx1cLM-i*GQ-2z60@Zu)nR^ literal 3013 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 diff --git a/test/data/widget_badge/account/text_without_name.png b/test/data/widget_badge/account/text_without_name.png index 981ee180f5d57310e0816cb4de543ecff2d3f2b8..caf6fae5c428b62e1e5ddb594dba02c700a7af79 100644 GIT binary patch literal 3171 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 ZKFup^89A0z`UPr8gB(AWEbY0R;gA zDk4FYx*{r41f)nusZtcb=ZlJ^-nzqoadVQA4V!DKR~i2p2<% z-Xx_^!im2@{tw5@kATGo;fO(Dq41x$-acUwM14ugpG5yYf9FXI^8bIPP{KcDF$+Zg zTtTWTt04cyW`^qhw4$u>L4Hi;pZErt$W z#CPmQVz5nJ?yw*acn3^lpcPhaB%cjBYyfdhE`<5x~~GZQ3pAX`P2W zunx(oQNFh-ofF#}HgFRHWAzvBkFl{zd7tpX8ea3(yyf z_r!9uam3rlM$ZRB`ZpJR#CaXt&$R#YIbU^ zXusUNap&fr!9Q;0=VeHdKJHgfS?|6SI;zwsaCl!`t&*BurmIF_oR#~q?dj+Re z4lys5hcl^QI*`Hc;>X+MgZkLDk6=@GXT@|>*VY+6J`~K|T6mX%g$#ohM)!}2dF%vc zabqm9ugA{lPP`Z)Rz35AioTxP8rBjl88V9Lk9>$%8GP*^;_&twV*fM8rnyb)0h`Go zSyQAltDox!T6dp;k{#B3LlaDIy+^)guLvRXjCUnhB%@Sq9WbIzqf1BBq}x!CXEim{ zB>SSGa~9uBg~|N7_Fm@$D=eq$KPUgbdna2(<*hUk<0mT7V@V?`33+g=8{qc7-cz>> zntUPpIgOwSvnch~ULG+y7XUuW0Nr?wO@Cij^G#SqlvU(n$XVAxoV5a_>#C1O zE_xJ&Zt(cxH{Ul?otXB<=M@}n0u#FWrNSAHFa^~-7~&2;VN7#B%pfLF=0~N2@UI+Y zxL6+vHi(U8dW$g6RUfO>RNLkIZ=}?2x3O@wG6!zBJY}Ev)=hVhHQsiHkiOYl^gN7k9{rb?5I*6;YT)T;NWHp0ZSa-7 z`a@MV^GS=bGhXR-*u}d$x5#o`gWRhiAt7|ERQXJ5MzdwgXFBHoCPiv@>01L$OOjRH z9en%*h2e9!ox0T-L+%fV^EBv|8PqUXGWQj^5->gJcl+tXUeeg~W38DuH=No*-$BvN zVEnU$d+NPsHhM+%Y7BlvisAEYCKv@hq}c1cmBJM=b1hH9a;kW+x!LOM+O6Uw>N$aj zd|GY_j6}dKMknXN+jm3s1SRQR zZy3sDI#oG2^rpG4Lf`!exfWKbU!k>pSZt+UKt*qGODZln8av8OqX=aETMMYl|@rsmm7o^x*u99(L~f9m`Fb@aw;H*)lhzdu6zp6AnvdaSvTQG20g z@bt`#pXOu2Su`4r!>QODY%LBImnRHWU__7}zL9c@isKIgAlDcs*fql_GvSc9S7nXu zL1WfK7K_H=>%M_Bh3&Sf_I|?|rRDUmJ3)c#;lrl{(7I7wl`Q&*+yZ;!3U#uJTZeas;jF92M2=!1A$K`L&x9ulS@iUY;A2O0#zHP|DJKTR%D=)UJ-^x0ur`qZ5+5Bk zyjVafDq5bMWxJc1m8Gen(bL<@0THvx>>C(3sj7NKOwPbf zBi}n7$3kbti3Y!n3jc!$siw-B8buwQk+HEyRO4XJdxHrpw&9FF@e zs!?m>BTc~~K)MkhY;*4$g#rV9o98k#H1zcJ%oG$5Sf6^v>g42cqi|w3Jydh=HKFEdv6|) z{q_bCLVk4d5Iqv*6c_Xr2?Kj?@2=1MVQX*CRware1~QZ8!~?SYnMu?P$El;zhKAzS zTC%dKkAJX=U&VH1g3cTNnI^yEl0;+5Ur|vJO(MO2|DHdaOeQ~hqA$hE%PX*FbYJ6+ z1I>%t-fpB=7Bp1Roji8)=FuAH1P@Vk+li%Z&k%FHpN%vy0-&^6akKfm(wa(2XA zA{BllE5|Sp%A#^-@l%F;R$kfl^0cKpm#V85nVLsLLW0CmYMkQ#01rZc;Cp-*T0SfrJEkw#S~%ajCHI z*mGIF^Qoy8LO8t1ia8e;T#CAKb|pk1Lj-x7d0%55(;z6P*?zg@4VLkR%VxsbN1&(M zND>#TFEL=*WmO#;jT+r|Nh4_%S$x0i$mv@N&35jK6|FD5y<2LYBe~%Xac{v(bLnwD zq@&vnvZ>&H?MlzKSQmG9QMJ2{wI$EEFsaWhxNu$^&{X5m^h_2GB%G)7zBdD>y<8u% zz&VA|)`oYQ=-@-kS}Y2$5Oh(fiMF`owI7`Lu6gM-u$N7lCi6TC;c9>r2!z0Pt1IJ- z3o9}=1+???^KGFmQJ=*KTWdLEV^`fhQ?{Gg_{()r4~E$So~Q7($cczKBqSVX_6m(i|E zA^~5scJUc0hHHJ_PvO}w`ceu6AwUzb`U8l*%duP=IcM_o2L*lVtXZ9jSJHm~iS-as diff --git a/test/helpers/widgets_helper_test.rb b/test/helpers/widgets_helper_test.rb index 37ab13871..716a08dce 100644 --- a/test/helpers/widgets_helper_test.rb +++ b/test/helpers/widgets_helper_test.rb @@ -73,7 +73,7 @@ class WidgetsHelperTest < ActionView::TestCase describe 'widget_iframe_style' do it 'should return css' do - _(widget_iframe_style(widget)).must_equal 'height: 35px; width: 230px; border: none' + _(widget_iframe_style(widget)).must_equal 'height: 35px; width: 232px; border: none' end end diff --git a/test/models/widget/account_widget/detailed_test.rb b/test/models/widget/account_widget/detailed_test.rb index 09d64baa1..6610ca75b 100644 --- a/test/models/widget/account_widget/detailed_test.rb +++ b/test/models/widget/account_widget/detailed_test.rb @@ -7,8 +7,8 @@ class DetailedTest < ActiveSupport::TestCase let(:widget) { Widget::AccountWidget::Detailed.new(account_id: account.id) } describe 'width' do - it 'should return 230' do - _(widget.width).must_equal 230 + it 'should return 232' do + _(widget.width).must_equal 232 end end From 14fa3d533dfeb1c65246c3b8ba7d1dbb527d5646 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Wed, 20 May 2026 06:33:37 -0400 Subject: [PATCH 2/5] =?UTF-8?q?widgets:=20correct=20Tiny=20widget=20height?= =?UTF-8?q?=20to=20match=20profile=5Ftiny.png=20(15=20=E2=86=92=2016)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit profile_tiny.png is 80×16 but the Tiny widget model reported height: 15, causing the HTML embed to scale the image down by 1px vertically. --- app/models/widget/account_widget/tiny.rb | 2 +- test/models/widget/account_widget/tiny_test.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/models/widget/account_widget/tiny.rb b/app/models/widget/account_widget/tiny.rb index a7b59c801..c22c19ced 100644 --- a/app/models/widget/account_widget/tiny.rb +++ b/app/models/widget/account_widget/tiny.rb @@ -2,7 +2,7 @@ class Widget::AccountWidget::Tiny < Widget::AccountWidget def height - 15 + 16 end def width diff --git a/test/models/widget/account_widget/tiny_test.rb b/test/models/widget/account_widget/tiny_test.rb index a97021f62..7db5d745f 100644 --- a/test/models/widget/account_widget/tiny_test.rb +++ b/test/models/widget/account_widget/tiny_test.rb @@ -13,8 +13,8 @@ class TinyTest < ActiveSupport::TestCase end describe 'height' do - it 'should return 15' do - _(widget.height).must_equal 15 + it 'should return 16' do + _(widget.height).must_equal 16 end end From 630ac1d3229847668de3ddbee49121b1b568e9fd Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Wed, 20 May 2026 06:33:42 -0400 Subject: [PATCH 3/5] widgets: add PNG output format support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Widget image generation produces PNG internally — the pipeline opens OH_Partner_frame.png, composites text and kudos onto it, and returns the result via MiniMagick's to_blob, which emits PNG bytes. Previously those bytes were served as image/gif regardless of what was requested, which is a lie about the Content-Type. Add proper ?format=png support by renaming render_image_for_gif_format to render_image_for_image_format (and the "not supported" equivalent) across all five widget controllers. PNG requests now receive Content-Type: image/png with the same underlying bytes — no conversion needed since the data is already PNG. GIF requests preserve existing behavior for backward compatibility. --- app/controllers/account_widgets_controller.rb | 2 +- .../organization_widgets_controller.rb | 2 +- app/controllers/project_widgets_controller.rb | 4 +-- app/controllers/stack_widgets_controller.rb | 2 +- app/controllers/widgets_controller.rb | 25 +++++++++++++------ 5 files changed, 23 insertions(+), 12 deletions(-) diff --git a/app/controllers/account_widgets_controller.rb b/app/controllers/account_widgets_controller.rb index 8917df367..a928e7476 100644 --- a/app/controllers/account_widgets_controller.rb +++ b/app/controllers/account_widgets_controller.rb @@ -2,7 +2,7 @@ class AccountWidgetsController < WidgetsController before_action :set_account - before_action :render_image_for_gif_format + before_action :render_image_for_image_format before_action :account_context, only: :index def index diff --git a/app/controllers/organization_widgets_controller.rb b/app/controllers/organization_widgets_controller.rb index 7821efa6f..ab1145cc8 100644 --- a/app/controllers/organization_widgets_controller.rb +++ b/app/controllers/organization_widgets_controller.rb @@ -2,7 +2,7 @@ class OrganizationWidgetsController < WidgetsController before_action :set_organization - before_action :render_not_supported_for_gif_format + before_action :render_not_supported_for_image_format before_action :render_iframe_for_js_format before_action :organization_context, only: :index diff --git a/app/controllers/project_widgets_controller.rb b/app/controllers/project_widgets_controller.rb index 534f1cdd4..a74f1cae4 100644 --- a/app/controllers/project_widgets_controller.rb +++ b/app/controllers/project_widgets_controller.rb @@ -3,8 +3,8 @@ class ProjectWidgetsController < WidgetsController helper :Projects, :Analyses before_action :set_project - before_action :render_image_for_gif_format, only: %i[partner_badge thin_badge] - before_action :render_not_supported_for_gif_format, except: %i[partner_badge thin_badge index] + before_action :render_image_for_image_format, only: %i[partner_badge thin_badge] + before_action :render_not_supported_for_image_format, except: %i[partner_badge thin_badge index] before_action :render_iframe_for_js_format before_action :project_context, only: :index diff --git a/app/controllers/stack_widgets_controller.rb b/app/controllers/stack_widgets_controller.rb index 0cb3a6d3b..8de3d66b4 100644 --- a/app/controllers/stack_widgets_controller.rb +++ b/app/controllers/stack_widgets_controller.rb @@ -3,7 +3,7 @@ class StackWidgetsController < WidgetsController before_action :set_widget before_action :set_stack_and_account - before_action :render_not_supported_for_gif_format + before_action :render_not_supported_for_image_format before_action :render_iframe_for_js_format before_action :account_context, only: :index diff --git a/app/controllers/widgets_controller.rb b/app/controllers/widgets_controller.rb index 1000d0d43..cd43fff4c 100644 --- a/app/controllers/widgets_controller.rb +++ b/app/controllers/widgets_controller.rb @@ -22,19 +22,30 @@ def set_widget .new(permitted_params) end - def render_image_for_gif_format - return unless request.format.gif? + def render_image_for_image_format + return unless request.format.gif? || request.format.png? + send_data(cached_widget_image, disposition: 'inline', type: image_mime_type, filename: image_filename, status: 200) + end + + def cached_widget_image cache_key = "#{@widget.parent.class.name}/#{@widget.parent.id}/#{@widget.name}" - image = Rails.cache.fetch(cache_key, expires_in: 4.hours) { @widget.image } - send_data(image, disposition: 'inline', type: 'image/gif', filename: 'widget.gif', status: 200) + Rails.cache.fetch(cache_key, expires_in: 4.hours) { @widget.image } end - def render_not_supported_for_gif_format - return unless request.format.gif? + def render_not_supported_for_image_format + return unless request.format.gif? || request.format.png? image = Rails.cache.fetch('not_supported_widget') { WidgetBadge::Thin.create([text: 'Not supported']) } - send_data(image, disposition: 'inline', type: 'image/gif', filename: 'widget.gif', status: 406) + send_data(image, disposition: 'inline', type: image_mime_type, filename: image_filename, status: 406) + end + + def image_mime_type + request.format.png? ? 'image/png' : 'image/gif' + end + + def image_filename + request.format.png? ? 'widget.png' : 'widget.gif' end def render_iframe_for_js_format From cf789cd6b3387d4ced7c5d2f9ff9bcdab8eb4ec4 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Wed, 20 May 2026 07:31:59 -0400 Subject: [PATCH 4/5] widgets: flatten transparent background to white MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit OH_Partner_frame.png has an alpha channel — the right-side content area where name, commits, and kudos are composited was transparent rather than opaque white. The kudos laurel badge composited on top has a white background, making the two visually inconsistent: the laurel shows white while surrounding areas are transparent, appearing as a checkerboard in image viewers or taking on the page background color in browsers. Add image.flatten to setup_blank in badge_helper.rb. flatten fills transparent pixels with the current background color, which is already set to white on the line above, producing a fully opaque image before any compositing begins. setup_blank is shared by all three badge types (Account, Partner, Thin), so all affected test fixtures are regenerated. --- lib/widget_badge/badge_helper.rb | 1 + test/data/widget_badge/account/badge.png | Bin 4745 -> 4546 bytes .../widget_badge/account/new_text_image.png | Bin 671 -> 671 bytes .../text_without_commits_and_kudos.png | Bin 2041 -> 1969 bytes .../account/text_without_name.png | Bin 3171 -> 2419 bytes test/data/widget_badge/partner/add_text.png | Bin 4254 -> 3649 bytes test/data/widget_badge/partner/badge.gif | Bin 35139 -> 38549 bytes .../partner/text_without_name.png | Bin 2768 -> 1776 bytes .../widget_badge/thin/openhub_and_text.png | Bin 2374 -> 2076 bytes test/lib/widget_badge/account_test.rb | 2 +- 10 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/widget_badge/badge_helper.rb b/lib/widget_badge/badge_helper.rb index a0a5c60d0..78db97a24 100644 --- a/lib/widget_badge/badge_helper.rb +++ b/lib/widget_badge/badge_helper.rb @@ -15,6 +15,7 @@ module ClassMethods def setup_blank image = MiniMagick::Image.open(IMAGE_DIR.join('OH_Partner_frame.png')) image.background('white') + image.flatten image end diff --git a/test/data/widget_badge/account/badge.png b/test/data/widget_badge/account/badge.png index 63fbe3a21d5807898ca236a6de04f43183359318..44feb965f03916ff5f6bd5446e269d8b51b9cebb 100644 GIT binary patch delta 3917 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 UF)XFxLI3~&07*qoM6N<$f;qVdegFUf diff --git a/test/data/widget_badge/account/new_text_image.png b/test/data/widget_badge/account/new_text_image.png index 9b57a131f3ddad85a9e94943fd94e6907f731ddd..00d15d68fbb77a57bf5d2e79384305cf8c3a5310 100644 GIT binary patch delta 75 zcmbQwI-hky2AjOK%#^FkC*~>f8yi}gT51~@SQ!}9OU0K=oR1>J=l=Y}#0#p(sv?7q LiEn0MoXrRTRKyk1 delta 75 zcmbQwI-hky1{=S5{Dbbh6Z4e#4Na{~O|=aStPBiZ+Uo3{I3Go5M#2>Ki5FCnRh=*0 LdSf#S<7`F%ip&?R diff --git a/test/data/widget_badge/account/text_without_commits_and_kudos.png b/test/data/widget_badge/account/text_without_commits_and_kudos.png index 69be581ef1fc3a4ff4f8b0bfa4f7e1b0026d6218..beef8262c7d57ed8097676dc000f5d413c8173de 100644 GIT binary patch delta 926 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 delta 2554 zcmZ`*XE+-Q8%@NPlo)MjT@~7zv8hqCVvn{dMXA-1qBgZkLS2HYk*JxNNsSbxNW{FZ z(OOrj8YQk#jZsvMnz#4g{qcRz`{%sp$9bOjdCzm6vn4nWOB3bh1ONb}coY6~NrV7^ z)5Fpf2{`$83R_;`@!B9bC%=~KZ1QxSJ185-ucD!&p&_rVtfQ>Vx}w0qb92D|%VoO} zxbWH>7yio)h18GZeK;I3JnrVmtF~d2Ys7GWTf5Tfu^2@b z7Jp%MFrSc3(H%uRvbhQF^vI?l<0n(`IU-$rQrFg=eHp!PvSWk*5VbXOl}-3;OL*?R zHT=JjV#$_LbH{A00OuYz=~IJ*Ass*rKZn>)9CN9mF7Gqz5MWG*nV7Y%PDsf$i+$1l zW~J2pn;_hax|^;ey`gy)4m%rM=dOGf5bW`bI`lHROBy(=bXn-R%XPF&a?r{ugUM^9 zM%Lc)NudYIG{EFnUi$HxD~MSu>sYC&Tq&jarH_|@74I>g23O>Nr$Skm z*AP#H340$s)r$&^Vor(8oWVj)X5v|zK!0`J@B=zzp;;9R_B&clh%0@|ZZ-1fh7Brj zc}*dQkuf*$0N~s>%lrM|^B?uoqi##(;gu7|A6e<#IHCqg69Lc zvNQ7rF)d0~OP%(7VIjk&0OvzS(9f-Bw;c9o52&s!B3M$3NBHX6*%}9MfnO@KHmNxF z!wm_k0ndJwo>%d}qlD7A;4oDS@11WlTyBO>a$SFR@3zfPFqlPQmZHM}nh$3RxZ20d zm(sNENsEv_Dny2fduRDd>x^}8V~Ee)XN9)YG4FLq1t*AV#bfSHWteWro(d>C%m>ld z7C>e8oc1}oU|2nCRcGh?vc1xo={r797uqt==z3@vOieKuC=gzrFVP;*e#lvG?3DP+ zHLZPc+@16`q?bDX;e7{W`xmGGrhrK5Xl^ zl%vc1!#(uoUVw^HbQC}9*)81lq>_fF<4^hsG00yrhHC>hxo5>ocdkn}poJl(c~Kz^ zU(Jf|`PgPkY-ZA(eO)Pm>bm7JufI?+RDEf3_krpfl>?ts?^er<7CiX#p!L&7_5D_f z_DZEk7Y<8uEqpTD{eaiaNce8I5aPdY#smaZ9GYDM<^< zPTjy7bR>Of?DPY&X*CRxF(UXiFa7zH56aHPDBN5FU|O+!Ln$gHg5~|o(1HF;cjp)1 zB2}*Tg-ik`%3EvIxVC-Km@`6WjVIfs0TCB=&tIwJr+A|1CuY0bttKNt@v6D1@Z+FC zab4W!O-H?^2+jJ0Wpk^PSL^NflNt$|tUTu4;}Q?5!qbq`OblZv3(EIB`H^q%Mu$Ad z!iyn~$>v0`1iqs~f?ws~dw(#d;$9&^PqGtS+8snOhqH?PW`(EK18b|K(%x!rNzf!e_}FT1p;8+oCc zV;Tohp*qgvdHI;NBQFh!Q^>xjf^LiW6z-b;e2b$5_=)ctHp8O_o#5h$*2o37o5OVU? zsaQw+`bt@O)s~Q-lVHZYzxLr*PA8^l zp0P!_H&R;Ep`6gvzcS=w_!{L!$06m&`N3FRKf7usif@X5W=jpbM~BeFV8GACgxtk? zM|R91*Eqi($T=Pz+$fUGMc`m1C*IxOy8kzA#{7QMfX(#8h=ZR2W$)iper4?oSsQF_ z#lB6Vnt(;Qokcmc-F6lNeFN~05re+#k(!afmiTCjgPLCvY9psqS{|$rP&Q-&p99Ew zuAWIDc+tPvoqF4^7R?qB+Hn!)9Ye>!1GNOEVie)3uxyCJDUS?Z1+ItT_jtO^{Q7^;O>Q zaKM9N`DhX~UpWSme=Hb;h=z}D#(|;QeR(R-bldYBL;SBa8bK2Bdo?3ogf1wQ}z0TFU@b9Ncn4Hq)$ diff --git a/test/data/widget_badge/partner/add_text.png b/test/data/widget_badge/partner/add_text.png index 32fb7ece572bf6b8edc353814bd1e05ab44ae9ae..442aeb0b5c7c0b2d463b75597a5fab7eef250814 100644 GIT binary patch literal 3649 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 QNOv`${XkEnO5Hx@c;k- literal 4254 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

FJl$ZeIWXa0>L%9AB^7k=h^< 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 Xc6d1jWQj$k1T)`G##7*m%K1M4=?E{| diff --git a/test/data/widget_badge/partner/text_without_name.png b/test/data/widget_badge/partner/text_without_name.png index 44930439fd4b5453484be03da45ed9dfb6c1af56..d5a2d7ce0179de1d93eb18cd831c6222081a7003 100644 GIT binary patch delta 1705 zcmZvac{Ce{7RD1^EXA3z6;o{$RYPg0tub0Oo*HVY%xhGYkRYukk`QXzjHD`!SW=Hx zv_z?*1XYwN?R2rHXbC}-)DnA2#2O}@_s%=#oil&jbI<+0^E=-k-|f{Ds$^>IGf=y32Xj3E6WMLDc<~0_r&J< zR$W0`*UP~`i`xSop9_;4Qc%UW5RVcrF!D)txrxuBh-c|J@zs%MGozsNw1~1y%+rEf z^>@Nb2wwLC!N~;g`wx@qXxBWR|ravzTCKi|HR*NW&Uq)t|O1jGFEu<^V z`oi|RSYk!bn-Tu-EaGI!*G19V%KFykb|@sZt)V}{DPv*gE6R>47Hxz(q-}_|Bs&tM z?VSm(AmKvp%=qF>_`|+;qv1c%D4~xxH@117rV@Y28)Ea*BgRyeR4@q5WQ) z-^zZ)WhOV2W;9d7OB#ziw>Nii?%7vQrw3b6h#}ULi6OzKR^HUu{Hw|jt@Zt(r&7C` zhnD76L|@nEr-Yo&@$9&&*Ofi=mYlX@kIEcUP#ass->U9_#e*rZsj3PY(PI{;@m!xL{^J?=-&?t(V)} zKKXvXS3NwgF3ESNfm`nW4vDD$qn}ZO%H>GH;zFjO_R2PAiVU>^u>9g+wokj8S+?WM-Gs4&`Yh83z8}ytQMP^#;x4mmfQ)#{7=OolP z3{>J?iB}{kEMH<#VP;vWiZ-od!wOm^8c~YE>!fiZA*H`0^H8 z?RRQHD$&+`!@cJt2(vwMhyDT9oYD9mS9*DECPGtU?50UiAhzwEkyz_Ebk?P=3FX0n zIRLXGjBznR#5$NpK4cdCq|}Qv;o(@N_IWG20uHE)eN*<9!op=ewCxLvYk3h5R8+n$ zk3Hxd)n+mJBy;I#+vEndU!OyWE+9Y!THd@R|3R58lC+DXco#SxiNK>EAy|}j0W86m zHfCU=wV5RtW?=z2X$P@5WeNsEz+ico>(KurBBPP$(1iaIe*?s6zuAxi#{Y}Jqa#r` zJVILPe^UO2Iim9An3OS4`v&3Bp`nno(UBM|3Wq~SM**zItk74bw%#{4OIPL)5nyTX z2AnCCfYDe_7_jFNfdK%>IJiNbVDPt#+<9L$A8k2Ie1T@Q-f<_7%$MJrGxsxm;$kW_ z>WodFQ-%es&|Ktt_s34wUTqiwQLNE*N5?KE|GNhdPcElO*b^^TKU8!eS=9R;p(f}~ z6%#efdp}S+X?~6%m?P-98d0CQXA3K@+37%Ji{2YmMh`5FD>r>wdTk!Y~qwdB*N`7fg-;;Al%7V&j2Tc+8nJNio>g?paYNo6{ zRNEf@AwA@lv$hH+xSQX`?LB3P?OoM^k3WjJY&bViD0aU`p9DdGRV`w#yW7;{ODz3Z z72d2Uwpb$2|CxUqXnjE;7TQtHH#+9+Kh24hK-K?AXe9r>PGfA}tlpcF_0Z{^1$TKI zfteC1ex6K`0x@Hi087N3n9dJ6oyV?sd*!@J!0WDpdR0Y2nHyBlQ%-CF-9AfSr}Ldm zzB;>w$u7hRRh#>nRaZV8I4aK35(KL)=ZqPc*DUcR%-~!Z$7{YN2`HTLfT=j6H?Qvr zO4IWSLzTX;L+dEi$OBZD^OX+JTbf`rag91^y(i*S>0xezErf%}H8xbM#V%Z@>#vhgDxjV>ceyA}J5x#gg(6F)Yb`>RNpqp9BG ll$`Ce;a``F23FoDs`zE)$}f|ft)!m?aC7m5vYdlRe*&8jM7#h1 literal 2768 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 Date: Thu, 18 Jun 2026 11:02:57 -0400 Subject: [PATCH 5/5] positions: use must_include instead of must_match for org name Faker-generated org names with special characters (e.g. apostrophes) create broken regexes when passed as strings to must_match. Use must_include instead, which does plain substring matching. --- test/controllers/positions_controller_test.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/controllers/positions_controller_test.rb b/test/controllers/positions_controller_test.rb index 6fbba2232..636dc0005 100755 --- a/test/controllers/positions_controller_test.rb +++ b/test/controllers/positions_controller_test.rb @@ -332,7 +332,7 @@ class PositionsControllerTest < ActionController::TestCase assert_response :success language = position.name_fact.primary_language.nice_name _(unescaped_response_body).must_match "1\nCommit\nin mostly\n#{language}" - _(unescaped_response_body).must_match position.name_fact.analysis.project.organization.name + _(unescaped_response_body).must_include position.name_fact.analysis.project.organization.name assert_select 'div#all_projects.chart-with-data[data-value]', 1 end