feedjira 3.1.0 → 3.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (85) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/feed-parsing.md +15 -0
  3. data/.github/ISSUE_TEMPLATE/general-issue.md +8 -0
  4. data/.github/workflows/ruby.yml +39 -0
  5. data/.rubocop.yml +34 -615
  6. data/.rubocop_todo.yml +4 -29
  7. data/CHANGELOG.md +60 -13
  8. data/Gemfile +3 -4
  9. data/Rakefile +3 -1
  10. data/feedjira.gemspec +12 -12
  11. data/lib/feedjira/configuration.rb +5 -3
  12. data/lib/feedjira/core_ext/date.rb +3 -1
  13. data/lib/feedjira/core_ext/string.rb +2 -0
  14. data/lib/feedjira/core_ext/time.rb +3 -1
  15. data/lib/feedjira/core_ext.rb +2 -0
  16. data/lib/feedjira/date_time_utilities/date_time_epoch_parser.rb +3 -0
  17. data/lib/feedjira/date_time_utilities/date_time_language_parser.rb +5 -3
  18. data/lib/feedjira/date_time_utilities/date_time_pattern_parser.rb +9 -9
  19. data/lib/feedjira/date_time_utilities.rb +8 -8
  20. data/lib/feedjira/feed.rb +3 -1
  21. data/lib/feedjira/feed_entry_utilities.rb +5 -3
  22. data/lib/feedjira/feed_utilities.rb +8 -5
  23. data/lib/feedjira/parser/atom.rb +5 -6
  24. data/lib/feedjira/parser/atom_entry.rb +2 -0
  25. data/lib/feedjira/parser/atom_feed_burner.rb +4 -2
  26. data/lib/feedjira/parser/atom_feed_burner_entry.rb +2 -2
  27. data/lib/feedjira/parser/atom_google_alerts.rb +3 -1
  28. data/lib/feedjira/parser/atom_google_alerts_entry.rb +8 -5
  29. data/lib/feedjira/parser/atom_youtube.rb +4 -2
  30. data/lib/feedjira/parser/atom_youtube_entry.rb +2 -0
  31. data/lib/feedjira/parser/globally_unique_identifier.rb +2 -0
  32. data/lib/feedjira/parser/google_docs_atom.rb +5 -3
  33. data/lib/feedjira/parser/google_docs_atom_entry.rb +2 -0
  34. data/lib/feedjira/parser/itunes_rss.rb +4 -2
  35. data/lib/feedjira/parser/itunes_rss_category.rb +8 -6
  36. data/lib/feedjira/parser/itunes_rss_item.rb +3 -1
  37. data/lib/feedjira/parser/itunes_rss_owner.rb +2 -0
  38. data/lib/feedjira/parser/json_feed.rb +4 -2
  39. data/lib/feedjira/parser/json_feed_item.rb +7 -1
  40. data/lib/feedjira/parser/podlove_chapter.rb +5 -2
  41. data/lib/feedjira/parser/rss.rb +4 -1
  42. data/lib/feedjira/parser/rss_entry.rb +2 -0
  43. data/lib/feedjira/parser/rss_feed_burner.rb +4 -2
  44. data/lib/feedjira/parser/rss_feed_burner_entry.rb +2 -2
  45. data/lib/feedjira/parser/rss_image.rb +2 -0
  46. data/lib/feedjira/parser.rb +2 -0
  47. data/lib/feedjira/preprocessor.rb +3 -1
  48. data/lib/feedjira/rss_entry_utilities.rb +6 -2
  49. data/lib/feedjira/version.rb +3 -1
  50. data/lib/feedjira.rb +2 -1
  51. data/spec/feedjira/configuration_spec.rb +5 -3
  52. data/spec/feedjira/feed_spec.rb +13 -10
  53. data/spec/feedjira/{date_time_utilities_spec.rb → feed_utilities_date_time_spec.rb} +9 -7
  54. data/spec/feedjira/{feed_entry_utilities_spec.rb → feed_utilities_entry_spec.rb} +12 -10
  55. data/spec/feedjira/feed_utilities_spec.rb +37 -40
  56. data/spec/feedjira/parser/atom_entry_spec.rb +22 -20
  57. data/spec/feedjira/parser/atom_feed_burner_entry_spec.rb +16 -14
  58. data/spec/feedjira/parser/atom_feed_burner_spec.rb +30 -28
  59. data/spec/feedjira/parser/atom_google_alerts_entry_spec.rb +12 -10
  60. data/spec/feedjira/parser/atom_google_alerts_spec.rb +15 -13
  61. data/spec/feedjira/parser/atom_spec.rb +44 -25
  62. data/spec/feedjira/parser/atom_youtube_entry_spec.rb +25 -23
  63. data/spec/feedjira/parser/atom_youtube_spec.rb +16 -14
  64. data/spec/feedjira/parser/google_docs_atom_entry_spec.rb +5 -3
  65. data/spec/feedjira/parser/google_docs_atom_spec.rb +10 -8
  66. data/spec/feedjira/parser/{itunes_rss_item_spec.rb → i_tunes_rss_item_spec.rb} +21 -19
  67. data/spec/feedjira/parser/{itunes_rss_owner_spec.rb → i_tunes_rss_owner_spec.rb} +5 -3
  68. data/spec/feedjira/parser/itunes_rss_spec.rb +35 -33
  69. data/spec/feedjira/parser/json_feed_item_spec.rb +16 -14
  70. data/spec/feedjira/parser/json_feed_spec.rb +15 -13
  71. data/spec/feedjira/parser/podlove_chapter_spec.rb +9 -7
  72. data/spec/feedjira/parser/rss_entry_spec.rb +25 -23
  73. data/spec/feedjira/parser/rss_feed_burner_entry_spec.rb +24 -22
  74. data/spec/feedjira/parser/rss_feed_burner_spec.rb +20 -18
  75. data/spec/feedjira/parser/rss_spec.rb +26 -24
  76. data/spec/feedjira/preprocessor_spec.rb +6 -4
  77. data/spec/feedjira_spec.rb +50 -39
  78. data/spec/sample_feeds/a10.xml +72 -0
  79. data/spec/sample_feeds/atom_simple_single_entry.xml +17 -0
  80. data/spec/sample_feeds/atom_simple_single_entry_link_self.xml +17 -0
  81. data/spec/sample_feeds.rb +6 -1
  82. data/spec/spec_helper.rb +3 -7
  83. metadata +60 -24
  84. data/.travis.yml +0 -34
  85. data/Dangerfile +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d77becc66f52f24c3105ebed905255506b0857c1452accf32b6b2f7f691dd8b
