microformats 4.0.7 → 4.0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (366) hide show
  1. checksums.yaml +4 -4
  2. data/.editorconfig +10 -0
  3. data/.gitignore +33 -15
  4. data/.rspec +3 -2
  5. data/.rubocop +3 -0
  6. data/.rubocop.yml +25 -0
  7. data/.ruby-version +1 -0
  8. data/.simplecov +11 -0
  9. data/.travis.yml +14 -2
  10. data/CONTRIBUTING.md +103 -0
  11. data/Guardfile +2 -2
  12. data/LICENSE +116 -0
  13. data/README.md +112 -172
  14. data/Rakefile +6 -7
  15. data/bin/microformats +10 -9
  16. data/lib/microformats.rb +15 -14
  17. data/lib/microformats/absolute_uri.rb +4 -8
  18. data/lib/microformats/format_parser.rb +271 -251
  19. data/lib/microformats/parser.rb +38 -38
  20. data/lib/microformats/parser_core.rb +142 -109
  21. data/lib/microformats/property_parser.rb +42 -65
  22. data/lib/microformats/results/collection.rb +19 -38
  23. data/lib/microformats/results/parser_result.rb +25 -37
  24. data/lib/microformats/results/property_set.rb +24 -31
  25. data/lib/microformats/time_property_parser.rb +122 -118
  26. data/lib/microformats/version.rb +1 -1
  27. data/logo.svg +23 -0
  28. data/microformats.gemspec +35 -33
  29. metadata +140 -442
  30. data/LICENSE.md +0 -36
  31. data/spec/lib/microformats/absolute_uri_spec.rb +0 -56
  32. data/spec/lib/microformats/parser_spec.rb +0 -132
  33. data/spec/lib/microformats_spec.rb +0 -33
  34. data/spec/spec_helper.rb +0 -10
  35. data/spec/support/cases/microformats.org/microformats-2/microformats-2-0.html +0 -2
  36. data/spec/support/cases/microformats.org/microformats-2/microformats-2-0.js +0 -9
  37. data/spec/support/cases/microformats.org/microformats-2/microformats-2-1.html +0 -2
  38. data/spec/support/cases/microformats.org/microformats-2/microformats-2-1.js +0 -10
  39. data/spec/support/cases/microformats.org/microformats-2/microformats-2-2.html +0 -5
  40. data/spec/support/cases/microformats.org/microformats-2/microformats-2-2.js +0 -11
  41. data/spec/support/cases/microformats.org/microformats-2/microformats-2-3.html +0 -17
  42. data/spec/support/cases/microformats.org/microformats-2/microformats-2-3.js +0 -20
  43. data/spec/support/cases/microformats.org/microformats-2/microformats-2-4.html +0 -16
  44. data/spec/support/cases/microformats.org/microformats-2/microformats-2-4.js +0 -24
  45. data/spec/support/cases/microformats.org/microformats-2/microformats-2-5.html +0 -7
  46. data/spec/support/cases/microformats.org/microformats-2/microformats-2-5.js +0 -11
  47. data/spec/support/cases/microformats.org/microformats-2/microformats-2-6.html +0 -9
  48. data/spec/support/cases/microformats.org/microformats-2/microformats-2-6.js +0 -18
  49. data/spec/support/cases/microformats.org/microformats-2/microformats-2-7.html +0 -9
  50. data/spec/support/cases/microformats.org/microformats-2/microformats-2-7.js +0 -18
  51. data/spec/support/cases/microformats.org/microformats-2/microformats-2-8.html +0 -9
  52. data/spec/support/cases/microformats.org/microformats-2/microformats-2-8.js +0 -17
  53. data/spec/support/cases/microformats.org/microformats-2/microformats-2-9.html +0 -9
  54. data/spec/support/cases/microformats.org/microformats-2/microformats-2-9.js +0 -17
  55. data/spec/support/lib/edge_cases/blank_href.html +0 -23
  56. data/spec/support/lib/edge_cases/blank_href.js +0 -15
  57. data/spec/support/lib/edge_cases/blank_rel.html +0 -23
  58. data/spec/support/lib/edge_cases/blank_rel.js +0 -41
  59. data/spec/support/lib/edge_cases/blank_src.html +0 -24
  60. data/spec/support/lib/edge_cases/blank_src.js +0 -16
  61. data/spec/support/lib/edge_cases/blank_value.html +0 -5
  62. data/spec/support/lib/edge_cases/blank_value.js +0 -19
  63. data/spec/support/lib/edge_cases/relative.html +0 -29
  64. data/spec/support/lib/edge_cases/relative.js +0 -15
  65. data/spec/support/lib/edge_cases/vcp-dates.html +0 -13
  66. data/spec/support/lib/edge_cases/vcp-dates.js +0 -30
  67. data/spec/support/lib/microformats/blank_href.html +0 -23
  68. data/spec/support/lib/microformats/blank_href.js +0 -11
  69. data/spec/support/lib/microformats/implied_property/name-fail.html +0 -60
  70. data/spec/support/lib/microformats/implied_property/name-pass.html +0 -30
  71. data/spec/support/lib/microformats/implied_property/photo-fail.html +0 -60
  72. data/spec/support/lib/microformats/implied_property/photo-pass.html +0 -30
  73. data/spec/support/lib/microformats/implied_property/url-fail.html +0 -18
  74. data/spec/support/lib/microformats/implied_property/url-pass.html +0 -12
  75. data/spec/support/lib/microformats/implied_property/url-relative.html +0 -13
  76. data/spec/support/lib/microformats/implied_property/url-unnormalized.html +0 -12
  77. data/spec/support/lib/microformats/nested-format-with-property-of-same-name.html +0 -13
  78. data/spec/support/lib/microformats/nested-format-with-property-of-same-name.js +0 -16
  79. data/spec/support/lib/microformats/nested-format-with-property.html +0 -12
  80. data/spec/support/lib/microformats/nested-format-with-property.js +0 -16
  81. data/spec/support/lib/microformats/nested-format-without-property.html +0 -13
  82. data/spec/support/lib/microformats/nested-property.html +0 -12
  83. data/spec/support/lib/microformats/nested-property.js +0 -10
  84. data/spec/support/lib/microformats/rels-that-drop-the-base.html +0 -11
  85. data/spec/support/lib/microformats/rels-with-unnormalized-urls.html +0 -11
  86. data/spec/support/lib/microformats/rels.html +0 -12
  87. data/spec/support/lib/microformats/rels.js +0 -13
  88. data/spec/support/lib/microformats/simple.html +0 -23
  89. data/spec/support/lib/microformats/simple.js +0 -11
  90. data/vendor/tests/.gitignore +0 -25
  91. data/vendor/tests/LICENSE.md +0 -36
  92. data/vendor/tests/README.md +0 -48
  93. data/vendor/tests/app.js +0 -84
  94. data/vendor/tests/composer.json +0 -5
  95. data/vendor/tests/css/testsuite.css +0 -159
  96. data/vendor/tests/interface.js +0 -18
  97. data/vendor/tests/package.json +0 -27
  98. data/vendor/tests/tests/microformats-mixed/h-card/change-log.html +0 -63
  99. data/vendor/tests/tests/microformats-mixed/h-card/mixedpropertries.html +0 -14
  100. data/vendor/tests/tests/microformats-mixed/h-card/mixedpropertries.json +0 -22
  101. data/vendor/tests/tests/microformats-mixed/h-card/tworoots.html +0 -1
  102. data/vendor/tests/tests/microformats-mixed/h-card/tworoots.json +0 -10
  103. data/vendor/tests/tests/microformats-mixed/h-entry/mixedroots.html +0 -16
  104. data/vendor/tests/tests/microformats-mixed/h-entry/mixedroots.json +0 -38
  105. data/vendor/tests/tests/microformats-mixed/h-resume/change-log.html +0 -68
  106. data/vendor/tests/tests/microformats-mixed/h-resume/mixedroots.html +0 -16
  107. data/vendor/tests/tests/microformats-mixed/h-resume/mixedroots.json +0 -31
  108. data/vendor/tests/tests/microformats-v1/adr/change-log.html +0 -63
  109. data/vendor/tests/tests/microformats-v1/adr/simpleproperties.html +0 -8
  110. data/vendor/tests/tests/microformats-v1/adr/simpleproperties.json +0 -15
  111. data/vendor/tests/tests/microformats-v1/geo/abbrpattern.html +0 -5
  112. data/vendor/tests/tests/microformats-v1/geo/abbrpattern.json +0 -11
  113. data/vendor/tests/tests/microformats-v1/geo/change-log.1.html +0 -78
  114. data/vendor/tests/tests/microformats-v1/geo/change-log.html +0 -63
  115. data/vendor/tests/tests/microformats-v1/geo/hidden.html +0 -10
  116. data/vendor/tests/tests/microformats-v1/geo/hidden.json +0 -11
  117. data/vendor/tests/tests/microformats-v1/geo/simpleproperties.html +0 -6
  118. data/vendor/tests/tests/microformats-v1/geo/simpleproperties.json +0 -11
  119. data/vendor/tests/tests/microformats-v1/geo/valuetitleclass.html +0 -11
  120. data/vendor/tests/tests/microformats-v1/geo/valuetitleclass.json +0 -11
  121. data/vendor/tests/tests/microformats-v1/hcalendar/ampm.html +0 -41
  122. data/vendor/tests/tests/microformats-v1/hcalendar/ampm.json +0 -21
  123. data/vendor/tests/tests/microformats-v1/hcalendar/attendees.html +0 -13
  124. data/vendor/tests/tests/microformats-v1/hcalendar/attendees.json +0 -37
  125. data/vendor/tests/tests/microformats-v1/hcalendar/change-log.html +0 -68
  126. data/vendor/tests/tests/microformats-v1/hcalendar/combining.html +0 -15
  127. data/vendor/tests/tests/microformats-v1/hcalendar/combining.json +0 -31
  128. data/vendor/tests/tests/microformats-v1/hcalendar/concatenate.html +0 -7
  129. data/vendor/tests/tests/microformats-v1/hcalendar/concatenate.json +0 -12
  130. data/vendor/tests/tests/microformats-v1/hcalendar/time.html +0 -44
  131. data/vendor/tests/tests/microformats-v1/hcalendar/time.json +0 -22
  132. data/vendor/tests/tests/microformats-v1/hcard/change-log.html +0 -68
  133. data/vendor/tests/tests/microformats-v1/hcard/email.html +0 -14
  134. data/vendor/tests/tests/microformats-v1/hcard/email.json +0 -11
  135. data/vendor/tests/tests/microformats-v1/hcard/format.html +0 -6
  136. data/vendor/tests/tests/microformats-v1/hcard/format.json +0 -11
  137. data/vendor/tests/tests/microformats-v1/hcard/hyperlinkedphoto.html +0 -3
  138. data/vendor/tests/tests/microformats-v1/hcard/hyperlinkedphoto.json +0 -8
  139. data/vendor/tests/tests/microformats-v1/hcard/justahyperlink.html +0 -1
  140. data/vendor/tests/tests/microformats-v1/hcard/justahyperlink.json +0 -8
  141. data/vendor/tests/tests/microformats-v1/hcard/justaname.html +0 -1
  142. data/vendor/tests/tests/microformats-v1/hcard/justaname.json +0 -8
  143. data/vendor/tests/tests/microformats-v1/hcard/multiple.html +0 -74
  144. data/vendor/tests/tests/microformats-v1/hcard/multiple.json +0 -65
  145. data/vendor/tests/tests/microformats-v1/hcard/name.html +0 -11
  146. data/vendor/tests/tests/microformats-v1/hcard/name.json +0 -15
  147. data/vendor/tests/tests/microformats-v1/hcard/single.html +0 -14
  148. data/vendor/tests/tests/microformats-v1/hcard/single.json +0 -24
  149. data/vendor/tests/tests/microformats-v1/hentry/change-log.html +0 -73
  150. data/vendor/tests/tests/microformats-v1/hentry/summarycontent.html +0 -20
  151. data/vendor/tests/tests/microformats-v1/hentry/summarycontent.json +0 -24
  152. data/vendor/tests/tests/microformats-v1/hfeed/simple.html +0 -30
  153. data/vendor/tests/tests/microformats-v1/hfeed/simple.json +0 -49
  154. data/vendor/tests/tests/microformats-v1/hnews/all.html +0 -37
  155. data/vendor/tests/tests/microformats-v1/hnews/all.json +0 -74
  156. data/vendor/tests/tests/microformats-v1/hnews/change-log.html +0 -72
  157. data/vendor/tests/tests/microformats-v1/hnews/minimum.html +0 -25
  158. data/vendor/tests/tests/microformats-v1/hnews/minimum.json +0 -48
  159. data/vendor/tests/tests/microformats-v1/hproduct/aggregate.html +0 -26
  160. data/vendor/tests/tests/microformats-v1/hproduct/aggregate.json +0 -52
  161. data/vendor/tests/tests/microformats-v1/hproduct/change-log.html +0 -62
  162. data/vendor/tests/tests/microformats-v1/hproduct/simpleproperties.html +0 -13
  163. data/vendor/tests/tests/microformats-v1/hproduct/simpleproperties.json +0 -33
  164. data/vendor/tests/tests/microformats-v1/hresume/affiliation.html +0 -12
  165. data/vendor/tests/tests/microformats-v1/hresume/affiliation.json +0 -25
  166. data/vendor/tests/tests/microformats-v1/hresume/change-log.html +0 -73
  167. data/vendor/tests/tests/microformats-v1/hresume/contact.html +0 -18
  168. data/vendor/tests/tests/microformats-v1/hresume/contact.json +0 -32
  169. data/vendor/tests/tests/microformats-v1/hresume/education.html +0 -13
  170. data/vendor/tests/tests/microformats-v1/hresume/education.json +0 -29
  171. data/vendor/tests/tests/microformats-v1/hresume/skill.html +0 -12
  172. data/vendor/tests/tests/microformats-v1/hresume/skill.json +0 -33
  173. data/vendor/tests/tests/microformats-v1/hresume/work.html +0 -16
  174. data/vendor/tests/tests/microformats-v1/hresume/work.json +0 -30
  175. data/vendor/tests/tests/microformats-v1/hreview-aggregate/change-log.html +0 -67
  176. data/vendor/tests/tests/microformats-v1/hreview-aggregate/hcard.html +0 -18
  177. data/vendor/tests/tests/microformats-v1/hreview-aggregate/hcard.json +0 -31
  178. data/vendor/tests/tests/microformats-v1/hreview-aggregate/justahyperlink.html +0 -6
  179. data/vendor/tests/tests/microformats-v1/hreview-aggregate/justahyperlink.json +0 -19
  180. data/vendor/tests/tests/microformats-v1/hreview-aggregate/vevent.html +0 -13
  181. data/vendor/tests/tests/microformats-v1/hreview-aggregate/vevent.json +0 -22
  182. data/vendor/tests/tests/microformats-v1/hreview/change-log.html +0 -73
  183. data/vendor/tests/tests/microformats-v1/hreview/item.html +0 -8
  184. data/vendor/tests/tests/microformats-v1/hreview/item.json +0 -19
  185. data/vendor/tests/tests/microformats-v1/hreview/vcard.html +0 -23
  186. data/vendor/tests/tests/microformats-v1/hreview/vcard.json +0 -58
  187. data/vendor/tests/tests/microformats-v1/includes/change-log.html +0 -72
  188. data/vendor/tests/tests/microformats-v1/includes/hcarditemref.html +0 -16
  189. data/vendor/tests/tests/microformats-v1/includes/hcarditemref.json +0 -49
  190. data/vendor/tests/tests/microformats-v1/includes/heventitemref.html +0 -25
  191. data/vendor/tests/tests/microformats-v1/includes/heventitemref.json +0 -33
  192. data/vendor/tests/tests/microformats-v1/includes/hyperlink.html +0 -18
  193. data/vendor/tests/tests/microformats-v1/includes/hyperlink.json +0 -43
  194. data/vendor/tests/tests/microformats-v1/includes/object.html +0 -23
  195. data/vendor/tests/tests/microformats-v1/includes/object.json +0 -42
  196. data/vendor/tests/tests/microformats-v1/includes/table.html +0 -12
  197. data/vendor/tests/tests/microformats-v1/includes/table.json +0 -19
  198. data/vendor/tests/tests/microformats-v2/h-adr/change-log.html +0 -62
  199. data/vendor/tests/tests/microformats-v2/h-adr/geo.html +0 -10
  200. data/vendor/tests/tests/microformats-v2/h-adr/geo.json +0 -16
  201. data/vendor/tests/tests/microformats-v2/h-adr/geourl.html +0 -4
  202. data/vendor/tests/tests/microformats-v2/h-adr/geourl.json +0 -13
  203. data/vendor/tests/tests/microformats-v2/h-adr/justaname.html +0 -1
  204. data/vendor/tests/tests/microformats-v2/h-adr/justaname.json +0 -10
  205. data/vendor/tests/tests/microformats-v2/h-adr/lettercase.html +0 -21
  206. data/vendor/tests/tests/microformats-v2/h-adr/lettercase.json +0 -12
  207. data/vendor/tests/tests/microformats-v2/h-adr/simpleproperties.html +0 -8
  208. data/vendor/tests/tests/microformats-v2/h-adr/simpleproperties.json +0 -16
  209. data/vendor/tests/tests/microformats-v2/h-as-note/note.html +0 -56
  210. data/vendor/tests/tests/microformats-v2/h-as-note/note.json +0 -98
  211. data/vendor/tests/tests/microformats-v2/h-card/baseurl.html +0 -6
  212. data/vendor/tests/tests/microformats-v2/h-card/baseurl.json +0 -26
  213. data/vendor/tests/tests/microformats-v2/h-card/change-log.html +0 -100
  214. data/vendor/tests/tests/microformats-v2/h-card/childimplied.html +0 -7
  215. data/vendor/tests/tests/microformats-v2/h-card/childimplied.json +0 -12
  216. data/vendor/tests/tests/microformats-v2/h-card/extendeddescription.html +0 -10
  217. data/vendor/tests/tests/microformats-v2/h-card/extendeddescription.json +0 -15
  218. data/vendor/tests/tests/microformats-v2/h-card/hcard.html +0 -4
  219. data/vendor/tests/tests/microformats-v2/h-card/hcard.json +0 -19
  220. data/vendor/tests/tests/microformats-v2/h-card/horghcard.html +0 -4
  221. data/vendor/tests/tests/microformats-v2/h-card/horghcard.json +0 -19
  222. data/vendor/tests/tests/microformats-v2/h-card/hyperlinkedphoto.html +0 -3
  223. data/vendor/tests/tests/microformats-v2/h-card/hyperlinkedphoto.json +0 -12
  224. data/vendor/tests/tests/microformats-v2/h-card/impliedname.html +0 -15
  225. data/vendor/tests/tests/microformats-v2/h-card/impliedname.json +0 -90
  226. data/vendor/tests/tests/microformats-v2/h-card/impliedphoto.html +0 -11
  227. data/vendor/tests/tests/microformats-v2/h-card/impliedphoto.json +0 -72
  228. data/vendor/tests/tests/microformats-v2/h-card/impliedurl.html +0 -5
  229. data/vendor/tests/tests/microformats-v2/h-card/impliedurl.json +0 -45
  230. data/vendor/tests/tests/microformats-v2/h-card/justahyperlink.html +0 -1
  231. data/vendor/tests/tests/microformats-v2/h-card/justahyperlink.json +0 -11
  232. data/vendor/tests/tests/microformats-v2/h-card/justaname.html +0 -1
  233. data/vendor/tests/tests/microformats-v2/h-card/justaname.json +0 -10
  234. data/vendor/tests/tests/microformats-v2/h-card/nested.html +0 -4
  235. data/vendor/tests/tests/microformats-v2/h-card/nested.json +0 -18
  236. data/vendor/tests/tests/microformats-v2/h-card/p-property.html +0 -21
  237. data/vendor/tests/tests/microformats-v2/h-card/p-property.json +0 -15
  238. data/vendor/tests/tests/microformats-v2/h-card/relativeurls.html +0 -6
  239. data/vendor/tests/tests/microformats-v2/h-card/relativeurls.json +0 -29
  240. data/vendor/tests/tests/microformats-v2/h-entry/change-log.html +0 -90
  241. data/vendor/tests/tests/microformats-v2/h-entry/encoding.html +0 -3
  242. data/vendor/tests/tests/microformats-v2/h-entry/encoding.json +0 -14
  243. data/vendor/tests/tests/microformats-v2/h-entry/impliedvalue-nested.html +0 -9
  244. data/vendor/tests/tests/microformats-v2/h-entry/impliedvalue-nested.json +0 -27
  245. data/vendor/tests/tests/microformats-v2/h-entry/justahyperlink.html +0 -1
  246. data/vendor/tests/tests/microformats-v2/h-entry/justahyperlink.json +0 -11
  247. data/vendor/tests/tests/microformats-v2/h-entry/justaname.html +0 -1
  248. data/vendor/tests/tests/microformats-v2/h-entry/justaname.json +0 -10
  249. data/vendor/tests/tests/microformats-v2/h-entry/scriptstyletags.html +0 -4
  250. data/vendor/tests/tests/microformats-v2/h-entry/scriptstyletags.json +0 -14
  251. data/vendor/tests/tests/microformats-v2/h-entry/summarycontent.html +0 -20
  252. data/vendor/tests/tests/microformats-v2/h-entry/summarycontent.json +0 -25
  253. data/vendor/tests/tests/microformats-v2/h-entry/u-property.html +0 -33
  254. data/vendor/tests/tests/microformats-v2/h-entry/u-property.json +0 -12
  255. data/vendor/tests/tests/microformats-v2/h-entry/urlincontent.html +0 -13
  256. data/vendor/tests/tests/microformats-v2/h-entry/urlincontent.json +0 -14
  257. data/vendor/tests/tests/microformats-v2/h-event/ampm.html +0 -41
  258. data/vendor/tests/tests/microformats-v2/h-event/ampm.json +0 -21
  259. data/vendor/tests/tests/microformats-v2/h-event/attendees.html +0 -13
  260. data/vendor/tests/tests/microformats-v2/h-event/attendees.json +0 -37
  261. data/vendor/tests/tests/microformats-v2/h-event/change-log.html +0 -82
  262. data/vendor/tests/tests/microformats-v2/h-event/combining.html +0 -13
  263. data/vendor/tests/tests/microformats-v2/h-event/combining.json +0 -25
  264. data/vendor/tests/tests/microformats-v2/h-event/concatenate.html +0 -8
  265. data/vendor/tests/tests/microformats-v2/h-event/concatenate.json +0 -12
  266. data/vendor/tests/tests/microformats-v2/h-event/dates.html +0 -13
  267. data/vendor/tests/tests/microformats-v2/h-event/dates.json +0 -26
  268. data/vendor/tests/tests/microformats-v2/h-event/dt-property.html +0 -23
  269. data/vendor/tests/tests/microformats-v2/h-event/dt-property.json +0 -20
  270. data/vendor/tests/tests/microformats-v2/h-event/justahyperlink.html +0 -1
  271. data/vendor/tests/tests/microformats-v2/h-event/justahyperlink.json +0 -11
  272. data/vendor/tests/tests/microformats-v2/h-event/justaname.html +0 -1
  273. data/vendor/tests/tests/microformats-v2/h-event/justaname.json +0 -10
  274. data/vendor/tests/tests/microformats-v2/h-event/time.html +0 -47
  275. data/vendor/tests/tests/microformats-v2/h-event/time.json +0 -25
  276. data/vendor/tests/tests/microformats-v2/h-feed/implied-title.html +0 -30
  277. data/vendor/tests/tests/microformats-v2/h-feed/implied-title.json +0 -23
  278. data/vendor/tests/tests/microformats-v2/h-feed/simple.html +0 -26
  279. data/vendor/tests/tests/microformats-v2/h-feed/simple.json +0 -33
  280. data/vendor/tests/tests/microformats-v2/h-geo/abbrpattern.html +0 -5
  281. data/vendor/tests/tests/microformats-v2/h-geo/abbrpattern.json +0 -12
  282. data/vendor/tests/tests/microformats-v2/h-geo/altitude.html +0 -8
  283. data/vendor/tests/tests/microformats-v2/h-geo/altitude.json +0 -13
  284. data/vendor/tests/tests/microformats-v2/h-geo/change-log.html +0 -67
  285. data/vendor/tests/tests/microformats-v2/h-geo/hidden.html +0 -10
  286. data/vendor/tests/tests/microformats-v2/h-geo/hidden.json +0 -12
  287. data/vendor/tests/tests/microformats-v2/h-geo/justaname.html +0 -3
  288. data/vendor/tests/tests/microformats-v2/h-geo/justaname.json +0 -10
  289. data/vendor/tests/tests/microformats-v2/h-geo/simpleproperties.html +0 -5
  290. data/vendor/tests/tests/microformats-v2/h-geo/simpleproperties.json +0 -12
  291. data/vendor/tests/tests/microformats-v2/h-geo/valuetitleclass.html +0 -11
  292. data/vendor/tests/tests/microformats-v2/h-geo/valuetitleclass.json +0 -12
  293. data/vendor/tests/tests/microformats-v2/h-news/all.html +0 -35
  294. data/vendor/tests/tests/microformats-v2/h-news/all.json +0 -51
  295. data/vendor/tests/tests/microformats-v2/h-news/change-log.html +0 -78
  296. data/vendor/tests/tests/microformats-v2/h-news/minimum.html +0 -24
  297. data/vendor/tests/tests/microformats-v2/h-news/minimum.json +0 -40
  298. data/vendor/tests/tests/microformats-v2/h-org/change-log.html +0 -57
  299. data/vendor/tests/tests/microformats-v2/h-org/hyperlink.html +0 -1
  300. data/vendor/tests/tests/microformats-v2/h-org/hyperlink.json +0 -11
  301. data/vendor/tests/tests/microformats-v2/h-org/simple.html +0 -1
  302. data/vendor/tests/tests/microformats-v2/h-org/simple.json +0 -10
  303. data/vendor/tests/tests/microformats-v2/h-org/simpleproperties.html +0 -4
  304. data/vendor/tests/tests/microformats-v2/h-org/simpleproperties.json +0 -12
  305. data/vendor/tests/tests/microformats-v2/h-product/aggregate.html +0 -21
  306. data/vendor/tests/tests/microformats-v2/h-product/aggregate.json +0 -45
  307. data/vendor/tests/tests/microformats-v2/h-product/change-log.html +0 -62
  308. data/vendor/tests/tests/microformats-v2/h-product/justahyperlink.html +0 -1
  309. data/vendor/tests/tests/microformats-v2/h-product/justahyperlink.json +0 -11
  310. data/vendor/tests/tests/microformats-v2/h-product/justaname.html +0 -1
  311. data/vendor/tests/tests/microformats-v2/h-product/justaname.json +0 -10
  312. data/vendor/tests/tests/microformats-v2/h-product/simpleproperties.html +0 -10
  313. data/vendor/tests/tests/microformats-v2/h-product/simpleproperties.json +0 -26
  314. data/vendor/tests/tests/microformats-v2/h-recipe/all.html +0 -63
  315. data/vendor/tests/tests/microformats-v2/h-recipe/all.json +0 -54
  316. data/vendor/tests/tests/microformats-v2/h-recipe/change-log.html +0 -62
  317. data/vendor/tests/tests/microformats-v2/h-recipe/minimum.html +0 -7
  318. data/vendor/tests/tests/microformats-v2/h-recipe/minimum.json +0 -17
  319. data/vendor/tests/tests/microformats-v2/h-resume/affiliation.html +0 -12
  320. data/vendor/tests/tests/microformats-v2/h-resume/affiliation.json +0 -20
  321. data/vendor/tests/tests/microformats-v2/h-resume/change-log.html +0 -78
  322. data/vendor/tests/tests/microformats-v2/h-resume/contact.html +0 -17
  323. data/vendor/tests/tests/microformats-v2/h-resume/contact.json +0 -26
  324. data/vendor/tests/tests/microformats-v2/h-resume/education.html +0 -13
  325. data/vendor/tests/tests/microformats-v2/h-resume/education.json +0 -30
  326. data/vendor/tests/tests/microformats-v2/h-resume/justaname.html +0 -1
  327. data/vendor/tests/tests/microformats-v2/h-resume/justaname.json +0 -10
  328. data/vendor/tests/tests/microformats-v2/h-resume/skill.html +0 -12
  329. data/vendor/tests/tests/microformats-v2/h-resume/skill.json +0 -12
  330. data/vendor/tests/tests/microformats-v2/h-resume/work.html +0 -16
  331. data/vendor/tests/tests/microformats-v2/h-resume/work.json +0 -31
  332. data/vendor/tests/tests/microformats-v2/h-review-aggregate/change-log.html +0 -78
  333. data/vendor/tests/tests/microformats-v2/h-review-aggregate/hevent.html +0 -13
  334. data/vendor/tests/tests/microformats-v2/h-review-aggregate/hevent.json +0 -23
  335. data/vendor/tests/tests/microformats-v2/h-review-aggregate/justahyperlink.html +0 -8
  336. data/vendor/tests/tests/microformats-v2/h-review-aggregate/justahyperlink.json +0 -19
  337. data/vendor/tests/tests/microformats-v2/h-review-aggregate/simpleproperties.html +0 -18
  338. data/vendor/tests/tests/microformats-v2/h-review-aggregate/simpleproperties.json +0 -26
  339. data/vendor/tests/tests/microformats-v2/h-review/change-log.html +0 -84
  340. data/vendor/tests/tests/microformats-v2/h-review/hyperlink.html +0 -1
  341. data/vendor/tests/tests/microformats-v2/h-review/hyperlink.json +0 -11
  342. data/vendor/tests/tests/microformats-v2/h-review/implieditem.html +0 -4
  343. data/vendor/tests/tests/microformats-v2/h-review/implieditem.json +0 -19
  344. data/vendor/tests/tests/microformats-v2/h-review/item.html +0 -8
  345. data/vendor/tests/tests/microformats-v2/h-review/item.json +0 -20
  346. data/vendor/tests/tests/microformats-v2/h-review/justaname.html +0 -1
  347. data/vendor/tests/tests/microformats-v2/h-review/justaname.json +0 -10
  348. data/vendor/tests/tests/microformats-v2/h-review/photo.html +0 -1
  349. data/vendor/tests/tests/microformats-v2/h-review/photo.json +0 -11
  350. data/vendor/tests/tests/microformats-v2/h-review/vcard.html +0 -23
  351. data/vendor/tests/tests/microformats-v2/h-review/vcard.json +0 -48
  352. data/vendor/tests/tests/microformats-v2/rel/change-log.html +0 -67
  353. data/vendor/tests/tests/microformats-v2/rel/duplicate-rels.html +0 -10
  354. data/vendor/tests/tests/microformats-v2/rel/duplicate-rels.json +0 -75
  355. data/vendor/tests/tests/microformats-v2/rel/license.html +0 -1
  356. data/vendor/tests/tests/microformats-v2/rel/license.json +0 -12
  357. data/vendor/tests/tests/microformats-v2/rel/nofollow.html +0 -1
  358. data/vendor/tests/tests/microformats-v2/rel/nofollow.json +0 -12
  359. data/vendor/tests/tests/microformats-v2/rel/rel-urls.html +0 -8
  360. data/vendor/tests/tests/microformats-v2/rel/rel-urls.json +0 -33
  361. data/vendor/tests/tests/microformats-v2/rel/varying-text-duplicate-rels.html +0 -4
  362. data/vendor/tests/tests/microformats-v2/rel/varying-text-duplicate-rels.json +0 -20
  363. data/vendor/tests/tests/microformats-v2/rel/xfn-all.html +0 -19
  364. data/vendor/tests/tests/microformats-v2/rel/xfn-all.json +0 -92
  365. data/vendor/tests/tests/microformats-v2/rel/xfn-elsewhere.html +0 -10
  366. data/vendor/tests/tests/microformats-v2/rel/xfn-elsewhere.json +0 -40
