haplo 2.3.2-java → 2.3.3-java

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ee8c72a6903130fcb13c248890c699aacae90c5b8cfdd574175ced37bc3c84bb
4
- data.tar.gz: f3c99d27f274d326d02e48b68bd28c191caa00917e9fd10273084dc6bd1ab2b1
3
+ metadata.gz: a625e32b13020b9e1e21ebe7041081ad3cfee0a283eac518c3517828d87a44c5
4
+ data.tar.gz: 42d526bd0248e97912aad0fe0f3eaca86ea69efa96f27c63bbc958741be48bd2
5
5
  SHA512:
6
- metadata.gz: 20625fedf138fae9b50852a57de0a3e88bcd518a9a1100e19947066e0656b554f0fbe2b38ade89638ed6572e086b4db38b4b3d302fa8db8effaa65b17b66c3a7
7
- data.tar.gz: 4e257c0eb2cb950b8c587816c73d86f44ce1bdb896a9f2a775fbef83acf412e2a9d755558073bb8b824949bc1ae01afa5a262e3fa0d7f5542a8122fc75473565
6
+ metadata.gz: bce84b22af2815c0367e1e432745f6fc6779987c1b04dc5d1e48c0be4e42aa72416469ba14477927f114d4db89f0705058e598fb92147179fc5bb76af33ec1a7
7
+ data.tar.gz: 3b3786343fbc5f532d9468d27253d2df7395956892d34e4c8a94fca93cbdf456d435adfef59c84fe34c99f4f08a4abf6d4147039279c28c113cb2ef8de5e4545
data/haplo.gemspec CHANGED
@@ -3,8 +3,8 @@ Gem::Specification.new do |s|
3
3
  files = Dir.glob("#{root_dir}/**/*.*").map { |x| x[root_dir.length + 1, x.length]}
4
4
 
5
5
  s.name = 'haplo'
6
- s.version = '2.3.2'
7
- s.date = '2017-12-14'
6
+ s.version = '2.3.3'
7
+ s.date = '2018-01-03'
8
8
  s.summary = "Haplo Plugin Tool"
9
9
  s.description = "Development tools for developing Haplo plugins, see https://haplo.org"
10
10
  s.licenses = ["MPL-2.0"]
data/lib/plugin.rb CHANGED
@@ -32,6 +32,7 @@ module PluginTool
32
32
  # ---------------------------------------------------------------------------------------------------------
33
33
 
34
34
  @@pending_apply = []
35
+ @@pending_apply_kinds = {}
35
36
  @@apply_with_turbo = false
36
37
 
37
38
  # ---------------------------------------------------------------------------------------------------------
@@ -189,7 +190,23 @@ module PluginTool
189
190
  upload_failed = true
190
191
  end
191
192
  PluginTool.syntax_check(self, filename) if filename =~ SYNTAX_CHECK_REGEXP
193
+ if filename == 'requirements.schema'
194
+ # Check all JS files if schema requirements changes, as removing an 'as' statement
195
+ # could break JS files.
196
+ ((File.open("#{@plugin_dir}/plugin.json") { |f| JSON.parse(f.read) } ['load']) || []).each do |js|
197
+ PluginTool.syntax_check(self, js)
198
+ end
199
+ end
200
+ end
201
+ # Mark what kinds of files are being applied
202
+ apply_kind = if filename =~ /\Astatic\//
203
+ :static
204
+ elsif filename =~ /\Atemplate\//
205
+ :template
206
+ else
207
+ :other
192
208
  end
209
+ @@pending_apply_kinds[apply_kind] = true
193
210
  end
194
211
  if upload_failed
195
212
  puts "\n#{@name}: Not applying changes due to failure\n\n"
@@ -209,10 +226,18 @@ module PluginTool
209
226
  params = {
210
227
  :plugins => @@pending_apply.map { |p| p.loaded_plugin_id }.join(' ')
211
228
  }
212
- params[:turbo] = '1' if @@apply_with_turbo
229
+ if @@apply_with_turbo
230
+ params[:turbo] = '1'
231
+ if @@pending_apply_kinds == {:static=>true}
232
+ params[:static_only] = '1'
233
+ elsif @@pending_apply_kinds == {:template=>true}
234
+ params[:template_change] = '1'
235
+ end
236
+ end
213
237
  r = PluginTool.post_with_json_response("/api/development-plugin-loader/apply", params)
214
238
  if r["result"] == 'success'
215
239
  @@pending_apply = []
240
+ @@pending_apply_kinds = {}
216
241
  else
217
242
  puts "\n\nDidn't apply changes on server\n\n"
218
243
  PluginTool.beep
data/lib/plugin_tool.rb CHANGED
@@ -100,18 +100,19 @@ if show_help || PLUGIN_TOOL_COMMAND == 'help'
100
100
  end
101
101
 
102
102
  # Find all plugins in the repository
103
+ # Normally only search in exact directory of workspace, but if checking plugins
104
+ # search recursively to find as many as possible.
105
+ glob_pattern = '*/plugin.json'
106
+ glob_pattern = '**/*/plugin.json' if PLUGIN_TOOL_COMMAND == 'check'
103
107
  plugin_paths = []
104
108
  PLUGIN_SEARCH_PATH.each do |directory|
105
- Dir.glob("#{directory}/*/plugin.json").each do |p|
109
+ Dir.glob("#{directory}/#{glob_pattern}").each do |p|
106
110
  if p =~ /\A(.+)\/plugin\.json\z/
107
- plugin_paths << $1
111
+ plugin_paths << File.expand_path($1)
108
112
  end
109
113
  end
110
114
  end
111
-
112
- if plugin_paths.length == 1 && plugin_paths[0] == 'ALL'
113
- plugin_paths = find_all_plugins()
114
- end
115
+ plugin_paths.uniq!
115
116
 
116
117
  # Some commands don't require a server or plugin to be specified
117
118
  case PLUGIN_TOOL_COMMAND
data/lib/version.txt CHANGED
@@ -1 +1 @@
1
- 2c8d256
1
+ 1f78941
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: haplo
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.2
4
+ version: 2.3.3
5
5
  platform: java
6
6
  authors:
7
7
  - Haplo Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-14 00:00:00.000000000 Z
11
+ date: 2018-01-03 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Development tools for developing Haplo plugins, see https://haplo.org
14
14
  email: client.services@haplo-services.com