From ff7d17809c08c9b30654b2b2c847814769fd1f2d Mon Sep 17 00:00:00 2001 From: "Keenan D. Buckley" Date: Sun, 5 Jan 2020 11:01:43 -0700 Subject: [PATCH] Import 2019 into 2020 --- .gitignore | 1 + .vscode/settings.json | 9 +- .wpilib/wpilib_preferences.json | 2 +- build.gradle | 29 +++--- gradle/wrapper/gradle-wrapper.jar | Bin 55741 -> 58702 bytes gradle/wrapper/gradle-wrapper.properties | 2 +- gradlew | 51 +++++++---- gradlew.bat | 18 +++- settings.gradle | 8 +- vendordeps/Phoenix.json | 111 +++++++++++++++++++++-- vendordeps/WPILibOldCommands.json | 37 ++++++++ 11 files changed, 218 insertions(+), 50 deletions(-) create mode 100644 vendordeps/WPILibOldCommands.json diff --git a/.gitignore b/.gitignore index 61f25ce..983678a 100644 --- a/.gitignore +++ b/.gitignore @@ -155,6 +155,7 @@ gradle-app.setting .project .settings/ bin/ +imgui.ini # End of https://www.gitignore.io/api/c++,java,linux,macos,gradle,windows,visualstudiocode diff --git a/.vscode/settings.json b/.vscode/settings.json index 860e319..5200b5c 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -7,8 +7,9 @@ "**/CVS": true, "**/.DS_Store": true, "bin/": true, - ".classpath": true, - ".project": true - }, - "wpilib.online": true + "**/.classpath": true, + "**/.project": true, + "**/.settings": true, + "**/.factorypath": true + } } diff --git a/.wpilib/wpilib_preferences.json b/.wpilib/wpilib_preferences.json index 95c6671..a5920a4 100644 --- a/.wpilib/wpilib_preferences.json +++ b/.wpilib/wpilib_preferences.json @@ -1,6 +1,6 @@ { "enableCppIntellisense": false, "currentLanguage": "java", - "projectYear": "2019", + "projectYear": "2020", "teamNumber": 4388 } \ No newline at end of file diff --git a/build.gradle b/build.gradle index 9216a46..6ae9dcf 100644 --- a/build.gradle +++ b/build.gradle @@ -1,8 +1,11 @@ plugins { id "java" - id "edu.wpi.first.GradleRIO" version "2019.1.1" + id "edu.wpi.first.GradleRIO" version "2020.1.2" } +sourceCompatibility = JavaVersion.VERSION_11 +targetCompatibility = JavaVersion.VERSION_11 + def ROBOT_MAIN_CLASS = "frc4388.robot.Main" // Define my targets (RoboRIO) and artifacts (deployable files) @@ -35,27 +38,31 @@ deploy { } // Set this to true to enable desktop support. -def includeDesktopSupport = false - -// Maven central needed for JUnit -repositories { - mavenCentral() -} +def includeDesktopSupport = true // Defining my dependencies. In this case, WPILib (+ friends), and vendor libraries. // Also defines JUnit 4. dependencies { - compile wpi.deps.wpilib() - compile wpi.deps.vendor.java() + implementation wpi.deps.wpilib() + nativeZip wpi.deps.wpilibJni(wpi.platforms.roborio) + nativeDesktopZip wpi.deps.wpilibJni(wpi.platforms.desktop) + + + implementation wpi.deps.vendor.java() nativeZip wpi.deps.vendor.jni(wpi.platforms.roborio) nativeDesktopZip wpi.deps.vendor.jni(wpi.platforms.desktop) - testCompile 'junit:junit:4.12' + + testImplementation 'junit:junit:4.12' + + // Enable simulation gui support. Must check the box in vscode to enable support + // upon debugging + simulation wpi.deps.sim.gui(wpi.platforms.desktop, false) } // Setting up my Jar File. In this case, adding all libraries into the main jar ('fat jar') // in order to make them all available at runtime. Also adding the manifest so WPILib // knows where to look for our Robot Class. jar { - from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } + from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } manifest edu.wpi.first.gradlerio.GradleRIOPlugin.javaManifest(ROBOT_MAIN_CLASS) } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 457aad0d98108420a977756b7145c93c8910b076..cc4fdc293d0e50b0ad9b65c16e7ddd1db2f6025b 100644 GIT binary patch delta 25889 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

