cmess 0.5.0 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cf452683a1ef2c466cbe501afba72f6bdd3ed00b
4
- data.tar.gz: c7d23fec679298e11de3c89686fdb3968f4d6e53
3
+ metadata.gz: dc0750ec55151ef2618973c7ab9257793ac5dd12
4
+ data.tar.gz: 01b1b296f802de4649f48ae54aa376713ce1f2de
5
5
  SHA512:
6
- metadata.gz: 68d3c3696667d7657d3c94aaf8f48a0c2ed7e9e4c5d43bca82fa2dbbf19cc03f1367a029b7f8f14d9377a6de7b64b7b227cf6304c95a249047f1cf6ad631e687
7
- data.tar.gz: 51b5194739c57dfbc09bb150a47a5adfd0fefdca8e17ebaca543ce74eb5b8d1b4152280c0bfa9c26b1f89c157adbc41b5dba0cb57e126f976bfe02c912ad8e3d
6
+ metadata.gz: 645459b41984d7ac25bc29cddfd0fab57854b47e197a6c84cb92058c2fb964466ee16f82bdbbac8b8aea63071e31e59be917b51c45489e2de4ba6dc5bf755746
7
+ data.tar.gz: fc1022aabea69ae6ccf13e436dd476b2a4a616507afa130b1d106b9bc09c35d78cae96c45c29d2ce9ef0906740ba19bbebca4fc9607dfce058b12f98300f9c65
data/ChangeLog CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  = Revision history for cmess
4
4
 
5
+ == 0.5.1 [2016-05-26]
6
+
7
+ * +cinderella+: Fixed YAML loading and option handling.
8
+ * Fixed error message for missing required options.
9
+ * Fixed YAML files for +cinderella+.
10
+
5
11
  == 0.5.0 [2014-10-07]
6
12
 
7
13
  * Dropped +autoload+; require modules explicitly.
@@ -15,88 +21,88 @@
15
21
  == 0.4.0 [2013-08-02]
16
22
 
17
23
  * Updated for Ruby 1.9.2+. <b>Ruby 1.8 no longer supported.</b>
18
- * guess_encoding: Added <tt>--reverse</tt> option.
24
+ * +guess_encoding+: Added <tt>--reverse</tt> option.
19
25
  * Housekeeping.
20
26
 
21
27
  == 0.3.1 [2011-08-16]
22
28
 
23
- * decode_entities: Fixed regression.
29
+ * +decode_entities+: Fixed regression.
24
30
 
25
31
  == 0.3.0 [2011-07-25]
26
32
 
27
- * Extensive refactoring
28
- * Some more Ruby 1.9 compatibility fixes (thx to @Omer)
33
+ * Extensive refactoring.
34
+ * Some more Ruby 1.9 compatibility fixes (thx to @Omer).
29
35
 
30
36
  == 0.2.5 [2011-04-29]
31
37
 
32
- * Switched license to Affero GPL
38
+ * Switched license to Affero GPL.
33
39
 
34
40
  == 0.2.4 [2010-07-13]
35
41
 
36
- * decode_entities: Added flavour +xml-safe+ for HTMLEntities decoder
37
- and made it the new default
42
+ * +decode_entities+: Added flavour +xml-safe+ for HTMLEntities decoder.
43
+ and made it the new default.
38
44
 
39
45
  == 0.2.3 [2010-04-23]
40
46
 
41
- * guess_encoding: Conveniently test common encodings
42
- * cinderella: Ignore illegal sequences in char pool
43
- * Housekeeping
47
+ * +guess_encoding+: Conveniently test common encodings.
48
+ * +cinderella+: Ignore illegal sequences in char pool.
49
+ * Housekeeping.
44
50
 
45
51
  == 0.2.2 [2009-10-24]
46
52
 
47
- * guess_encoding: More encodings from the ISO 8859 family
53
+ * +guess_encoding+: More encodings from the ISO 8859 family.
48
54
 
