rexle 1.5.3 → 1.5.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (6) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/lib/rexle.rb +16 -5
  5. metadata +36 -36
  6. metadata.gz.sig +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c99a5e463c69419d77ab9fc23a2899dcee634840d3df17ff6be5531c9602175b
4
- data.tar.gz: 968a9dd1f8f41763cab001ca540ddb48c9519c1cbaa1df67d9dbea484a43de9f
3
+ metadata.gz: 48ffcbfab5e523417662457d13ac99081ec9257b3c8658943487c981ae9e6963
4
+ data.tar.gz: a1e01f8147ac5f5ca54a99038d9c5a38d8e149cbfb64546f461fd2e9f80b3a4b
5
5
  SHA512:
6
- metadata.gz: e1a6ffe5c2d5f56ba866fbda5bfda8fda6b79e21cc2fe5ef17a358092467a2da043b377a397009bca4bd1ed2ec73512fd4b841f8a9a544b5402b1ca9b432755b
7
- data.tar.gz: 60dde98962041333633d2a0a6308346f2fee8c8089978460cdaef01c80ac6a39ba6386c03b3f65b1bf25413cac529808f468e9abbb9b50ed69632c364e524ea8
6
+ metadata.gz: 7ee20461d62db424b3542e10e06bbee810e943a59e3f06297fd71a4cf77addd2a945ac56dc931aad7eedb9633f1afb18d25a77841b3a945bdd1435426e3f9846
7
+ data.tar.gz: 326c39c15f196b500d82fd2bff225ca3a40e472c77cc51191d8db03766bcaaac11c72560e75ef9d532e4af71370be29b1ccbaee9731fad4e4a742566a6bf8814
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -13,6 +13,10 @@ require 'backtrack-xpath'
13
13
 
14
14
  # modifications:
15
15
 
16
+ # 30-Jul-2020: minor improvement: #plaintext now unescapes & to &
17
+ # 11-May-2020: bug fix: Rexle#css now responds correctly to valid selectors
18
+ # 23-Apr-2020: feature: Added public method *plaintext*.
19
+ # 04-Feb-2020: minor bug fix: Element A is now defined as a non self-closing tag
16
20
  # 18-Sep-2019: minor bug fix: &apos is now unescaped properly
17
21
  # 09-Jul-2019: minor improvement: A comment tag now has a
18
22
  # new line when pretty printed
@@ -100,7 +104,7 @@ module XMLhelper
100
104
 
101
105
  tag = x.name + (a.empty? ? '' : ' ' + a.join(' '))
102
106
 
103
- non_self_closing_tags = %w(script textarea iframe div object)
107
+ non_self_closing_tags = %w(script textarea iframe div object a)
104
108
 
105
109
  if (x.children and x.children.length > 0 \
106
110
  and not x.children.is_an_empty_string?) or \
@@ -206,6 +210,7 @@ class Rexle
206
210
  def initialize(x=nil, rexle: self, debug: false)
207
211
 
208
212
  @rexle, @debug = rexle, debug
213
+ $debug = @debug
209
214
 
210
215
  puts 'inside Rexle'.debug if debug
211
216
 
@@ -254,9 +259,7 @@ class Rexle
254
259
  a = selector.split(',').flat_map do |x|
255
260
  @doc.root.xpath RexleCSS.new(x).to_xpath
256
261
  end
257
-
258
- a.shift if self.kind_of? Rexle
259
-
262
+
260
263
  return a
261
264
  end
262
265
 
@@ -647,6 +650,7 @@ class Rexle
647
650
  attr_search = format_condition(condition) if condition \
648
651
  and condition.length > 0
649
652
 
653
+ puts ('1. attr_search: ' + attr_search.inspect).debug if $debug
650
654
  #@log.debug 'attr_search2 : ' + attr_search.inspect
651
655
  attr_search2 = xpath_value[/^\[(.*)\]$/,1]
652
656
 
@@ -711,6 +715,7 @@ class Rexle
711
715
  end
712
716
 
713
717
  elsif element_name.nil?
718
+ puts ('attr_search: ' + attr_search.inspect).debug if $debug
714
719
  return eval attr_search
715
720
  else
716
721
 
@@ -996,6 +1001,12 @@ class Rexle
996
1001
  def insert_before(node) insert(node) end
997
1002
  def last(a) a.last end
998
1003
  def map(&blk) self.children.map(&blk) end
