mirror of
https://github.com/JetBrains/intellij-platform-plugin-template.git
synced 2024-10-27 20:44:05 +00:00
Merge pull request #297 from JetBrains/next
This commit is contained in:
commit
61a1a04ede
52
.github/readme/intellij-platform-plugin-template-dark.svg
vendored
Normal file
52
.github/readme/intellij-platform-plugin-template-dark.svg
vendored
Normal file
@ -0,0 +1,52 @@
|
||||
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="2024" height="305" viewBox="0 0 745.71429 112.5">
|
||||
<defs>
|
||||
<linearGradient id="linear-gradient" x1="21.98732" y1="-879.27899" x2="91.77826" y2="-949.06994" gradientTransform="matrix(1, 0, 0, -1, 0, -853.5)" gradientUnits="userSpaceOnUse">
|
||||
<stop offset="0.15937" stop-color="#3bea62"/>
|
||||
<stop offset="0.5404" stop-color="#3c99cc"/>
|
||||
<stop offset="0.93739" stop-color="#6b57ff"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<g fill="#fff">
|
||||
<g>
|
||||
<path d="M112.7808,40.71086l1.61129-1.40324c1.21437,1.86213,2.45824,2.864,4.5225,2.864,2.23248,0,3.8718-1.63342,3.8718-4.81172V23.93107h2.262V37.33336a7.2901,7.2901,0,0,1-1.809,5.26766,6.02144,6.02144,0,0,1-4.35283,1.66145A6.76237,6.76237,0,0,1,112.7808,40.71086Z"/>
|
||||
<path d="M128.35213,36.61625v-.05607c0-4.26724,2.9688-7.70377,7.01027-7.70377,4.32479,0,6.81254,3.49259,6.81254,7.81739a5.86042,5.86042,0,0,1-.028.71564H130.55805a5.13042,5.13042,0,0,0,5.14371,5.01091,6.01592,6.01592,0,0,0,4.60808-2.08936l1.356,1.2306a7.50169,7.50169,0,0,1-6.02019,2.777C131.63224,44.31854,128.35213,41.19779,128.35213,36.61625Zm11.61836-.85877c-.22723-2.69137-1.75293-5.04042-4.66416-5.04042-2.54383,0-4.46645,2.14838-4.74828,5.04042Z"/>
|
||||
<path d="M146.04527,40.05277V31.1184H144.009V29.1707h2.03625V24.70425h2.17642V29.1707h4.63465v1.9477h-4.63465v8.64812a2.17465,2.17465,0,0,0,2.45824,2.46267,4.53615,4.53615,0,0,0,2.12035-.51644v1.89016a5.4128,5.4128,0,0,1-2.62941.63C147.82624,44.233,146.04527,43.05844,146.04527,40.05277Z"/>
|
||||
<path d="M156.35926,23.93107h8.42384a7.21772,7.21772,0,0,1,5.17323,1.77509,4.48482,4.48482,0,0,1,1.27191,3.20781V28.97a4.8351,4.8351,0,0,1-3.13846,4.63909c2.34611.71711,4.24068,2.09083,4.24068,4.83975v.05755c0,3.43652-2.85515,5.46981-7.17995,5.46981h-8.79125Zm12.607,5.29865c0-1.97722-1.55374-3.26536-4.38087-3.26536h-6.02018v6.90107h5.85051c2.68547,0,4.55054-1.2306,4.55054-3.57965Zm-4.1551,5.63949h-6.24595v7.07372h6.64139c2.99681,0,4.86189-1.34569,4.86189-3.57965v-.05754C170.06846,36.12932,168.25945,34.86921,164.81113,34.86921Z"/>
|
||||
<path d="M175.69173,29.1707h2.1764v3.8659a6.26083,6.26083,0,0,1,5.9641-4.12264v2.37561H183.664c-3.19453,0-5.7959,2.31954-5.7959,6.78746v5.89919h-2.17642Z"/>
|
||||
<path d="M184.62166,39.67946v-.05607c0-3.12223,2.54383-4.78221,6.24742-4.78221a15.34686,15.34686,0,0,1,4.49448.63007v-.51646c0-2.66186-1.61129-4.03706-4.35283-4.03706a10.05314,10.05314,0,0,0-4.43842,1.08894l-.64923-1.80457a11.92286,11.92286,0,0,1,5.3134-1.23208,6.36624,6.36624,0,0,1,4.72023,1.63342,5.88893,5.88893,0,0,1,1.49767,4.32332v9.04946h-2.09082v-2.234a6.378,6.378,0,0,1-5.28684,2.54825C187.36469,44.29051,184.62166,42.71611,184.62166,39.67946Zm10.76995-1.145V37.10318a15.03578,15.03578,0,0,0-4.29676-.63006c-2.74154,0-4.26724,1.20255-4.26724,3.06469v.05607c0,1.86212,1.69539,2.94959,3.67408,2.94959C193.18715,42.54348,195.39161,40.8835,195.39161,38.53446Z"/>
|
||||
<path d="M201.43834,23.50169h2.48775v2.43463h-2.48775Zm.14165,5.669h2.17641V43.97622H201.58Z"/>
|
||||
<path d="M208.10629,29.1707h2.17642v2.57776a5.52394,5.52394,0,0,1,5.00354-2.89205c3.53392,0,5.5967,2.40512,5.5967,5.92722v9.19258h-2.17642V35.3281c0-2.74892-1.46965-4.46644-4.0415-4.46644a4.33064,4.33064,0,0,0-4.38234,4.63908v8.47548h-2.17643Z"/>
|
||||
<path d="M223.595,42.08458l1.10223-1.57291a8.48365,8.48365,0,0,0,5.05962,1.88868c1.75147,0,3.02485-.91631,3.02485-2.34758v-.05754c0-1.48882-1.7249-2.06132-3.64753-2.60579-2.28857-.65809-4.83237-1.46078-4.83237-4.18167V33.1517c0-2.54825,2.09084-4.23774,4.974-4.23774a9.88682,9.88682,0,0,1,5.25732,1.63194l-.9886,1.66146a8.188,8.188,0,0,0-4.32478-1.43277c-1.72491,0-2.82714.91631-2.82714,2.1469v.059c0,1.40175,1.809,1.94625,3.75965,2.54677,2.26051.6876,4.69219,1.57587,4.69219,4.23921V39.824c0,2.80648-2.29,4.43841-5.20126,4.43841A9.96351,9.96351,0,0,1,223.595,42.08458Z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M115.968,52.15661h3.9692V87.79078H115.968Z"/>
|
||||
<path d="M124.30768,81.986l2.864-2.49366c2.16019,3.30815,4.37053,5.0906,8.03872,5.0906,3.96772,0,6.8819-2.90089,6.8819-8.5522V52.15661h4.01936v23.824c0,4.17281-1.20551,7.33046-3.2152,9.3667a10.71062,10.71062,0,0,1-7.73622,2.95106A12.0199,12.0199,0,0,1,124.30768,81.986Z"/>
|
||||
<path d="M165.55775,52.15661H178.7195c7.9369,0,13.16177,4.2761,13.16177,11.29964v.10329c0,7.68606-6.33,11.65672-13.81544,11.65672h-8.54039V87.79077h-3.96772ZM178.21636,71.551c5.82837,0,9.64558-3.15617,9.64558-7.83952v-.10181c0-5.0906-3.767-7.73771-9.44342-7.73771h-8.89308V71.551Z"/>
|
||||
<path d="M196.3079,50.62793h3.86886V87.79076H196.3079Z"/>
|
||||
<path d="M204.69779,80.15339v-.10033c0-5.54949,4.521-8.502,11.10342-8.502a27.211,27.211,0,0,1,7.98706,1.11994v-.91631c0-4.73352-2.864-7.177-7.73624-7.177a17.9221,17.9221,0,0,0-7.88821,1.93295l-1.15535-3.20634a21.22123,21.22123,0,0,1,9.4449-2.18822c3.66819,0,6.48056.96648,8.3899,2.90089,1.75885,1.78245,2.66186,4.32627,2.66186,7.68755V87.79076h-3.71689V83.81862A11.32989,11.32989,0,0,1,214.39351,88.35C209.57149,88.35,204.69779,85.5509,204.69779,80.15339Zm19.14065-2.03624V75.57333a26.73167,26.73167,0,0,0-7.63589-1.12139c-4.87369,0-7.58572,2.13951-7.58572,5.44768v.1018c0,3.30963,3.01453,5.24259,6.53071,5.24259,4.77187,0,8.6909-2.95109,8.6909-7.12686Z"/>
|
||||
<path d="M234.3413,80.81591V64.93325h-3.61654V61.47164h3.61654V53.53031h3.86885v7.94133h8.2394v3.46161h-8.2394V80.30686c0,3.20781,1.75884,4.37791,4.37055,4.37791a8.05285,8.05285,0,0,0,3.767-.91631v3.35979a9.6214,9.6214,0,0,1-4.67157,1.11993C237.50632,88.24818,234.3413,86.16177,234.3413,80.81591Z"/>
|
||||
<path d="M252.22922,64.93325h-3.56636v-3.41h3.56636V59.23178c0-3.00271.80416-5.29422,2.26051-6.77123a7.59978,7.59978,0,0,1,5.57753-2.03625,11.59177,11.59177,0,0,1,4.2702.66252v3.40995a12.78069,12.78069,0,0,0-3.76851-.661c-3.01452,0-4.521,1.83261-4.521,5.59965v2.138h8.23938v3.35979h-8.1892V87.79075h-3.86886Z"/>
|
||||
<path d="M264.59124,74.75884v-.10329a13.53974,13.53974,0,1,1,27.07755-.10033v.10034A13.57821,13.57821,0,0,1,278.054,88.40164,13.39652,13.39652,0,0,1,264.59124,74.75884Zm23.10837,0v-.10329c0-5.64982-4.16987-10.28153-9.64558-10.28153-5.6262,0-9.495,4.63171-9.495,10.1812v.10033c0,5.6513,4.1197,10.23284,9.5954,10.23284C283.78058,84.88838,287.69961,80.30685,287.69961,74.75884Z"/>
|
||||
<path d="M296.1441,61.47164H300.013v6.87157c1.90787-4.37644,5.67637-7.53409,10.60023-7.33047v4.22594h-.30249c-5.67637,0-10.29777,4.12264-10.29777,12.064V87.79075h-3.86885Z"/>
|
||||
<path d="M313.98036,61.47164h3.86885v4.42808c1.7072-2.59547,4.01788-4.98731,8.38843-4.98731a8.81582,8.81582,0,0,1,8.33973,5.24257,10.32787,10.32787,0,0,1,9.14388-5.24257c5.9774,0,9.64558,4.07247,9.64558,10.58844v16.2899H349.498V72.41568c0-5.0906-2.51136-7.94133-6.73138-7.94133-3.919,0-7.18438,2.954-7.18438,8.145V87.79076H331.765V72.31535c0-4.93862-2.563-7.841-6.6827-7.841-4.11823,0-7.23307,3.46161-7.23307,8.29841v15.018h-3.86886Z"/>
|
||||
<path d="M372.31491,52.15661h13.16177c7.93544,0,13.16177,4.2761,13.16177,11.29964v.10329c0,7.68606-6.33,11.65672-13.8169,11.65672h-8.5404V87.79077h-3.96624ZM384.97205,71.551c5.82837,0,9.647-3.15617,9.647-7.83952v-.10181c0-5.0906-3.76851-7.73771-9.44344-7.73771h-8.89451V71.551Z"/>
|
||||
<path d="M403.06211,50.62793H406.931V87.79076h-3.86886Z"/>
|
||||
<path d="M413.0131,77.81319V61.47164H416.879V76.84525c0,4.887,2.61464,7.94133,7.18584,7.94133,4.42072,0,7.78494-3.30816,7.78494-8.24677V61.47164h3.81868V87.79077H431.8498v-4.583A9.87131,9.87131,0,0,1,422.95823,88.35C416.67837,88.35,413.0131,84.07389,413.0131,77.81319Z"/>
|
||||
<path d="M441.55,92.37083l1.75885-3.05438a16.446,16.446,0,0,0,9.99824,3.36127c5.72506,0,9.44344-3.20782,9.44344-9.3667V80.205c-2.26054,3.05438-5.427,5.54949-10.1989,5.54949A12.08515,12.08515,0,0,1,440.346,73.43379v-.10034a12.26417,12.26417,0,0,1,22.35433-7.12683v-4.735h3.86886V83.20775c0,4.0725-1.207,7.17848-3.317,9.31652-2.31066,2.34168-5.77523,3.51178-9.89495,3.51178A20.18232,20.18232,0,0,1,441.55,92.37083Zm21.30083-18.98719v-.10182c0-5.396-4.62137-8.9078-9.54379-8.9078a8.64347,8.64347,0,0,0-8.99486,8.85616v.10328a8.84778,8.84778,0,0,0,8.99486,8.95946C458.22945,82.29292,462.85082,78.67785,462.85082,73.38364Z"/>
|
||||
<path d="M472.80183,51.39226h4.42072v4.32627h-4.42072Zm.25082,10.07938h3.86886V87.79076h-3.86886Z"/>
|
||||
<path d="M483.40207,61.47164h3.86885v4.58153a9.81531,9.81531,0,0,1,8.89157-5.14076c6.27986,0,9.94807,4.2761,9.94807,10.53679V87.79075h-3.86885V72.41568c0-4.887-2.61171-7.94133-7.1829-7.94133-4.4709,0-7.78789,3.30963-7.78789,8.24826V87.79078h-3.86885Z"/>
|
||||
<path d="M534.19883,55.872H522.34144V52.15661h27.681V55.872H538.168V87.79078h-3.9692Z"/>
|
||||
<path d="M546.31,74.70719v-.10181c0-7.58425,5.27358-13.693,12.45648-13.693,7.68754,0,12.10826,6.209,12.10826,13.89659a10.352,10.352,0,0,1-.05017,1.2719H550.22611c.55481,5.70147,4.521,8.90929,9.14539,8.90929a10.68587,10.68587,0,0,0,8.18628-3.7154l2.414,2.18822a13.3417,13.3417,0,0,1-10.70058,4.93861C552.13543,88.40163,546.31,82.85215,546.31,74.70719ZM566.95574,73.18c-.40134-4.78516-3.1134-8.95945-8.28958-8.95945-4.521,0-7.93541,3.81868-8.44005,8.95945Z"/>
|
||||
<path d="M575.15085,61.47164h3.86886v4.42808c1.70573-2.59547,4.01639-4.98731,8.38693-4.98731a8.81427,8.81427,0,0,1,8.33971,5.24257,10.33034,10.33034,0,0,1,9.14538-5.24257c5.97592,0,9.64408,4.07247,9.64408,10.58844v16.2899H610.667V72.41568c0-5.0906-2.51136-7.94133-6.73139-7.94133-3.919,0-7.1829,2.954-7.1829,8.145V87.79076H592.934V72.31535c0-4.93862-2.56153-7.841-6.68121-7.841s-7.23307,3.46161-7.23307,8.29841v15.018h-3.86886Z"/>
|
||||
<path d="M620.26974,61.47164h3.86886v5.29422c2.11-3.15617,5.17323-5.85345,9.94513-5.85345,6.22969,0,12.40925,4.98731,12.40925,13.64281v.10033c0,8.60384-6.12939,13.69447-12.40925,13.69447a11.68492,11.68492,0,0,1-9.94513-5.59966V95.93574h-3.86886Zm22.254,13.23555v-.10181c0-6.21053-4.22-10.1812-9.14244-10.1812-4.82207,0-9.39326,4.12265-9.39326,10.131v.10034c0,6.10871,4.57119,10.18119,9.39326,10.18119C638.4041,84.83674,642.52378,81.07117,642.52378,74.70719Z"/>
|
||||
<path d="M651.46846,50.62793h3.86886V87.79076h-3.86886Z"/>
|
||||
<path d="M659.86133,80.15339v-.10033c0-5.54949,4.521-8.502,11.10193-8.502a27.21427,27.21427,0,0,1,7.98853,1.11994v-.91631c0-4.73352-2.86547-7.177-7.73771-7.177a17.93248,17.93248,0,0,0-7.88823,1.93295L662.172,63.30425a21.2147,21.2147,0,0,1,9.44344-2.18822c3.66815,0,6.48056.96648,8.38987,2.90089,1.75884,1.78245,2.66188,4.32627,2.66188,7.68755V87.79076h-3.71539V83.81862a11.33082,11.33082,0,0,1-9.3962,4.53137C664.73352,88.35,659.86133,85.5509,659.86133,80.15339ZM679.002,78.11715V75.57333a26.7344,26.7344,0,0,0-7.63737-1.12139c-4.87224,0-7.58424,2.13951-7.58424,5.44768v.1018c0,3.30963,3.01305,5.24259,6.53073,5.24259,4.77185,0,8.69088-2.95109,8.69088-7.12686Z"/>
|
||||
<path d="M689.5048,80.81591V64.93325h-3.618V61.47164h3.618V53.53031h3.86885v7.94133h8.23945v3.46161h-8.23945V80.30686c0,3.20781,1.75885,4.37791,4.37055,4.37791a8.0669,8.0669,0,0,0,3.76851-.91631v3.35979a9.63752,9.63752,0,0,1-4.67449,1.11993C692.66837,88.24818,689.5048,86.16177,689.5048,80.81591Z"/>
|
||||
<path d="M703.57554,74.70719v-.10181c0-7.58425,5.27358-13.693,12.45648-13.693,7.68754,0,12.10826,6.209,12.10826,13.89659a10.36192,10.36192,0,0,1-.05017,1.2719H707.49162c.55481,5.70147,4.521,8.90929,9.14539,8.90929a10.68594,10.68594,0,0,0,8.18628-3.7154l2.414,2.18822a13.3417,13.3417,0,0,1-10.70058,4.93861C709.40094,88.40163,703.57554,82.85215,703.57554,74.70719ZM724.2212,73.18c-.40134-4.78516-3.1134-8.95945-8.28957-8.95945-4.521,0-7.93542,3.81868-8.44006,8.95945Z"/>
|
||||
</g>
|
||||
</g>
|
||||
<path d="M80.37373,31.871V23.97684H64.21736v7.993H48.20705v-7.993H31.95183V31.871H24.10714V88.08737H48.15763V80.0826a8.00515,8.00515,0,0,1,16.0103,0v8.00477H88.21842V31.871Z" fill="url(#linear-gradient)"/>
|
||||
<rect width="745.71429" height="112.5" fill="none"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 12 KiB |
52
.github/readme/intellij-platform-plugin-template-light.svg
vendored
Normal file
52
.github/readme/intellij-platform-plugin-template-light.svg
vendored
Normal file
@ -0,0 +1,52 @@
|
||||
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="2024" height="305" viewBox="0 0 745.71429 112.5">
|
||||
<defs>
|
||||
<linearGradient id="linear-gradient" x1="21.98732" y1="-879.27899" x2="91.77826" y2="-949.06994" gradientTransform="matrix(1, 0, 0, -1, 0, -853.5)" gradientUnits="userSpaceOnUse">
|
||||
<stop offset="0.15937" stop-color="#3bea62"/>
|
||||
<stop offset="0.5404" stop-color="#3c99cc"/>
|
||||
<stop offset="0.93739" stop-color="#6b57ff"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<g>
|
||||
<g>
|
||||
<g>
|
||||
<path d="M112.7808,40.71086l1.61129-1.40324c1.21437,1.86213,2.45824,2.864,4.5225,2.864,2.23248,0,3.8718-1.63342,3.8718-4.81172V23.93107h2.262V37.33336a7.2901,7.2901,0,0,1-1.809,5.26766,6.02144,6.02144,0,0,1-4.35283,1.66145A6.76237,6.76237,0,0,1,112.7808,40.71086Z"/>
|
||||
<path d="M128.35213,36.61625v-.05607c0-4.26724,2.9688-7.70377,7.01027-7.70377,4.32479,0,6.81254,3.49259,6.81254,7.81739a5.86042,5.86042,0,0,1-.028.71564H130.55805a5.13042,5.13042,0,0,0,5.14371,5.01091,6.01592,6.01592,0,0,0,4.60808-2.08936l1.356,1.2306a7.50169,7.50169,0,0,1-6.02019,2.777C131.63224,44.31854,128.35213,41.19779,128.35213,36.61625Zm11.61836-.85877c-.22723-2.69137-1.75293-5.04042-4.66416-5.04042-2.54383,0-4.46645,2.14838-4.74828,5.04042Z"/>
|
||||
<path d="M146.04527,40.05277V31.1184H144.009V29.1707h2.03625V24.70425h2.17642V29.1707h4.63465v1.9477h-4.63465v8.64812a2.17465,2.17465,0,0,0,2.45824,2.46267,4.53615,4.53615,0,0,0,2.12035-.51644v1.89016a5.4128,5.4128,0,0,1-2.62941.63C147.82624,44.233,146.04527,43.05844,146.04527,40.05277Z"/>
|
||||
<path d="M156.35926,23.93107h8.42384a7.21772,7.21772,0,0,1,5.17323,1.77509,4.48482,4.48482,0,0,1,1.27191,3.20781V28.97a4.8351,4.8351,0,0,1-3.13846,4.63909c2.34611.71711,4.24068,2.09083,4.24068,4.83975v.05755c0,3.43652-2.85515,5.46981-7.17995,5.46981h-8.79125Zm12.607,5.29865c0-1.97722-1.55374-3.26536-4.38087-3.26536h-6.02018v6.90107h5.85051c2.68547,0,4.55054-1.2306,4.55054-3.57965Zm-4.1551,5.63949h-6.24595v7.07372h6.64139c2.99681,0,4.86189-1.34569,4.86189-3.57965v-.05754C170.06846,36.12932,168.25945,34.86921,164.81113,34.86921Z"/>
|
||||
<path d="M175.69173,29.1707h2.1764v3.8659a6.26083,6.26083,0,0,1,5.9641-4.12264v2.37561H183.664c-3.19453,0-5.7959,2.31954-5.7959,6.78746v5.89919h-2.17642Z"/>
|
||||
<path d="M184.62166,39.67946v-.05607c0-3.12223,2.54383-4.78221,6.24742-4.78221a15.34686,15.34686,0,0,1,4.49448.63007v-.51646c0-2.66186-1.61129-4.03706-4.35283-4.03706a10.05314,10.05314,0,0,0-4.43842,1.08894l-.64923-1.80457a11.92286,11.92286,0,0,1,5.3134-1.23208,6.36624,6.36624,0,0,1,4.72023,1.63342,5.88893,5.88893,0,0,1,1.49767,4.32332v9.04946h-2.09082v-2.234a6.378,6.378,0,0,1-5.28684,2.54825C187.36469,44.29051,184.62166,42.71611,184.62166,39.67946Zm10.76995-1.145V37.10318a15.03578,15.03578,0,0,0-4.29676-.63006c-2.74154,0-4.26724,1.20255-4.26724,3.06469v.05607c0,1.86212,1.69539,2.94959,3.67408,2.94959C193.18715,42.54348,195.39161,40.8835,195.39161,38.53446Z"/>
|
||||
<path d="M201.43834,23.50169h2.48775v2.43463h-2.48775Zm.14165,5.669h2.17641V43.97622H201.58Z"/>
|
||||
<path d="M208.10629,29.1707h2.17642v2.57776a5.52394,5.52394,0,0,1,5.00354-2.89205c3.53392,0,5.5967,2.40512,5.5967,5.92722v9.19258h-2.17642V35.3281c0-2.74892-1.46965-4.46644-4.0415-4.46644a4.33064,4.33064,0,0,0-4.38234,4.63908v8.47548h-2.17643Z"/>
|
||||
<path d="M223.595,42.08458l1.10223-1.57291a8.48365,8.48365,0,0,0,5.05962,1.88868c1.75147,0,3.02485-.91631,3.02485-2.34758v-.05754c0-1.48882-1.7249-2.06132-3.64753-2.60579-2.28857-.65809-4.83237-1.46078-4.83237-4.18167V33.1517c0-2.54825,2.09084-4.23774,4.974-4.23774a9.88682,9.88682,0,0,1,5.25732,1.63194l-.9886,1.66146a8.188,8.188,0,0,0-4.32478-1.43277c-1.72491,0-2.82714.91631-2.82714,2.1469v.059c0,1.40175,1.809,1.94625,3.75965,2.54677,2.26051.6876,4.69219,1.57587,4.69219,4.23921V39.824c0,2.80648-2.29,4.43841-5.20126,4.43841A9.96351,9.96351,0,0,1,223.595,42.08458Z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path d="M115.968,52.15661h3.9692V87.79078H115.968Z"/>
|
||||
<path d="M124.30768,81.986l2.864-2.49366c2.16019,3.30815,4.37053,5.0906,8.03872,5.0906,3.96772,0,6.8819-2.90089,6.8819-8.5522V52.15661h4.01936v23.824c0,4.17281-1.20551,7.33046-3.2152,9.3667a10.71062,10.71062,0,0,1-7.73622,2.95106A12.0199,12.0199,0,0,1,124.30768,81.986Z"/>
|
||||
<path d="M165.55775,52.15661H178.7195c7.9369,0,13.16177,4.2761,13.16177,11.29964v.10329c0,7.68606-6.33,11.65672-13.81544,11.65672h-8.54039V87.79077h-3.96772ZM178.21636,71.551c5.82837,0,9.64558-3.15617,9.64558-7.83952v-.10181c0-5.0906-3.767-7.73771-9.44342-7.73771h-8.89308V71.551Z"/>
|
||||
<path d="M196.3079,50.62793h3.86886V87.79076H196.3079Z"/>
|
||||
<path d="M204.69779,80.15339v-.10033c0-5.54949,4.521-8.502,11.10342-8.502a27.211,27.211,0,0,1,7.98706,1.11994v-.91631c0-4.73352-2.864-7.177-7.73624-7.177a17.9221,17.9221,0,0,0-7.88821,1.93295l-1.15535-3.20634a21.22123,21.22123,0,0,1,9.4449-2.18822c3.66819,0,6.48056.96648,8.3899,2.90089,1.75885,1.78245,2.66186,4.32627,2.66186,7.68755V87.79076h-3.71689V83.81862A11.32989,11.32989,0,0,1,214.39351,88.35C209.57149,88.35,204.69779,85.5509,204.69779,80.15339Zm19.14065-2.03624V75.57333a26.73167,26.73167,0,0,0-7.63589-1.12139c-4.87369,0-7.58572,2.13951-7.58572,5.44768v.1018c0,3.30963,3.01453,5.24259,6.53071,5.24259,4.77187,0,8.6909-2.95109,8.6909-7.12686Z"/>
|
||||
<path d="M234.3413,80.81591V64.93325h-3.61654V61.47164h3.61654V53.53031h3.86885v7.94133h8.2394v3.46161h-8.2394V80.30686c0,3.20781,1.75884,4.37791,4.37055,4.37791a8.05285,8.05285,0,0,0,3.767-.91631v3.35979a9.6214,9.6214,0,0,1-4.67157,1.11993C237.50632,88.24818,234.3413,86.16177,234.3413,80.81591Z"/>
|
||||
<path d="M252.22922,64.93325h-3.56636v-3.41h3.56636V59.23178c0-3.00271.80416-5.29422,2.26051-6.77123a7.59978,7.59978,0,0,1,5.57753-2.03625,11.59177,11.59177,0,0,1,4.2702.66252v3.40995a12.78069,12.78069,0,0,0-3.76851-.661c-3.01452,0-4.521,1.83261-4.521,5.59965v2.138h8.23938v3.35979h-8.1892V87.79075h-3.86886Z"/>
|
||||
<path d="M264.59124,74.75884v-.10329a13.53974,13.53974,0,1,1,27.07755-.10033v.10034A13.57821,13.57821,0,0,1,278.054,88.40164,13.39652,13.39652,0,0,1,264.59124,74.75884Zm23.10837,0v-.10329c0-5.64982-4.16987-10.28153-9.64558-10.28153-5.6262,0-9.495,4.63171-9.495,10.1812v.10033c0,5.6513,4.1197,10.23284,9.5954,10.23284C283.78058,84.88838,287.69961,80.30685,287.69961,74.75884Z"/>
|
||||
<path d="M296.1441,61.47164H300.013v6.87157c1.90787-4.37644,5.67637-7.53409,10.60023-7.33047v4.22594h-.30249c-5.67637,0-10.29777,4.12264-10.29777,12.064V87.79075h-3.86885Z"/>
|
||||
<path d="M313.98036,61.47164h3.86885v4.42808c1.7072-2.59547,4.01788-4.98731,8.38843-4.98731a8.81582,8.81582,0,0,1,8.33973,5.24257,10.32787,10.32787,0,0,1,9.14388-5.24257c5.9774,0,9.64558,4.07247,9.64558,10.58844v16.2899H349.498V72.41568c0-5.0906-2.51136-7.94133-6.73138-7.94133-3.919,0-7.18438,2.954-7.18438,8.145V87.79076H331.765V72.31535c0-4.93862-2.563-7.841-6.6827-7.841-4.11823,0-7.23307,3.46161-7.23307,8.29841v15.018h-3.86886Z"/>
|
||||
<path d="M372.31491,52.15661h13.16177c7.93544,0,13.16177,4.2761,13.16177,11.29964v.10329c0,7.68606-6.33,11.65672-13.8169,11.65672h-8.5404V87.79077h-3.96624ZM384.97205,71.551c5.82837,0,9.647-3.15617,9.647-7.83952v-.10181c0-5.0906-3.76851-7.73771-9.44344-7.73771h-8.89451V71.551Z"/>
|
||||
<path d="M403.06211,50.62793H406.931V87.79076h-3.86886Z"/>
|
||||
<path d="M413.0131,77.81319V61.47164H416.879V76.84525c0,4.887,2.61464,7.94133,7.18584,7.94133,4.42072,0,7.78494-3.30816,7.78494-8.24677V61.47164h3.81868V87.79077H431.8498v-4.583A9.87131,9.87131,0,0,1,422.95823,88.35C416.67837,88.35,413.0131,84.07389,413.0131,77.81319Z"/>
|
||||
<path d="M441.55,92.37083l1.75885-3.05438a16.446,16.446,0,0,0,9.99824,3.36127c5.72506,0,9.44344-3.20782,9.44344-9.3667V80.205c-2.26054,3.05438-5.427,5.54949-10.1989,5.54949A12.08515,12.08515,0,0,1,440.346,73.43379v-.10034a12.26417,12.26417,0,0,1,22.35433-7.12683v-4.735h3.86886V83.20775c0,4.0725-1.207,7.17848-3.317,9.31652-2.31066,2.34168-5.77523,3.51178-9.89495,3.51178A20.18232,20.18232,0,0,1,441.55,92.37083Zm21.30083-18.98719v-.10182c0-5.396-4.62137-8.9078-9.54379-8.9078a8.64347,8.64347,0,0,0-8.99486,8.85616v.10328a8.84778,8.84778,0,0,0,8.99486,8.95946C458.22945,82.29292,462.85082,78.67785,462.85082,73.38364Z"/>
|
||||
<path d="M472.80183,51.39226h4.42072v4.32627h-4.42072Zm.25082,10.07938h3.86886V87.79076h-3.86886Z"/>
|
||||
<path d="M483.40207,61.47164h3.86885v4.58153a9.81531,9.81531,0,0,1,8.89157-5.14076c6.27986,0,9.94807,4.2761,9.94807,10.53679V87.79075h-3.86885V72.41568c0-4.887-2.61171-7.94133-7.1829-7.94133-4.4709,0-7.78789,3.30963-7.78789,8.24826V87.79078h-3.86885Z"/>
|
||||
<path d="M534.19883,55.872H522.34144V52.15661h27.681V55.872H538.168V87.79078h-3.9692Z"/>
|
||||
<path d="M546.31,74.70719v-.10181c0-7.58425,5.27358-13.693,12.45648-13.693,7.68754,0,12.10826,6.209,12.10826,13.89659a10.352,10.352,0,0,1-.05017,1.2719H550.22611c.55481,5.70147,4.521,8.90929,9.14539,8.90929a10.68587,10.68587,0,0,0,8.18628-3.7154l2.414,2.18822a13.3417,13.3417,0,0,1-10.70058,4.93861C552.13543,88.40163,546.31,82.85215,546.31,74.70719ZM566.95574,73.18c-.40134-4.78516-3.1134-8.95945-8.28958-8.95945-4.521,0-7.93541,3.81868-8.44005,8.95945Z"/>
|
||||
<path d="M575.15085,61.47164h3.86886v4.42808c1.70573-2.59547,4.01639-4.98731,8.38693-4.98731a8.81427,8.81427,0,0,1,8.33971,5.24257,10.33034,10.33034,0,0,1,9.14538-5.24257c5.97592,0,9.64408,4.07247,9.64408,10.58844v16.2899H610.667V72.41568c0-5.0906-2.51136-7.94133-6.73139-7.94133-3.919,0-7.1829,2.954-7.1829,8.145V87.79076H592.934V72.31535c0-4.93862-2.56153-7.841-6.68121-7.841s-7.23307,3.46161-7.23307,8.29841v15.018h-3.86886Z"/>
|
||||
<path d="M620.26974,61.47164h3.86886v5.29422c2.11-3.15617,5.17323-5.85345,9.94513-5.85345,6.22969,0,12.40925,4.98731,12.40925,13.64281v.10033c0,8.60384-6.12939,13.69447-12.40925,13.69447a11.68492,11.68492,0,0,1-9.94513-5.59966V95.93574h-3.86886Zm22.254,13.23555v-.10181c0-6.21053-4.22-10.1812-9.14244-10.1812-4.82207,0-9.39326,4.12265-9.39326,10.131v.10034c0,6.10871,4.57119,10.18119,9.39326,10.18119C638.4041,84.83674,642.52378,81.07117,642.52378,74.70719Z"/>
|
||||
<path d="M651.46846,50.62793h3.86886V87.79076h-3.86886Z"/>
|
||||
<path d="M659.86133,80.15339v-.10033c0-5.54949,4.521-8.502,11.10193-8.502a27.21427,27.21427,0,0,1,7.98853,1.11994v-.91631c0-4.73352-2.86547-7.177-7.73771-7.177a17.93248,17.93248,0,0,0-7.88823,1.93295L662.172,63.30425a21.2147,21.2147,0,0,1,9.44344-2.18822c3.66815,0,6.48056.96648,8.38987,2.90089,1.75884,1.78245,2.66188,4.32627,2.66188,7.68755V87.79076h-3.71539V83.81862a11.33082,11.33082,0,0,1-9.3962,4.53137C664.73352,88.35,659.86133,85.5509,659.86133,80.15339ZM679.002,78.11715V75.57333a26.7344,26.7344,0,0,0-7.63737-1.12139c-4.87224,0-7.58424,2.13951-7.58424,5.44768v.1018c0,3.30963,3.01305,5.24259,6.53073,5.24259,4.77185,0,8.69088-2.95109,8.69088-7.12686Z"/>
|
||||
<path d="M689.5048,80.81591V64.93325h-3.618V61.47164h3.618V53.53031h3.86885v7.94133h8.23945v3.46161h-8.23945V80.30686c0,3.20781,1.75885,4.37791,4.37055,4.37791a8.0669,8.0669,0,0,0,3.76851-.91631v3.35979a9.63752,9.63752,0,0,1-4.67449,1.11993C692.66837,88.24818,689.5048,86.16177,689.5048,80.81591Z"/>
|
||||
<path d="M703.57554,74.70719v-.10181c0-7.58425,5.27358-13.693,12.45648-13.693,7.68754,0,12.10826,6.209,12.10826,13.89659a10.36192,10.36192,0,0,1-.05017,1.2719H707.49162c.55481,5.70147,4.521,8.90929,9.14539,8.90929a10.68594,10.68594,0,0,0,8.18628-3.7154l2.414,2.18822a13.3417,13.3417,0,0,1-10.70058,4.93861C709.40094,88.40163,703.57554,82.85215,703.57554,74.70719ZM724.2212,73.18c-.40134-4.78516-3.1134-8.95945-8.28957-8.95945-4.521,0-7.93542,3.81868-8.44006,8.95945Z"/>
|
||||
</g>
|
||||
</g>
|
||||
<path d="M80.37373,31.871V23.97684H64.21736v7.993H48.20705v-7.993H31.95183V31.871H24.10714V88.08737H48.15763V80.0826a8.00515,8.00515,0,0,1,16.0103,0v8.00477H88.21842V31.871Z" fill="url(#linear-gradient)"/>
|
||||
<rect width="745.71429" height="112.5" fill="none"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 12 KiB |
5
.github/template-cleanup/README.md
vendored
5
.github/template-cleanup/README.md
vendored
@ -8,10 +8,11 @@
|
||||
- [x] Create a new [IntelliJ Platform Plugin Template][template] project.
|
||||
- [ ] Get familiar with the [template documentation][template].
|
||||
- [ ] Verify the [pluginGroup](./gradle.properties), [plugin ID](./src/main/resources/META-INF/plugin.xml) and [sources package](./src/main/kotlin).
|
||||
- [ ] Review the [Legal Agreements](https://plugins.jetbrains.com/docs/marketplace/legal-agreements.html).
|
||||
- [ ] Review the [Legal Agreements](https://plugins.jetbrains.com/docs/marketplace/legal-agreements.html?from=IJPluginTemplate).
|
||||
- [ ] [Publish a plugin manually](https://plugins.jetbrains.com/docs/intellij/publishing-plugin.html?from=IJPluginTemplate) for the first time.
|
||||
- [ ] Set the Plugin ID in the above README badges.
|
||||
- [ ] Set the [Deployment Token](https://plugins.jetbrains.com/docs/marketplace/plugin-upload.html).
|
||||
- [ ] Set the [Plugin Signing](https://plugins.jetbrains.com/docs/intellij/plugin-signing.html?from=IJPluginTemplate) related [secrets](https://github.com/JetBrains/intellij-platform-plugin-template#environment-variables).
|
||||
- [ ] Set the [Deployment Token](https://plugins.jetbrains.com/docs/marketplace/plugin-upload.html?from=IJPluginTemplate).
|
||||
- [ ] Click the <kbd>Watch</kbd> button on the top of the [IntelliJ Platform Plugin Template][template] to be notified about releases containing new features and fixes.
|
||||
|
||||
<!-- Plugin description -->
|
||||
|
8
.github/template-cleanup/gradle.properties
vendored
8
.github/template-cleanup/gradle.properties
vendored
@ -2,14 +2,15 @@
|
||||
|
||||
pluginGroup = %GROUP%
|
||||
pluginName = %NAME%
|
||||
pluginRepositoryUrl = https://github.com/%REPOSITORY%
|
||||
# SemVer format -> https://semver.org
|
||||
pluginVersion = 0.0.1
|
||||
|
||||
# Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html
|
||||
pluginSinceBuild = 213
|
||||
pluginUntilBuild = 222.*
|
||||
pluginUntilBuild = 223.*
|
||||
|
||||
# IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#intellij-extension
|
||||
# IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#configuration-intellij-extension
|
||||
platformType = IC
|
||||
platformVersion = 2021.3.3
|
||||
|
||||
@ -23,3 +24,6 @@ gradleVersion = 7.5.1
|
||||
# Opt-out flag for bundling Kotlin standard library -> https://plugins.jetbrains.com/docs/intellij/kotlin.html#kotlin-standard-library
|
||||
# suppress inspection "UnusedProperty"
|
||||
kotlin.stdlib.default.dependency = false
|
||||
|
||||
# Enable Gradle Configuration Cache -> https://docs.gradle.org/current/userguide/configuration_cache.html
|
||||
org.gradle.unsafe.configuration-cache = true
|
||||
|
12
.github/workflows/build.yml
vendored
12
.github/workflows/build.yml
vendored
@ -46,7 +46,7 @@ jobs:
|
||||
|
||||
# Validate wrapper
|
||||
- name: Gradle Wrapper Validation
|
||||
uses: gradle/wrapper-validation-action@v1.0.4
|
||||
uses: gradle/wrapper-validation-action@v1.0.5
|
||||
|
||||
# Setup Java 11 environment for the next steps
|
||||
- name: Setup Java
|
||||
@ -77,7 +77,7 @@ jobs:
|
||||
|
||||
# Run tests
|
||||
- name: Run Tests
|
||||
run: ./gradlew test
|
||||
run: ./gradlew check
|
||||
|
||||
# Collect Tests Result of failed tests
|
||||
- name: Collect Tests Result
|
||||
@ -87,6 +87,12 @@ jobs:
|
||||
name: tests-result
|
||||
path: ${{ github.workspace }}/build/reports/tests
|
||||
|
||||
# Upload Kover report to CodeCov
|
||||
- name: Upload Code Coverage Report
|
||||
uses: codecov/codecov-action@v3
|
||||
with:
|
||||
files: ${{ github.workspace }}/build/reports/kover/xml/report.xml
|
||||
|
||||
# Cache Plugin Verifier IDEs
|
||||
- name: Setup Plugin Verifier IDEs Cache
|
||||
uses: actions/cache@v3
|
||||
@ -108,7 +114,7 @@ jobs:
|
||||
|
||||
# Run Qodana inspections
|
||||
- name: Qodana - Code Inspection
|
||||
uses: JetBrains/qodana-action@v2022.2.1
|
||||
uses: JetBrains/qodana-action@v2022.2.3
|
||||
|
||||
# Prepare plugin archive content for creating artifact
|
||||
- name: Prepare Plugin Artifact
|
||||
|
7
.github/workflows/release.yml
vendored
7
.github/workflows/release.yml
vendored
@ -77,6 +77,7 @@ jobs:
|
||||
run: |
|
||||
VERSION="${{ github.event.release.tag_name }}"
|
||||
BRANCH="changelog-update-$VERSION"
|
||||
LABEL="release changelog"
|
||||
|
||||
git config user.email "action@github.com"
|
||||
git config user.name "GitHub Action"
|
||||
@ -84,9 +85,13 @@ jobs:
|
||||
git checkout -b $BRANCH
|
||||
git commit -am "Changelog update - $VERSION"
|
||||
git push --set-upstream origin $BRANCH
|
||||
|
||||
gh label create "$LABEL" \
|
||||
--description "Pull requests with release changelog update" \
|
||||
|| true
|
||||
|
||||
gh pr create \
|
||||
--title "Changelog update - \`$VERSION\`" \
|
||||
--body "Current pull request contains patched \`CHANGELOG.md\` file for the \`$VERSION\` version." \
|
||||
--base main \
|
||||
--label "$LABEL" \
|
||||
--head $BRANCH
|
||||
|
2
.github/workflows/run-ui-tests.yml
vendored
2
.github/workflows/run-ui-tests.yml
vendored
@ -48,7 +48,7 @@ jobs:
|
||||
|
||||
# Wait for IDEA to be started
|
||||
- name: Health Check
|
||||
uses: jtalk/url-health-check-action@v2
|
||||
uses: jtalk/url-health-check-action@v3
|
||||
with:
|
||||
url: http://127.0.0.1:8082
|
||||
max-attempts: 15
|
||||
|
8
.github/workflows/template-cleanup.yml
vendored
8
.github/workflows/template-cleanup.yml
vendored
@ -5,18 +5,17 @@
|
||||
name: Template Cleanup
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
branches: [main]
|
||||
|
||||
jobs:
|
||||
|
||||
# Run cleaning process only if workflow is triggered by the non-JetBrains/intellij-platform-plugin-template repository.
|
||||
# Run cleaning process only if workflow is triggered by the non-"intellij-platform-plugin-template" repository.
|
||||
template-cleanup:
|
||||
name: Template Cleanup
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event.repository.name != 'intellij-platform-plugin-template'
|
||||
permissions:
|
||||
contents: write
|
||||
if: github.event.repository.name != 'intellij-platform-plugin-template'
|
||||
steps:
|
||||
|
||||
# Check out current repository
|
||||
@ -59,6 +58,7 @@ jobs:
|
||||
.github/readme \
|
||||
.github/template-cleanup \
|
||||
.github/workflows/template-cleanup.yml \
|
||||
.github/workflows/template-verify.yml \
|
||||
.idea/icon.png \
|
||||
src/main/kotlin/org \
|
||||
src/test/kotlin/org \
|
||||
|
43
.github/workflows/template-verify.yml
vendored
Normal file
43
.github/workflows/template-verify.yml
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
# GitHub Actions Workflow verifies if the template repository is consistent with all provided content.
|
||||
|
||||
name: Template Verify
|
||||
on:
|
||||
# Trigger the workflow on pushes to only the 'main' branch (this avoids duplicate checks being run e.g. for dependabot pull requests)
|
||||
push:
|
||||
branches: [main]
|
||||
paths: ['**/gradle.properties']
|
||||
# Trigger the workflow on any pull request
|
||||
pull_request:
|
||||
paths: ['**/gradle.properties']
|
||||
|
||||
jobs:
|
||||
|
||||
build:
|
||||
name: Template Verify
|
||||
if: github.event.repository.name == 'intellij-platform-plugin-template'
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
version: ${{ steps.properties.outputs.version }}
|
||||
changelog: ${{ steps.properties.outputs.changelog }}
|
||||
steps:
|
||||
|
||||
# Check out current repository
|
||||
- name: Fetch Sources
|
||||
uses: actions/checkout@v3
|
||||
|
||||
# Compare `gradle.properties` with `.github/template-cleanup/gradle.properties`
|
||||
- name: Verify gradle.properties
|
||||
run: |
|
||||
echo "\`\`\`diff" >> $GITHUB_STEP_SUMMARY
|
||||
|
||||
diff -U 0 \
|
||||
-I '^pluginVersion' \
|
||||
-I '^pluginGroup' \
|
||||
-I '^pluginName' \
|
||||
-I '^pluginRepositoryUrl' \
|
||||
--label .github/template-cleanup/gradle.properties \
|
||||
--label gradle.properties \
|
||||
.github/template-cleanup/gradle.properties gradle.properties \
|
||||
>> $GITHUB_STEP_SUMMARY
|
||||
|
||||
echo "\`\`\`" >> $GITHUB_STEP_SUMMARY
|
@ -11,7 +11,7 @@
|
||||
</option>
|
||||
<option name="taskNames">
|
||||
<list>
|
||||
<option value="test" />
|
||||
<option value="check" />
|
||||
</list>
|
||||
</option>
|
||||
<option name="vmOptions" value="" />
|
||||
|
143
CHANGELOG.md
143
CHANGELOG.md
@ -4,7 +4,31 @@
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [1.2.0]
|
||||
### Added
|
||||
- [Kover](https://github.com/Kotlin/kotlinx-kover) integration
|
||||
- Enable [Gradle Configuration Cache](https://docs.gradle.org/current/userguide/configuration_cache.html) in `gradle.proeprties`
|
||||
- GitHub Actions - mark the pull request created with _Publish Plugin_ workflow with `release changelog` label
|
||||
- GitHub Actions - send code coverage reports to [CodeCov](https://codecov.io)
|
||||
- Dependencies - upgrade `org.jetbrains.kotlinx.kover` to `0.6.1`
|
||||
|
||||
### Changed
|
||||
- Update `changelog` extension configuration in `build.gradle.kts` file
|
||||
- Update `pluginUntilBuild` to include `223.*` (2022.3.*)
|
||||
- Use `kotlin.jvmToolchain(11)` shorthand in Gradle configuration
|
||||
- Dependencies - upgrade `org.jetbrains.intellij` to `1.10.0`
|
||||
- Dependencies - upgrade `org.jetbrains.changelog` to `2.0.0`
|
||||
- Dependencies - upgrade `org.jetbrains.kotlin.jvm` to `1.7.21`
|
||||
- Dependencies (GitHub Actions) - upgrade `JetBrains/qodana-action` to `v2022.2.3`
|
||||
- Dependencies (GitHub Actions) - upgrade `gradle/wrapper-validation-action` to `v1.0.5`
|
||||
- Dependencies (GitHub Actions) - upgrade `jtalk/url-health-check-action` to `v3`
|
||||
- Use `file` instead of `projectDir.resolve` in Gradle configuration file
|
||||
|
||||
### Fixed
|
||||
- Update broken link in `gradle.properties`
|
||||
- GitHub Actions - use `$BRANCH` for creating changelog pull request
|
||||
|
||||
## [1.2.0] - 2022-08-07
|
||||
|
||||
### Added
|
||||
- Use JVM toolchain for configuring source/target compilation compatibility
|
||||
- Make sure GitHub Actions release jobs have write permissions
|
||||
@ -28,9 +52,10 @@
|
||||
- Pass Plugin Signing secrets as environment variables in the Release workflow
|
||||
|
||||
### Removed
|
||||
- Removed Gradle caching from GitHub Actions
|
||||
- Removed Gradle caching from GitHub Actions
|
||||
|
||||
## [1.1.2] - 2022-02-11
|
||||
|
||||
## [1.1.2]
|
||||
### Changed
|
||||
- Update `platformVersion` to `2021.1.3` for compatibility with Apple M1
|
||||
- Change since/until build to `211-213.*` (2021.1 - 2021.3)
|
||||
@ -38,7 +63,8 @@
|
||||
- Dependencies - upgrade `org.jetbrains.intellij` to `1.4.0`
|
||||
- Dependencies (GitHub Actions) - upgrade `JetBrains/qodana-action` to `4.2.5`
|
||||
|
||||
## [1.1.1]
|
||||
## [1.1.1] - 2022-01-24
|
||||
|
||||
### Changed
|
||||
- GitHub Actions - fixed duplicated `.zip` extension in artifact file's name of the build flow
|
||||
- Upgrade Gradle Wrapper to `7.3.3`
|
||||
@ -47,12 +73,13 @@
|
||||
- Dependencies (GitHub Actions) - upgrade `JetBrains/qodana-action` to `4.2.3`
|
||||
- Dependencies (GitHub Actions) - upgrade `actions/cache` to `2.1.7`
|
||||
|
||||
## [1.1.0]
|
||||
## [1.1.0] - 2021-11-16
|
||||
|
||||
### Added
|
||||
- GitHub Actions: Collect Qodana/Tests/Plugin Verifier results as artifacts
|
||||
|
||||
### Changed
|
||||
- Dependencies - upgrade `org.jetbrains.intellij` to `1.3.0`
|
||||
- Dependencies - upgrade `org.jetbrains.intellij` to `1.3.0`
|
||||
- Dependencies - upgrade `org.jetbrains.changelog` to `1.3.1`
|
||||
- Dependencies - upgrade `org.jetbrains.kotlin.jvm` to `1.6.0`
|
||||
- Dependencies (GitHub Actions) - upgrade `jtalk/url-health-check-action` to `2`
|
||||
@ -66,14 +93,15 @@
|
||||
### Fixed
|
||||
- Fixed passing change notes from `CHANGELOG.md` to the Release Draft
|
||||
- Fixed passing updated change notes from the Release Draft to `patchChangelog` Gradle task
|
||||
- Fixed `QODANA_SHOW_REPORT` environment variable resolving for Gradle `6.x`
|
||||
- Fixed `QODANA_SHOW_REPORT` environment variable resolving for Gradle `6.x`
|
||||
|
||||
### Removed
|
||||
- Removed the `pluginVerifierIdeVersions` configuration to use default IDEs list provided by the `listProductsReleases` task for `runPluginVerifier`
|
||||
- Removed `platformDownloadSources` from Gradle configuration to use default value
|
||||
- Removed the `pluginVerifierIdeVersions` configuration to use default IDEs list provided by the `listProductsReleases` task for `runPluginVerifier`
|
||||
- Removed `platformDownloadSources` from Gradle configuration to use default value
|
||||
- Removed `updateSinceUntilBuild.set(true)` from Gradle configuration to use default value
|
||||
|
||||
## [1.0.0]
|
||||
## [1.0.0] - 2021-09-07
|
||||
|
||||
### Added
|
||||
- Plugin Signing
|
||||
- Qodana integration
|
||||
@ -103,7 +131,8 @@
|
||||
### Removed
|
||||
- Removed `detekt`/`ktlint` integration
|
||||
|
||||
## [0.10.1]
|
||||
## [0.10.1] - 2021-05-31
|
||||
|
||||
### Added
|
||||
- Introduced `next` branch in the root repository to make `main` always a stable one
|
||||
|
||||
@ -111,7 +140,8 @@
|
||||
- Dependencies (GitHub Actions) - upgrade `actions/cache` to `v2.1.6`
|
||||
- Trigger GitHub Actions `Build` workflows only on pushes to `main` branch or pull request to avoid duplicated checks
|
||||
|
||||
## [0.10.0]
|
||||
## [0.10.0] - 2021-05-27
|
||||
|
||||
### Changed
|
||||
- Remove reference to the `jcenter()` from Gradle configuration file
|
||||
- Update `pluginVerifierIdeVersions` to `2020.2.4, 2020.3.4, 2021.1.2`
|
||||
@ -125,29 +155,32 @@
|
||||
- Dependencies (GitHub Actions) - upgrade `actions/create-release` to `v1.1.4`
|
||||
- Upgrade Gradle Wrapper to `7.0.2`
|
||||
|
||||
## [0.9.0]
|
||||
## [0.9.0] - 2021-03-29
|
||||
|
||||
### Added
|
||||
- `properties` shorthand function for accessing `gradle.properties` in a cleaner way
|
||||
- Dependabot check for GitHub Actions used in [workflow files](.github/workflows)
|
||||
|
||||
### Changed
|
||||
- Dependencies - upgrade `detekt-formatting from` to `1.16.0`
|
||||
- Dependencies - upgrade `io.gitlab.arturbosch.detekt` to `1.16.0`
|
||||
- Dependencies - upgrade `org.jetbrains.kotlin.jvm` to `1.4.32`
|
||||
- Dependencies - upgrade `detekt-formatting from` to `1.16.0`
|
||||
- Dependencies - upgrade `io.gitlab.arturbosch.detekt` to `1.16.0`
|
||||
- Dependencies - upgrade `org.jetbrains.kotlin.jvm` to `1.4.32`
|
||||
- Dependencies (GitHub Actions) - upgrade `actions/upload-artifact` to `v2.2.2`
|
||||
- Dependencies (GitHub Actions) - upgrade `actions/cache` to `v2.1.4`
|
||||
|
||||
### Fixed
|
||||
- Fix `README.md` file resolution in the `build.gradle.kts`
|
||||
|
||||
## [0.8.3]
|
||||
## [0.8.3] - 2021-02-23
|
||||
|
||||
### Changed
|
||||
- Dependencies - upgrade `org.jetbrains.intellij` to `0.7.2`
|
||||
- Dependencies - upgrade `org.jlleitschuh.gradle.ktlint` to `10.0.0`
|
||||
- Update `platformVersion` to `2020.2.4` for compatibility with macOS Big Sur
|
||||
- Upgrade Gradle Wrapper to `6.8.3`
|
||||
|
||||
## [0.8.2]
|
||||
## [0.8.2] - 2021-02-09
|
||||
|
||||
### Changed
|
||||
- Use `-bin` distribution of the Gradle Wrapper
|
||||
- Upgrade Gradle Wrapper to `6.8.2`
|
||||
@ -156,7 +189,8 @@
|
||||
- Dependencies - upgrade `org.jetbrains.changelog` to `1.1.1`
|
||||
- Configure the `changelog` Gradle plugin
|
||||
|
||||
## [0.8.1]
|
||||
## [0.8.1] - 2021-01-12
|
||||
|
||||
### Added
|
||||
- README: Dependencies management section
|
||||
|
||||
@ -169,7 +203,8 @@
|
||||
- Template Cleanup: Run `ktlintFormat` task to fix imports order
|
||||
- GitHub Actions: Use the correct property in the "Upload artifact" step
|
||||
|
||||
## [0.8.0]
|
||||
## [0.8.0] - 2020-12-21
|
||||
|
||||
### Added
|
||||
- Dependabot integration
|
||||
- Show `idea.log` logs of the run IDE in the Run console
|
||||
@ -186,7 +221,8 @@
|
||||
### Fixed
|
||||
- Return `Supplier<@Nls String>` instead of `String` in `MyBundle.messagePointer`
|
||||
|
||||
## [0.7.1]
|
||||
## [0.7.1] - 2020-12-02
|
||||
|
||||
### Changed
|
||||
- Upgrade Gradle Wrapper to `6.7.1`
|
||||
- Dependencies - upgrade `org.jetbrains.intellij` to `0.6.5`
|
||||
@ -194,7 +230,8 @@
|
||||
- Update the base platform version to 2020.1
|
||||
- Change since/until build to `201-203.*`
|
||||
|
||||
## [0.7.0]
|
||||
## [0.7.0] - 2020-11-16
|
||||
|
||||
### Added
|
||||
- Predefined Run/Debug Configurations
|
||||
- Project icon for development purposes
|
||||
@ -202,7 +239,8 @@
|
||||
### Changed
|
||||
- Dependencies - upgrade `org.jetbrains.intellij` to `0.6.3`
|
||||
|
||||
## [0.6.1]
|
||||
## [0.6.1] - 2020-11-05
|
||||
|
||||
### Added
|
||||
- GitHub Actions - use hash based on `pluginVerifierIdeVersions` in `Setup Plugin Verifier IDEs Cache` step
|
||||
|
||||
@ -211,7 +249,8 @@
|
||||
- Dependencies - upgrade `org.jetbrains.intellij` to `0.6.2`
|
||||
- Update `pluginVerifierIdeVersions` in the `gradle.properties` files
|
||||
|
||||
## [0.6.0]
|
||||
## [0.6.0] - 2020-10-29
|
||||
|
||||
### Added
|
||||
- Integration with [IntelliJ Plugin Verifier](https://github.com/JetBrains/intellij-plugin-verifier) through the [Gradle IntelliJ Plugin](https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#runpluginverifier-task) `runPluginVerifier` task
|
||||
- Cache downloaded IDEs used by Plugin Verifier for the verification
|
||||
@ -227,7 +266,8 @@
|
||||
### Removed
|
||||
- Remove Third-party IntelliJ Plugin Verifier GitHub Action
|
||||
|
||||
## [0.5.1]
|
||||
## [0.5.1] - 2020-10-15
|
||||
|
||||
### Added
|
||||
- Missing properties in the `gradle.properties` template file
|
||||
|
||||
@ -235,7 +275,8 @@
|
||||
- Upgrade Gradle Wrapper to `6.7`
|
||||
- Dependencies - upgrade `org.jetbrains.changelog` to `0.6.2`
|
||||
|
||||
## [0.5.0]
|
||||
## [0.5.0] - 2020-10-12
|
||||
|
||||
### Added
|
||||
- Introduced `platformPlugins` property in `gradle.properties` for configuring dependencies to bundled/external plugins
|
||||
|
||||
@ -247,7 +288,8 @@
|
||||
- Dependencies - upgrade `org.jlleitschuh.gradle.ktlint` to `9.4.1`
|
||||
- Remove LICENSE file during the Template Cleanup workflow
|
||||
|
||||
## [0.4.0]
|
||||
## [0.4.0] - 2020-10-02
|
||||
|
||||
### Added
|
||||
- Fix default to opt-out of bundling Kotlin standard library in plugin distribution
|
||||
|
||||
@ -259,7 +301,8 @@
|
||||
### Fixed
|
||||
- `pluginName` variable name collision with `intellij` closure getter in Gradle configuration #29
|
||||
|
||||
## [0.3.2]
|
||||
## [0.3.2] - 2020-08-09
|
||||
|
||||
### Changed
|
||||
- Simplify and optimize GitHub Actions
|
||||
- Gradle Wrapper upgrade to `6.6.1`
|
||||
@ -273,7 +316,8 @@
|
||||
### Fixed
|
||||
- GitHub Actions - cache Gradle dependencies and wrapper separately
|
||||
|
||||
## [0.3.1]
|
||||
## [0.3.1] - 2020-07-31
|
||||
|
||||
### Added
|
||||
- Better handling of the Gradle plugin description extraction from the README file
|
||||
- GitHub Actions - cache Gradle Wrapper
|
||||
@ -288,7 +332,8 @@
|
||||
- Resolve ktlint reports
|
||||
- GitHub Actions - Plugin Verifier broken for artifacts with whitespaces in name
|
||||
|
||||
## [0.3.0]
|
||||
## [0.3.0] - 2020-07-07
|
||||
|
||||
### Added
|
||||
- Set publish channel depending on the plugin version, i.e. `1.0.0-beta` -> `beta` channel
|
||||
|
||||
@ -302,7 +347,8 @@
|
||||
- Remove vendor website from `plugin.xml`
|
||||
- Update Template Cleanup workflow test to avoid running it on forks
|
||||
|
||||
## [0.2.0]
|
||||
## [0.2.0] - 2020-07-02
|
||||
|
||||
### Added
|
||||
- JetBrains Plugin badges and TODO list for the end users
|
||||
- `ktlint` integration
|
||||
@ -316,7 +362,8 @@
|
||||
- Update Template plugin name on cleanup
|
||||
- Set `buildUponDefaultConfig = true` in detekt configuration
|
||||
|
||||
## [0.1.0]
|
||||
## [0.1.0] - 2020-06-26
|
||||
|
||||
### Added
|
||||
- `settings.gradle.kts` for the [performance purposes](https://docs.gradle.org/current/userguide/organizing_gradle_projects.html#always_define_a_settings_file)
|
||||
- `#REMOVE-ON-CLEANUP#` token to mark content to be removed with **Template Cleanup** workflow
|
||||
@ -326,7 +373,8 @@
|
||||
- GitHub Actions - Update IDE versions for the Plugin Verifier
|
||||
- Update platformVersion to `2020.1.2`
|
||||
|
||||
## [0.0.2]
|
||||
## [0.0.2] - 2020-06-22
|
||||
|
||||
### Added
|
||||
- [Gradle Changelog Plugin](https://github.com/JetBrains/gradle-changelog-plugin) integration
|
||||
|
||||
@ -335,7 +383,36 @@
|
||||
- Change pluginSinceBuild to 193
|
||||
|
||||
## [0.0.1]
|
||||
|
||||
### Added
|
||||
- Initial project scaffold
|
||||
- GitHub Actions to automate testing and deployment
|
||||
- Kotlin support
|
||||
|
||||
[Unreleased]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v1.2.0...HEAD
|
||||
[1.2.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v1.1.2...v1.2.0
|
||||
[1.1.2]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v1.1.1...v1.1.2
|
||||
[1.1.1]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v1.1.0...v1.1.1
|
||||
[1.1.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v1.0.0...v1.1.0
|
||||
[1.0.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.10.1...v1.0.0
|
||||
[0.10.1]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.10.0...v0.10.1
|
||||
[0.10.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.9.0...v0.10.0
|
||||
[0.9.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.8.3...v0.9.0
|
||||
[0.8.3]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.8.2...v0.8.3
|
||||
[0.8.2]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.8.1...v0.8.2
|
||||
[0.8.1]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.8.0...v0.8.1
|
||||
[0.8.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.7.1...v0.8.0
|
||||
[0.7.1]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.7.0...v0.7.1
|
||||
[0.7.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.6.1...v0.7.0
|
||||
[0.6.1]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.6.0...v0.6.1
|
||||
[0.6.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.5.1...v0.6.0
|
||||
[0.5.1]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.5.0...v0.5.1
|
||||
[0.5.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.4.0...v0.5.0
|
||||
[0.4.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.3.2...v0.4.0
|
||||
[0.3.2]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.3.1...v0.3.2
|
||||
[0.3.1]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.3.0...v0.3.1
|
||||
[0.3.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.2.0...v0.3.0
|
||||
[0.2.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.1.0...v0.2.0
|
||||
[0.1.0]: https://github.com/JetBrains/intellij-platform-plugin-template/compare/v0.0.2...v0.1.0
|
||||
[0.0.2]: https://github.com/JetBrains/intellij-platform-plugin-template/commits/v0.0.2
|
||||
[0.0.1]: https://github.com/JetBrains/intellij-platform-plugin-template/commits
|
||||
|
84
README.md
84
README.md
@ -1,11 +1,12 @@
|
||||
# IntelliJ Platform Plugin Template
|
||||
|
||||
[][jb:confluence-on-gh]
|
||||
[][jb:github]
|
||||
[](https://twitter.com/JBPlatform)
|
||||
[][gh:build]
|
||||
[](https://plugins.jetbrains.com/slack)
|
||||
|
||||
![IntelliJ Platform Plugin Template][file:intellij-platform-plugin-template.png]
|
||||
![IntelliJ Platform Plugin Template][file:intellij-platform-plugin-template-dark]
|
||||
![IntelliJ Platform Plugin Template][file:intellij-platform-plugin-template-light]
|
||||
|
||||
> **Note**
|
||||
>
|
||||
@ -39,6 +40,7 @@ In this README, we will highlight the following elements of template-project cre
|
||||
- actions – basic action with shortcut binding
|
||||
- [Testing](#testing)
|
||||
- [Functional tests](#functional-tests)
|
||||
- [Code coverage](#code-coverage)
|
||||
- [UI tests](#ui-tests)
|
||||
- [Qodana integration](#qodana-integration)
|
||||
- [Predefined Run/Debug configurations](#predefined-rundebug-configurations)
|
||||
@ -92,17 +94,17 @@ The most significant parts of the current configuration are:
|
||||
- Integration with the [gradle-intellij-plugin][gh:gradle-intellij-plugin] for smoother development.
|
||||
- [Plugin publishing][docs:publishing] using the token.
|
||||
|
||||
For more details regarding Kotlin integration, please see [Kotlin for Plugin Developers][kotlin-for-plugin-developers] section in the IntelliJ Platform Plugin SDK documentation.
|
||||
For more details regarding Kotlin integration, please see [Kotlin for Plugin Developers][docs:kotlin] section in the IntelliJ Platform Plugin SDK documentation.
|
||||
|
||||
### Gradle properties
|
||||
|
||||
The project-specific configuration file [gradle.properties][file:gradle.properties] contains:
|
||||
The project-specific configuration file [`gradle.properties`][file:gradle.properties] contains:
|
||||
|
||||
| Property name | Description |
|
||||
|---------------------------|-----------------------------------------------------------------------------------------------------------|
|
||||
| `pluginGroup` | Package name - after *using* the template, this will be set to `com.github.username.repo`. |
|
||||
| `pluginName` | Plugin name displayed in the JetBrains Marketplace and the Plugins Repository. |
|
||||
| `pluginVersion` | The current version of the plugin in [SemVer](https://semver.org/) format. |
|
||||
| `pluginVersion` | The current version of the plugin in [SemVer][semver] format. |
|
||||
| `pluginSinceBuild` | The `since-build` attribute of the `<idea-version>` tag. |
|
||||
| `pluginUntilBuild` | The `until-build` attribute of the `<idea-version>` tag. |
|
||||
| `platformType` | The type of IDE distribution. |
|
||||
@ -112,6 +114,13 @@ The project-specific configuration file [gradle.properties][file:gradle.properti
|
||||
|
||||
The properties listed define the plugin itself or configure the [gradle-intellij-plugin][gh:gradle-intellij-plugin] – check its documentation for more details.
|
||||
|
||||
In addition, extra behaviours are configured through the [`gradle.properties`][file:gradle.properties] file, such as:
|
||||
|
||||
| Property name | Value | Description |
|
||||
|-----------------------------------------|---------|-------------------------------------------------------------------------|
|
||||
| `kotlin.stdlib.default.dependency` | `false` | Opt-out flag for bundling [Kotlin standard library][docs:kotlin-stdlib] |
|
||||
| `org.gradle.unsafe.configuration-cache` | `true` | Enable [Gradle Configuration Cache][gradle-configuration-cache] |
|
||||
|
||||
### Environment variables
|
||||
|
||||
Some values used for the Gradle configuration shouldn't be stored in files to avoid publishing them to the Version Control System.
|
||||
@ -120,12 +129,12 @@ To avoid that, environment variables are introduced, which can be provided withi
|
||||
|
||||
Environment variables used by the current project are related to the [plugin signing](#plugin-signing) and [publishing](#publishing-the-plugin).
|
||||
|
||||
| Environment variable name | Description |
|
||||
|---------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `PRIVATE_KEY` | Certificate private key, should contain: <code>-----BEGIN ENCRYPTED PRIVATE KEY-----<br/>...<br/>-----END ENCRYPTED PRIVATE KEY-----</code> |
|
||||
| `PRIVATE_KEY_PASSWORD` | Password used for encrypting the certificate file. |
|
||||
| `CERTIFICATE_CHAIN` | Certificate chain, should contain: <code>-----BEGIN CERTIFICATE-----<br/>...<br/>-----END CERTIFICATE----</code> |
|
||||
| `PUBLISH_TOKEN` | Publishing token generated in your JetBrains Marketplace profile dashboard. |
|
||||
| Environment variable name | Description |
|
||||
|---------------------------|--------------------------------------------------------------------------------------------------------------|
|
||||
| `PRIVATE_KEY` | Certificate private key, should contain: `-----BEGIN RSA PRIVATE KEY----- ... -----END RSA PRIVATE KEY-----` |
|
||||
| `PRIVATE_KEY_PASSWORD` | Password used for encrypting the certificate file. |
|
||||
| `CERTIFICATE_CHAIN` | Certificate chain, should contain: `-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----` |
|
||||
| `PUBLISH_TOKEN` | Publishing token generated in your JetBrains Marketplace profile dashboard. |
|
||||
|
||||
For more details on how to generate proper values, check the relevant sections mentioned above.
|
||||
|
||||
@ -238,7 +247,14 @@ In `src/test/kotlin`, you'll find a basic `MyPluginTest` test that utilizes `Bas
|
||||
|
||||
> **Note**
|
||||
>
|
||||
> Run your tests using predefined *Run Tests* configuration or by invoking the `./gradlew test` Gradle task.
|
||||
> Run your tests using predefined *Run Tests* configuration or by invoking the `./gradlew check` Gradle task.
|
||||
|
||||
### Code coverage
|
||||
|
||||
The [Kover][gh:kover] – a Gradle plugin for Kotlin code coverage agents: IntelliJ and JaCoCo – is integrated into the project to provide the code coverage feature.
|
||||
Code coverage makes it possible to measure and track the degree of testing of the plugin sources.
|
||||
The code coverage gets executed when running the `check` Gradle task.
|
||||
The final test report is sent to [CodeCov][codecov] for better results visualization.
|
||||
|
||||
### UI tests
|
||||
|
||||
@ -250,7 +266,7 @@ Once IDE with `robot-server` has started, you can open the `http://localhost:808
|
||||
|
||||
> **Note**
|
||||
>
|
||||
> Run IDE for UI tests using predefined *Run IDE for UI Tests* and then *Run Tests* configurations or by invoking the `./gradlew runIdeForUiTests` and `./gradlew tests` Gradle tasks.
|
||||
> Run IDE for UI tests using predefined *Run IDE for UI Tests* and then *Run Tests* configurations or by invoking the `./gradlew runIdeForUiTests` and `./gradlew check` Gradle tasks.
|
||||
|
||||
Check the UI Test Example project you can use as a reference for setting up UI testing in your plugin: [intellij-ui-test-robot/ui-test-example][gh:ui-test-example].
|
||||
|
||||
@ -273,13 +289,13 @@ Due to its optional nature, this workflow isn't set as an automatic one, but thi
|
||||
|
||||
## Qodana integration
|
||||
|
||||
To increase the project value, the IntelliJ Platform Plugin Template got integrated with [Qodana][docs:qodana], a code quality monitoring platform that allows you to check the condition of your implementation and find any possible problems that may require enhancing.
|
||||
To increase the project value, the IntelliJ Platform Plugin Template got integrated with [Qodana][jb:qodana], a code quality monitoring platform that allows you to check the condition of your implementation and find any possible problems that may require enhancing.
|
||||
|
||||
Qodana brings into your CI/CD pipelines all the smart features you love in the JetBrains IDEs and generates an HTML report with the actual inspection status.
|
||||
|
||||
Qodana inspections are accessible within the project on two levels:
|
||||
|
||||
- using the [Qodana IntelliJ GitHub Action][docs:qodana-github-action], run automatically within the [Build](.github/workflows/build.yml) workflow,
|
||||
- using the [Qodana IntelliJ GitHub Action][jb:qodana-github-action], run automatically within the [Build](.github/workflows/build.yml) workflow,
|
||||
- with the [Gradle Qodana Plugin][gh:gradle-qodana-plugin], so you can use it on the local environment or any CI other than GitHub Actions.
|
||||
|
||||
Qodana inspection is configured with the `qodana { ... }` section in the Gradle build file and [`qodana.yml`][file:qodana.yml] YAML configuration file.
|
||||
@ -501,14 +517,14 @@ That approach gives more possibilities for testing and debugging pre-releases, f
|
||||
[docs]: https://plugins.jetbrains.com/docs/intellij?from=IJPluginTemplate
|
||||
[docs:intro]: https://plugins.jetbrains.com/docs/intellij/intellij-platform.html?from=IJPluginTemplate
|
||||
[docs:kotlin-ui-dsl]: https://plugins.jetbrains.com/docs/intellij/kotlin-ui-dsl.html?from=IJPluginTemplate
|
||||
[docs:kotlin]: https://plugins.jetbrains.com/docs/intellij/kotlin.html?from=IJPluginTemplate
|
||||
[docs:kotlin-stdlib]: https://plugins.jetbrains.com/docs/intellij/kotlin.html?from=IJPluginTemplate#kotlin-standard-library
|
||||
[docs:plugin.xml]: https://plugins.jetbrains.com/docs/intellij/plugin-configuration-file.html?from=IJPluginTemplate
|
||||
[docs:publishing]: https://plugins.jetbrains.com/docs/intellij/publishing-plugin.html?from=IJPluginTemplate
|
||||
[docs:release-channel]: https://plugins.jetbrains.com/docs/intellij/deployment.html?from=IJPluginTemplate#specifying-a-release-channel
|
||||
[docs:using-gradle]: https://plugins.jetbrains.com/docs/intellij/gradle-build-system.html?from=IJPluginTemplate
|
||||
[docs:plugin-signing]: https://plugins.jetbrains.com/docs/intellij/plugin-signing.html?from=IJPluginTemplate
|
||||
[docs:testing-plugins]: https://plugins.jetbrains.com/docs/intellij/testing-plugins.html
|
||||
[docs:qodana]: https://www.jetbrains.com/help/qodana
|
||||
[docs:qodana-github-action]: https://www.jetbrains.com/help/qodana/qodana-intellij-github-action.html
|
||||
[docs:testing-plugins]: https://plugins.jetbrains.com/docs/intellij/testing-plugins.html?from=IJPluginTemplate
|
||||
|
||||
[file:use-this-template.png]: .github/readme/use-this-template.png
|
||||
[file:draft-release.png]: .github/readme/draft-release.png
|
||||
@ -518,43 +534,49 @@ That approach gives more possibilities for testing and debugging pre-releases, f
|
||||
[file:run-debug-configurations.png]: .github/readme/run-debug-configurations.png
|
||||
[file:settings-secrets.png]: .github/readme/settings-secrets.png
|
||||
[file:template_cleanup.yml]: ./.github/workflows/template-cleanup.yml
|
||||
[file:intellij-platform-plugin-template.png]: ./.github/readme/intellij-platform-plugin-template.png
|
||||
[file:intellij-platform-plugin-template-dark]: ./.github/readme/intellij-platform-plugin-template-dark.svg#gh-dark-mode-only
|
||||
[file:intellij-platform-plugin-template-light]: ./.github/readme/intellij-platform-plugin-template-light.svg#gh-light-mode-only
|
||||
[file:ui-testing.png]: ./.github/readme/ui-testing.png
|
||||
[file:qodana.yml]: ./qodana.yml
|
||||
[file:qodana.png]: .github/readme/qodana.png
|
||||
|
||||
[gh:actions]: https://help.github.com/en/actions
|
||||
[gh:dependabot]: https://docs.github.com/en/free-pro-team@latest/github/administering-a-repository/keeping-your-dependencies-updated-automatically
|
||||
[gh:build]: https://github.com/JetBrains/intellij-platform-plugin-template/actions?query=workflow%3ABuild
|
||||
[gh:code-samples]: https://github.com/JetBrains/intellij-sdk-code-samples
|
||||
[gh:dependabot]: https://docs.github.com/en/free-pro-team@latest/github/administering-a-repository/keeping-your-dependencies-updated-automatically
|
||||
[gh:dependabot-pr]: https://github.com/JetBrains/intellij-platform-plugin-template/pull/73
|
||||
[gh:gradle-changelog-plugin]: https://github.com/JetBrains/gradle-changelog-plugin
|
||||
[gh:gradle-qodana-plugin]: https://github.com/JetBrains/gradle-qodana-plugin
|
||||
[gh:gradle-intellij-plugin]: https://github.com/JetBrains/gradle-intellij-plugin
|
||||
[gh:gradle-intellij-plugin-docs]: https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
[gh:gradle-intellij-plugin-runIde]: https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#runide-task
|
||||
[gh:gradle-intellij-plugin-runPluginVerifier]: https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#runpluginverifier-task
|
||||
[gh:releases]: https://github.com/JetBrains/intellij-platform-plugin-template/releases
|
||||
[gh:build]: https://github.com/JetBrains/intellij-platform-plugin-template/actions?query=workflow%3ABuild
|
||||
[gh:dependabot-pr]: https://github.com/JetBrains/intellij-platform-plugin-template/pull/73
|
||||
[gh:gradle-intellij-plugin-runIde]: https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#tasks-runide
|
||||
[gh:gradle-intellij-plugin-runPluginVerifier]: https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#tasks-runpluginverifier
|
||||
[gh:gradle-qodana-plugin]: https://github.com/JetBrains/gradle-qodana-plugin
|
||||
[gh:intellij-ui-test-robot]: https://github.com/JetBrains/intellij-ui-test-robot
|
||||
[gh:kover]: https://github.com/Kotlin/kotlinx-kover
|
||||
[gh:releases]: https://github.com/JetBrains/intellij-platform-plugin-template/releases
|
||||
[gh:ui-test-example]: https://github.com/JetBrains/intellij-ui-test-robot/tree/master/ui-test-example
|
||||
|
||||
[jb:confluence-on-gh]: https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub
|
||||
[jb:github]: https://github.com/JetBrains/.github/blob/main/profile/README.md
|
||||
[jb:download-ij]: https://www.jetbrains.com/idea/download
|
||||
[jb:forum]: https://intellij-support.jetbrains.com/hc/en-us/community/topics/200366979-IntelliJ-IDEA-Open-API-and-Plugin-Development
|
||||
[jb:ipe]: https://plugins.jetbrains.com/intellij-platform-explorer
|
||||
[jb:my-tokens]: https://plugins.jetbrains.com/author/me/tokens
|
||||
[jb:paid-plugins]: https://plugins.jetbrains.com/docs/marketplace/paid-plugins-marketplace.html
|
||||
[jb:qodana]: https://www.jetbrains.com/help/qodana
|
||||
[jb:qodana-github-action]: https://www.jetbrains.com/help/qodana/qodana-intellij-github-action.html
|
||||
[jb:quality-guidelines]: https://plugins.jetbrains.com/docs/marketplace/quality-guidelines.html
|
||||
[jb:slack]: https://plugins.jetbrains.com/slack
|
||||
[jb:twitter]: https://twitter.com/JBPlatform
|
||||
[jb:ui-guidelines]: https://jetbrains.github.io/ui
|
||||
|
||||
[keep-a-changelog]: https://keepachangelog.com
|
||||
[keep-a-changelog-how]: https://keepachangelog.com/en/1.0.0/#how
|
||||
[codecov]: https://codecov.io
|
||||
[github-actions-skip-ci]: https://github.blog/changelog/2021-02-08-github-actions-skip-pull-request-and-push-workflows-with-skip-ci/
|
||||
[gradle]: https://gradle.org
|
||||
[gradle-releases]: https://gradle.org/releases
|
||||
[gradle-configuration-cache]: https://docs.gradle.org/current/userguide/configuration_cache.html
|
||||
[gradle-kotlin-dsl]: https://docs.gradle.org/current/userguide/kotlin_dsl.html
|
||||
[gradle-lifecycle-tasks]: https://docs.gradle.org/current/userguide/java_plugin.html#lifecycle_tasks
|
||||
[kotlin-for-plugin-developers]: https://plugins.jetbrains.com/docs/intellij/kotlin.html#adding-kotlin-support
|
||||
[gradle-releases]: https://gradle.org/releases
|
||||
[keep-a-changelog]: https://keepachangelog.com
|
||||
[keep-a-changelog-how]: https://keepachangelog.com/en/1.0.0/#how
|
||||
[semver]: https://semver.org
|
||||
[xpath]: https://www.w3.org/TR/xpath-21/
|
||||
|
@ -1,3 +1,4 @@
|
||||
import org.jetbrains.changelog.Changelog
|
||||
import org.jetbrains.changelog.markdownToHTML
|
||||
|
||||
fun properties(key: String) = project.findProperty(key).toString()
|
||||
@ -6,13 +7,15 @@ plugins {
|
||||
// Java support
|
||||
id("java")
|
||||
// Kotlin support
|
||||
id("org.jetbrains.kotlin.jvm") version "1.7.10"
|
||||
id("org.jetbrains.kotlin.jvm") version "1.7.21"
|
||||
// Gradle IntelliJ Plugin
|
||||
id("org.jetbrains.intellij") version "1.8.0"
|
||||
id("org.jetbrains.intellij") version "1.10.0"
|
||||
// Gradle Changelog Plugin
|
||||
id("org.jetbrains.changelog") version "1.3.1"
|
||||
id("org.jetbrains.changelog") version "2.0.0"
|
||||
// Gradle Qodana Plugin
|
||||
id("org.jetbrains.qodana") version "0.1.13"
|
||||
// Gradle Kover Plugin
|
||||
id("org.jetbrains.kotlinx.kover") version "0.6.1"
|
||||
}
|
||||
|
||||
group = properties("pluginGroup")
|
||||
@ -23,11 +26,9 @@ repositories {
|
||||
mavenCentral()
|
||||
}
|
||||
|
||||
// Set the JVM language level used to compile sources and generate files - Java 11 is required since 2020.3
|
||||
// Set the JVM language level used to build project. Use Java 11 for 2020.3+, and Java 17 for 2022.2+.
|
||||
kotlin {
|
||||
jvmToolchain {
|
||||
languageVersion.set(JavaLanguageVersion.of(11))
|
||||
}
|
||||
jvmToolchain(11)
|
||||
}
|
||||
|
||||
// Configure Gradle IntelliJ Plugin - read more: https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html
|
||||
@ -42,18 +43,23 @@ intellij {
|
||||
|
||||
// Configure Gradle Changelog Plugin - read more: https://github.com/JetBrains/gradle-changelog-plugin
|
||||
changelog {
|
||||
version.set(properties("pluginVersion"))
|
||||
groups.set(emptyList())
|
||||
repositoryUrl.set(properties("pluginRepositoryUrl"))
|
||||
}
|
||||
|
||||
// Configure Gradle Qodana Plugin - read more: https://github.com/JetBrains/gradle-qodana-plugin
|
||||
qodana {
|
||||
cachePath.set(projectDir.resolve(".qodana").canonicalPath)
|
||||
reportPath.set(projectDir.resolve("build/reports/inspections").canonicalPath)
|
||||
cachePath.set(file(".qodana").canonicalPath)
|
||||
reportPath.set(file("build/reports/inspections").canonicalPath)
|
||||
saveReport.set(true)
|
||||
showReport.set(System.getenv("QODANA_SHOW_REPORT")?.toBoolean() ?: false)
|
||||
}
|
||||
|
||||
// Configure Gradle Kover Plugin - read more: https://github.com/Kotlin/kotlinx-kover#configuration
|
||||
kover.xmlReport {
|
||||
onCheck.set(true)
|
||||
}
|
||||
|
||||
tasks {
|
||||
wrapper {
|
||||
gradleVersion = properties("gradleVersion")
|
||||
@ -66,7 +72,7 @@ tasks {
|
||||
|
||||
// Extract the <!-- Plugin description --> section from README.md and provide for the plugin's manifest
|
||||
pluginDescription.set(
|
||||
projectDir.resolve("README.md").readText().lines().run {
|
||||
file("README.md").readText().lines().run {
|
||||
val start = "<!-- Plugin description -->"
|
||||
val end = "<!-- Plugin description end -->"
|
||||
|
||||
@ -74,14 +80,17 @@ tasks {
|
||||
throw GradleException("Plugin description section not found in README.md:\n$start ... $end")
|
||||
}
|
||||
subList(indexOf(start) + 1, indexOf(end))
|
||||
}.joinToString("\n").run { markdownToHTML(this) }
|
||||
}.joinToString("\n").let { markdownToHTML(it) }
|
||||
)
|
||||
|
||||
// Get the latest available change notes from the changelog file
|
||||
changeNotes.set(provider {
|
||||
changelog.run {
|
||||
getOrNull(properties("pluginVersion")) ?: getLatest()
|
||||
}.toHTML()
|
||||
with(changelog) {
|
||||
renderItem(
|
||||
getOrNull(properties("pluginVersion")) ?: getLatest(),
|
||||
Changelog.OutputType.HTML,
|
||||
)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
@ -2,14 +2,15 @@
|
||||
|
||||
pluginGroup = org.jetbrains.plugins.template
|
||||
pluginName = IntelliJ Platform Plugin Template
|
||||
pluginRepositoryUrl = https://github.com/JetBrains/intellij-platform-plugin-template
|
||||
# SemVer format -> https://semver.org
|
||||
pluginVersion = 1.2.0
|
||||
pluginVersion = 1.3.0
|
||||
|
||||
# Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html
|
||||
pluginSinceBuild = 213
|
||||
pluginUntilBuild = 222.*
|
||||
pluginUntilBuild = 223.*
|
||||
|
||||
# IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#intellij-extension
|
||||
# IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#configuration-intellij-extension
|
||||
platformType = IC
|
||||
platformVersion = 2021.3.3
|
||||
|
||||
@ -23,3 +24,6 @@ gradleVersion = 7.5.1
|
||||
# Opt-out flag for bundling Kotlin standard library -> https://plugins.jetbrains.com/docs/intellij/kotlin.html#kotlin-standard-library
|
||||
# suppress inspection "UnusedProperty"
|
||||
kotlin.stdlib.default.dependency = false
|
||||
|
||||
# Enable Gradle Configuration Cache -> https://docs.gradle.org/current/userguide/configuration_cache.html
|
||||
org.gradle.unsafe.configuration-cache = true
|
||||
|
@ -11,4 +11,9 @@ class MyProjectService(project: Project) {
|
||||
System.getenv("CI")
|
||||
?: TODO("Don't forget to remove all non-needed sample code files with their corresponding registration entries in `plugin.xml`.")
|
||||
}
|
||||
|
||||
/**
|
||||
* Chosen by fair dice roll, guaranteed to be random.
|
||||
*/
|
||||
fun getRandomNumber() = 4
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!-- Plugin Configuration File. Read more: https://plugins.jetbrains.com/docs/intellij/plugin-configuration-file.html -->
|
||||
<idea-plugin>
|
||||
<id>org.jetbrains.plugins.template</id>
|
||||
<name>Template</name>
|
||||
<name>IntelliJ Platform Plugin Template</name>
|
||||
<vendor>JetBrains</vendor>
|
||||
|
||||
<depends>com.intellij.modules.platform</depends>
|
||||
|
@ -1,10 +1,12 @@
|
||||
package org.jetbrains.plugins.template
|
||||
|
||||
import com.intellij.ide.highlighter.XmlFileType
|
||||
import com.intellij.openapi.components.service
|
||||
import com.intellij.psi.xml.XmlFile
|
||||
import com.intellij.testFramework.TestDataPath
|
||||
import com.intellij.testFramework.fixtures.BasePlatformTestCase
|
||||
import com.intellij.util.PsiErrorElementUtil
|
||||
import org.jetbrains.plugins.template.services.MyProjectService
|
||||
|
||||
@TestDataPath("\$CONTENT_ROOT/src/test/testData")
|
||||
class MyPluginTest : BasePlatformTestCase() {
|
||||
@ -23,9 +25,15 @@ class MyPluginTest : BasePlatformTestCase() {
|
||||
}
|
||||
}
|
||||
|
||||
override fun getTestDataPath() = "src/test/testData/rename"
|
||||
|
||||
fun testRename() {
|
||||
myFixture.testRename("foo.xml", "foo_after.xml", "a2")
|
||||
}
|
||||
|
||||
fun testProjectService() {
|
||||
val projectService = project.service<MyProjectService>()
|
||||
|
||||
assertEquals(4, projectService.getRandomNumber())
|
||||
}
|
||||
|
||||
override fun getTestDataPath() = "src/test/testData/rename"
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user