49
55
  == 0.2.1 [2009-09-24]
50
56
 
51
- * decode_entities: Fixes for current HTMLEntities
57
+ * +decode_entities+: Fixes for current HTMLEntities.
52
58
 
53
59
  == 0.2.0 [2009-05-08]
54
60
 
55
- * Ruby 1.9 compatibility (Syntax, at least)
61
+ * Ruby 1.9 compatibility (Syntax, at least).
56
62
 
57
63
  == 0.1.2 [2008-09-17]
58
64
 
59
- * Some refactoring; started to make tools more usable as a library
60
- * Make tools accept multiple files for input (via tempfile)
61
- * Use +ENV.user_encoding+ from ruby-nuggets
62
- * Wrap command execution in a block catching any exceptions
65
+ * Some refactoring; started to make tools more usable as a library.
66
+ * Make tools accept multiple files for input (via tempfile).
67
+ * Use +ENV.user_encoding+ from ruby-nuggets.
68
+ * Wrap command execution in a block catching any exceptions.
63
69
 
64
70
  == 0.1.1 [2008-09-16]
65
71
 
66
- * Added +bconv+ tool to convert between bibliographic encodings
72
+ * Added +bconv+ tool to convert between bibliographic encodings.
67
73
 
68
74
  == 0.1.0 [2008-09-15]
69
75
 
70
- * Added ability to operate on all encodings available on a system
76
+ * Added ability to operate on all encodings available on a system.
71
77
 
72
78
  == 0.0.9 [2008-08-15]
73
79
 
74
- * Reorganized file structure for guess_encoding
75
- * Added shortcuts GuessEncoding.manual/.automatic
80
+ * Reorganized file structure for guess_encoding.
81
+ * Added shortcuts GuessEncoding.manual/.automatic.
76
82
  * GuessEncoding::Automatic now also takes a String
77
- as input (will be converted to a StringIO)
83
+ as input (will be converted to a StringIO).
78
84
 
79
85
  == 0.0.8 [2008-08-14]
80
86
 
81
- * Require +cmess+ inside libs, so the user doesn't have to
87
+ * Require +cmess+ inside libs, so the user doesn't have to.
82
88
 
83
89
  == 0.0.7 [2008-05-19]
84
90
 
85
- * Fixed "Illegal seek" error when inside a pipe
91
+ * Fixed "Illegal seek" error when inside a pipe.
86
92
 
87
93
  == 0.0.6 [2008-01-30]
88
94
 
89
- * Added ability to specify charcodes as input for manual guessing
90
- * Improved automatic guessing and further enhancements
95
+ * Added ability to specify charcodes as input for manual guessing.
96
+ * Improved automatic guessing and further enhancements.
91
97
 
92
98
  == 0.0.5 [2008-01-21]
93
99
 
94
- * Made automatic guessing the default for guess_encoding
95
- * Allow to specify input file as argument
100
+ * Made automatic guessing the default for +guess_encoding+.
101
+ * Allow to specify input file as argument.
96
102
 
97
103
  == 0.0.4 [2007-12-18]
98
104
 
99
- * Added BOM detection
105
+ * Added BOM detection.
100
106
 
101
107
  == 0.0.3 [2007-12-12]
102
108
 
data/README CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  == VERSION
4
4
 
5
- This documentation refers to cmess version 0.5.0
5
+ This documentation refers to cmess version 0.5.1
6
6
 
7
7
 
8
8
  == DESCRIPTION
@@ -53,7 +53,7 @@ RubyGem:: https://rubygems.org/gems/cmess
53
53
  Copyright (C) 2007-2012 University of Cologne,
54
54
  Albertus-Magnus-Platz, 50923 Cologne, Germany
55
55
 
56
- Copyright (C) 2013-2014 Jens Wille
56
+ Copyright (C) 2013-2016 Jens Wille
57
57
 