@@ -1,7 +1,6 @@
1
1
  module Microformats
2
2
  class TimePropertyParser < ParserCore
3
-
4
- def parse(element, base: nil, element_type: , format_class_array: [], backcompat: nil)
3
+ def parse(element, base: nil, element_type:, format_class_array: [], backcompat: nil)
5
4
  @base = base
6
5
  @duration_value = nil
7
6
  @date_value = nil
@@ -15,32 +14,32 @@ module Microformats
15
14
 
16
15
  parse_value_class_pattern(element)
17
16
 
18
- if @duration_value.nil? and @time_value.nil? and @date_value.nil? and @tz_value.nil?
19
-
20
- value = nil
21
- if ['time', 'ins', 'del'].include? element.name and not element.attribute('datetime').nil?
22
- value = element.attribute('datetime').value.strip
23
- elsif element.name == 'abbr' and not element.attribute('title').nil?
24
- value = element.attribute('title').value.strip
25
- elsif (element.name == 'data' or element.name == 'input') and not element.attribute('value').nil?
26
- value = element.attribute('value').value.strip
27
- else
28
- value = element.text.strip
29
- end
17
+ if @duration_value.nil? && @time_value.nil? && @date_value.nil? && @tz_value.nil?
18
+ value =
19
+ if %w[time ins del].include?(element.name) && !element.attribute('datetime').nil?
20
+ element.attribute('datetime').value.strip
21
+ elsif element.name == 'abbr' && !element.attribute('title').nil?
22
+ element.attribute('title').value.strip
23
+ elsif (element.name == 'data' || element.name == 'input') && !element.attribute('value').nil?
24
+ element.attribute('value').value.strip
25
+ else
26
+ element.text.strip
27
+ end
30
28
 
