diff --git a/_posts/2022-03-24-jump-1.0.md b/_posts/2022-03-24-jump-1.0.md new file mode 100644 index 0000000..8a49ad0 --- /dev/null +++ b/_posts/2022-03-24-jump-1.0.md @@ -0,0 +1,432 @@ +--- +layout: post +title: "JuMP 1.0.0 is released" +date: 2022-03-24 +categories: [releases] +permalink: /blog/1.0.0-release/ +--- + +_Authors: Miles Lubin, Oscar Dowson, Iain Dunning, Joaquim Dias Garcia, Joey Huchette, and BenoƮt Legat._ + +We are happy to announce the release of JuMP 1.0! + +Nearly 10 years in the making, the release of JuMP 1.0 represents a major +milestone in the history of JuMP. It also represents a stable platform from +which we can continue to build new and exciting features for a long time into +the future. + +In this post we explain what "going 1.0" means for us now and what it will mean +for the future. + +If it's been a while since you tried JuMP, read our [release notes](https://jump.dev/JuMP.jl/stable/release_notes/) +to review some recently added features. We've also put a lot of effort into +revising our [documentation](https://jump.dev/JuMP.jl/stable/), and there are a +range of [getting started tutorials](https://jump.dev/JuMP.jl/stable/tutorials/getting_started/introduction/) +for new users. + +## What is JuMP? + +JuMP is a modeling language and collection of supporting packages for +[mathematical optimization](https://en.wikipedia.org/wiki/Mathematical_optimization) +problems in [Julia](https://julialang.org). + +JuMP makes it easy to formulate and solve a range of problem classes, including +linear programs, integer programs, conic programs, semidefinite programs, and +constrained nonlinear programs. + +JuMP is one of the [10 most popular Julia packages](https://juliahub.com/ui/Packages), +and it has tens of thousands of users in countries worldwide, with over 50 +thousand downloads in the last six months. + +JuMP consists of two main Julia packages, [JuMP.jl](https://github.com/jump-dev/JuMP.jl) +and [MathOptInterface.jl](https://github.com/jump-dev/MathOptInterface.jl), +along with a plethora of supporting packages which interface MathOptInterface.jl +to external solvers, use JuMP to solve application specific optimization problems, +or extend JuMP to new problem domains. + +JuMP-dev, the annual user conference, has dozens of contributed talks, and there +are over 250 Julia packages that depend on JuMP and MathOptInterface for things +such as +[power systems modeling](https://github.com/lanl-ansi/PowerModels.jl), +[exa-scale metabolic modeling](https://github.com/LCSB-BioCore/COBREXA.jl), +[convex programming](https://github.com/jump-dev/Convex.jl) and much more. + +People use JuMP to [route school buses](https://www.the74million.org/article/building-a-smarter-and-cheaper-school-bus-system-how-a-boston-mit-partnership-led-to-new-routes-that-are-20-more-efficient-use-400-fewer-buses-save-5-million/), +[schedule trains](https://www.sciencedirect.com/science/article/abs/pii/S0191261516304830), +[plan power grid expansion](https://juliacomputing.com/case-studies/psr/), and +[optimize organic milk production](https://www.youtube.com/watch?v=cG8edieOlug&list=PLP8iPy9hna6Rf8_oh9oR2bNeBO-Rw8pzc&index=13). + +## A brief history of JuMP + +* 09 Oct 2012 - First [commit](https://github.com/jump-dev/JuMP.jl/commit/688b732c13abf7182e438ca22b0b00890a08be63) to JuMP.jl repo +* 24 Oct 2013 - [JuMP 0.1.0](https://jump.dev/JuMP.jl/stable/release_notes/#Version-0.1.0-(October-3,-2013)) - First public release +* 15 Dec 2013 - [JuMP 0.2.0](https://jump.dev/JuMP.jl/stable/release_notes/#Version-0.2.0-(December-15,-2013)) - First support for solver callbacks +* 02 May 2014 - [JuMP 0.5.0](https://jump.dev/JuMP.jl/stable/release_notes/#Version-0.5.0-(May-2,-2014)) - First support for nonlinear optimization +* 16 Mar 2015 - First JuMP paper published: [Computing in Operations Research Using Julia](https://pubsonline.informs.org/doi/abs/10.1287/ijoc.2014.0623?journalCode=ijoc) +* 26 Jun 2015 - First [JuMP presentation in JuliaCon 2015](https://youtu.be/7LNeR299q88) +* 31 Aug 2015 - [JuMP 0.10.0](https://jump.dev/JuMP.jl/stable/release_notes/#Version-0.10.0-(August-31,-2015)) - First support for semidefinite optimization +* 15 Dec 2016 - [INFORMS Computing Society (ICS) Prize](https://connect.informs.org/computing/awards/ics-prize) (290 stars) +* 05 May 2017 - Second JuMP paper published: [JuMP: A Modeling Language for Mathematical Optimization](https://epubs.siam.org/doi/abs/10.1137/15M1020575?journalCode=siread) +* 12 Jun 2017 - [First JuMP-dev workshop](/meetings/mit2017/) in Cambridge, USA +* 27 Jun 2018 - [Second JuMP-dev workshop](/meetings/bordeaux2018/) in Bordeaux, France +* 06 Aug 2018 - [JuMP joins NumFOCUS as a sponsored project](https://numfocus.org/blog/optimization-modeling-language-jump-joins-numfocus-sponsored-projects) +* 15 Feb 2019 - [JuMP 0.19.0](https://jump.dev/JuMP.jl/stable/release_notes/#Version-0.19.0-(February-15,-2019)) - Migration from [MathProgBase](https://github.com/JuliaOpt/MathProgBase.jl) to [MathOptInterface](https://github.com/jump-dev/MathOptInterface.jl) +* 12 Mar 2019 - [Third JuMP-dev workshop](/meetings/santiago2019/) in Santiago, Chile +* 23 Jan 2020 - First 1000 stars in the JuMP.jl repository on GitHub +* 21 Oct 2020 - [Governance structure formalized](/pages/governance/) +* 22 Feb 2021 - [NumFOCUS signs agreement with MIT provide ongoing maintenance and support](/announcements/2021/02/22/agreement/) +* 23 Jul 2021 - JuMP wins the [Beale--Orchard-Hays prize](http://www.mathopt.org/?nav=boh_2021) from the Mathematical Optimization Society +* 28 Jul 2021 - [Fourth JuMP-dev workshop](/meetings/juliacon2021/) +* 22 Oct 2021 - Third JuMP paper published: [MathOptInterface: a data structure for mathematical optimization problems](https://pubsonline.informs.org/doi/10.1287/ijoc.2021.1067) +* 21 Feb 2022 - [NumFOCUS signs agreement with LANL to improve nonlinear support](/announcements/2021/02/22/agreement/) + +## Why 1.0 and how will future versions work? + +The 1.0 release marks the completion of the [JuMP 1.0 roadmap](https://jump.dev/JuMP.jl/v0.22/developers/roadmap/#JuMP-1.0) +and the transition to semantic versioning. + +In short, semantic versioned packages have a version comprised of three numbers: +MAJOR.MINOR.PATCH. Given a version number MAJOR.MINOR.PATCH: + * the MAJOR version is incremented for incompatible API changes + * the MINOR version is incremented when new backwards compatibile functionality + is added + * the PATCH version is incremented for bug fixes. + +By releasing JuMP 1.0.0, the core contributors are ensuring that all code you +write using a 1.x.y release of JuMP will continue to work with all future MINOR +and PATCH releases, until we make a new MAJOR release. + +JuMP follows the [ColPrac guide](http://colprac.sciml.ai/#guidance-on-package-releases) +for deciding how to version each release. + +## JuMP and Julia compatibility + +The latest release of JuMP will always support the long-term support and stable +[releases of Julia](https://julialang.org/blog/2019/08/release-process/#long_term_support). + +When the long-term support release is changed, JuMP's minimum required version +of Julia will be updated and a new minor release will be tagged. + +## Next steps + +JuMP 1.0 is not an end goal. We have big plans for the future! To get involved: + + * Read our [roadmap](https://jump.dev/JuMP.jl/stable/developers/roadmap/) + * Join the [community forum](https://discourse.julialang.org/c/domain/opt/13) + * Join the [developer chatroom](https://gitter.im/JuliaOpt/JuMP-dev) + +## Thank you + +A huge number of people have contributed to packages in the JuMP-dev GitHub +repositories over the last 10 years. In order of the number of pull requests, we +thank: + * [@odow](https://github.com/odow) + * [@blegat](https://github.com/blegat) + * [@mlubin](https://github.com/mlubin) + * [@joehuchette](https://github.com/joehuchette) + * [@joaquimg](https://github.com/joaquimg) + * [@IainNZ](https://github.com/IainNZ) + * [@ericphanson](https://github.com/ericphanson) + * [@matbesancon](https://github.com/matbesancon) + * [@guilhermebodin](https://github.com/guilhermebodin) + * [@frapac](https://github.com/frapac) + * [@dourouc05](https://github.com/dourouc05) + * [@tkelman](https://github.com/tkelman) + * [@chriscoey](https://github.com/chriscoey) + * [@akshay326](https://github.com/akshay326) + * [@kalmarek](https://github.com/kalmarek) + * [@yeesian](https://github.com/yeesian) + * [@IssamT](https://github.com/IssamT) + * [@tkoolen](https://github.com/tkoolen) + * [@henriquebecker91](https://github.com/henriquebecker91) + * [@ararslan](https://github.com/ararslan) + * [@rdeits](https://github.com/rdeits) + * [@JackDunnNZ](https://github.com/JackDunnNZ) + * [@ccoffrin](https://github.com/ccoffrin) + * [@Ayush-iitkgp](https://github.com/Ayush-iitkgp) + * [@juan-pablo-vielma](https://github.com/juan-pablo-vielma) + * [@rschwarz](https://github.com/rschwarz) + * [@barpit20](https://github.com/barpit20) + * [@jd-lara](https://github.com/jd-lara) + * [@karanveerm](https://github.com/karanveerm) + * [@madeleineudell](https://github.com/madeleineudell) + * [@rafabench](https://github.com/rafabench) + * [@staticfloat](https://github.com/staticfloat) + * [@ExpandingMan](https://github.com/ExpandingMan) + * [@metab0t](https://github.com/metab0t) + * [@mtanneau](https://github.com/mtanneau) + * [@yashvardhan747](https://github.com/yashvardhan747) + * [@adamferreira](https://github.com/adamferreira) + * [@Peiffap](https://github.com/Peiffap) + * [@amontoison](https://github.com/amontoison) + * [@bodono](https://github.com/bodono) + * [@ndinsmore](https://github.com/ndinsmore) + * [@dpo](https://github.com/dpo) + * [@kdheepak](https://github.com/kdheepak) + * [@leotac](https://github.com/leotac) + * [@lkapelevich](https://github.com/lkapelevich) + * [@mohamed82008](https://github.com/mohamed82008) + * [@remi-garcia](https://github.com/remi-garcia) + * [@shadiakiki1986](https://github.com/shadiakiki1986) + * [@yuyichao](https://github.com/yuyichao) + * [@Wikunia](https://github.com/Wikunia) + * [@abelsiqueira](https://github.com/abelsiqueira) + * [@caioluke](https://github.com/caioluke) + * [@chkwon](https://github.com/chkwon) + * [@cossio](https://github.com/cossio) + * [@ranjanan](https://github.com/ranjanan) + * [@tweisser](https://github.com/tweisser) + * [@ulfworsoe](https://github.com/ulfworsoe) + * [@hellemo](https://github.com/hellemo) + * [@jd-foster](https://github.com/jd-foster) + * [@vfegger](https://github.com/vfegger) + * [@vitornesello](https://github.com/vitornesello) + * [@AtsushiSakai](https://github.com/AtsushiSakai) + * [@GunnarFarneback](https://github.com/GunnarFarneback) + * [@KristofferC](https://github.com/KristofferC) + * [@PaulSoderlind](https://github.com/PaulSoderlind) + * [@abhijithch](https://github.com/abhijithch) + * [@carlobaldassi](https://github.com/carlobaldassi) + * [@emreyamangil](https://github.com/emreyamangil) + * [@mforets](https://github.com/mforets) + * [@pitmonticone](https://github.com/pitmonticone) + * [@pulsipher](https://github.com/pulsipher) + * [@r-barnes](https://github.com/r-barnes) + * [@rtwalker](https://github.com/rtwalker) + * [@tomasfmg](https://github.com/tomasfmg) + * [@EdvinAblad](https://github.com/EdvinAblad) + * [@anriseth](https://github.com/anriseth) + * [@chengg04](https://github.com/chengg04) + * [@coroa](https://github.com/coroa) + * [@freemin7](https://github.com/freemin7) + * [@iamed2](https://github.com/iamed2) + * [@jac0320](https://github.com/jac0320) + * [@jlepird](https://github.com/jlepird) + * [@kibaekkim](https://github.com/kibaekkim) + * [@madanim](https://github.com/madanim) + * [@migarstka](https://github.com/migarstka) + * [@timholy](https://github.com/timholy) + * [@JinraeKim](https://github.com/JinraeKim) + * [@Thuener](https://github.com/Thuener) + * [@bhalonen](https://github.com/bhalonen) + * [@bmetherall](https://github.com/bmetherall) + * [@brilhana](https://github.com/brilhana) + * [@cdeil](https://github.com/cdeil) + * [@davidanthoff](https://github.com/davidanthoff) + * [@dstahlke](https://github.com/dstahlke) + * [@edljk](https://github.com/edljk) + * [@fa-bien](https://github.com/fa-bien) + * [@ferrolho](https://github.com/ferrolho) + * [@guimarqu](https://github.com/guimarqu) + * [@jcheyns](https://github.com/jcheyns) + * [@jrevels](https://github.com/jrevels) + * [@martinbiel](https://github.com/martinbiel) + * [@mewilhel](https://github.com/mewilhel) + * [@mfalt](https://github.com/mfalt) + * [@nan2ge1](https://github.com/nan2ge1) + * [@omus](https://github.com/omus) + * [@philipithomas](https://github.com/philipithomas) + * [@simonbowly](https://github.com/simonbowly) + * [@tasseff](https://github.com/tasseff) + * [@Crghilardi](https://github.com/Crghilardi) + * [@EQt](https://github.com/EQt) + * [@GillesBareilles](https://github.com/GillesBareilles) + * [@GregPlowman](https://github.com/GregPlowman) + * [@Kelvyn88](https://github.com/Kelvyn88) + * [@MatthewStuber](https://github.com/MatthewStuber) + * [@Ochibobo](https://github.com/Ochibobo) + * [@Shuvomoy](https://github.com/Shuvomoy) + * [@ViralBShah](https://github.com/ViralBShah) + * [@alessandroSSJ](https://github.com/alessandroSSJ) + * [@andrewrosemberg](https://github.com/andrewrosemberg) + * [@antonhinneck](https://github.com/antonhinneck) + * [@arnavs](https://github.com/arnavs) + * [@colinfang](https://github.com/colinfang) + * [@cormullion](https://github.com/cormullion) + * [@daschw](https://github.com/daschw) + * [@daviddelaat](https://github.com/daviddelaat) + * [@davidlizeng](https://github.com/davidlizeng) + * [@egbuck](https://github.com/egbuck) + * [@englhardt](https://github.com/englhardt) + * [@gdowdy3](https://github.com/gdowdy3) + * [@gragusa](https://github.com/gragusa) + * [@gsoleilhac](https://github.com/gsoleilhac) + * [@guberger](https://github.com/guberger) + * [@hdavid16](https://github.com/hdavid16) + * [@huckl3b3rry87](https://github.com/huckl3b3rry87) + * [@ianfiske](https://github.com/ianfiske) + * [@iaravena](https://github.com/iaravena) + * [@jmpohl](https://github.com/jmpohl) + * [@joeltay](https://github.com/joeltay) + * [@ketitalabs](https://github.com/ketitalabs) + * [@kreibaum](https://github.com/kreibaum) + * [@marcusps](https://github.com/marcusps) + * [@mthelm85](https://github.com/mthelm85) + * [@peterwittek](https://github.com/peterwittek) + * [@ranocha](https://github.com/ranocha) + * [@raphaelsaavedra](https://github.com/raphaelsaavedra) + * [@riccardomurri](https://github.com/riccardomurri) + * [@rofinn](https://github.com/rofinn) + * [@shoibalc](https://github.com/shoibalc) + * [@sivapvarma](https://github.com/sivapvarma) + * [@sshin23](https://github.com/sshin23) + * [@tummykung](https://github.com/tummykung) + * [@vernwalrahul](https://github.com/vernwalrahul) + * [@votroto](https://github.com/votroto) + * [@vrngupta53](https://github.com/vrngupta53) + * [@vtjeng](https://github.com/vtjeng) + * [@zlatanvasovic](https://github.com/zlatanvasovic) + * [@AaronMoat](https://github.com/AaronMoat) + * [@BenChung](https://github.com/BenChung) + * [@Carl-Ning-Yan](https://github.com/Carl-Ning-Yan) + * [@CarloLucibello](https://github.com/CarloLucibello) + * [@ChrisRackauckas](https://github.com/ChrisRackauckas) + * [@DilumAluthge](https://github.com/DilumAluthge) + * [@Dr-G](https://github.com/Dr-G) + * [@DrChainsaw](https://github.com/DrChainsaw) + * [@Dx-Wang](https://github.com/Dx-Wang) + * [@Gbrunieau](https://github.com/Gbrunieau) + * [@IlyaOrson](https://github.com/IlyaOrson) + * [@JiazhengZhu](https://github.com/JiazhengZhu) + * [@Ken-B](https://github.com/Ken-B) + * [@Laurae2](https://github.com/Laurae2) + * [@LefterisM](https://github.com/LefterisM) + * [@MarcMush](https://github.com/MarcMush) + * [@MartinBonde](https://github.com/MartinBonde) + * [@MassimoDeMauri](https://github.com/MassimoDeMauri) + * [@MaximilianJHuber](https://github.com/MaximilianJHuber) + * [@MichaelHatherly](https://github.com/MichaelHatherly) + * [@NLaws](https://github.com/NLaws) + * [@Non-Contradiction](https://github.com/Non-Contradiction) + * [@Ontahm](https://github.com/Ontahm) + * [@Pramodh-G](https://github.com/Pramodh-G) + * [@StefanKarpinski](https://github.com/StefanKarpinski) + * [@Vgrunert](https://github.com/Vgrunert) + * [@Wimmerer](https://github.com/Wimmerer) + * [@a-torgovitsky](https://github.com/a-torgovitsky) + * [@adelarue](https://github.com/adelarue) + * [@ahwillia](https://github.com/ahwillia) + * [@alyst](https://github.com/alyst) + * [@amburosesekar](https://github.com/amburosesekar) + * [@amilajack](https://github.com/amilajack) + * [@andrioni](https://github.com/andrioni) + * [@aritrasep](https://github.com/aritrasep) + * [@aspicer](https://github.com/aspicer) + * [@baggepinnen](https://github.com/baggepinnen) + * [@bbrunaud](https://github.com/bbrunaud) + * [@bkamins](https://github.com/bkamins) + * [@blakejohnson](https://github.com/blakejohnson) + * [@brozjak2](https://github.com/brozjak2) + * [@c-jg](https://github.com/c-jg) + * [@cmaes](https://github.com/cmaes) + * [@colbec](https://github.com/colbec) + * [@coreysharris](https://github.com/coreysharris) + * [@czlee](https://github.com/czlee) + * [@dafrick](https://github.com/dafrick) + * [@danielschermer](https://github.com/danielschermer) + * [@danspielman](https://github.com/danspielman) + * [@deltova](https://github.com/deltova) + * [@djunglas](https://github.com/djunglas) + * [@doorisajar](https://github.com/doorisajar) + * [@dovahcrow](https://github.com/dovahcrow) + * [@dressel](https://github.com/dressel) + * [@dschein](https://github.com/dschein) + * [@fingolfin](https://github.com/fingolfin) + * [@frederikgeth](https://github.com/frederikgeth) + * [@freeboson](https://github.com/freeboson) + * [@galabovaa](https://github.com/galabovaa) + * [@gitter-badger](https://github.com/gitter-badger) + * [@gliuzzi](https://github.com/gliuzzi) + * [@gnadt](https://github.com/gnadt) + * [@goretkin](https://github.com/goretkin) + * [@goulart-paul](https://github.com/goulart-paul) + * [@gpinu1](https://github.com/gpinu1) + * [@haoxiangyang89](https://github.com/haoxiangyang89) + * [@harshangrjn](https://github.com/harshangrjn) + * [@hsnamkoong](https://github.com/hsnamkoong) + * [@hurak](https://github.com/hurak) + * [@ignace-computing](https://github.com/ignace-computing) + * [@igormcoelho](https://github.com/igormcoelho) + * [@ilancoulon](https://github.com/ilancoulon) + * [@innerlee](https://github.com/innerlee) + * [@jayvn](https://github.com/jayvn) + * [@jeanpauphilet](https://github.com/jeanpauphilet) + * [@jgoldfar](https://github.com/jgoldfar) + * [@jiahao](https://github.com/jiahao) + * [@jiweiqi](https://github.com/jiweiqi) + * [@jlwether](https://github.com/jlwether) + * [@joerenes](https://github.com/joerenes) + * [@johnzigla](https://github.com/johnzigla) + * [@jonas-schulze](https://github.com/jonas-schulze) + * [@jonmgonzales](https://github.com/jonmgonzales) + * [@joseortiz3](https://github.com/joseortiz3) + * [@joshualeond](https://github.com/joshualeond) + * [@junglegobs](https://github.com/junglegobs) + * [@jw3126](https://github.com/jw3126) + * [@jwscook](https://github.com/jwscook) + * [@jwveysey](https://github.com/jwveysey) + * [@jz2903](https://github.com/jz2903) + * [@kaarthiksundar](https://github.com/kaarthiksundar) + * [@kiwisensei](https://github.com/kiwisensei) + * [@kmsquire](https://github.com/kmsquire) + * [@ko56](https://github.com/ko56) + * [@kofron](https://github.com/kofron) + * [@larssp](https://github.com/larssp) + * [@laurentbartholdi](https://github.com/laurentbartholdi) + * [@laurentheirendt](https://github.com/laurentheirendt) + * [@leclere](https://github.com/leclere) + * [@lluang](https://github.com/lluang) + * [@loicvh](https://github.com/loicvh) + * [@lrnv](https://github.com/lrnv) + * [@malagbek](https://github.com/malagbek) + * [@martincornejo](https://github.com/martincornejo) + * [@mattmilten](https://github.com/mattmilten) + * [@melonedo](https://github.com/melonedo) + * [@mikerouleau](https://github.com/mikerouleau) + * [@mikolajpp](https://github.com/mikolajpp) + * [@mlhetland](https://github.com/mlhetland) + * [@moehle](https://github.com/moehle) + * [@molet](https://github.com/molet) + * [@mstriebs](https://github.com/mstriebs) + * [@niklasschmitz](https://github.com/niklasschmitz) + * [@nkottary](https://github.com/nkottary) + * [@nodet](https://github.com/nodet) + * [@noilreed](https://github.com/noilreed) + * [@numbermaniac](https://github.com/numbermaniac) + * [@omalled](https://github.com/omalled) + * [@oxinabox](https://github.com/oxinabox) + * [@pedromxavier](https://github.com/pedromxavier) + * [@petershintech](https://github.com/petershintech) + * [@pkofod](https://github.com/pkofod) + * [@qlete](https://github.com/qlete) + * [@ramcha24](https://github.com/ramcha24) + * [@raphasampaio](https://github.com/raphasampaio) + * [@renkekuhlmann](https://github.com/renkekuhlmann) + * [@rocarvaj](https://github.com/rocarvaj) + * [@rohit-mp](https://github.com/rohit-mp) + * [@ryancorywright](https://github.com/ryancorywright) + * [@salazarzen](https://github.com/salazarzen) + * [@schillic](https://github.com/schillic) + * [@sean-lo](https://github.com/sean-lo) + * [@seanemoon](https://github.com/seanemoon) + * [@sebastianangerhausen](https://github.com/sebastianangerhausen) + * [@snitramodranoel](https://github.com/snitramodranoel) + * [@sourabhdalvi](https://github.com/sourabhdalvi) + * [@spockoyno](https://github.com/spockoyno) + * [@stared](https://github.com/stared) + * [@stefanobenati](https://github.com/stefanobenati) + * [@stephentu](https://github.com/stephentu) + * [@sylvainmouret](https://github.com/sylvainmouret) + * [@tamas-borbath](https://github.com/tamas-borbath) + * [@tcveatch](https://github.com/tcveatch) + * [@thomasschiet](https://github.com/thomasschiet) + * [@tmigot](https://github.com/tmigot) + * [@tomerarnon](https://github.com/tomerarnon) + * [@traversaro](https://github.com/traversaro) + * [@trigaut](https://github.com/trigaut) + * [@ven-k](https://github.com/ven-k) + * [@viniciusmotta4](https://github.com/viniciusmotta4) + * [@waldyrious](https://github.com/waldyrious) + * [@willtebbutt](https://github.com/willtebbutt) + * [@xhub](https://github.com/xhub) + * [@yvesx](https://github.com/yvesx)