1004
+
1005
+ def plaintext()
1006
+ xml().gsub(/<\/?[^>]+>/,'').gsub('&amp;','&').gsub('&nbsp;',' ')\
1007
+ .gsub(/\n\s+/,' ')
1008
+ end
1009
+
999
1010
  def root() self end
1000
1011
 
1001
1012
  def text(s='')
@@ -1043,7 +1054,7 @@ class Rexle
1043
1054
 
1044
1055
  val = Value.new(raw_s.to_s.clone)
1045
1056
 
1046
- escape_chars = %w(& &amp; < &lt; > &gt;).each_slice(2).to_a
1057
+ escape_chars = %w(& &amp; ' &apos; < &lt; > &gt;).each_slice(2).to_a
1047
1058
  escape_chars.each{|x| val.gsub!(*x)}
1048
1059
 
1049
1060
  t = val
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rexle
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.3
4
+ version: 1.5.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -11,31 +11,31 @@ cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
13
  MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
14
- YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMTgxMDAyMjEwMjM4WhcN
15
- MTkxMDAyMjEwMjM4WjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
- cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQC1X6zL
17
- G+ytuYkQsPOKreuUt/gsYlNSAw5D8VDCUdOScMLcytoL5Ssf3CBBr2LM1QJrkQ5M
18
- 2J4bF0uTDFmegNK44hIpPPYAYuMHL3IjSawvdyBHgl7GRqv84Y7ys7kD+X+TtxqK
19
- jP3icaTau5+DQMe3lIjqlS7KhI0GhUmjiGlL1X/WOaxf3gHTRWtiMktv3VElekAj
20
- cOL+hZtRICwLq6yrixODLIt9OyAZ8t+U3XpYZIHkMAswGGo05Pkf4FlDnIzm+VJ0
21
- J+dTw+FVx/kPL7y4FNTN8Akl45dAFADuHHNAuOKlCWT+CkKBdDhEWNJQC/cX8nxf
22
- XHwKna6YPnuAbt1IBwX/eZIDDrFrTApa6nQVWgyUWyt7z9ntslVCd1rW6K1siJ9F
23
- nrW/LPUUgVhTCMwFXYaPWoBaVbiZqGlVn2cFJF9MS9bB4pPbCSU9YVJ4qtYGAatD
24
- MBl0kiJdq8exmm0f9WqOvXmVWXWYlhMv5LfAH1ECbK4pIdh5DolK3NB/70sCAwEA
25
- AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUYY6jhDbE
26
- YQSrL+8T3vNoEqjmOXowJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
14
+ YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMjAwMjA0MTMxMjIzWhcN
15
+ MjEwMjAzMTMxMjIzWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
+ cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCyVLqC
17
+ gVJ+P/zFnjtoyxfgcrc5US5+G7mDdNq/Q2GDm2zIZjVAnUHLZCcKLBlwMY0Vusqq
18
+ sNzbiSHqVqaXtrFq2jivmbJsKUxJMTIuErXQnpfVsmapQsYJ7U8+byHgFRf8ysTc
19
+ Op90xKUkroJdO+Ls0SMcFXUGqybH5d4Dxhb+3f/rAThPC8V9EWRWF/SlosXvE/sw
20
+ VzsGkxLQug3xJkSvN2rQQZi4RgOP37jgeEToeLTIu43npNF6H9nSV/lxUriqPyva
21
+ OMQYIpK+1SS42J9rSD1/1q1FscsKT2koP9Uf4zHzIeuiQ4wmAMpqYS80eNzaeAEx
22
+ p3Z4HLBHseWKNWSDrgW0YvuYBAEMcq+XdBMT66n+xKL5GUlsXptrFQ4QP6oOxK4K
23
+ UZXN94qwi54m+EIexo5ADKtrwRuQl+X9pRpOmFNJAny8vWIz6U1SZs2nBysPLj2g
24
+ lnKLGetPlgBVoKAPZoFu//CYQKIO+erQoAGRoA05TGrBAq2cNkNFvQJ9XM0CAwEA
25
+ AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUCCDebAbe
26
+ pZaniHSTxRjAZLUsoQswJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
27
27
  c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
28
- BgkqhkiG9w0BAQsFAAOCAYEAjUIY0ulHDqBKjbrn3mxutbu0fzMLo0TBmpvvuG2S
29
- j4nitZZVmcjiEtJ9br8qjKg0Ycfkt2GTKjeJ7NwrwS0oBtOSsvrDFA+x/YoO5cuk
30
- RNhiEC9tk+IF/xN9N0+eyiRBfWFtZ8yHG1d5Ql0DirzspiYLX5sVQG/8hA3s9Jbn
31
- gO0fnWowD9LP+jbZr6yw/rnU1Mhb3UAI2W9LSXGslpxvtMS0yKsrHPR9/qQ3fIKH
32
- teZlGb8tw9RXEKExP6zSR+ZRXpnNyZQ7flRf4lusqUNvtkguF9dL8RNd8QMV2PJw
33
- IHeJbMdyTmYQb8XIAR5zXu0BHfqKRT1GLg94u03RBsBcno5YqNJ5OU42C+j8GEQt
34
- nFb3gCj4YFPzQa6OVdSIi/kKW2J8wFxUvI8muMt7lbTaxFJLyK9Qdt/oKxwxXM1t
35
- Zdf6ufm6l1fXtBUvl0XuKmNH8p6u/7SmI2oqJoV7Oiarx5i1LrpWL8Zc3q9MFaT4
36
- pzftGMNXyXUyb9mSx4krfsRT
28
+ BgkqhkiG9w0BAQsFAAOCAYEAEdNcc2nDj8v6FdY75tULXii+F0m1pnfxri+wtd/1
29
+ wnRqNqmaKQGwAUhx4qLhs8MbGU5H4xe18Hmf7n6P++HSCKaFDwE3mo38vwnPmPr8
30
+ J+4+CWaB+avp9/wztZS3oQ0k/w9bN4b1RUk18z4rpG9Y8KH3v7L+b4rAzzBhs60S
31
+ Q2+963e3C7PFkFODn1vfGMRmBK2nuekE6RdzzxzRuUBwKHMggxPsHRQzaz8cy4fB
32
+ UWC8eX0y59rd/gA0WunPXgpuV24SHBtIqTLk76Z1Oz3P27Hwx2JPhURtzc3bNfSg
33
+ gvwYrdF1dTOwourN6uqQLksl7AjcCVUV+6hyoa5Fo9HcfURnlPdjVFax/KIQj3lA
34
+ X0bOYG6opdA3I0zyDHGx+mC9QuhM6oKYq3fu7i8RsVsihVImOovRYVagGbULBLDZ
35
+ yK32Ci6By/qMCdJdE8pLLZhHuZGIkoYJK7EN7OKPznwuXRCOq7jb44HAIDi4RZST
36
+ J+lqIOqNxqRJkYpuYSZr+tyd
37
37
  -----END CERTIFICATE-----
38
- date: 2019-09-18 00:00:00.000000000 Z
38
+ date: 2020-07-30 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: c32
@@ -63,40 +63,40 @@ dependencies:
63
63
  requirements:
64
64
  - - "~>"
65
65
  - !ruby/object:Gem::Version
66
- version: '0.8'
66
+ version: '0.9'
67
67
  - - ">="
68
68
  - !ruby/object:Gem::Version
69
- version: 0.8.1
69
+ version: 0.9.3
70
70
  type: :runtime
71
71
  prerelease: false
72
72
  version_requirements: !ruby/object:Gem::Requirement
73
73
  requirements:
74
74
  - - "~>"
75
75
  - !ruby/object:Gem::Version
76
- version: '0.8'
76
+ version: '0.9'
77
77
  - - ">="
78
78
  - !ruby/object:Gem::Version
79
- version: 0.8.1
79
+ version: 0.9.3
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: rexle-builder
82
82
  requirement: !ruby/object:Gem::Requirement
83
83
  requirements:
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- version: 0.6.0
87
84
  - - "~>"
88
85
  - !ruby/object:Gem::Version
89
- version: '0.6'
86
+ version: '1.0'
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: 1.0.2
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: 0.6.0
97
94
  - - "~>"
98
95
  - !ruby/object:Gem::Version
99
- version: '0.6'
96
+ version: '1.0'
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ version: 1.0.2
100
100
  - !ruby/object:Gem::Dependency
101
101
  name: rexle-css
102
102
  requirement: !ruby/object:Gem::Requirement
metadata.gz.sig CHANGED
@@ -1 +1 @@
1
- o{t{�2Svܾ�qSo�48�z�IJQJYMO$��ᯔ�D[F>�N�p��X�PC9��V�� (���r+���������ʎGV���C�Ͻ9 _�3�N��Z� �ǥ,1����6r�zWcX+�it�U`���ւ�Dh��;��ҹ�QE� ��
1
+ ڿ�:r-v*���2��A|���0���������