31
29
  parse_dt(value)
32
-
33
30
  end
34
31
 
35
- if not @duration_value.nil?
32
+ if !@duration_value.nil?
36
33
  @duration_value
37
34
  else
38
35
  result = nil
39
36
  result = result.to_s + @date_value unless @date_value.nil?
40
- unless @time_value.nil?
41
- result = result.to_s + ' ' unless result.nil?
42
- result = result.to_s + @time_value
37
+
38
+ unless @time_value.nil?
39
+ result = result.to_s + ' ' unless result.nil?
40
+ result = result.to_s + @time_value
43
41
  end
42
+
44
43
  result = result.to_s + @tz_value unless @tz_value.nil?
45
44
  result
46
45
  end
@@ -51,133 +50,138 @@ module Microformats
51
50
  end
52
51
 
53
52
  def parse_element(element)
54
-
55
- if @duration_value.nil? or (@time_value.nil? and @date_value.nil? and @tz_value.nil?)
53
+ if @duration_value.nil? || (@time_value.nil? && @date_value.nil? && @tz_value.nil?)
56
54
  if value_title_classes(element).length >= 1
57
- value = element.attribute('title').value.strip
55
+ value = element.attribute('title').value.strip
58
56
  elsif value_classes(element).length >= 1
59
- if element.name == 'img' or element.name == 'area' and not element.attribute('alt').nil?
60
- value = element.attribute('alt').value.strip
61
- elsif element.name == 'data' and not element.attribute('value').nil?
62
- value = element.attribute('value').value.strip
63
- elsif element.name == 'abbr' and not element.attribute('title').nil?
64
- value = element.attribute('title').value.strip
65
- elsif ['time', 'ins', 'del'].include? element.name and not element.attribute('datetime').nil?
66
- value = element.attribute('datetime').value.strip
67
- else
68
- value = element.text.strip
69
- end
57
+ value =
58
+ if element.name == 'img' || element.name == 'area' && !element.attribute('alt').nil?
59
+ element.attribute('alt').value.strip
60
+ elsif element.name == 'data' && !element.attribute('value').nil?
61
+ element.attribute('value').value.strip
62
+ elsif element.name == 'abbr' && !element.attribute('title').nil?
63
+ element.attribute('title').value.strip
64
+ elsif %w[time ins del].include?(element.name) && !element.attribute('datetime').nil?
65
+ element.attribute('datetime').value.strip
66
+ else
67
+ element.text.strip
68
+ end
70
69
  end