58
58
  cmess is free software: you can redistribute it and/or modify it under the
59
59
  terms of the GNU Affero General Public License as published by the Free
data/Rakefile CHANGED
@@ -18,7 +18,7 @@ following tools: #{Dir['bin/*'].map { |e| File.basename(e) }.sort.join(', ')})
18
18
  extra_files: FileList['data/**/*'].to_a,
19
19
  dependencies: {
20
20
  htmlentities: '~> 4.3',
21
- nuggets: '~> 1.0',
21
+ nuggets: '~> 1.5',
22
22
  safe_yaml: '~> 1.0'
23
23
  },
24
24
 
@@ -10,7 +10,7 @@
10
10
  # Albertus-Magnus-Platz, #
11
11
  # 50923 Cologne, Germany #
12
12
  # #
13
- # Copyright (C) 2013-2014 Jens Wille #
13
+ # Copyright (C) 2013-2016 Jens Wille #
14
14
  # #
15
15
  # Authors: #
16
16
  # Jens Wille <jens.wille@gmail.com> #
@@ -31,6 +31,8 @@
31
31
  ###############################################################################
32
32
  #++
33
33
 
34
+ require 'safe_yaml/load'
35
+
34
36
  require 'cmess/cinderella'
35
37
  require 'cmess/cli'
36
38
 
@@ -173,5 +175,5 @@ cli do
173
175
 
174
176
  trailing_args_as_input(options)
175
177
 
176
- CMess::Cinderella.pick(options.merge(chars: YAML.load_file(char_file)))
178
+ CMess::Cinderella.pick(options.merge(chars: SafeYAML.load_file(char_file)))
177
179
  end
@@ -95,7 +95,7 @@
95
95
  #- "|" # VERTICAL LINE
96
96
  #- "}" # RIGHT CURLY BRACKET
97
97
  #- "~" # TILDE
98
- #- "" # DEL
98
+ #- "\x7f" # DEL
99
99
 
100
100
  # ====[ latin_1_supplement ]====
101
101
  - "�" # INVERTED EXCLAMATION MARK
@@ -95,7 +95,7 @@
95
95
  #- "|" # VERTICAL LINE
96
96
  #- "}" # RIGHT CURLY BRACKET
97
97
  #- "~" # TILDE
98
- #- "" # DEL
98
+ #- "\x7f" # DEL
99
99
 
100
100
  # ====[ latin_1_supplement ]====
101
101
  - "�" # [ANSI - EURO SIGN; MacRoman - LATIN CAPITAL LETTER A WITH DIAERESIS]
@@ -0,0 +1 @@
1
+ iso_8859-1.yaml
@@ -94,4 +94,4 @@
94
94
  - "|" # VERTICAL LINE
95
95
  - "}" # RIGHT CURLY BRACKET
96
96
  - "~" # TILDE
97
- - "" # DEL
97
+ - "\x7f" # DEL
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  - "€" # [ANSI - EURO SIGN; MacRoman - LATIN CAPITAL LETTER A WITH DIAERESIS]
3
- - "" # [MacRoman - LATIN CAPITAL LETTER A WITH RING ABOVE]
3
+ - "\x81" # [MacRoman - LATIN CAPITAL LETTER A WITH RING ABOVE]
4
4
  - "‚" # [ANSI - SINGLE LOW-9 QUOTATION MARK; MacRoman - LATIN CAPITAL LETTER C WITH CEDILLA]
5
5
  - "ƒ" # [ANSI - LATIN SMALL LETTER F WITH HOOK; MacRoman - LATIN CAPITAL LETTER E WITH ACUTE]
6
6
  - "„" # [ANSI - DOUBLE LOW-9 QUOTATION MARK; MacRoman - LATIN CAPITAL LETTER N WITH TILDE]
@@ -12,10 +12,10 @@
12
12
  - "Š" # [ANSI - LATIN CAPITAL LETTER S WITH CARON; MacRoman - LATIN SMALL LETTER A WITH DIAERESIS]
