rexslt 0.6.11 → 0.6.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (6) hide show
  1. checksums.yaml +5 -5
  2. checksums.yaml.gz.sig +2 -2
  3. data.tar.gz.sig +0 -0
  4. data/lib/rexslt.rb +21 -14
  5. metadata +27 -24
  6. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: f6f2fcd4f4f5add9cf17a3da33f6d23b3b4890a2
4
- data.tar.gz: 2d05b609990be88dc140d2a20bd2df187fc0a89c
2
+ SHA256:
3
+ metadata.gz: 8677062cfbfef49a97de56c7fb501abf1f57c48bbea804ec13d4a6dcb93d69ed
4
+ data.tar.gz: dab58fa40b0365bef22573ec58c7b97cf86a5c4fdeddbd103395b2655a887e02
5
5
  SHA512:
6
- metadata.gz: ed60314be33b39c9eea2dcedff1b7cee5ad6fb5f1bde100b374e3c5e89506a26843f4884cdc3935a7c72344b32debcbea8fb0c769b207e95fd86584e93b6bef6
7
- data.tar.gz: 3486f01f82b598aa41fc4fbffb38b19197f4e106089c40808a2898386607101edbb4b9ba226d3b9faaa3ce5bccd1aa77bcd22fb2c0a65439c3263a43bfa61f61
6
+ metadata.gz: f94cb4e9621cda90f7e4e785fd7b45d53b94734bc3e3f01b8713a45faad7f9fdaaf5cefb478917abad1ff4c3533e40bfc963061b2436c401de011d6a5676841f
7
+ data.tar.gz: 6fbef82369e5534e05928a13b7f3ff01562767d65bded4e32bc8fbba26754271e7d5f1abd1d32c7a79df252e70705d91760a3863f91bcf76a8acf9add5a8cdf4
checksums.yaml.gz.sig CHANGED
@@ -1,2 +1,2 @@
1
- U��J>���a�x`��x��ݫ��?����d��d�Qޖ�RG�K���B�2�KԬ�R!��G�_�֎oҜQ�Wx���) ��5M���w^���0j�\�dߛ�O��y��)�3:��A
2
- ��%�U�>|�p$Z,����4�R�b_�b�O�j
1
+ -~V6x�+�:]cΈ�0㢩>�>�u�� ��lժ�F5����W��8鹢�I�� E�ϕ�k�2:e��P�ٺ���5����~�u�*�����ML!]�������n���M
2
+ b\dy.{~�뾇�%���O�2|� �-`jO��=�����ִT��g�G��(x3��D�n$��P86�1B�n�0��������q��Ռ)Y�u�W�k�fs8 �Z�핲.�yw@��!Ұ�En�98�m�J5RR�|�C=�东i
data.tar.gz.sig CHANGED
Binary file
data/lib/rexslt.rb CHANGED
@@ -8,7 +8,9 @@ require 'logger'
8
8
 
9
9
 
10
10
  # modifications:
11
-
11
+ #
12
+ # 01-Feb-2019: bug fix: new line characters are no longer stripped
13
+ # between XSL elements
12
14
  # 19-Jan-2018: feature: Implemented Rexslt#to_xml which returns pretty XML
13
15
  # 16-Sep-2017: improvement: all predicates in an xsl:choose
14
16
  # condition now must be true
@@ -59,32 +61,35 @@ end
59
61
 
60
62
  class Rexslt
61
63
  using RexPath
64
+ using ColouredText
62
65
 
63
- def initialize(xsl, xml, params={})
66
+ def initialize(xsl, xml, raw_params={}, debug: false)
64
67
 
65
68
  ## debugging variables
66
69
 
67
- @log = Logger.new 'rxsl.log','daily'
68
70
  @rn = 0
69
71
  @rre = 0
70
72
 
71
73
  super()
72
- @log.debug 'before options'
74
+ puts 'before options'.info if @debug
73
75
  @options = {}
76
+
77
+ params = raw_params.merge({debug: false})
78
+ @debug = debug
74
79
  custom_params = params.inject({}){|r,x| r.merge(Hash[x[0].to_s,x[1]])}
75
- @log.debug 'before xsl_transform'
80
+ puts 'before xsl_transform'.info if @debug
76
81
 
77
82
  xslt_transform(*[xsl, xml].map{|x| RXFHelper.read(x).first}, custom_params)
78
83
  end
79
84
 
80
85
  def to_s(options={})
81
- @doc.to_s(@options.merge(options)).sub(/<root>\n/,'').sub(/<\/root>$/m,'')
86
+ @doc.to_s(@options.merge(options)).sub(/<root4>/,'').sub(/<\/root4>$/m,'').lstrip
82
87
  end