71
- parse_dt(value, normalize: true)
70
+
71
+ parse_dt(value, normalize: true)
72
72
 
73
73
  p_classes = property_classes(element)
74
74
  p_classes = backcompat_property_classes(element) if @mode_backcompat
75
- if p_classes.length == 0 and format_classes(element).length == 0
75
+
76
+ if p_classes.empty? && format_classes(element).empty?
76
77
  parse_node(element.children)
77
78
  end
78
79
  end
79
-
80
80
  end
81
81
 
82
82
  def parse_dt(data, normalize: false)
83
83
  # currently the value-class-pattern page lists to normalize and remove :'s but not regular parsing, seems very odd
84
84
  # https://github.com/microformats/tests/issues/29
85
85
  #
86
- #TODO this still allows a lot of non correct values such as 39th day of the month, etc
87
- begin
88
- case data.strip
89
- when /^P\d*W$/
90
- @duration_value = data if @duration_value.nil?
91
-
92
- when /^P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+S)?)?$/
93
- @duration_value = data if @duration_value.nil?
94
-
95
- when /^(\d{4}-[01]\d-[0-3]\d)[tT ]([0-2]\d:[0-5]\d(:[0-5]\d)?)?([zZ]|[-+][01]?\d:?[0-5]\d)?$/
96
- @date_value = $1 if @date_value.nil?
97
- @time_value = $2 if @time_value.nil?
98
- @tz_value = $4.gsub(/z/, 'Z') if @tz_value.nil?
99
-
100
- when /^(\d{4}-[01]\d-[0-3]\d)[tT ]([0-2]\d:[0-5]\d(:[0-5]\d)?)( ?[-+]\d\d:?(\d\d)?)$/
101
- @date_value = $1 if @date_value.nil?
102
- @time_value = $2 if @time_value.nil?
103
- if normalize
104
- @tz_value = $4.gsub(/z/, 'Z').gsub(/:/,'') if @tz_value.nil?
105
- else
106
- @tz_value = $4.gsub(/z/, 'Z') if @tz_value.nil?
107
- end
86
+ # TODO: this still allows a lot of non correct values such as 39th day of the month, etc
87
+ case data.strip
88
+ when /^P\d*W$/
89
+ @duration_value = data if @duration_value.nil?
108
90
 
109
- when /^(\d{4}-[0-3]\d\d)[tT ]([0-2]\d:[0-5]\d(:[0-5]\d)?)?([zZ]|[-+][01]?\d:?[0-5]\d)?$/
110
- @date_value = $1 if @date_value.nil?
111
- @time_value = $2 if @time_value.nil?
112
- @tz_value = $4.gsub(/z/, 'Z') if @tz_value.nil?
91
+ when /^P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+S)?)?$/
92
+ @duration_value = data if @duration_value.nil?
113
93
 
114
- when /^(\d{4}-[0-3]\d\d)[tT ]([0-2]\d:[0-5]\d(:[0-5]\d)?)( ?[-+]\d\d:?(\d\d)?)$/
115
- @date_value = $1 if @date_value.nil?
116
- @time_value = $2 if @time_value.nil?
117
- if normalize
118
- @tz_value = $4.gsub(/z/, 'Z').gsub(/:/,'') if @tz_value.nil?
119
- else
120
- @tz_value = $4.gsub(/z/, 'Z') if @tz_value.nil?
121
- end
94
+ when /^(\d{4}-[01]\d-[0-3]\d)[tT ]([0-2]\d:[0-5]\d(:[0-5]\d)?)?([zZ]|[-+][01]?\d:?[0-5]\d)?$/
95
+ @date_value = Regexp.last_match(1) if @date_value.nil?
96
+ @time_value = Regexp.last_match(2) if @time_value.nil?
97
+ @tz_value = Regexp.last_match(4).tr('z', 'Z') if @tz_value.nil?
122
98
 
123
- when /^(\d{4})-([01]?\d)-([0-3]?\d)$/
124
- @date_value = DateTime.new($1.to_i, $2.to_i, $3.to_i).strftime('%F') if @date_value.nil?
99
+ when /^(\d{4}-[01]\d-[0-3]\d)[tT ]([0-2]\d:[0-5]\d(:[0-5]\d)?)( ?[-+]\d\d:?(\d\d)?)$/
100
+ @date_value = Regexp.last_match(1) if @date_value.nil?
101
+ @time_value = Regexp.last_match(2) if @time_value.nil?
125
102
 
126
- when /^(\d{4})-([0-3]\d{2})$/
127
- @date_value = data if @date_value.nil?
103
+ if normalize
104
+ @tz_value = Regexp.last_match(4).tr('z', 'Z').delete(':') if @tz_value.nil?
105
+ else
106
+ @tz_value = Regexp.last_match(4).tr('z', 'Z') if @tz_value.nil?
107
+ end
128
108
 
129
- when /^(\d{4})-([01]?\d)$/
130
- @date_value = data if @date_value.nil?
109
+ when /^(\d{4}-[0-3]\d\d)[tT ]([0-2]\d:[0-5]\d(:[0-5]\d)?)?([zZ]|[-+][01]?\d:?[0-5]\d)?$/
110
+ @date_value = Regexp.last_match(1) if @date_value.nil?
111
+ @time_value = Regexp.last_match(2) if @time_value.nil?
112
+ @tz_value = Regexp.last_match(4).tr('z', 'Z') if @tz_value.nil?
131
113
 
132
- when /^([zZ]|[-+][01]?\d:?[0-5]\d)$/
133
- if normalize
134
- @tz_value = $1.gsub(/z/, 'Z').gsub(/:/,'') if @tz_value.nil?
135
- else
136
- @tz_value = $1.gsub(/z/, 'Z') if @tz_value.nil?
137
- end
114
+ when /^(\d{4}-[0-3]\d\d)[tT ]([0-2]\d:[0-5]\d(:[0-5]\d)?)( ?[-+]\d\d:?(\d\d)?)$/
115
+ @date_value = Regexp.last_match(1) if @date_value.nil?
116
+ @time_value = Regexp.last_match(2) if @time_value.nil?
138
117
 
139
- when /^([0-2]\d:[0-5]\d(:[0-5]\d)?)([zZ]|[-+][01]\d:?\d\d)?$/
140
- @time_value = $1 if @time_value.nil?
141
- if normalize
142
- @tz_value = $3.gsub(/z/, 'Z').gsub(/:/,'') if @tz_value.nil?
143
- else
144
- @tz_value = $3.gsub(/z/, 'Z') if @tz_value.nil?
145
- end
118
+ if normalize
119
+ @tz_value = Regexp.last_match(4).tr('z', 'Z').delete(':') if @tz_value.nil?
120
+ else
121
+ @tz_value = Regexp.last_match(4).tr('z', 'Z') if @tz_value.nil?
122
+ end
123
+
124
+ when /^(\d{4})-([01]?\d)-([0-3]?\d)$/
125
+ @date_value = DateTime.new(Regexp.last_match(1).to_i, Regexp.last_match(2).to_i, Regexp.last_match(3).to_i).strftime('%F') if @date_value.nil?
146
126
 
147
- when /^[0-2]\d:[0-5]\d[zZ]?$/
148
- @time_value = Time.parse(data).strftime('%H:%M') if @time_value.nil?
149
- @tz_value = 'Z'
150
-
151
- when /^([0-2]\d:[0-5]\d:[0-5]\d)([-+][01]\d:?[0-5]\d)$/
152
- Time.parse(data).strftime('%T') #to make sure this time doesn't throw an error
153
- @time_value = $1 if @time_value.nil?
154
- @tz_value = $2 if @tz_value.nil?
155
-
156
- when /^([0-2][0-0]:[0-5]\d)([-+][01]\d:?[0-5]\d)$/
157
- Time.parse(data).strftime('%H:%M') #to make sure this time doesn't throw an error
158
- @time_value = $1 if @time_value.nil?
159
- @tz_value = $2 if @tz_value.nil?
160
-
161
- when /^([01]?\d):?([0-5]\d)?p\.?m\.?$/i
162
- @time_value = ($1.to_i + 12).to_s + ':' + $2.to_s.rjust(2,'0') if @time_value.nil?
163
- when /^([01]?\d):?([0-5]\d)?a\.?m\.?$/i
164
- @time_value = $1.to_s.rjust(2,'0') + ':' + $2.to_s.rjust(2,'0') if @time_value.nil?
165
- when /^([01]?\d):([0-5]\d):([0-5]\d)?p\.?m\.?$/i
166
- @time_value = ($1.to_i + 12).to_s + ':' + $2.to_s.rjust(2,'0') + ':'+ $3.to_s.rjust(2,'0') if @time_value.nil?
167
- when /^([01]?\d):([0-5]\d):([0-5]\d)?a\.?m\.?$/i
168
- @time_value = $1.to_s.rjust(2,'0') + ':' + $2.to_s.rjust(2,'0') + ':'+ $3.to_s.rjust(2,'0') if @time_value.nil?
127
+ when /^(\d{4})-([0-3]\d{2})$/
128
+ @date_value = data if @date_value.nil?
169
129
 
130
+ when /^(\d{4})-([01]?\d)$/
131
+ @date_value = data if @date_value.nil?
132
+
133
+ when /^([zZ]|[-+][01]?\d:?[0-5]\d)$/
134
+ if normalize
135
+ @tz_value = Regexp.last_match(1).tr('z', 'Z').delete(':') if @tz_value.nil?
170
136
  else
171
- t = Time.parse(data)
172
- @time_value = t.strftime('%T') if @time_value.nil?
173
- @date_value = t.strftime('%F') if @date_value.nil?
137
+ @tz_value = Regexp.last_match(1).tr('z', 'Z') if @tz_value.nil?
174
138
  end
175
139
 
176
- rescue
177
- nil
178
- end
140
+ when /^([0-2]\d:[0-5]\d(:[0-5]\d)?)([zZ]|[-+][01]\d:?\d\d)?$/
141
+ @time_value = Regexp.last_match(1) if @time_value.nil?
179
142
 
180
- end
143
+ if normalize
144
+ @tz_value = Regexp.last_match(3).tr('z', 'Z').delete(':') if @tz_value.nil?
145
+ else
146
+ @tz_value = Regexp.last_match(3).tr('z', 'Z') if @tz_value.nil?
147
+ end
148
+
149
+ when /^[0-2]\d:[0-5]\d[zZ]?$/
150
+ @time_value = Time.parse(data).strftime('%H:%M') if @time_value.nil?
151
+ @tz_value = 'Z'
181
152
 
153
+ when /^([0-2]\d:[0-5]\d:[0-5]\d)([-+][01]\d:?[0-5]\d)$/
154
+ Time.parse(data).strftime('%T') # to make sure this time doesn't throw an error
155
+
156
+ @time_value = Regexp.last_match(1) if @time_value.nil?
157
+ @tz_value = Regexp.last_match(2) if @tz_value.nil?
158
+
159
+ when /^([0-2][0-0]:[0-5]\d)([-+][01]\d:?[0-5]\d)$/
160
+ Time.parse(data).strftime('%H:%M') # to make sure this time doesn't throw an error
161
+
162
+ @time_value = Regexp.last_match(1) if @time_value.nil?
163
+ @tz_value = Regexp.last_match(2) if @tz_value.nil?
164
+
165
+ when /^([01]?\d):?([0-5]\d)?p\.?m\.?$/i
166
+ @time_value = (Regexp.last_match(1).to_i + 12).to_s + ':' + Regexp.last_match(2).to_s.rjust(2, '0') if @time_value.nil?
167
+
168
+ when /^([01]?\d):?([0-5]\d)?a\.?m\.?$/i
169
+ @time_value = Regexp.last_match(1).to_s.rjust(2, '0') + ':' + Regexp.last_match(2).to_s.rjust(2, '0') if @time_value.nil?
170
+
171
+ when /^([01]?\d):([0-5]\d):([0-5]\d)?p\.?m\.?$/i
172
+ @time_value = (Regexp.last_match(1).to_i + 12).to_s + ':' + Regexp.last_match(2).to_s.rjust(2, '0') + ':' + Regexp.last_match(3).to_s.rjust(2, '0') if @time_value.nil?
173
+
174
+ when /^([01]?\d):([0-5]\d):([0-5]\d)?a\.?m\.?$/i
175
+ @time_value = Regexp.last_match(1).to_s.rjust(2, '0') + ':' + Regexp.last_match(2).to_s.rjust(2, '0') + ':' + Regexp.last_match(3).to_s.rjust(2, '0') if @time_value.nil?
176
+
177
+ else
178
+ t = Time.parse(data)
179
+
180
+ @time_value = t.strftime('%T') if @time_value.nil?
181
+ @date_value = t.strftime('%F') if @date_value.nil?
182
+ end
183
+ rescue
184
+ nil
185
+ end
182
186
  end