13
13
  - "‹" # [ANSI - SINGLE LEFT-POINTING ANGLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER A WITH TILDE]
14
14
  - "Œ" # [ANSI - LATIN CAPITAL LETTER OE; MacRoman - LATIN SMALL LETTER A WITH RING ABOVE]
15
- - "" # [MacRoman - LATIN SMALL LETTER C WITH CEDILLA]
15
+ - "\x8d" # [MacRoman - LATIN SMALL LETTER C WITH CEDILLA]
16
16
  - "Ž" # [ANSI - LATIN CAPITAL LETTER Z WITH CARON; MacRoman - LATIN SMALL LETTER E WITH ACUTE]
17
- - "" # [MacRoman - LATIN SMALL LETTER E WITH GRAVE]
18
- - "" # [MacRoman - LATIN SMALL LETTER E WITH CIRCUMFLEX]
17
+ - "\x8f" # [MacRoman - LATIN SMALL LETTER E WITH GRAVE]
18
+ - "\x90" # [MacRoman - LATIN SMALL LETTER E WITH CIRCUMFLEX]
19
19
  - "‘" # [ANSI - LEFT SINGLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER E WITH DIAERESIS]
20
20
  - "’" # [ANSI - RIGHT SINGLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER I WITH ACUTE]
21
21
  - "“" # [ANSI - LEFT DOUBLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER I WITH GRAVE]
@@ -28,7 +28,7 @@
28
28
  - "š" # [ANSI - LATIN SMALL LETTER S WITH CARON; MacRoman - LATIN SMALL LETTER O WITH DIAERESIS]
29
29
  - "›" # [ANSI - SINGLE RIGHT-POINTING ANGLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER O WITH TILDE]
30
30
  - "œ" # [ANSI - LATIN SMALL LETTER OE; MacRoman - LATIN SMALL LETTER U WITH ACUTE]
31
- - "" # [MacRoman - LATIN SMALL LETTER U WITH GRAVE]
31
+ - "\x9d" # [MacRoman - LATIN SMALL LETTER U WITH GRAVE]
32
32
  - "ž" # [ANSI - LATIN SMALL LETTER Z WITH CARON; MacRoman - LATIN SMALL LETTER U WITH CIRCUMFLEX]
33
33
  - "Ÿ" # [ANSI - LATIN CAPITAL LETTER Y WITH DIAERESIS; MacRoman - LATIN SMALL LETTER U WITH DIAERESIS]
34
34
  - "¡" # INVERTED EXCLAMATION MARK
@@ -95,7 +95,7 @@
95
95
  #- "|" # VERTICAL LINE
96
96
  #- "}" # RIGHT CURLY BRACKET
97
97
  #- "~" # TILDE
98
- #- "" # DEL
98
+ #- "\x7f" # DEL
99
99
 
100
100
  # ====[ cyrillic-supplement ]====
101
101
  - "Ԁ" # CYRILLIC CAPITAL LETTER KOMI DE
@@ -602,7 +602,7 @@
602
602
 
603
603
  # ====[ latin_1_supplement ]====
604
604
  - "€" # [ANSI - EURO SIGN; MacRoman - LATIN CAPITAL LETTER A WITH DIAERESIS]
605
- - "" # [MacRoman - LATIN CAPITAL LETTER A WITH RING ABOVE]
605
+ - "\x81" # [MacRoman - LATIN CAPITAL LETTER A WITH RING ABOVE]
606
606
  - "‚" # [ANSI - SINGLE LOW-9 QUOTATION MARK; MacRoman - LATIN CAPITAL LETTER C WITH CEDILLA]
607
607
  - "ƒ" # [ANSI - LATIN SMALL LETTER F WITH HOOK; MacRoman - LATIN CAPITAL LETTER E WITH ACUTE]