Vp_F!2 zk}(SRB$Uc?-+>2M1)p1u5!n{=dA~+Wg$hE7LU`~C`+6MJgjz9zP20glC zF-+ztN?%9S)w@e$z}y8MWG{EZL5p{)S(SP6a^VsTgLt0$T%YJFCv#7jksc4lEw0*w z#lf}(T|Sw46ADdiiq}d6bdl=wg5P#P&Q3g?W4_)#xt?sJ02%VhP;l{3(G6W3*d8no z|Fv}!<0mm2%Lpn!{)f1w8?&*OLIDB6p#cF={YTsY#8?0ilu^|0U)fEi%S8FeR~CH6 z0_2K8ln{|-giw+W1OgyL4t_^X62IJAjqGC+IC$kqhl|$37m>MfmE;;w3A#DDU(O%5 zg^@U-H|t+3mm8Pr5PjJU{oSfz-mmp>y($m~+a7h8quWZ8$fpcR8u3 zNZLVWRc`@2;Il6W;J#f7NHdilzx6Ihr9VB&1H4t1q(-!K;v(sl@0_}X`l(f?T*hma z?yNSc4Q~<$tq*UtP+tyQq4jP?u|GWuq5at@JsKl|Jt8B(Jt_lQ%Qa|#uSY?l@g5JZ zs0KVjBi#3O?=QBTJYsRSFGfZA>B`H7J`O*>sQ3VW2o+-n8pDuyN_Pxms6G@Z2e z*v~MpTGPH#mEl7PBQ-AjX@*bdqx&H$3sL8HUmd844>a@U2qQ`$(nKY!b1VjDUyg-m zQN;*wm}<(Q%)GlZZs+wR(f6dU)C|l%WlI1P@eVsU#M&8SO@V15`@gjQR;k2hY_^fZ za5ZWOnq=r#Y4Hgtz{5f>@P`qpO(OXxyh-FMxWb()o zb{g7U`6oIPY)GBX1@}N&qb zU&D5YZIn6~aRcd5)#p-9$$APy+X^@{>s3N;OeMk6tDlZ$#Y?oQza~U6tpl8n z(Gk68NNvAtX7KKV?vZR$*RcL7m$Ly5UfGzlFYQ}tM!(B>Tkv?>mGPaN^!nMs)Pl)l ztimg_$(ql^2vxkNnowCcA9FOFdekKRWk3ghkh>Q0qPXEq{ zlnM>9-_gGJzA7+L`J}!C4UCNSQX$*|f zBI&DG2_P zY$Qh?lYUp|XI1Dc#)WQ;%3&yKBP;(i^VAE&EHlbbfkl@rjkp%7SlIb?Gt&I6Bht#l zHI3MqmB3IL#gUy!9do7-gurUODT=4wXu=Pe?sW=}xaC%+JvMn7={=do2UmGl@X>;? z$rh8Srf5#NW>-8x!vNPh<(XljluTu%T2=lo0}|`VO2#Ji z6z*L2Ce?Q~>7E-|`+Y*Z2CHvZM$a0Z6t)FYEu%0t*&?bl!iL~$a|$fzY1gD;+uRFo zkyRM}4vb)b>Kyj3rLjE-;8EO#S`n)#E%OttPJ$uOpVAf#JODe3R*|NOZm%JIdf={A z)SfkHN%G=;MjUE$kHUJE2b2TVYdO|>q<`a`BTrOIR>7n3;)ZQ25;0Ly)f>4=j)&Y! z7KWUZv|2rIw$jv(k7YXQAL+VCsZG|3C%IG1Fohj;x6!Lm-u{M?qw3O6y^q@#t6Pnf z%T>F|md>+HvH&hbGtYW}&|)ZajU=km{?wGGnGb55_0WZ0;JxWN-iZ2~C*{S|BH2Gb zt!TW3p^WR2I-|?BdWf^3pglmsq}g(bc84kJahsoTSGvzJ&5n5&9^hj31;$R zTk^{NnjSlG|5ytN2{hTAmp_Hwyu#b&Kdc|6c4FpvmIBCb#w42@kB?m9uvI9r8F0Av z&J{7jJfuV6QWPs$ZcO#`WXU8K?e{1v>7SuLXV>E$mNRbE&qwkZUd_0clO`Szl41;tNGC((1Rv7kl-_|+sao_F=dEoVY zu)KZ9WCys$bQiJQso%DCIbtZ&angKnsBsJ-K07bzK;ZNtziNl`;gF!SM|zj3pjxVn zE1+p|f$Ye^A9ac;&a=Z7uc1Gh?(!o(ChLot>TBjzl+L2hc`>DB2tIMNizSpw-uo*q zIhp6R^Jvh$tbqTC#+0$I!RU`NBQ1;5VvI;PNe3kNU&00m)=XJG|N5E~XHb_rW>u%d z?*BAnEn|x@64bAALJ2V5EfKK5V2?F2)Su&z(hjM&K#7EEA_;tVY-}a&tIyGcUz~$b zF{U&##5^|UTrmLWs!!PNN{-Q(KAG0SXoEAa$CDRkz8(?FGLND&fT_t_cHD})z{45H zmIGXhz436#xT_Hb5`Sh0L8XSdV3__xc^4ewzj!3SMfr7olXM_rm~kMo`TPVal3ah) z#)M*yJ}m8n$st{VJVg@sJCNXVf{^vTJ&%cTN>x!VFmXAd?DdQY3^HJe*Cp{yC8Qk3 zkKiiF4*S`b3I9r&^RZl#L5D_5_Iq$$VgyJf)Av;MHLo>Q7=5O+|Ine4{*CE6tZ@1S z5nAO8OQG4J5#NJNd9WAFqpV{J)DEq$z^LIyuv3GNshy|UEOg0U>SWI|tK$k}#jKj% zZNWt_urfip_(*|2c&BD6tm!vKs| zEVD&DN5VV7C7R>1&1>Vr0@4dNkRX12Rv1ozl^Np7&-3KuF$}hcue&PD%0XzJZ;$mY zJM36y?N!Ba&+g+i-xR5u-;wxE8&|Yf${*{~`go&OdBY|{Uqic6qEt+Xo3HHhkt6tl zNBdX6wroY7*&TA8jpZp<@CMMGjqo&dDZD6G`EyP+JG#?3IL)DIK`@3Iy%tPIXy&3S z^F~~W)aI8NUQ)!&jPtae(_|S?N!OJAApF18YqyBt1jM5|mFDMA1TV!h4IMeS@1q})bG1?*#5C(x2WnaQ)5;ihlT+;Y^ zDcDwvcV8rXU)!RgWXzrYo^k)${^)u6 zke&HD$qxmt8sI-R1f{V{*zAhK&dfw%j{!uX6_Mh^{~ibnDr7P#@^p$4Zw8Zw1?CQp0>~{Kmza~ z_W}uhB*c*Urm*o1Ey+oIR7SWq=@+5+$@UJAdGY&z+tY0=!Y9#)nxATwBr9StJSb2rdE1EC77NGp4%HGz{5}KEw6ay=srGBf+x8xlH7%4NLjLUTcspcS(FHWNCJ>V%L__c zINBnvNN$JHp(Q^SN6PZ$9zFqXF>l6_Tl<1EnNc3AaF++@@Yq1D5`i&ND8=9nQCPXr@~a zUXN|%T$Y(jw%L+#=0K+6EVdgNXChkT;Z-$3yiT#nErl5;MLISaX;A`=TTxhQ5qV4H zoWg1{1Er`uVT|A#j)?)Xt5pUt?6ZT>&@D!p0cuT@tNyU#6Y9kVIDk&D6ck|>Z7p`A zjA{drfAAjEi1L@rTBG0GqX#rs^_GDQ)h8x%_F*0URuo)+AQjaITtE4i6H&Y$G3b}-9x7T0Pxxzuv7QFLnN1Gxd=OL=r(}wx!DjKpGSVn4b`iD`|DG&Kk+p& zfd7DAL~W@TM*a9q%*!;ax%(lo;p$bd@oSonVK;d z(dh8bX0S$<96yqQWa>VmgmyfH;Y4FExx1dBWZK*2n|e{+f-|S%Ty6*clw^J))Zlz! zFu}AC(<1E}0vKboVyP%TEzpuwSM`}uSJ-1bR!DEO%G9(Sw6TKWd}HCeuaA^Fo_k|qjW>U?TIuqf$$%lOFAIVfQc5s~*zCz4wuSmPnOtbbXs0Hu;d z$~YD5mj_uV=Izn`ZNO`KuNm}yfhVE~@h~HFjW6ELuFRCC-|m+Iix#uknX2{&Q->|$ z=?POMrXU>+jNS`7lFY%=d=LyRmPkZ*xqMMW=nEAyDBRaFm%QnoPvRT-_JeJ4li%M| z7ceQ#$WsY5St?_37y6~CXau5eCP`gO6fgo?LskG=(LHUg;j;>Wn7t#sd@0i1NNw~0 zq1M{mI)QEi8}MgtlQTfc^mOUYJ25RI)hH?oNeT*dk(te?DsXTBY5qh0&7Gc%GnPje z=(Qrwziu;Tm*i=MEx+56A`pKH8U9FP0@zEY?k=b2wxv@@8*Pc8B?_)Ag&gqD!sWXc z=LHW!I0-Q+x2BD*B&!SAuWy;n&f}s%Wdvo12DosH zTn&M*$JN~@aEk&oB<$h@Z- zvOgmR$ScV`CAjgA*Np06flDsJlhe=1Iqqo3*SJVB_SnGeIa0ucO=|6g$8!PX;KiA5xpU* zLrGb_V19i^Ln;aqv++Z5snjPg&|Mef64_w|IB^6%l}ee_?*BHCXCMt(Crs5FHEhKX z*}En+C`c4bZfXJE)@QGN7Wl^h-(f=VT9|7ekbje65I~6yIv9yFQ;+~jJ7*U|8yjH@ zQ)BD@PK+fdZOJbxV2tE8x>8f)?uv-^fTcIU6&(m87hn*F&x1W0nL%yiP8gze#585U z<9iMUlOaWu>3QwpoBGUJu8pMmo344!Y~-B0@Y&B={(OGj!Sq4nVM-K|3<`w|6u=^w zbQBfRjGBUCR-I}9Oc|{BcASSN#dH~9ZE^2kHl46mU`A16&j$G1H%sVSL=kVXs>ejB zb*`7Iq)xf@qSemss30Da(StT!*%5;N6e-ESX3`;m{ARF0p{t10hU+yGC96W<@bC6YuE*P^`^OUkNO+RUW9*4rk^io05*dT9Q2iC9;J0t6&Lo5;XU_J0zvJ}S%0{N#;Y zNWU_xjEF7(ao+R|+V>EZu*a>CTEuxN=x(XWsuGJARs)~|* z6zf`lE0!yotF_UuYMRw5)mV0Zy4ac1Nf3Ym`o81cH(TESg0FA6&a<7K$C1AfkmhB+ zr{qr@Vps-?FzIA#04&4}^M{hmN_wEaRJ)4Mv2MS6Kg)7IdBl!Kq?l)B4>&2N!T9A5 z4?deB$t4qOZ%z2&PAG-+^KMn}(cjN}>6F@5e`SggGkBDBC2&-B0sfn#ncIoYD;pd(o zaAB_QmXdZUX4HP1x$?>GEu!)XzGVSF66R7*v!i^MF_!f_99Vw(j=>+Mr3Jm=l3QW=2d!KZk)<;%jxTC)htz_nNrp=#3;5}eJpi6WS<4cUbIS9`7T`+e zRT&G*o5ts`2D~gQ^P8Ja#VnIq!;^bLG^|;07O~PsIDf0r$<9pD(Ppf5VGxP2g$6%} zl!8|>11#$-lD5_G<%Wc{pG@=XdfIyQVn@}j6sHram%@dI4blCw-3=+Qn9v!s^=?VM z{cqj{fuk-2+T37TW+phlc8hmVC%}mW2{#7Op=H0F<{Z3fC*uhqo2*Ip=D7D#3(INu|ZA=`7|}vfqYSSZK?sW-?Shlp&Sx@XXVE1b)*gjtz!*s13SUm44S!+gI$;)@-(N@rWMMMZ5dB& z05bT!TBIDCrd4xML?mO|`!>B?1|c)=Gbw}L0yOTBI>GjLq+~)Xiux=FkB7y-Adg zOv@p)ElAcD^9*}g8VHT-P4S~|EbahO0MvqHdN|a_i7Am`IbJQh5N%7~791hy1Va6r zF`teWYD3k2t0sM{sKMy(?!w}3QdGu%J{a_8H1BzkVEP+HX3WkM4ad97tbp$bTt&yA zW~BN*kO&q}WX zR4?evrJ#(0jC6*&w@2dJb91;nlA26ZTfYKI2%T!|cm*E1TXCT0BM8w(ungkG1Ga+4 z5Y~(iA&A$_~x=4OQZ)7=SE!2I3 zF%`Z<#HgOd>Bc?xHWx5O&_;{E0HSgvndTsrJZX^T3n0Z&MHq=OgP`?+6GQf!^C@N+ zPS2^*I)JT)_m?w(=sN`wE)uNaetq~Ugp*e_f-CJ$tM9c z8%IT>erKKRNGy@homo2cSSp?w{+abjUS`wHz+9NRj5lhL*z?&fDRS5()g>>+nEovW z6PvAQhMT<4`ZCrPljfk*1vrMPO)%bT&NsiiYj{m6)bObqXREYTo27d&O$8r~3YrST ziZfv~erK$VT>i$Q9^WvGujngo*-?M{^(ma}eoq%%o1BVY4)DR%uf2!!;k6p0 z7yN)VbSs=-znfMdR2B~MnZ6$;rSMVtX50yAo6VYrG;;8(@uA)+xwq@lJ>q_qGr>E7 z7TN1m*&gIqe6#BjKl1jhWqB$0;lELO1NKU^T$D^H>z@)Lt<(7Y9$V^OM6rVyZYp3&KSi5Lp*(~k;{r@Wa3a}`)H*UH+rCV|V>5vBL zlabu`9DV!To%0lS?_@!x%`5hO2T#jMJ0%h5;HnL}jb2#ZPa{hl*qd z^&0s4{t**daDW;UA-U#k;jDl*SDMihns#;y>h~`{Cv-vFxGK)< zpL*}lFgA2R@$8@7bQe50ZX!UOv4N~3Pur4JUioo!jK0$niNa*5SyDhQID zd%6yg`pUyTC+>`T_STwS_!o*NXGvO{yq0!6@#EIL%vH50cDfi0H*zhfX#|dv78s}o zCIh@KTkFO{m`E)@G-VhWDjtvVyJniwcB_d-g6J^T&cfelrn=xMcIC7LAOqNc>p9(C<6FNRP4F2ZaFp9K|T}oFUcLmsH3v3a3 z&Cm$?i5YKAbLE{SPAg{8MMb;gP}=~??g~)mvPU{M9#YXY6D+b%TMd4%v!Le~&BlRX z6CRQ1K1$9jF_8#$us>R;#s4|6z4~!X_K<<1y7PT1(80<=Z`R21aNUP1i}zXd_oWnB z@j)gCEjixe@Y9r!ye?zv?|CDw&RP_fx+Ww+e6}b#Ca%~$Q~A!ic#b{;v($0E4BxJAd|~|`j#wCL3<;@*-nu}#I()urv!IA$qK*wxW^cz z;V%YaR9p>O&Ncq{xYpR#nF~KJ$ak8^9pMTG4quD=1(M2WdeFkzE*q@mK!c}Az6M2m zAO?QZ*wB$dVPx=6z{%1@L#-lt|E@t9QoUqE0tY^XdlxCPZTBTrmLWJ>!hn?%R5YO2 z1Cmjpx!8Httz1Pg^AU36p7Nl!b1+t~R-YQz*mQr63Eb>XTSyTGJO#7%3D--H^ohxlyBH+iOPcHhS zEAC+x{%5<-IDJG~{l0ZSs7)#+RZP(!-lXQBXT(R{d?@xhtv$Sn>s;t-e*kKZ$J$ZX zx27oteb585kidIScnbIPuV|M>(b0v^mBX`>&1My@Te1-4wn{a0PA59M@&h0wWT1T} zSE~U@%7&Tw6~2ao{unPteKbcA8gz>L6C#6sQ?@PC{NX~HEg@CRbvg3)-{i=bacwKF z0j)gI&B6&2?WKMy%XE~KgrZf;^Fvw=5GlhV^X&G5-h~1OA5P+Oez*3w>|9Xj-o`>+ z3My_cfq;SHPd*eRd%Mz!7R&a@x`DVODp&+Eie!$qQnQA37bk(-`Q=-bN^5yPj|0vT zo6j7Dt_bvjR?ZB&5IULqiSh4ZEwsACjyQ`!tUQZRA6+V1F`phtxNdiESPv(pV*?-U z6?YDDQ|cK^D;JcTc`V9Bj?1<4X;z7EqftI4I`AA%d%I_Pda}4rj{dO9lno^6<$b!) zLnBayV;o<-4Y5pL&Db6~L2X5ME!vVR75_YPGIG8in4y(Q)4!J+y+`FJElt7K78+lU z%f=^A>Xn(`?JY&8CB|kkyjnM07aNi995$;ikd}cMM_}r6Kdu-c5Z=YB8x~(ome!pM zX481u4^dA>_^2-yGhaeuvjIX3dSzmInT95vr}ApQF>rLOu~@zDX0|oM6?Q7H%Xy0qZ25l{+vj@Fd)j-`n)X_$NG4H zH{nAjd7{`ocS?DAk}d&k0#sH8Ap-_6VFvD=l6q&%DKw{sgI?%V;6XpqD|OEx+Au`T zkcAfB?V?EDYGeDR%r5OoR_9_$4#FY7zSkw{bxz^N&SM0$W8-|Oh{vCwiVw6k#Tc5AUTgkbiXX_ZOKMy%VQW>Qbw?=Buz$+_NXdx!9u3S>LaeA|T81KS2W{dswb5M~dq0FpC$ z#UkbfO{dHmJ&27K35TwTFU=k^KacFN2J__tQdBnjv?&6U8OoR`(z0prM){^=&<~0h zGPG9A^>-;b=qK2ziY5p%#?;(nQ#_Rf!+mElvz6(+lhp_sbY8}CJQG9GsubC3)#KGG znX1wk99L*IGoAI-ldgaosnp(18-2F|HU-+tY}6m7wxHgbNy}>b*VR-P=Q@(Tu5V>k zN&L+6NU@IDQY%U6#SsQxNq- z7qnlLr9Gvc$?^2xFkEd%nXriPwLtu2(HQ%nYyG9JT%pWyDrr4qUBXL<;tLd`qw3VP zstYTO0YA|97Ztpj5mk#bYIAX3FlymY!Ch?GpU44cv#tZyE%^~+qUB}serqx)e+ zi)3l1G%!FTl;j*c;fh49Zp}h*fcQqii94~OAO@82wE}-mN%HY%IsiBtc0gd?$z|QA z=E?ds8rXA06zWGa9irt^8Z#E-xq({t*}7Dp=VK9?4ps}vm9+GA!f0Z zYrJ;a3R=w@6mOohrpf2CazxAV4Yl5uiWjX5GBdK+5^mj71{*SPJYGD=DjrjDN)%Is%ETsY zf!9QVG`%QQKjqvH&dXv{v^qbIJhM;@eW6-$R2krX`VL`zu3w{4Vk1v4u`aW9){X7r z2@ZZPeYrq1x_#E=Pe;|Y?on@})c)d|_twCpgr-4ea{5g4q2<(uFcqUnh`_ve6!5Jg zXp=$GXZ<^5oYasdRUa$Ht?R-M%dWby=ZR`quDYxRvx3%Vl?4hcu%16e6UrcIKdOS} z#_pGQq!j37UpbE=^pwl1cEPIlbd&7)Y^JGcs+ysBImE-y^ zgH+3r5V63Z5sG?wjUz-vta@QBBlJIJ5QKq7w!2^~HU6+^qP({=2-*x7KyX$Xv!ogZ zF2Fbv?j%_ZV1>W(g|1FbDq8driwxUI0k>5qSJ-0nT=J^HRp1Wzi(0_J$a{*u^z$S< zKAS#+8_0a^_1=A4W=JEx=;QBHppB)>tBYl+Ym@`VcI;eYZB$~!X?n`edrMlp z6hWGlHi&FKk2RK(=95D}j;Q=t_Q+49rxQd)+W|eTB!>vPTuNu+Cx#z%B)C^!kPHD6 zn?uS2Td6vq`&hidhcw@xpo7|wWQ33gub%<^8N>pdT>`!08N~?S$$pv6@RGwW7UZXh z7k^`Qp9u-~ODc@XYszSPQq(N>M~D^WXj%~KbUoW=nkIcmiHCM+pmQ}B8-*tFhLi?w zun{Jptz<4Di#*Pp)y@|6yqHUzLSugZFJpYydE@&93oB>(&;$E+YnPjx?U!0LWkG|_f?Jvs1q4|g z_(8{8rc&Sif}2z7iT#2h@vNTyS`lSFh{dQGKcMN;b?jAzAjatA&WXQBFdHQDM)xNtfP&V2? zNgRW@w}VVfblA%AowX7(*O_dD?eg=3g9eZG=9stP-;+Z{Sw zM{era(Rvwv_9s2#XX*Toab$t}`E6d{3mb9=!6zG<{RSaNH~_2okb>${+7J8Okjy%$ zAR1x5E;b0^IQNwe&H1<{NobG70TJfqo0yER&kxj2)>p0w+uPs0JDAWCZ^O1rPru^7 zLiU|LB%h5CTTM|Je-5I`=6|R4%6mfkIB&h%SAb99G3^NQsoPp0h*r^ioROEmCR9II zyjiVK-SPv~@w$7(TZx2?z1$9gt^O}(Q9PRkKZuP%=OL0a&q9`HvW_hsFD5jW&3yV5 zh0%=8=to;@2)ggdNHj4COC=N}_pS6{Quitgymj(=@J--qk(vHOiA(FSds;oA4l#qM z>b)TKF+iPPW;&=-^ip=Z`W`SkYt3Mgy@5cmpOSHtevhkhVP{a(&p$RW+(Lq<7B6YA zpCLX_?NV)^0iVe0M#OF9`*G3zzu;q)+4$HjRx=U>7h!74`HEJO9b5{ zg`CGnmOOSlq*HrnSv0elYGEDWZt(8%??;sNIi}}-PKsB&EWsy*^>);-2S04LJs#H> zDR|z35QIb68}!l%2L*!@GMlyvm1}g0VyF~Vb-0j*vKJG7CdrtX^n`FaXT03=98XUp zbD|W^BcAu%Z@X|}*K19qp4_pw*z>BppV@D$4n&$&fB_ zd~wDK5h<4LTKKubOOn_AX$G2+2RLIJzCJ=>2?v+j_d&4+boeX84?#(hn&Ai3W3Sg&`1vHM zx;6}hv4^jHQN6!lSFDozp0Jn)h=x_yoR9H$WAhdH2IdTC_BWSUinkB0RkJI7Aqq9u z=LLltp&A^V5SS;A*K~-Bii|Hl5SU$D7UmNe=TEw~sp*M}gQtpd3VS2&uU!g&_)<;- zfJwaFr0Y_HKeMT^B0y<~#1k{l4uR$($&5A(Xl=dxSq9(Tm*Ro1+j4)Z^MYcMTpLj; z&6Y+iGx`O33kRV@GL{I7L%Qf<9j*kARVk>z@4XP;ZuF{XX-DpdXPx~oud%5$x}7#8 z+@~SKJ82KNt>h9M#<;AFpUXq=8V2W%{r&)L}GKCcctAvHdK=hDr9Nn}=j%B(Q6m7L=tK~Ter z1N0xtPHz@)*b*I?Jf-qgshB_t#W9KqQ<%Vw52|o!!pHUWkUp}1uaY9Gm(Qkvdc?Qh zFRwZ?i8M)F$LGml^Ve1wD?s*9Dv=Rr=6;OV%ZbG~)AwHS-a}^*v9D}f)%NISoU8pH zRN2X>=CTjZZ)~G0u<>8QX3QwMa&t>TT)5w;^}d2yWe9B*fAtf5qgwB@NaT+71S(== zvcVLZ%uB6=soq4)W;IZPe+?MyG9blz+3hu+#hkg3c=5?n%ef+Esp1owRDfO+$h!Dk z;L+TQ$G%45nRsI}B%e{J4g+)K=ABnRmTRp_l>UMEf{^#S+UY%AoYhR``RbPR9{}12U4N?O zyk4_9-`tmtamsCme-Rm*WizrIfco#T6B~61bx0-&Ic5s(Mg?Y+IWVQDW0r%G#ZzAF zuRiD6r4)QEUO`J*-My_x-T73HTD}P@?wLeL0Y}xB3ufkB_K$dg>hd#0bM3@FWl||y zWjkujksPfMEiAC=&dwshS zqZu$xtM<1fQyj7oSuZR1i4gf-@}i(U|JzaEa0)?If$(>+V$cw$PfVjU~h{U?(-g4uGVS{QRe_nfK~KXU`sW zIHVpAE_Ah!ErSwXV9C{HTr&(8fMgq=beexsd^a;*g_ZfFW31ld(FNXEAnLBT#D!kN z^8TFgRQpi9MGSA#Q{%|DHZkdbA|v0Gz3}~_>l3`POY%s^dC?tx@btQC-A=fWJTUOa z^6klv8iKZqC#*~(QR2!xFkK188}G3p#mkX3Kxc7e$E-m=ssD=XR{6{_OjQ-nQZ1d` zb6L*CrO#bp+;1q&Prwu_k}z_F zW)<{9)g2=;T(x+smzQ3DM@hLtM6N7M^;P~iDHI)b(0i~p%T$McMuF#G^}{%7;~3uZ zCoT*dJk@$uXuDH~I!fJ)eA!{mbeEVDYDdKJ^1Z+ltX1xZ zLBdJq73vt1rd>9&@rTaChW(y zYWGARDtVLYEHFl*zQBtj%9d<5MgGw|NBN?s5P{UG5LZ-_EaC-`99tCkpc1PY1UXE1 zm%b5n&M=olzZCnS{Bc7WQChLt@WvBzl16z7weWghgIoqTTtVF6E$CB>HyYIs6Xp%G zi2RH>Sls!of_X{Qw7q?z{M{qCL}I@Bq$O<;=1Z*~+Nf&3O3mj6RB^XvFrxghVOmmi zKuom7Dzi{9>`k`>xMu_W_+=c2n=<5?-U)At2-U41%v{I4F<*JrCqe7N@ojSL8{-Nf zF!*XX}cI~IvA-p4eY~&0CpZ@0RtSVF}@=GL-0*1zz$P60Ih7D>;T?CD>pYg zAi&KEc0bq76Sn07TYJE!qr1Yyo{n}Nzlp&~!FG-muz@4U@da!sS&!vZg8~~-=8RL+ zPrLcUN0iz?3;3$mLjet@IQ9Jo`@Wu_sK4-wLx#zt1CQW-{=vpDzxtW*8u+iMD06g} z8R0ZV-OI1=5$f}4iu#+RZMbeb1t0Erk#-4#1=oJ00HdU`f-RwF^^%#5aD(IQJ-AB% zl%oDJR}8+n2;0;upohD;7a0-3Bsnt_^=r-FVTIJsb~3>gm)%qFFvoi)5%2xWaDFu_ zl}`%G3o-0NhX9tIV}PX%lkh7C#|Y=ZuzKSk`Qu~xH-9!xj{lF`AtI3=!x_~TV3(S| z76OD_8Th8Ug02ieS>q9pmg=q5ZwklX#O*L6*wyLp1riJ{?WaMy#RD()V-drVGGS^s zgZnR##P<~Re>=dH9lw-+H}}6br1+mm?I06FTjx!VTFK0SfO<;t%3@DJ`IE-5vj2V~z7peSz@$S&*-obOj z{KxlCR$Z?D0^IUq!e%C_!R~Sh+yOwx`vt)8KTiL0BO)L$+;MUvxOHkBB!<^wVh~;n zH@aIHjMMjjfbQ^1+ySzr{~L&c9{pFyuvd8DXb!Ak!eJ`##1I85^1nOkop*Wf0C94_ z>>t3RdC5%yHXFu(VNeRdz{$X%Vd6hA?z}E?2LnYAX3zXT(f={4^FNK5Apvusk^J8& zp8rk%zjN#m5a{oeX(bJVpayFRqy0_*NR z{#G|=O8GwtxifgY18C`Z>%=ui`DXxkd*y!}Ai?i|us)gtRxqrOkcIcm|16MTDv$q< ze)?CwVJP6LF)TFrL2c^+ZXYAN&6y(wcz+CDC$I;Y!HEJ~?MV4M*@ENngwlG!6cWFM zIk&-QSPr$8QboREjN+#go*kLdk z6Zl{P2X1?PEBgVLv4K@5Dd94QNw{5h6ig=gI|%>aKMQ;ra|=Q+MgM1J8#v01)nSMA zKJ2i5^iS?!Ye?{R!mYjE6g<1&qA7R*SxL9Dy(tE`jBpw*yGXy48BNo}WzTPA=UL#~ zX?ghX?Gy^|%{07XH?Ltbb}(lu0r>UQ?XIHwkpUSJj1NYfVFuHK(ZJ&Agy7}rTUG5x zI5bY-tqbg&1(wW2`=7nYLB_o<85X+_>|ZWO+=(5dWyub|R4jihf delta 23210 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 T8$G=9f_Op3$oWUH6=nB-yb}(9 diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index d08253c..d050f17 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=permwrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.0-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.0.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=permwrapper/dists diff --git a/gradlew b/gradlew index af6708f..2fe81a7 100644 --- a/gradlew +++ b/gradlew @@ -1,5 +1,21 @@ #!/usr/bin/env sh +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + ############################################################################## ## ## Gradle start up script for UN*X @@ -28,7 +44,7 @@ APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m"' +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" @@ -109,8 +125,8 @@ if $darwin; then GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" fi -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` JAVACMD=`cygpath --unix "$JAVACMD"` @@ -138,19 +154,19 @@ if $cygwin ; then else eval `echo args$i`="\"$arg\"" fi - i=$((i+1)) + i=`expr $i + 1` done case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; esac fi @@ -159,14 +175,9 @@ save () { for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done echo " " } -APP_ARGS=$(save "$@") +APP_ARGS=`save "$@"` # Collect all arguments for the java command, following the shell quoting and substitution rules eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" -# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong -if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then - cd "$(dirname "$0")" -fi - exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index 6d57edc..9618d8d 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,3 +1,19 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + @if "%DEBUG%" == "" @echo off @rem ########################################################################## @rem @@ -14,7 +30,7 @@ set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome diff --git a/settings.gradle b/settings.gradle index b0f4d48..81f96ab 100644 --- a/settings.gradle +++ b/settings.gradle @@ -4,17 +4,19 @@ pluginManagement { repositories { mavenLocal() gradlePluginPortal() - String frcYear = '2019' + String frcYear = '2020' File frcHome if (OperatingSystem.current().isWindows()) { String publicFolder = System.getenv('PUBLIC') if (publicFolder == null) { publicFolder = "C:\\Users\\Public" } - frcHome = new File(publicFolder, "frc${frcYear}") + def homeRoot = new File(publicFolder, "wpilib") + frcHome = new File(homeRoot, frcYear) } else { def userFolder = System.getProperty("user.home") - frcHome = new File(userFolder, "frc${frcYear}") + def homeRoot = new File(userFolder, "wpilib") + frcHome = new File(homeRoot, frcYear) } def frcHomeMaven = new File(frcHome, 'maven') maven { diff --git a/vendordeps/Phoenix.json b/vendordeps/Phoenix.json index d4da1ce..f8d42a4 100644 --- a/vendordeps/Phoenix.json +++ b/vendordeps/Phoenix.json @@ -1,7 +1,7 @@ { "fileName": "Phoenix.json", "name": "CTRE-Phoenix", - "version": "5.12.0", + "version": "5.17.3", "uuid": "ab676553-b602-441f-a38d-f1296eff6537", "mavenUrls": [ "http://devsite.ctr-electronics.com/maven/release/" @@ -11,19 +11,65 @@ { "groupId": "com.ctre.phoenix", "artifactId": "api-java", - "version": "5.12.0" + "version": "5.17.3" }, { "groupId": "com.ctre.phoenix", "artifactId": "wpiapi-java", - "version": "5.12.0" + "version": "5.17.3" } ], "jniDependencies": [ { "groupId": "com.ctre.phoenix", "artifactId": "cci", - "version": "5.12.0", + "version": "5.17.3", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "diagnostics", + "version": "5.17.3", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "canutils", + "version": "5.17.3", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "platform-stub", + "version": "5.17.3", + "isJar": false, + "skipInvalidPlatforms": true, + "validPlatforms": [ + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "core", + "version": "5.17.3", "isJar": false, "skipInvalidPlatforms": true, "validPlatforms": [ @@ -37,7 +83,7 @@ { "groupId": "com.ctre.phoenix", "artifactId": "wpiapi-cpp", - "version": "5.12.0", + "version": "5.17.3", "libName": "CTRE_Phoenix_WPI", "headerClassifier": "headers", "sharedLibrary": false, @@ -51,7 +97,7 @@ { "groupId": "com.ctre.phoenix", "artifactId": "api-cpp", - "version": "5.12.0", + "version": "5.17.3", "libName": "CTRE_Phoenix", "headerClassifier": "headers", "sharedLibrary": false, @@ -65,7 +111,7 @@ { "groupId": "com.ctre.phoenix", "artifactId": "cci", - "version": "5.12.0", + "version": "5.17.3", "libName": "CTRE_PhoenixCCI", "headerClassifier": "headers", "sharedLibrary": false, @@ -76,12 +122,59 @@ "linuxx86-64" ] }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "diagnostics", + "version": "5.17.3", + "libName": "CTRE_PhoenixDiagnostics", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "canutils", + "version": "5.17.3", + "libName": "CTRE_PhoenixCanutils", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64" + ] + }, + { + "groupId": "com.ctre.phoenix", + "artifactId": "platform-stub", + "version": "5.17.3", + "libName": "CTRE_PhoenixPlatform", + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "windowsx86-64", + "linuxx86-64" + ] + }, { "groupId": "com.ctre.phoenix", "artifactId": "core", - "version": "5.12.0", + "version": "5.17.3", "libName": "CTRE_PhoenixCore", - "headerClassifier": "headers" + "headerClassifier": "headers", + "sharedLibrary": false, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "linuxathena", + "windowsx86-64", + "linuxx86-64" + ] } ] } \ No newline at end of file diff --git a/vendordeps/WPILibOldCommands.json b/vendordeps/WPILibOldCommands.json new file mode 100644 index 0000000..7bdad21 --- /dev/null +++ b/vendordeps/WPILibOldCommands.json @@ -0,0 +1,37 @@ +{ + "fileName": "WPILibOldCommands.json", + "name": "WPILib-Old-Commands", + "version": "2020.0.0", + "uuid": "b066afc2-5c18-43c4-b758-43381fcb275e", + "mavenUrls": [], + "jsonUrl": "", + "javaDependencies": [ + { + "groupId": "edu.wpi.first.wpilibOldCommands", + "artifactId": "wpilibOldCommands-java", + "version": "wpilib" + } + ], + "jniDependencies": [], + "cppDependencies": [ + { + "groupId": "edu.wpi.first.wpilibOldCommands", + "artifactId": "wpilibOldCommands-cpp", + "version": "wpilib", + "libName": "wpilibOldCommands", + "headerClassifier": "headers", + "sourcesClassifier": "sources", + "sharedLibrary": true, + "skipInvalidPlatforms": true, + "binaryPlatforms": [ + "linuxathena", + "linuxraspbian", + "linuxaarch64bionic", + "windowsx86-64", + "windowsx86", + "linuxx86-64", + "osxx86-64" + ] + } + ] +}