183
187
  end
@@ -1,3 +1,3 @@
1
1
  module Microformats
2
- VERSION = "4.0.7"
2
+ VERSION = '4.0.9'.freeze
3
3
  end
@@ -0,0 +1,23 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="50px" height="49px" viewBox="0 0 50 49" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <!-- Generator: Sketch 51.2 (57519) - http://www.bohemiancoding.com/sketch -->
4
+ <title>Microformats Logo : Ruby Parser Edition</title>
5
+ <desc>Red version of the Microformats logo to use with Ruby projects.</desc>
6
+ <defs>
7
+ <linearGradient x1="50%" y1="0%" x2="50%" y2="100%" id="linearGradient-1">
8
+ <stop stop-color="#F5515F" offset="0%"></stop>
9
+ <stop stop-color="#9F041B" offset="100%"></stop>
10
+ </linearGradient>
11
+ <linearGradient x1="0%" y1="0%" x2="100%" y2="100%" id="linearGradient-2">
12
+ <stop stop-color="#F5515F" offset="0%"></stop>
13
+ <stop stop-color="#9F041B" offset="100%"></stop>
14
+ </linearGradient>
15
+ </defs>
16
+ <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
17
+ <g id="Group" transform="translate(1.000000, 1.000000)" fill-rule="nonzero" stroke="#FFFFFF" stroke-width="2">
18
+ <path d="M0,15.8228344 C0,11.303949 3.29570093,7.99 7.79214953,7.99 L31.3241121,7.99 C35.8204112,7.99 39.1161121,11.303949 39.1161121,15.8228344 L39.1161121,39.1671656 C39.1161121,43.6859013 35.8204112,47 31.3241121,47 L7.79214953,47 C3.29570093,47 0,43.6859013 0,39.1671656 L0,15.8228344 Z" id="Shape" fill="url(#linearGradient-1)"></path>
19
+ <path d="M13.2471028,8.29684713 C13.2471028,4.68503185 15.8863551,2.03716561 19.4871028,2.03716561 L38.331215,2.03716561 C41.9319626,2.03716561 44.571215,4.68503185 44.571215,8.29684713 L44.571215,26.9531529 C44.571215,30.5649682 41.9319626,33.2128344 38.331215,33.2128344 L19.4871028,33.2128344 C15.8863551,33.2128344 13.2471028,30.5649682 13.2471028,26.9531529 L13.2471028,8.29684713 Z" id="Shape" fill="url(#linearGradient-2)"></path>
20
+ <path d="M26.6498692,4.24646497 C26.6498692,1.79617834 28.4485981,0 30.9024299,0 L43.7472897,0 C46.201271,0 48,1.79617834 48,4.24646497 L48,16.903535 C48,19.3538217 46.201271,21.15 43.7474393,21.15 L30.9025794,21.15 C28.4487477,21.15 26.6500187,19.3538217 26.6500187,16.903535 L26.6500187,4.24646497 L26.6498692,4.24646497 Z" id="Shape" fill="url(#linearGradient-2)"></path>
21
+ </g>
22
+ </g>
23
+ </svg>
@@ -1,37 +1,39 @@
1
- # -*- encoding: utf-8 -*-
2
- lib = File.expand_path('../lib', __FILE__)
1
+ lib = File.expand_path('lib', __dir__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'microformats/version'
5
-
6
- Gem::Specification.new do |gem|
7
- gem.name = "microformats"
8
- gem.version = Microformats::VERSION
9
- gem.authors = ["Shane Becker", "Jessica Lynn Suttles", "Ben Roberts"]
10
- gem.email = ["veganstraightedge@gmail.com", "jlsuttles@gmail.com", "ben@thatmustbe.me"]
11
- gem.description = %q{A Ruby gem to parse HTML containing one or more microformats and microformats2 and return a collection of dynamically defined Ruby objects, a Ruby hash or a JSON hash.}
12
- gem.summary = %q{Microformats and microformats2 parser}
13
- gem.homepage = "https://github.com/indieweb/microformats-ruby"
14
-
15
- gem.files = `git ls-files`.split($/)
16
- gem.executables = ['microformats']
17
- gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
- gem.require_paths = ["lib"]
19
-
20
- gem.post_install_message = %q{
21
3
 
22
- Previously called "microformats2" (on version 3.1 and below).
23
-
24
- }
25
-
26
- gem.required_ruby_version = ">= 2.0"
27
-
28
- gem.add_runtime_dependency "nokogiri"
29
- gem.add_runtime_dependency "json"
4
+ require 'microformats/version'
30
5
 
31
- gem.add_development_dependency "rake"
32
- gem.add_development_dependency "rspec"
33
- gem.add_development_dependency "guard-rspec"
34
- gem.add_development_dependency "rb-fsevent"
35
- gem.add_development_dependency "simplecov"
36
- gem.add_development_dependency "webmock"
6
+ Gem::Specification.new do |spec|
7
+ spec.required_ruby_version = ['>= 2.4', '< 2.6']
8
+
9
+ spec.name = 'microformats'
10
+ spec.version = Microformats::VERSION
11
+ spec.authors = ['Shane Becker', 'Jessica Lynn Suttles', 'Ben Roberts']
12
+ spec.email = ['veganstraightedge@gmail.com', 'jlsuttles@gmail.com', 'ben@thatmustbe.me']
13
+
14
+ spec.summary = 'Microformats2 and classic microformats parser'
15
+ spec.description = 'A Ruby gem to parse HTML containing microformats2 and classic microformats that returns a collection of dynamically defined Ruby objects, a Ruby hash, or a JSON hash.'
16
+ spec.homepage = 'https://github.com/microformats/microformats-ruby'
17
+ spec.license = 'CC0-1.0'
18
+
19
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(spec|vendor)/}) }
20
+ spec.bindir = 'bin'
21
+ spec.executables = ['microformats']
22
+ spec.require_paths = ['lib']
23
+
24
+ spec.post_install_message = 'Prior to version 4.0.0, the microformats gem was named "microformats2."'
25
+
26
+ spec.add_development_dependency 'bundler', '~> 1.16', '>= 1.16.2'
27
+ spec.add_development_dependency 'guard-rspec', '~> 4.7', '>= 4.7.3'
28
+ spec.add_development_dependency 'rake', '~> 12.3', '>= 12.3.1'
29
+ spec.add_development_dependency 'rb-fsevent', '~> 0.10.3'
30
+ spec.add_development_dependency 'rspec', '~> 3.8'
31
+ spec.add_development_dependency 'rubocop', '~> 0.58.2'
32
+ spec.add_development_dependency 'rubocop-rspec', '~> 1.27'
33
+ spec.add_development_dependency 'simplecov', '~> 0.16.1'
34
+ spec.add_development_dependency 'simplecov-console', '~> 0.4.2'
35
+ spec.add_development_dependency 'webmock', '~> 3.4', '>= 3.4.2'
36
+
37
+ spec.add_runtime_dependency 'json', '~> 2.1'
38
+ spec.add_runtime_dependency 'nokogiri', '~> 1.8', '>= 1.8.3'
37
39
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: microformats
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.7
4
+ version: 4.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shane Becker
@@ -10,123 +10,209 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2017-06-25 00:00:00.000000000 Z
13
+ date: 2018-08-27 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: nokogiri
16
+ name: bundler
17
17
  requirement: !ruby/object:Gem::Requirement
18
18
  requirements:
19
+ - - "~>"
20
+ - !ruby/object:Gem::Version
21
+ version: '1.16'
19
22
  - - ">="
20
23
  - !ruby/object:Gem::Version
21
- version: '0'
22
- type: :runtime
24
+ version: 1.16.2
25
+ type: :development
23
26
  prerelease: false
24
27
  version_requirements: !ruby/object:Gem::Requirement
25
28
  requirements:
29
+ - - "~>"
30
+ - !ruby/object:Gem::Version
31
+ version: '1.16'
26
32
  - - ">="
27
33
  - !ruby/object:Gem::Version
28
- version: '0'
34
+ version: 1.16.2
29
35
  - !ruby/object:Gem::Dependency
30
- name: json
36
+ name: guard-rspec
31
37
  requirement: !ruby/object:Gem::Requirement
32
38
  requirements:
39
+ - - "~>"
40
+ - !ruby/object:Gem::Version
41
+ version: '4.7'
33
42
  - - ">="
34
43
  - !ruby/object:Gem::Version
35
- version: '0'
36
- type: :runtime
44
+ version: 4.7.3
45
+ type: :development
37
46
  prerelease: false
38
47
  version_requirements: !ruby/object:Gem::Requirement
39
48
  requirements:
49
+ - - "~>"
50
+ - !ruby/object:Gem::Version
51
+ version: '4.7'
40
52
  - - ">="
41
53
  - !ruby/object:Gem::Version
42
- version: '0'
54
+ version: 4.7.3
43
55
  - !ruby/object:Gem::Dependency
44
56
  name: rake
45
57
  requirement: !ruby/object:Gem::Requirement
46
58
  requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '12.3'
47
62
  - - ">="
48
63
  - !ruby/object:Gem::Version
49
- version: '0'
64
+ version: 12.3.1
50
65
  type: :development
51
66
  prerelease: false
52
67
  version_requirements: !ruby/object:Gem::Requirement
53
68
  requirements:
69
+ - - "~>"
70
+ - !ruby/object:Gem::Version
71
+ version: '12.3'
54
72
  - - ">="
55
73
  - !ruby/object:Gem::Version
56
- version: '0'
74
+ version: 12.3.1
75
+ - !ruby/object:Gem::Dependency
76
+ name: rb-fsevent
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: 0.10.3
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: 0.10.3
57
89
  - !ruby/object:Gem::Dependency
58
90
  name: rspec
59
91
  requirement: !ruby/object:Gem::Requirement
60
92
  requirements:
61
- - - ">="
93
+ - - "~>"
62
94
  - !ruby/object:Gem::Version
63
- version: '0'
95
+ version: '3.8'
64
96
  type: :development
65
97
  prerelease: false
66
98
  version_requirements: !ruby/object:Gem::Requirement
67
99
  requirements:
68
- - - ">="
100
+ - - "~>"
69
101
  - !ruby/object:Gem::Version
70
- version: '0'
102
+ version: '3.8'
71
103
  - !ruby/object:Gem::Dependency
72
- name: guard-rspec
104
+ name: rubocop
73
105
  requirement: !ruby/object:Gem::Requirement
74
106
  requirements:
75
- - - ">="
107
+ - - "~>"
76
108
  - !ruby/object:Gem::Version
77
- version: '0'
109
+ version: 0.58.2
78
110
  type: :development
79
111
  prerelease: false
80
112
  version_requirements: !ruby/object:Gem::Requirement
81
113
  requirements:
82
- - - ">="
114
+ - - "~>"
83
115
  - !ruby/object:Gem::Version
84
- version: '0'
116
+ version: 0.58.2
85
117
  - !ruby/object:Gem::Dependency