83
88
 
84
89
  def to_doc(); @doc; end
85
90
 
86
91
  def to_xml()
87
- @doc.root.xml(pretty: true).sub(/<root>\n/,'').sub(/<\/root>$/m,'')
92
+ @doc.root.xml(pretty: true).sub(/<root3>\n/,'').sub(/<\/root3>$/m,'')
88
93
  end
89
94
 
90
95
  private
@@ -377,6 +382,7 @@ class Rexslt
377
382
 
378
383
  template_node.children.each_with_index do |x,j|
379
384
 
385
+ puts ('x: ' + x.inspect).debug if @debug
380
386
  name = if x.kind_of? Rexle::Element then :read_raw_element
381
387
  elsif x.is_a? String then :read_raw_text
382
388
  elsif x.class.to_s =~ /Rexle::Comment$/ then :ignore
@@ -397,11 +403,10 @@ class Rexslt
397
403
  if x.to_s.strip.length > 0 then
398
404
 
399
405
  val = x.to_s.strip #
400
- doc_element.add_element val
406
+ puts ('val: ' + val.inspect).debug if @debug
407
+ doc_element.add_element x.to_s
401
408
  end
402
409
 
403
- #doc_element.add_text x if x.is_a? String
404
-
405
410
  end
406
411
 
407
412
  # element: xml element
@@ -521,16 +526,16 @@ class Rexslt
521
526
 
522
527
  def xslt_transform(raw_xsl, xml, custom_params={})
523
528
 
524
- @log.debug 'inside xslt_transform'
529
+ puts 'inside xslt_transform'.info if @debug
525
530
 
526
531
  doc_xml = xml.is_a?(Rexle) ? xml : Rexle.new(xml)
527
532
 
528
533
  @doc_xsl = raw_xsl.is_a?(Rexle) ? raw_xsl : Rexle.new(raw_xsl)
529
- @log.debug 'after @doc_xsl'
534
+ puts 'after @doc_xsl'.info if @debug
530
535
 
531
536
  #jr2040516 filter_out_spaces @doc_xsl.root
532
537
 
533
- @doc = Rexle.new '<root></root>'
538
+ @doc = Rexle.new '<root4></root4>', debug: @debug
534
539
 
535
540
  indent = 0
536
541
 
@@ -552,7 +557,7 @@ class Rexslt
552
557
  end
553
558
 
554
559
  h = @doc_xsl.root.element("xsl:output/attribute::*")
555
- @log.debug 'after h'
560
+ puts 'after h'.info if @debug
556
561
 
557
562
  if h and ((h[:method] and h[:method].downcase == 'html') \
558
563
  or h[:'omit-xml-declaration'] == 'yes') then
@@ -576,6 +581,8 @@ class Rexslt
576
581
  # using the 1st template
577
582
  xpath = String.new @templates.to_a[0][0]
578
583
  out = read_node(@templates.to_a[0][-1], doc_xml.element(xpath), @doc.root, indent)
584
+
585
+ puts ('out: ' + out.inspect).debug if @debug
579
586
 
580
587
  html = @doc.root.element('html')
