Skip to content

Commit 0887b92

Browse files
committed
Убрана дублирующаяся функциональность по работе с версиями
1 parent c0d05fc commit 0887b92

File tree

1 file changed

+1
-54
lines changed

1 file changed

+1
-54
lines changed

src/Классы/УстановкаПакета.os

Lines changed: 1 addition & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@
7272
ТребуемаяВерсияСреды = Свойства.ВерсияСреды;
7373
СистемнаяИнформация = Новый СистемнаяИнформация;
7474
ВерсияСреды = СистемнаяИнформация.Версия;
75-
Если СравнитьВерсии(ТребуемаяВерсияСреды, ВерсияСреды) > 0 Тогда
75+
Если РаботаСВерсиями.СравнитьВерсии(ТребуемаяВерсияСреды, ВерсияСреды) > 0 Тогда
7676
ТекстСообщения = СтрШаблон(
7777
"Ошибка установки пакета <%1>: Обнаружена устаревшая версия движка OneScript.
7878
|Требуемая версия: %2
@@ -271,59 +271,6 @@
271271

272272
КонецФункции
273273

274-
// Compare two version strings.
275-
//
276-
// Parameters
277-
// VersionString1 – String – version number like MM.{m|mm}.RR.BB
278-
// VersionString2 – String – the second version number
279-
//
280-
// Return value:
281-
// Number – greater 0, if VersionString1 > VersionString2; 0, if versions are equal.
282-
Function СравнитьВерсии(Val VersionString1, Val VersionString2) Export
283-
284-
String1 = ?(IsBlankString(VersionString1), "0.0.0.0", VersionString1);
285-
String2 = ?(IsBlankString(VersionString2), "0.0.0.0", VersionString2);
286-
287-
AdduceToUniformVersionFormat(String1, String2);
288-
289-
Version1 = СтроковыеФункции.РазложитьСтрокуВМассивПодстрок(String1, ".");
290-
Version2 = СтроковыеФункции.РазложитьСтрокуВМассивПодстрок(String2, ".");
291-
292-
Result = 0;
293-
For Digit = 0 To Version1.UBound() Do
294-
Result = Number(Version1[Digit]) - Number(Version2[Digit]);
295-
If Result <> 0 Then
296-
Return Result;
297-
EndIf; // Result <> 0
298-
EndDo; // Digit = 0 To Version1.UBound()
299-
Return Result;
300-
301-
КонецФункции
302-
303-
Procedure AdduceToUniformVersionFormat(VersionString1, VersionString2) Export
304-
305-
Version1Array = СтроковыеФункции.РазложитьСтрокуВМассивПодстрок(VersionString1, ".");
306-
Version2Array = СтроковыеФункции.РазложитьСтрокуВМассивПодстрок(VersionString2, ".");
307-
308-
Diff = Version2Array.Count() - Version1Array.Count();
309-
310-
If Diff = 0 Then
311-
Return;
312-
EndIf; // Diff = 0
313-
314-
Suffix = "";
315-
For index = 1 To Max(Diff, -Diff) Do
316-
Suffix = Suffix + ".0";
317-
EndDo; // index = 1 To Max(Diff, -Diff)
318-
319-
If Diff > 0 Then
320-
VersionString1 = VersionString1 + Suffix;
321-
Else
322-
VersionString2 = VersionString2 + Suffix;
323-
EndIf;
324-
325-
EndProcedure
326-
327274
Функция КаталогСистемныхБиблиотек()
328275

329276
СистемныеБиблиотеки = ОбъединитьПути(КаталогПрограммы(), ПолучитьЗначениеСистемнойНастройки("lib.system"));

0 commit comments

Comments
 (0)