86
- name: rb-fsevent
118
+ name: rubocop-rspec
87
119
  requirement: !ruby/object:Gem::Requirement
88
120
  requirements:
89
- - - ">="
121
+ - - "~>"
90
122
  - !ruby/object:Gem::Version
91
- version: '0'
123
+ version: '1.27'
92
124
  type: :development
93
125
  prerelease: false
94
126
  version_requirements: !ruby/object:Gem::Requirement
95
127
  requirements:
96
- - - ">="
128
+ - - "~>"
97
129
  - !ruby/object:Gem::Version
98
- version: '0'
130
+ version: '1.27'
99
131
  - !ruby/object:Gem::Dependency
100
132
  name: simplecov
101
133
  requirement: !ruby/object:Gem::Requirement
102
134
  requirements:
103
- - - ">="
135
+ - - "~>"
104
136
  - !ruby/object:Gem::Version
105
- version: '0'
137
+ version: 0.16.1
106
138
  type: :development
107
139
  prerelease: false
108
140
  version_requirements: !ruby/object:Gem::Requirement
109
141
  requirements:
110
- - - ">="
142
+ - - "~>"
111
143
  - !ruby/object:Gem::Version
112
- version: '0'
144
+ version: 0.16.1
145
+ - !ruby/object:Gem::Dependency
146
+ name: simplecov-console
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: 0.4.2
152
+ type: :development
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - "~>"
157
+ - !ruby/object:Gem::Version
158
+ version: 0.4.2
113
159
  - !ruby/object:Gem::Dependency
114
160
  name: webmock
115
161
  requirement: !ruby/object:Gem::Requirement
116
162
  requirements:
163
+ - - "~>"
164
+ - !ruby/object:Gem::Version
165
+ version: '3.4'
117
166
  - - ">="
118
167
  - !ruby/object:Gem::Version
119
- version: '0'
168
+ version: 3.4.2
120
169
  type: :development
121
170
  prerelease: false
122
171
  version_requirements: !ruby/object:Gem::Requirement
123
172
  requirements:
173
+ - - "~>"
174
+ - !ruby/object:Gem::Version
175
+ version: '3.4'
176
+ - - ">="
177
+ - !ruby/object:Gem::Version
178
+ version: 3.4.2
179
+ - !ruby/object:Gem::Dependency
180
+ name: json
181
+ requirement: !ruby/object:Gem::Requirement
182
+ requirements:
183
+ - - "~>"
184
+ - !ruby/object:Gem::Version
185
+ version: '2.1'
186
+ type: :runtime
187
+ prerelease: false
188
+ version_requirements: !ruby/object:Gem::Requirement
189
+ requirements:
190
+ - - "~>"
191
+ - !ruby/object:Gem::Version
192
+ version: '2.1'
193
+ - !ruby/object:Gem::Dependency
194
+ name: nokogiri
195
+ requirement: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - - "~>"
198
+ - !ruby/object:Gem::Version
199
+ version: '1.8'
124
200
  - - ">="
125
201
  - !ruby/object:Gem::Version
126
- version: '0'
127
- description: A Ruby gem to parse HTML containing one or more microformats and microformats2
128
- and return a collection of dynamically defined Ruby objects, a Ruby hash or a JSON
129
- hash.
202
+ version: 1.8.3
203
+ type: :runtime
204
+ prerelease: false
205
+ version_requirements: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - "~>"
208
+ - !ruby/object:Gem::Version
209
+ version: '1.8'
210
+ - - ">="
211
+ - !ruby/object:Gem::Version
212
+ version: 1.8.3
213
+ description: A Ruby gem to parse HTML containing microformats2 and classic microformats
214
+ that returns a collection of dynamically defined Ruby objects, a Ruby hash, or a
215
+ JSON hash.
130
216
  email:
131
217
  - veganstraightedge@gmail.com
132
218
  - jlsuttles@gmail.com
@@ -136,12 +222,18 @@ executables:
136
222
  extensions: []
137
223
  extra_rdoc_files: []
138
224
  files:
225
+ - ".editorconfig"
139
226
  - ".gitignore"
140
227
  - ".rspec"
228
+ - ".rubocop"
229
+ - ".rubocop.yml"
230
+ - ".ruby-version"
231
+ - ".simplecov"
141
232
  - ".travis.yml"
233
+ - CONTRIBUTING.md
142
234
  - Gemfile
143
235
  - Guardfile
144
- - LICENSE.md
236
+ - LICENSE
145
237
  - README.md
146
238
  - Rakefile
147
239
  - bin/microformats
@@ -156,351 +248,13 @@ files:
156
248
  - lib/microformats/results/property_set.rb
157
249
  - lib/microformats/time_property_parser.rb
158
250
  - lib/microformats/version.rb
251
+ - logo.svg
159
252
  - microformats.gemspec