4
- data.tar.gz: 04e39a33e2de97107040f3a10ae8a84fad2441e2bca21c7c0731c58293d47af1
3
+ metadata.gz: b6930aadfe8b2a06d65aa2a8dfaad0d8fcc4f34356a3c3646cf75ef70a753a8d
4
+ data.tar.gz: 00a921f06c7542ca84d552a6f680e56d99f4b0b3aa830113b75c0545f6fdbcf7
5
5
  SHA512:
6
- metadata.gz: 77fc47a4b6918578a8934b3aff52f07fc7c643597bf4b30116de0f90d1526bc79bccdbd52acba8b43f6fdcf8856490df680ecbce2e9b0f1efd5c337ed0f5da4b
7
- data.tar.gz: 4440459e2e2ad27c953f30238349b9e60d0fff2cd15282fec0d1ae986a6bedacd3fff91ac34add975688c2a002081f5523b57261da4ab4b3a9db25b35d8d3bef
6
+ metadata.gz: 5970d946d3673ff856f95bef75e09b4cc0b6dbc3b8b9ba66a3ebade66d93fd894b23e784d8e9c3ab345eb6deae2094878e60be2164aae46623e2159bcf4530c0
7
+ data.tar.gz: ae1466452711a547ec9f2ad42ab34b11a8ce03a1886e6ddeb56f3a8723c3d1ab6f1a0b22461c339a0a5c490e64965a37da9329bcd701fd4d10117c8b9e28fbe1
@@ -0,0 +1,15 @@
1
+ ---
2
+ name: Feed Parsing
3
+ about: Your feed is parsing incorrectly, or you have a feed type that is not supported
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ ### Steps to reproduce
11
+ <!-- (Guidelines for creating a bug report are [available
12
+ here](https://edgeguides.rubyonrails.org/contributing_to_ruby_on_rails.html#creating-a-bug-report)) -->
13
+
14
+ ### Example feed URL
15
+ <!-- Tell us what should happen -->
@@ -0,0 +1,8 @@
1
+ ---
2
+ name: Feed Parsing
3
+ about: Anything else
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
@@ -0,0 +1,39 @@
1
+ name: Ruby
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+ pull_request:
8
+
9
+ jobs:
10
+ test:
11
+ strategy:
12
+ fail-fast: false
13
+ matrix:
14
+ os: [ubuntu]
15
+ ruby: [2.5, 2.6, 2.7, 3.0]
16
+ handler: [nokogiri, ox, oga]
17
+ exclude:
18
+ - { ruby: jruby, handler: ox }
19
+
20
+ name: >-
21
+ ${{matrix.os}}-ruby-${{matrix.ruby}}-${{matrix.handler}}
22
+ runs-on: ${{matrix.os}}-latest
23
+ continue-on-error: ${{matrix.ruby == 'head' || matrix.ruby == 'jruby'}}
24
+ env:
25
+ HANDLER: ${{matrix.handler}}
26
+
27
+ steps:
28
+ - name: Check out
29
+ uses: actions/checkout@v2
30
+
31
+ - name: Set up ruby and bundle
32
+ uses: ruby/setup-ruby@v1
33
+ with:
34
+ ruby-version: ${{matrix.ruby}}
35
+ bundler-cache: true
36
+
37
+ - name: Run rake
38
+ run: |
39
+ bundle exec rake