581
588
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rexslt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.11
4
+ version: 0.6.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -10,28 +10,32 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
- YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
- 8ixkARkWAmV1MB4XDTE3MDkxNTIwMjQwM1oXDTE4MDkxNTIwMjQwM1owSDESMBAG
16
- A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
- EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
- ggEBAMlR9HT3XszqknU82ijbs8uTs91F9jkc+2oXFCmTDwx7K6RIsUYs4J5p2hnw
19
- Rg3JMpgbCnlz2/bOenXHYq2+MYw5jql68lorwqAvPOSqgnmgolid5EuNNyGqlDHB
20
- Mkp79B2ZhNO8Gz77ruYgCKVkGCrwO2Njc8iGGnEiRUAntRna1YcFNYKOU1hllqDI
21
- oKn0efB/YTgzqhhpYxK9sEpWfjFoO9trfj+r9BU/BAHWVDR5vxdSiqFIkbnKW65a
22
- nC28KtMVI7KkUPbN8tgsm8B9Id6POHUUGjiBHr1P/zktOcyrOAnzAi9lLlS9hnkt
23
- 6Ktj0NDtQrAcaJOpS63qJmBuYPkCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
- DwQEAwIEsDAdBgNVHQ4EFgQUFDszzDA8NNNCoYI2FKOrIiIp87YwJgYDVR0RBB8w
25
- HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
- c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAhp3O3yYu
27
- +96s1H5S297WguKDGrNKJoa44o+6IU4JefUxkmfidtaSwcPnnCaAsoLXzBLpnwlY
28
- m6LH1jPWHqnJlUHjtkjr/wp620cWGKcwFw8VlfqdNALV9tALCHje5J+NITR2U9P6
29
- Q6tcZFPZmUCr8SvlQlqGJY1BY/e9iajntzL0j6QvBZLzaQbej1DY5Dbv3e2ipOZq
30
- gQdsDg5v3CppCdi6o+CG+Q+K2P6w4EBdWKHn9FhYUMp4oDiBznW7D+dpEraoyER7
31
- f4Fi5ORmK9ccbijkIGmH2JdFYi07Fax/6a8TgcpbSrICHncFAvvPo8hxuUR+aHvg
32
- wux0hu0gdmk8nA==
13
+ MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
14
+ YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMTkwMjAxMTk1MjQyWhcN
15
+ MjAwMjAxMTk1MjQyWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
+ cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCr1Aj5
17
+ q9c4JQkcjTisuXqjdp5xqnBYNA5ZSWRD7mjzwdKajCSFEE/Qbe5W51pdJLf7T4F+
18
+ nOSQVOQ7bbtUFlmaAVXmzYXM84+kp7yZJVrTPyIFgsO+2trIizZ0HsE4H2CPBhrX
19
+ oefgXQCumOBjwBswUzD9qqvNAX0l0LVa3QBidwA4IHcc8RIFnu/1JOk11GCHYYNR
20
+ T31kN5iGvSH1Cl4cXYuD5PX44bTJ+zdBWusZcCV71MM/QLEglSL9HiS/PNjExMTk
21
+ 8UuT6uuD2n090OotL4qyotVODvetCkIMQullgGBYSQtT/R8sN35Tg64443Gmh4Ft
22
+ u92AmIFSzgGjZLFlc6B/McqxAFxhHCehyGo2X6vvOBz/vExmWpq8FhXHaw726cpw
23
+ iRaBhcCBoxyp1OAUTGnLMbqVyP47KSMEtz+wc1fGR9mUmsPc1hTM0j25scygOK26
24
+ 6pugoVyZLVNIGKnEXQGOGEknDqxHT4jYiYUVXV2N3/0OctBZlsulD/aTX5cCAwEA
25
+ AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUljB/mcn+
26
+ iSaM5h8WLBvmN14qEaIwJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
27
+ c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
28
+ BgkqhkiG9w0BAQsFAAOCAYEAjceGpE0m2OBEXk3T4j5zgE7cO16+sjaM1vk7Cfrq
29
+ FlMKBOq0LHOECVjSxRC9k43K7BAxypBfne+Xm92eRnc8jl/O5MaW1yqbVIDbaPEP
30
+ K3I4WO76HYnwmvjOdjL5FHX3Y5GgADdIiUvxNDmlS1vU9NKk8lzHdZlIcf9R6Vek
31
+ dkB0yYLS2C7pmudqpiwONPrMWVz8BLnerj9N16isNtqP72a9vqBxUAtAmUjyeBRn
32
+ OnHbMWg5fFPG1j3jzyxLGB1YU3uGF6kL3j4etV4dPEv5snbhI5z6rGEMlT/P7mo9
33
+ p6XeA76363WNUzlA4hsY+b3hQvGvgFtj1u3keeTySZtCjSNq6xVOtDxzlngDsVNX
34
+ LPQT8NUug9u8KKvGw+MsrirU/wvQIGablJzhsnZI+snWgGbBYu28magLY+g5Uyn7
35
+ lsqJ2/yU8bVVS+tkDVmCLdDn+RMoPYrLqZGbWwm5913h255DeUC6/qKofxWvR+XC
36
+ hyIDI2yf0ueF+Lirvch+gr7J
33
37
  -----END CERTIFICATE-----
34
- date: 2018-02-03 00:00:00.000000000 Z
38
+ date: 2019-02-01 00:00:00.000000000 Z
35
39
  dependencies:
36
40
  - !ruby/object:Gem::Dependency
37
41
  name: rxfhelper
@@ -99,8 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
103
  - !ruby/object:Gem::Version
100
104
  version: '0'
101
105
  requirements: []
102
- rubyforge_project:
103
- rubygems_version: 2.6.13
106
+ rubygems_version: 3.0.2
104
107
  signing_key:
105
108
  specification_version: 4
106
109
  summary: Rexslt is an XSLT processor written purely in Ruby
metadata.gz.sig CHANGED
Binary file