160
- - spec/lib/microformats/absolute_uri_spec.rb
161
- - spec/lib/microformats/parser_spec.rb
162
- - spec/lib/microformats_spec.rb
163
- - spec/spec_helper.rb
164
- - spec/support/cases/microformats.org/microformats-2/microformats-2-0.html
165
- - spec/support/cases/microformats.org/microformats-2/microformats-2-0.js
166
- - spec/support/cases/microformats.org/microformats-2/microformats-2-1.html
167
- - spec/support/cases/microformats.org/microformats-2/microformats-2-1.js
168
- - spec/support/cases/microformats.org/microformats-2/microformats-2-2.html
169
- - spec/support/cases/microformats.org/microformats-2/microformats-2-2.js
170
- - spec/support/cases/microformats.org/microformats-2/microformats-2-3.html
171
- - spec/support/cases/microformats.org/microformats-2/microformats-2-3.js
172
- - spec/support/cases/microformats.org/microformats-2/microformats-2-4.html
173
- - spec/support/cases/microformats.org/microformats-2/microformats-2-4.js
174
- - spec/support/cases/microformats.org/microformats-2/microformats-2-5.html
175
- - spec/support/cases/microformats.org/microformats-2/microformats-2-5.js
176
- - spec/support/cases/microformats.org/microformats-2/microformats-2-6.html
177
- - spec/support/cases/microformats.org/microformats-2/microformats-2-6.js
178
- - spec/support/cases/microformats.org/microformats-2/microformats-2-7.html
179
- - spec/support/cases/microformats.org/microformats-2/microformats-2-7.js
180
- - spec/support/cases/microformats.org/microformats-2/microformats-2-8.html
181
- - spec/support/cases/microformats.org/microformats-2/microformats-2-8.js
182
- - spec/support/cases/microformats.org/microformats-2/microformats-2-9.html
183
- - spec/support/cases/microformats.org/microformats-2/microformats-2-9.js
184
- - spec/support/lib/edge_cases/blank_href.html
185
- - spec/support/lib/edge_cases/blank_href.js
186
- - spec/support/lib/edge_cases/blank_rel.html
187
- - spec/support/lib/edge_cases/blank_rel.js
188
- - spec/support/lib/edge_cases/blank_src.html
189
- - spec/support/lib/edge_cases/blank_src.js
190
- - spec/support/lib/edge_cases/blank_value.html
191
- - spec/support/lib/edge_cases/blank_value.js
192
- - spec/support/lib/edge_cases/relative.html
193
- - spec/support/lib/edge_cases/relative.js
194
- - spec/support/lib/edge_cases/vcp-dates.html
195
- - spec/support/lib/edge_cases/vcp-dates.js
196
- - spec/support/lib/microformats/blank_href.html
197
- - spec/support/lib/microformats/blank_href.js
198
- - spec/support/lib/microformats/implied_property/name-fail.html
199
- - spec/support/lib/microformats/implied_property/name-pass.html
200
- - spec/support/lib/microformats/implied_property/photo-fail.html
201
- - spec/support/lib/microformats/implied_property/photo-pass.html
202
- - spec/support/lib/microformats/implied_property/url-fail.html
203
- - spec/support/lib/microformats/implied_property/url-pass.html
204
- - spec/support/lib/microformats/implied_property/url-relative.html
205
- - spec/support/lib/microformats/implied_property/url-unnormalized.html
206
- - spec/support/lib/microformats/nested-format-with-property-of-same-name.html
207
- - spec/support/lib/microformats/nested-format-with-property-of-same-name.js
208
- - spec/support/lib/microformats/nested-format-with-property.html
209
- - spec/support/lib/microformats/nested-format-with-property.js
210
- - spec/support/lib/microformats/nested-format-without-property.html
211
- - spec/support/lib/microformats/nested-property.html
212
- - spec/support/lib/microformats/nested-property.js
213
- - spec/support/lib/microformats/rels-that-drop-the-base.html
214
- - spec/support/lib/microformats/rels-with-unnormalized-urls.html
215
- - spec/support/lib/microformats/rels.html
216
- - spec/support/lib/microformats/rels.js
217
- - spec/support/lib/microformats/simple.html
218
- - spec/support/lib/microformats/simple.js
219
- - vendor/tests/.gitignore
220
- - vendor/tests/LICENSE.md
221
- - vendor/tests/README.md
222
- - vendor/tests/app.js
223
- - vendor/tests/composer.json
224
- - vendor/tests/css/testsuite.css
225
- - vendor/tests/interface.js
226
- - vendor/tests/package.json
227
- - vendor/tests/tests/microformats-mixed/h-card/change-log.html
228
- - vendor/tests/tests/microformats-mixed/h-card/mixedpropertries.html
229
- - vendor/tests/tests/microformats-mixed/h-card/mixedpropertries.json
230
- - vendor/tests/tests/microformats-mixed/h-card/tworoots.html
231
- - vendor/tests/tests/microformats-mixed/h-card/tworoots.json
232
- - vendor/tests/tests/microformats-mixed/h-entry/mixedroots.html
233
- - vendor/tests/tests/microformats-mixed/h-entry/mixedroots.json
234
- - vendor/tests/tests/microformats-mixed/h-resume/change-log.html
235
- - vendor/tests/tests/microformats-mixed/h-resume/mixedroots.html
236
- - vendor/tests/tests/microformats-mixed/h-resume/mixedroots.json
237
- - vendor/tests/tests/microformats-v1/adr/change-log.html
238
- - vendor/tests/tests/microformats-v1/adr/simpleproperties.html
239
- - vendor/tests/tests/microformats-v1/adr/simpleproperties.json
240
- - vendor/tests/tests/microformats-v1/geo/abbrpattern.html
241
- - vendor/tests/tests/microformats-v1/geo/abbrpattern.json
242
- - vendor/tests/tests/microformats-v1/geo/change-log.1.html
243
- - vendor/tests/tests/microformats-v1/geo/change-log.html
244
- - vendor/tests/tests/microformats-v1/geo/hidden.html
245
- - vendor/tests/tests/microformats-v1/geo/hidden.json
246
- - vendor/tests/tests/microformats-v1/geo/simpleproperties.html
247
- - vendor/tests/tests/microformats-v1/geo/simpleproperties.json
248
- - vendor/tests/tests/microformats-v1/geo/valuetitleclass.html
249
- - vendor/tests/tests/microformats-v1/geo/valuetitleclass.json
250
- - vendor/tests/tests/microformats-v1/hcalendar/ampm.html
251
- - vendor/tests/tests/microformats-v1/hcalendar/ampm.json
252
- - vendor/tests/tests/microformats-v1/hcalendar/attendees.html
253
- - vendor/tests/tests/microformats-v1/hcalendar/attendees.json
254
- - vendor/tests/tests/microformats-v1/hcalendar/change-log.html
255
- - vendor/tests/tests/microformats-v1/hcalendar/combining.html
256
- - vendor/tests/tests/microformats-v1/hcalendar/combining.json
257
- - vendor/tests/tests/microformats-v1/hcalendar/concatenate.html
258
- - vendor/tests/tests/microformats-v1/hcalendar/concatenate.json
259
- - vendor/tests/tests/microformats-v1/hcalendar/time.html
260
- - vendor/tests/tests/microformats-v1/hcalendar/time.json
261
- - vendor/tests/tests/microformats-v1/hcard/change-log.html
262
- - vendor/tests/tests/microformats-v1/hcard/email.html
263
- - vendor/tests/tests/microformats-v1/hcard/email.json
264
- - vendor/tests/tests/microformats-v1/hcard/format.html
265
- - vendor/tests/tests/microformats-v1/hcard/format.json
266
- - vendor/tests/tests/microformats-v1/hcard/hyperlinkedphoto.html
267
- - vendor/tests/tests/microformats-v1/hcard/hyperlinkedphoto.json
268
- - vendor/tests/tests/microformats-v1/hcard/justahyperlink.html
269
- - vendor/tests/tests/microformats-v1/hcard/justahyperlink.json
270
- - vendor/tests/tests/microformats-v1/hcard/justaname.html
271
- - vendor/tests/tests/microformats-v1/hcard/justaname.json
272
- - vendor/tests/tests/microformats-v1/hcard/multiple.html
273
- - vendor/tests/tests/microformats-v1/hcard/multiple.json
274
- - vendor/tests/tests/microformats-v1/hcard/name.html
275
- - vendor/tests/tests/microformats-v1/hcard/name.json
276
- - vendor/tests/tests/microformats-v1/hcard/single.html
277
- - vendor/tests/tests/microformats-v1/hcard/single.json
278
- - vendor/tests/tests/microformats-v1/hentry/change-log.html
279
- - vendor/tests/tests/microformats-v1/hentry/summarycontent.html
280
- - vendor/tests/tests/microformats-v1/hentry/summarycontent.json
281
- - vendor/tests/tests/microformats-v1/hfeed/simple.html
282
- - vendor/tests/tests/microformats-v1/hfeed/simple.json
283
- - vendor/tests/tests/microformats-v1/hnews/all.html
284
- - vendor/tests/tests/microformats-v1/hnews/all.json
285
- - vendor/tests/tests/microformats-v1/hnews/change-log.html
286
- - vendor/tests/tests/microformats-v1/hnews/minimum.html
287
- - vendor/tests/tests/microformats-v1/hnews/minimum.json
288
- - vendor/tests/tests/microformats-v1/hproduct/aggregate.html
289
- - vendor/tests/tests/microformats-v1/hproduct/aggregate.json
290
- - vendor/tests/tests/microformats-v1/hproduct/change-log.html
291
- - vendor/tests/tests/microformats-v1/hproduct/simpleproperties.html
292
- - vendor/tests/tests/microformats-v1/hproduct/simpleproperties.json
293
- - vendor/tests/tests/microformats-v1/hresume/affiliation.html
294
- - vendor/tests/tests/microformats-v1/hresume/affiliation.json
295
- - vendor/tests/tests/microformats-v1/hresume/change-log.html
296
- - vendor/tests/tests/microformats-v1/hresume/contact.html
297
- - vendor/tests/tests/microformats-v1/hresume/contact.json
298
- - vendor/tests/tests/microformats-v1/hresume/education.html
299
- - vendor/tests/tests/microformats-v1/hresume/education.json
300
- - vendor/tests/tests/microformats-v1/hresume/skill.html
301
- - vendor/tests/tests/microformats-v1/hresume/skill.json
302
- - vendor/tests/tests/microformats-v1/hresume/work.html
303
- - vendor/tests/tests/microformats-v1/hresume/work.json
304
- - vendor/tests/tests/microformats-v1/hreview-aggregate/change-log.html
305
- - vendor/tests/tests/microformats-v1/hreview-aggregate/hcard.html
306
- - vendor/tests/tests/microformats-v1/hreview-aggregate/hcard.json
307
- - vendor/tests/tests/microformats-v1/hreview-aggregate/justahyperlink.html
308
- - vendor/tests/tests/microformats-v1/hreview-aggregate/justahyperlink.json
309
- - vendor/tests/tests/microformats-v1/hreview-aggregate/vevent.html
310
- - vendor/tests/tests/microformats-v1/hreview-aggregate/vevent.json
311
- - vendor/tests/tests/microformats-v1/hreview/change-log.html
312
- - vendor/tests/tests/microformats-v1/hreview/item.html
313
- - vendor/tests/tests/microformats-v1/hreview/item.json
314
- - vendor/tests/tests/microformats-v1/hreview/vcard.html
315
- - vendor/tests/tests/microformats-v1/hreview/vcard.json
316
- - vendor/tests/tests/microformats-v1/includes/change-log.html
317
- - vendor/tests/tests/microformats-v1/includes/hcarditemref.html
318
- - vendor/tests/tests/microformats-v1/includes/hcarditemref.json
319
- - vendor/tests/tests/microformats-v1/includes/heventitemref.html
320
- - vendor/tests/tests/microformats-v1/includes/heventitemref.json
321
- - vendor/tests/tests/microformats-v1/includes/hyperlink.html
322
- - vendor/tests/tests/microformats-v1/includes/hyperlink.json
323
- - vendor/tests/tests/microformats-v1/includes/object.html
324
- - vendor/tests/tests/microformats-v1/includes/object.json
325
- - vendor/tests/tests/microformats-v1/includes/table.html
326
- - vendor/tests/tests/microformats-v1/includes/table.json
327
- - vendor/tests/tests/microformats-v2/h-adr/change-log.html
328
- - vendor/tests/tests/microformats-v2/h-adr/geo.html
329
- - vendor/tests/tests/microformats-v2/h-adr/geo.json
330
- - vendor/tests/tests/microformats-v2/h-adr/geourl.html
331
- - vendor/tests/tests/microformats-v2/h-adr/geourl.json
332
- - vendor/tests/tests/microformats-v2/h-adr/justaname.html
333
- - vendor/tests/tests/microformats-v2/h-adr/justaname.json
334
- - vendor/tests/tests/microformats-v2/h-adr/lettercase.html
335
- - vendor/tests/tests/microformats-v2/h-adr/lettercase.json
336
- - vendor/tests/tests/microformats-v2/h-adr/simpleproperties.html
337
- - vendor/tests/tests/microformats-v2/h-adr/simpleproperties.json
338
- - vendor/tests/tests/microformats-v2/h-as-note/note.html
339
- - vendor/tests/tests/microformats-v2/h-as-note/note.json
340
- - vendor/tests/tests/microformats-v2/h-card/baseurl.html
341
- - vendor/tests/tests/microformats-v2/h-card/baseurl.json
342
- - vendor/tests/tests/microformats-v2/h-card/change-log.html
343
- - vendor/tests/tests/microformats-v2/h-card/childimplied.html
344
- - vendor/tests/tests/microformats-v2/h-card/childimplied.json
345
- - vendor/tests/tests/microformats-v2/h-card/extendeddescription.html
346
- - vendor/tests/tests/microformats-v2/h-card/extendeddescription.json
347
- - vendor/tests/tests/microformats-v2/h-card/hcard.html
348
- - vendor/tests/tests/microformats-v2/h-card/hcard.json
349
- - vendor/tests/tests/microformats-v2/h-card/horghcard.html
350
- - vendor/tests/tests/microformats-v2/h-card/horghcard.json
351
- - vendor/tests/tests/microformats-v2/h-card/hyperlinkedphoto.html
352
- - vendor/tests/tests/microformats-v2/h-card/hyperlinkedphoto.json
353
- - vendor/tests/tests/microformats-v2/h-card/impliedname.html
354
- - vendor/tests/tests/microformats-v2/h-card/impliedname.json
355
- - vendor/tests/tests/microformats-v2/h-card/impliedphoto.html
356
- - vendor/tests/tests/microformats-v2/h-card/impliedphoto.json
357
- - vendor/tests/tests/microformats-v2/h-card/impliedurl.html
358
- - vendor/tests/tests/microformats-v2/h-card/impliedurl.json
359
- - vendor/tests/tests/microformats-v2/h-card/justahyperlink.html
360
- - vendor/tests/tests/microformats-v2/h-card/justahyperlink.json
361
- - vendor/tests/tests/microformats-v2/h-card/justaname.html
362
- - vendor/tests/tests/microformats-v2/h-card/justaname.json
363
- - vendor/tests/tests/microformats-v2/h-card/nested.html
364
- - vendor/tests/tests/microformats-v2/h-card/nested.json
365
- - vendor/tests/tests/microformats-v2/h-card/p-property.html
366
- - vendor/tests/tests/microformats-v2/h-card/p-property.json
367
- - vendor/tests/tests/microformats-v2/h-card/relativeurls.html
368
- - vendor/tests/tests/microformats-v2/h-card/relativeurls.json
369
- - vendor/tests/tests/microformats-v2/h-entry/change-log.html
370
- - vendor/tests/tests/microformats-v2/h-entry/encoding.html
371
- - vendor/tests/tests/microformats-v2/h-entry/encoding.json
372
- - vendor/tests/tests/microformats-v2/h-entry/impliedvalue-nested.html
373
- - vendor/tests/tests/microformats-v2/h-entry/impliedvalue-nested.json
374
- - vendor/tests/tests/microformats-v2/h-entry/justahyperlink.html
375
- - vendor/tests/tests/microformats-v2/h-entry/justahyperlink.json
376
- - vendor/tests/tests/microformats-v2/h-entry/justaname.html
377
- - vendor/tests/tests/microformats-v2/h-entry/justaname.json
378
- - vendor/tests/tests/microformats-v2/h-entry/scriptstyletags.html
379
- - vendor/tests/tests/microformats-v2/h-entry/scriptstyletags.json
380
- - vendor/tests/tests/microformats-v2/h-entry/summarycontent.html
381
- - vendor/tests/tests/microformats-v2/h-entry/summarycontent.json
382
- - vendor/tests/tests/microformats-v2/h-entry/u-property.html
383
- - vendor/tests/tests/microformats-v2/h-entry/u-property.json
384
- - vendor/tests/tests/microformats-v2/h-entry/urlincontent.html
385
- - vendor/tests/tests/microformats-v2/h-entry/urlincontent.json
386
- - vendor/tests/tests/microformats-v2/h-event/ampm.html
387
- - vendor/tests/tests/microformats-v2/h-event/ampm.json
388
- - vendor/tests/tests/microformats-v2/h-event/attendees.html
389
- - vendor/tests/tests/microformats-v2/h-event/attendees.json
390
- - vendor/tests/tests/microformats-v2/h-event/change-log.html
391
- - vendor/tests/tests/microformats-v2/h-event/combining.html
392
- - vendor/tests/tests/microformats-v2/h-event/combining.json
393
- - vendor/tests/tests/microformats-v2/h-event/concatenate.html
394
- - vendor/tests/tests/microformats-v2/h-event/concatenate.json
395
- - vendor/tests/tests/microformats-v2/h-event/dates.html
396
- - vendor/tests/tests/microformats-v2/h-event/dates.json
397
- - vendor/tests/tests/microformats-v2/h-event/dt-property.html
398
- - vendor/tests/tests/microformats-v2/h-event/dt-property.json
399
- - vendor/tests/tests/microformats-v2/h-event/justahyperlink.html
400
- - vendor/tests/tests/microformats-v2/h-event/justahyperlink.json
401
- - vendor/tests/tests/microformats-v2/h-event/justaname.html
402
- - vendor/tests/tests/microformats-v2/h-event/justaname.json
403
- - vendor/tests/tests/microformats-v2/h-event/time.html
404
- - vendor/tests/tests/microformats-v2/h-event/time.json
405
- - vendor/tests/tests/microformats-v2/h-feed/implied-title.html
406
- - vendor/tests/tests/microformats-v2/h-feed/implied-title.json
407
- - vendor/tests/tests/microformats-v2/h-feed/simple.html
408
- - vendor/tests/tests/microformats-v2/h-feed/simple.json
409
- - vendor/tests/tests/microformats-v2/h-geo/abbrpattern.html
410
- - vendor/tests/tests/microformats-v2/h-geo/abbrpattern.json
411
- - vendor/tests/tests/microformats-v2/h-geo/altitude.html
412
- - vendor/tests/tests/microformats-v2/h-geo/altitude.json
413
- - vendor/tests/tests/microformats-v2/h-geo/change-log.html
414
- - vendor/tests/tests/microformats-v2/h-geo/hidden.html
415
- - vendor/tests/tests/microformats-v2/h-geo/hidden.json
416
- - vendor/tests/tests/microformats-v2/h-geo/justaname.html
417
- - vendor/tests/tests/microformats-v2/h-geo/justaname.json
418
- - vendor/tests/tests/microformats-v2/h-geo/simpleproperties.html
419
- - vendor/tests/tests/microformats-v2/h-geo/simpleproperties.json
420
- - vendor/tests/tests/microformats-v2/h-geo/valuetitleclass.html
421
- - vendor/tests/tests/microformats-v2/h-geo/valuetitleclass.json
422
- - vendor/tests/tests/microformats-v2/h-news/all.html
423
- - vendor/tests/tests/microformats-v2/h-news/all.json
424
- - vendor/tests/tests/microformats-v2/h-news/change-log.html
425
- - vendor/tests/tests/microformats-v2/h-news/minimum.html
426
- - vendor/tests/tests/microformats-v2/h-news/minimum.json
427
- - vendor/tests/tests/microformats-v2/h-org/change-log.html
428
- - vendor/tests/tests/microformats-v2/h-org/hyperlink.html
429
- - vendor/tests/tests/microformats-v2/h-org/hyperlink.json
430
- - vendor/tests/tests/microformats-v2/h-org/simple.html
431
- - vendor/tests/tests/microformats-v2/h-org/simple.json
432
- - vendor/tests/tests/microformats-v2/h-org/simpleproperties.html
433
- - vendor/tests/tests/microformats-v2/h-org/simpleproperties.json
434
- - vendor/tests/tests/microformats-v2/h-product/aggregate.html
435
- - vendor/tests/tests/microformats-v2/h-product/aggregate.json
436
- - vendor/tests/tests/microformats-v2/h-product/change-log.html
437
- - vendor/tests/tests/microformats-v2/h-product/justahyperlink.html
438
- - vendor/tests/tests/microformats-v2/h-product/justahyperlink.json
439
- - vendor/tests/tests/microformats-v2/h-product/justaname.html
440
- - vendor/tests/tests/microformats-v2/h-product/justaname.json
441
- - vendor/tests/tests/microformats-v2/h-product/simpleproperties.html
442
- - vendor/tests/tests/microformats-v2/h-product/simpleproperties.json
443
- - vendor/tests/tests/microformats-v2/h-recipe/all.html
444
- - vendor/tests/tests/microformats-v2/h-recipe/all.json
445
- - vendor/tests/tests/microformats-v2/h-recipe/change-log.html
446
- - vendor/tests/tests/microformats-v2/h-recipe/minimum.html
447
- - vendor/tests/tests/microformats-v2/h-recipe/minimum.json
448
- - vendor/tests/tests/microformats-v2/h-resume/affiliation.html
449
- - vendor/tests/tests/microformats-v2/h-resume/affiliation.json
450
- - vendor/tests/tests/microformats-v2/h-resume/change-log.html
451
- - vendor/tests/tests/microformats-v2/h-resume/contact.html
452
- - vendor/tests/tests/microformats-v2/h-resume/contact.json
453
- - vendor/tests/tests/microformats-v2/h-resume/education.html
454
- - vendor/tests/tests/microformats-v2/h-resume/education.json
455
- - vendor/tests/tests/microformats-v2/h-resume/justaname.html
456
- - vendor/tests/tests/microformats-v2/h-resume/justaname.json
457
- - vendor/tests/tests/microformats-v2/h-resume/skill.html
458
- - vendor/tests/tests/microformats-v2/h-resume/skill.json
459
- - vendor/tests/tests/microformats-v2/h-resume/work.html
460
- - vendor/tests/tests/microformats-v2/h-resume/work.json
461
- - vendor/tests/tests/microformats-v2/h-review-aggregate/change-log.html
462
- - vendor/tests/tests/microformats-v2/h-review-aggregate/hevent.html
463
- - vendor/tests/tests/microformats-v2/h-review-aggregate/hevent.json
464
- - vendor/tests/tests/microformats-v2/h-review-aggregate/justahyperlink.html
465
- - vendor/tests/tests/microformats-v2/h-review-aggregate/justahyperlink.json
466
- - vendor/tests/tests/microformats-v2/h-review-aggregate/simpleproperties.html
467
- - vendor/tests/tests/microformats-v2/h-review-aggregate/simpleproperties.json
468
- - vendor/tests/tests/microformats-v2/h-review/change-log.html
469
- - vendor/tests/tests/microformats-v2/h-review/hyperlink.html
470
- - vendor/tests/tests/microformats-v2/h-review/hyperlink.json
471
- - vendor/tests/tests/microformats-v2/h-review/implieditem.html
472
- - vendor/tests/tests/microformats-v2/h-review/implieditem.json
473
- - vendor/tests/tests/microformats-v2/h-review/item.html
474
- - vendor/tests/tests/microformats-v2/h-review/item.json
475
- - vendor/tests/tests/microformats-v2/h-review/justaname.html
476
- - vendor/tests/tests/microformats-v2/h-review/justaname.json
477
- - vendor/tests/tests/microformats-v2/h-review/photo.html
478
- - vendor/tests/tests/microformats-v2/h-review/photo.json
479
- - vendor/tests/tests/microformats-v2/h-review/vcard.html
480
- - vendor/tests/tests/microformats-v2/h-review/vcard.json
481
- - vendor/tests/tests/microformats-v2/rel/change-log.html
482
- - vendor/tests/tests/microformats-v2/rel/duplicate-rels.html
483
- - vendor/tests/tests/microformats-v2/rel/duplicate-rels.json
484
- - vendor/tests/tests/microformats-v2/rel/license.html
485
- - vendor/tests/tests/microformats-v2/rel/license.json
486
- - vendor/tests/tests/microformats-v2/rel/nofollow.html
487
- - vendor/tests/tests/microformats-v2/rel/nofollow.json
488
- - vendor/tests/tests/microformats-v2/rel/rel-urls.html
489
- - vendor/tests/tests/microformats-v2/rel/rel-urls.json
490
- - vendor/tests/tests/microformats-v2/rel/varying-text-duplicate-rels.html
491
- - vendor/tests/tests/microformats-v2/rel/varying-text-duplicate-rels.json
492
- - vendor/tests/tests/microformats-v2/rel/xfn-all.html
493
- - vendor/tests/tests/microformats-v2/rel/xfn-all.json
494
- - vendor/tests/tests/microformats-v2/rel/xfn-elsewhere.html
495
- - vendor/tests/tests/microformats-v2/rel/xfn-elsewhere.json
496
- homepage: https://github.com/indieweb/microformats-ruby
497
- licenses: []
253
+ homepage: https://github.com/microformats/microformats-ruby
254
+ licenses:
255
+ - CC0-1.0
498
256
  metadata: {}
