diff --git a/site_api.py b/site_api.py index 36b6e39..e09f5f4 100644 --- a/site_api.py +++ b/site_api.py @@ -191,16 +191,23 @@ class SiteAPI: # Сортируем версии в порядке возрастания sorted_versions = sorted([int(v) for v in matches_changelog]) - # Проходим по версиям в порядке от старых к новым - for i in range(len(sorted_versions) - 1): + # Находим последнюю опубликованную версию + last_published = max(published_versions) if published_versions else 0 + self.logger.info(f"Последняя опубликованная версия: {last_published}") + + # Находим индекс последней опубликованной версии + if last_published > 0 and last_published in sorted_versions: + start_index = sorted_versions.index(last_published) + 1 + else: + start_index = 0 + + self.logger.info(f"Будем публиковать версии начиная с индекса {start_index}") + + # Публикуем только новые версии после последней опубликованной + for i in range(start_index, len(sorted_versions) - 1): script_ver = int(sorted_versions[i]) next_version = int(sorted_versions[i + 1]) - # Пропускаем уже опубликованные версии - if script_ver in published_versions: - self.logger.debug(f"Версия скрипта {script_ver} уже опубликована на сайте, пропускаем") - continue - self.logger.info(f"Найдена новая версия скрипта {script_ver}") post_text, post_data = self.create_script_update_post(