tutorial-release-schedule.svg 5.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?xml version="1.0" standalone="yes"?>
  2. <svg width="520" height="220" version="1.1" xmlns="http://www.w3.org/2000/svg">
  3. <marker id="arrow" viewBox="-1 0 12 10" refX="10.5" refY="5" markerWidth="8" markerHeight="8" orient="auto">
  4. <path d="M 0 0 L 10 5 L 0 10"/>
  5. </marker>
  6. <g transform="translate(0,40)">
  7. <!-- master -->
  8. <text x="60" y="30" text-anchor="end" alignment-baseline="middle">master</text>
  9. <path d="M70 30 H 500" stroke-width="2" stroke="black"/>
  10. <!-- v2.0 -->
  11. <g>
  12. <path d="M100 30 l 20 30 H 200" stroke-width="2" stroke="black" fill="transparent"/>
  13. <text x="110" y="60" text-anchor="end" alignment-baseline="middle">2.0</text>
  14. <circle cx="120" cy="60" r="5"/>
  15. <text x="110" y="60" text-anchor="end" alignment-baseline="middle" transform="rotate(-60 120,60)">v2.0.0-beta0</text>
  16. <circle cx="200" cy="60" r="5"/>
  17. <text x="190" y="60" text-anchor="end" alignment-baseline="middle" transform="rotate(-60 200,60)">v2.0.0</text>
  18. </g>
  19. <!-- v2.1 -->
  20. <g transform="translate(130,0)">
  21. <path d="M100 30 l 20 30 H 200" stroke-width="2" stroke="black" fill="transparent"/>
  22. <text x="110" y="60" text-anchor="end" alignment-baseline="middle">2.1</text>
  23. <circle cx="120" cy="60" r="5"/>
  24. <text x="110" y="60" text-anchor="end" alignment-baseline="middle" transform="rotate(-60 120,60)">v2.1.0-beta0</text>
  25. <circle cx="160" cy="60" r="5"/>
  26. <text x="150" y="60" text-anchor="end" alignment-baseline="middle" transform="rotate(-60 160,60)">v2.1.0-beta1</text>
  27. <circle cx="200" cy="60" r="5"/>
  28. <text x="190" y="60" text-anchor="end" alignment-baseline="middle" transform="rotate(-60 200,60)">v2.1.0</text>
  29. </g>
  30. <!-- v3.0 -->
  31. <g transform="translate(260,0)">
  32. <path d="M100 30 l 20 30 H 200" stroke-width="2" stroke="black" fill="transparent"/>
  33. <text x="110" y="60" text-anchor="end" alignment-baseline="middle">3.0</text>
  34. <circle cx="120" cy="60" r="5"/>
  35. <text x="110" y="60" text-anchor="end" alignment-baseline="middle" transform="rotate(-60 120,60)">v3.0.0-beta0</text>
  36. <circle cx="200" cy="60" r="5"/>
  37. <text x="190" y="60" text-anchor="end" alignment-baseline="middle" transform="rotate(-60 200,60)">v3.0.0</text>
  38. </g>
  39. <!-- Bug fixes -->
  40. <g transform="translate(160,30)">
  41. <circle cx="0" cy="0" r="3"/>
  42. <text x="10" y="0" text-anchor="start" alignment-baseline="middle" transform="rotate(-60 0,0)">bug fix</text>
  43. <path d="M0 0 l0,30" marker-end="url(#arrow)" stroke-dasharray="2,2" stroke="#000"/>
  44. </g>
  45. <g transform="translate(260,30)">
  46. <circle cx="0" cy="0" r="3"/>
  47. <text x="10" y="0" text-anchor="start" alignment-baseline="middle" transform="rotate(-60 0,0)">bug fix</text>
  48. <path d="M0 0 l0,30" marker-end="url(#arrow)" stroke-dasharray="2,2" stroke="#000"/>
  49. </g>
  50. <g transform="translate(280,30)">
  51. <circle cx="0" cy="0" r="3"/>
  52. <text x="10" y="0" text-anchor="start" alignment-baseline="middle" transform="rotate(-60 0,0)">bug fix</text>
  53. <path d="M0 0 l0,30" marker-end="url(#arrow)" stroke-dasharray="2,2" stroke="#000"/>
  54. </g>
  55. <g transform="translate(400,30)">
  56. <circle cx="0" cy="0" r="3"/>
  57. <text x="10" y="0" text-anchor="start" alignment-baseline="middle" transform="rotate(-60 0,0)">bug fix</text>
  58. <path d="M0 0 l0,30" marker-end="url(#arrow)" stroke-dasharray="2,2" stroke="#000"/>
  59. </g>
  60. <g transform="translate(430,30)">
  61. <circle cx="0" cy="0" r="3"/>
  62. <text x="10" y="0" text-anchor="start" alignment-baseline="middle" transform="rotate(-60 0,0)">bug fix</text>
  63. <path d="M0 0 l0,30" marker-end="url(#arrow)" stroke-dasharray="2,2" stroke="#000"/>
  64. </g>
  65. <!-- Features -->
  66. <g transform="translate(130,30)">
  67. <circle cx="0" cy="0" r="3"/>
  68. <text x="10" y="0" text-anchor="start" alignment-baseline="middle" transform="rotate(-60 0,0)">feature</text>
  69. </g>
  70. <g transform="translate(200,30)">
  71. <circle cx="0" cy="0" r="3"/>
  72. <text x="10" y="0" text-anchor="start" alignment-baseline="middle" transform="rotate(-60 0,0)">feature</text>
  73. </g>
  74. <g transform="translate(340,30)">
  75. <circle cx="0" cy="0" r="3"/>
  76. <text x="10" y="0" text-anchor="start" alignment-baseline="middle" transform="rotate(-60 0,0)">feature</text>
  77. </g>
  78. <!-- Chromium update -->
  79. <g transform="translate(310,30)">
  80. <circle cx="0" cy="0" r="3"/>
  81. <text x="10" y="0" text-anchor="start" alignment-baseline="middle" transform="rotate(-60 0,0)"><tspan>chromium</tspan><tspan dy="10" x="10">update</tspan></text>
  82. </g>
  83. <!-- Timeline -->
  84. <g transform="translate(100,160)">
  85. <text x="50" y="0" text-anchor="middle" alignment-baseline="text-after-edge">~1 week</text>
  86. <path d="M0 0 l0 10 l0 -5 H100l0 -5l0 10" stroke-width="2" stroke="black" fill="transparent"/>
  87. </g>
  88. <g transform="translate(230,160)">
  89. <text x="50" y="0" text-anchor="middle" alignment-baseline="text-after-edge">~1 week</text>
  90. <path d="M0 0 l0 10 l0 -5 H100l0 -5l0 10" stroke-width="2" stroke="black" fill="transparent"/>
  91. </g>
  92. <g transform="translate(360,160)">
  93. <text x="50" y="0" text-anchor="middle" alignment-baseline="text-after-edge">~1 week</text>
  94. <path d="M0 0 l0 10 l0 -5 H100l0 -5l0 10" stroke-width="2" stroke="black" fill="transparent"/>
  95. </g>
  96. </g>
  97. </svg>