499
- post_install_message: |2+
500
-
501
-
502
- Previously called "microformats2" (on version 3.1 and below).
503
-
257
+ post_install_message: Prior to version 4.0.0, the microformats gem was named "microformats2."
504
258
  rdoc_options: []
505
259
  require_paths:
506
260
  - lib
@@ -508,7 +262,10 @@ required_ruby_version: !ruby/object:Gem::Requirement
508
262
  requirements:
509
263
  - - ">="
510
264
  - !ruby/object:Gem::Version
511
- version: '2.0'
265
+ version: '2.4'
266
+ - - "<"
267
+ - !ruby/object:Gem::Version
268
+ version: '2.6'
512
269
  required_rubygems_version: !ruby/object:Gem::Requirement
513
270
  requirements:
514
271
  - - ">="
@@ -516,67 +273,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
516
273
  version: '0'
517
274
  requirements: []
518
275
  rubyforge_project:
519
- rubygems_version: 2.5.1
276
+ rubygems_version: 2.6.14.1
520
277
  signing_key:
521
278
  specification_version: 4
522
- summary: Microformats and microformats2 parser
523
- test_files:
524
- - spec/lib/microformats/absolute_uri_spec.rb
525
- - spec/lib/microformats/parser_spec.rb
526
- - spec/lib/microformats_spec.rb
527
- - spec/spec_helper.rb
528
- - spec/support/cases/microformats.org/microformats-2/microformats-2-0.html
529
- - spec/support/cases/microformats.org/microformats-2/microformats-2-0.js
530
- - spec/support/cases/microformats.org/microformats-2/microformats-2-1.html
531
- - spec/support/cases/microformats.org/microformats-2/microformats-2-1.js
532
- - spec/support/cases/microformats.org/microformats-2/microformats-2-2.html
533
- - spec/support/cases/microformats.org/microformats-2/microformats-2-2.js
534
- - spec/support/cases/microformats.org/microformats-2/microformats-2-3.html
535
- - spec/support/cases/microformats.org/microformats-2/microformats-2-3.js
536
- - spec/support/cases/microformats.org/microformats-2/microformats-2-4.html
537
- - spec/support/cases/microformats.org/microformats-2/microformats-2-4.js
538
- - spec/support/cases/microformats.org/microformats-2/microformats-2-5.html
539
- - spec/support/cases/microformats.org/microformats-2/microformats-2-5.js
540
- - spec/support/cases/microformats.org/microformats-2/microformats-2-6.html
541
- - spec/support/cases/microformats.org/microformats-2/microformats-2-6.js
542
- - spec/support/cases/microformats.org/microformats-2/microformats-2-7.html
543
- - spec/support/cases/microformats.org/microformats-2/microformats-2-7.js
544
- - spec/support/cases/microformats.org/microformats-2/microformats-2-8.html
545
- - spec/support/cases/microformats.org/microformats-2/microformats-2-8.js
546
- - spec/support/cases/microformats.org/microformats-2/microformats-2-9.html
547
- - spec/support/cases/microformats.org/microformats-2/microformats-2-9.js
548
- - spec/support/lib/edge_cases/blank_href.html
549
- - spec/support/lib/edge_cases/blank_href.js
550
- - spec/support/lib/edge_cases/blank_rel.html
551
- - spec/support/lib/edge_cases/blank_rel.js
552
- - spec/support/lib/edge_cases/blank_src.html
553
- - spec/support/lib/edge_cases/blank_src.js
554
- - spec/support/lib/edge_cases/blank_value.html
555
- - spec/support/lib/edge_cases/blank_value.js
556
- - spec/support/lib/edge_cases/relative.html
557
- - spec/support/lib/edge_cases/relative.js
558
- - spec/support/lib/edge_cases/vcp-dates.html
559
- - spec/support/lib/edge_cases/vcp-dates.js
560
- - spec/support/lib/microformats/blank_href.html
561
- - spec/support/lib/microformats/blank_href.js
562
- - spec/support/lib/microformats/implied_property/name-fail.html
563
- - spec/support/lib/microformats/implied_property/name-pass.html
564
- - spec/support/lib/microformats/implied_property/photo-fail.html
565
- - spec/support/lib/microformats/implied_property/photo-pass.html
566
- - spec/support/lib/microformats/implied_property/url-fail.html
567
- - spec/support/lib/microformats/implied_property/url-pass.html
568
- - spec/support/lib/microformats/implied_property/url-relative.html
569
- - spec/support/lib/microformats/implied_property/url-unnormalized.html
570
- - spec/support/lib/microformats/nested-format-with-property-of-same-name.html
571
- - spec/support/lib/microformats/nested-format-with-property-of-same-name.js
572
- - spec/support/lib/microformats/nested-format-with-property.html
573
- - spec/support/lib/microformats/nested-format-with-property.js
574
- - spec/support/lib/microformats/nested-format-without-property.html
575
- - spec/support/lib/microformats/nested-property.html
576
- - spec/support/lib/microformats/nested-property.js
577
- - spec/support/lib/microformats/rels-that-drop-the-base.html
578
- - spec/support/lib/microformats/rels-with-unnormalized-urls.html
579
- - spec/support/lib/microformats/rels.html
580
- - spec/support/lib/microformats/rels.js
581
- - spec/support/lib/microformats/simple.html
582
- - spec/support/lib/microformats/simple.js
279
+ summary: Microformats2 and classic microformats parser
280
+ test_files: []