608
608
  - "„" # [ANSI - DOUBLE LOW-9 QUOTATION MARK; MacRoman - LATIN CAPITAL LETTER N WITH TILDE]
@@ -614,10 +614,10 @@
614
614
  - "Š" # [ANSI - LATIN CAPITAL LETTER S WITH CARON; MacRoman - LATIN SMALL LETTER A WITH DIAERESIS]
615
615
  - "‹" # [ANSI - SINGLE LEFT-POINTING ANGLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER A WITH TILDE]
616
616
  - "Œ" # [ANSI - LATIN CAPITAL LETTER OE; MacRoman - LATIN SMALL LETTER A WITH RING ABOVE]
617
- - "" # [MacRoman - LATIN SMALL LETTER C WITH CEDILLA]
617
+ - "\x8d" # [MacRoman - LATIN SMALL LETTER C WITH CEDILLA]
618
618
  - "Ž" # [ANSI - LATIN CAPITAL LETTER Z WITH CARON; MacRoman - LATIN SMALL LETTER E WITH ACUTE]
619
- - "" # [MacRoman - LATIN SMALL LETTER E WITH GRAVE]
620
- - "" # [MacRoman - LATIN SMALL LETTER E WITH CIRCUMFLEX]
619
+ - "\x8f" # [MacRoman - LATIN SMALL LETTER E WITH GRAVE]
620
+ - "\x90" # [MacRoman - LATIN SMALL LETTER E WITH CIRCUMFLEX]
621
621
  - "‘" # [ANSI - LEFT SINGLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER E WITH DIAERESIS]
622
622
  - "’" # [ANSI - RIGHT SINGLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER I WITH ACUTE]
623
623
  - "“" # [ANSI - LEFT DOUBLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER I WITH GRAVE]
@@ -630,7 +630,7 @@
630
630
  - "š" # [ANSI - LATIN SMALL LETTER S WITH CARON; MacRoman - LATIN SMALL LETTER O WITH DIAERESIS]
631
631
  - "›" # [ANSI - SINGLE RIGHT-POINTING ANGLE QUOTATION MARK; MacRoman - LATIN SMALL LETTER O WITH TILDE]
632
632
  - "œ" # [ANSI - LATIN SMALL LETTER OE; MacRoman - LATIN SMALL LETTER U WITH ACUTE]
633
- - "" # [MacRoman - LATIN SMALL LETTER U WITH GRAVE]
633
+ - "\x89d" # [MacRoman - LATIN SMALL LETTER U WITH GRAVE]
634
634
  - "ž" # [ANSI - LATIN SMALL LETTER Z WITH CARON; MacRoman - LATIN SMALL LETTER U WITH CIRCUMFLEX]
635
635
  - "Ÿ" # [ANSI - LATIN CAPITAL LETTER Y WITH DIAERESIS; MacRoman - LATIN SMALL LETTER U WITH DIAERESIS]
636
636
  - "¡" # INVERTED EXCLAMATION MARK
@@ -0,0 +1 @@
1
+ utf-8.yaml
@@ -7,7 +7,7 @@
7
7
  # Albertus-Magnus-Platz, #
8
8
  # 50923 Cologne, Germany #
9
9
  # #
10
- # Copyright (C) 2013-2014 Jens Wille #
10
+ # Copyright (C) 2013-2016 Jens Wille #
11
11
  # #
12
12
  # Authors: #
13
13
  # Jens Wille <jens.wille@gmail.com> #
@@ -39,13 +39,15 @@ module CMess
39
39
  class << self
40
40
 
41
41
  def ensure_options!(options, *required)
42
- values = options.values_at(*required)
42
+ values, missing = [], []
43
43
 
44
- missing = values.select { |value| value.nil? }
45
- return values if missing.empty?
44
+ required.each { |key|
45
+ value = options[key]
46
+ value.nil? ? missing << key : values << value
47
+ }
46
48
 
