llmed 0.2.0 → 0.2.2
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 +4 -4
- data/lib/llmed.rb +15 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 695b1df0f68de9b2797c912930e3019b5a2dca28eafec63773bb6e6986e2c381
|
4
|
+
data.tar.gz: a4e50576895ef6da99d7668fab17a71447471905e113c0b318e71aae49233d2e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ca48d2ad5759a87dcf638e088ea6fe113f2dffc9cf8277589c0bac102354953c25a8c7b7d4b8608ef4a05794e4146cbb4d98a9615da91db097bba5be8c12e7e1
|
7
|
+
data.tar.gz: e30b592d49c6dabbb78744e66f0851c29407d6d9ea3ec327320cf6d4fc0d4fd5ae42c9f7a99246925523405de991fee216897f4b2acedde4edd5fd1db5c629ef
|
data/lib/llmed.rb
CHANGED
@@ -209,11 +209,20 @@ Wrap with comment every code that belongs to the indicated context, example in r
|
|
209
209
|
if @release && File.exist?(release_source_code_path)
|
210
210
|
release_source_code = File.read(release_source_code_path)
|
211
211
|
output_contexts = output.scan(%r{<llmed-code context='(.+?)' digest='(.+?)'>(.+?)</llmed-code>}im)
|
212
|
+
|
212
213
|
output_contexts.each do |match|
|
213
214
|
name, digest, new_code = match
|
214
|
-
|
215
|
+
new_digest = digest
|
216
|
+
@contexts.each do |ctx|
|
217
|
+
if ctx.name == name
|
218
|
+
new_digest = ctx.digest
|
219
|
+
break
|
220
|
+
end
|
221
|
+
end
|
222
|
+
|
223
|
+
@logger.info("APPLICATION #{@name} PATCHING CONTEXT #{name} \n\tFROM #{digest}\n\tTO DIGEST #{new_digest}")
|
215
224
|
release_source_code = release_source_code.sub(%r{(.*?)(<llmed-code context='#{name}' digest='.*?'>)(.+?)(</llmed-code>)(.*?)}m) do
|
216
|
-
"#{::Regexp.last_match(1)}<llmed-code context='#{name}' digest='#{
|
225
|
+
"#{::Regexp.last_match(1)}<llmed-code context='#{name}' digest='#{new_digest}'>#{new_code}#{::Regexp.last_match(4)}#{::Regexp.last_match(5)}"
|
217
226
|
end
|
218
227
|
end
|
219
228
|
|
@@ -230,6 +239,7 @@ Wrap with comment every code that belongs to the indicated context, example in r
|
|
230
239
|
def digests_of_context_to_update(output_dir, release_dir)
|
231
240
|
update_context_digest = []
|
232
241
|
release_contexts = release_contexts(output_dir, release_dir)
|
242
|
+
|
233
243
|
unless release_contexts.empty?
|
234
244
|
# rebuild context from top to down
|
235
245
|
# we are expecting:
|
@@ -238,6 +248,9 @@ Wrap with comment every code that belongs to the indicated context, example in r
|
|
238
248
|
update_rest = false
|
239
249
|
@contexts.each do |ctx|
|
240
250
|
release_context_digest = release_contexts[ctx.name]
|
251
|
+
# maybe the context is not connected to the source code
|
252
|
+
next if release_context_digest.nil?
|
253
|
+
|
241
254
|
if update_rest
|
242
255
|
update_context_digest << release_context_digest
|
243
256
|
next
|