47
- msg = "required options missing: #{missing.join(', ')}"
48
- raise ArgumentError, msg, caller(1)
49
+ missing.empty? ? values : raise(ArgumentError,
50
+ "required options missing: #{missing.join(', ')}", caller(1))
49
51
  end
50
52
 
51
53
  end
@@ -7,7 +7,7 @@
7
7
  # Albertus-Magnus-Platz, #
8
8
  # 50923 Cologne, Germany #
9
9
  # #
10
- # Copyright (C) 2013-2014 Jens Wille #
10
+ # Copyright (C) 2013-2016 Jens Wille #
11
11
  # #
12
12
  # Authors: #
13
13
  # Jens Wille <jens.wille@gmail.com> #
@@ -41,13 +41,17 @@ module CMess::Cinderella
41
41
 
42
42
  extend self
43
43
 
44
- VERSION = '0.1.0'
44
+ VERSION = '0.1.1'
45
45
 
46
46
  DEFAULT_CSETS_DIR = File.join(CMess::DATA_DIR, 'csets')
47
47
 
48
48
  def pick(options)
49
- input, pot, crop, source, target, chars = CMess.ensure_options!(options,
50
- :input, :pot, :crop, :source_encoding, :target_encoding, :chars
49
+ input, source, target, chars = CMess.ensure_options!(options,
50
+ :input, :source_encoding, :target_encoding, :chars
51
+ )
52
+
53
+ pot, crop, repair = options.values_at(
54
+ :pot, :crop, :repair
51
55
  )
52
56
 
53
57
  encoded = {}
@@ -4,7 +4,7 @@ module CMess
4
4
 
5
5
  MAJOR = 0
6
6
  MINOR = 5
7
- TINY = 0
7
+ TINY = 1
8
8
 
9
9
  class << self
10
10
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cmess
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jens Wille
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-07 00:00:00.000000000 Z
11
+ date: 2016-05-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: htmlentities
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.0'
33
+ version: '1.5'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.0'
40
+ version: '1.5'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: safe_yaml
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -56,16 +56,22 @@ dependencies:
56
56
  name: hen
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '0.8'
59
62
  - - ">="
60
63
  - !ruby/object:Gem::Version
61
- version: '0'
64
+ version: 0.8.5
62
65
  type: :development
63
66
  prerelease: false
64
67
  version_requirements: !ruby/object:Gem::Requirement
65
68
  requirements:
69
+ - - "~>"
70
+ - !ruby/object:Gem::Version
71
+ version: '0.8'
66
72
  - - ">="
67
73
  - !ruby/object:Gem::Version
68
- version: '0'
74
+ version: 0.8.5
69
75
  - !ruby/object:Gem::Dependency
70
76
  name: rake
71
77
  requirement: !ruby/object:Gem::Requirement
@@ -149,14 +155,15 @@ licenses:
149
155
  metadata: {}
150
156
  post_install_message: |2+
151
157
 
152
- cmess-0.5.0 [2014-10-07]:
158
+ cmess-0.5.1 [2016-05-26]:
153
159
 
154
- * Dropped +autoload+; require modules explicitly.
155
- * Ruby 2.2 compatibility.
160
+ * +cinderella+: Fixed YAML loading and option handling.
161
+ * Fixed error message for missing required options.
162
+ * Fixed YAML files for +cinderella+.
156
163
 
157
164
  rdoc_options:
158
165
  - "--title"
159
- - cmess Application documentation (v0.5.0)
166
+ - cmess Application documentation (v0.5.1)
160
167
  - "--charset"
161
168
  - UTF-8
162
169
  - "--line-numbers"
@@ -177,7 +184,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
177
184
  version: '0'
178
185
  requirements: []
179
186
  rubyforge_project:
180
- rubygems_version: 2.4.2
187
+ rubygems_version: 2.6.4
181
188
  signing_key:
182
189
  specification_version: 4
183
190
  summary: 'Assist with handling messed up encodings (Currently includes the following