Ця функціональність не заборонена, вона просто не дуже поширена внаслідок роботи більшості бібліотек і через незручності зміни назви пакетів.
Якщо застосовується пунктирна схема номера версії XYZ "Мікро" версія Z часто змінюється на виправленнях, "другорядне" число Y змінюється на зворотні сумісні зміни, а "основне" число версії X повинне змінюватися на змінах API (а іноді і на основні додаткові функціональні можливості).
Ніколи не повинно бути причин того, що ви не хочете, щоб виправляли останні помилки, а зворотні сумісні зміни також не повинні порушувати ваше програмне забезпечення.
Якщо бібліотека розроблена таким чином, ви завжди зможете замінити XYZ на X. (Y + m). (Z + n). для будь-яких заданих m і n. Тобто ви завжди повинні мати можливість замінити свою бібліотеку на останню з тієї ж великої серії номерів. І якщо розробники бібліотек обережні, і наступне основне число сумісне (наприклад, за допомогою оголошення про зняття речей, але не видалення їх ще), ви навіть можете використовувати наступне основне число.
Для розробників пакетів це означає, що вони можуть використовувати ім'я лише з одним, а то й без імені з номером, щоб дати вам останню версію, просто оновивши пакет. Якщо вони доставляють бібліотеку в пакеті, abc2
вони повинні пройти обручі, щоб перемістити власне програмне забезпечення, яке покладалося на abc2
оновлення до використання abc3
, іноді з перехідними пакетами. Більш зручно залишати основний номер версії з бібліотеки, якщо це працює для більшості залежних пакетів. Тож навіть якщо обидва abc2
і abc3
повинні бути доступні в якийсь момент, доступний у дистрибутиві, abc3
його часто називають abc
(так само, як abc2
називалося, коли ще не abc3
було), і як тільки жодні пакети не залежать від abc2
дистрибутиву, стає можливим скиданняabc2
взагалі.
Схеми нумерації не дотримуються рівномірно, але я можу лише уявити, що з появою в Інтернеті поширюється інформація про те, як використовувати таку схему, і тиск з боку користувачів бібліотеки (включаючи розробників дистрибутивів) зробити чіткими важливі речі, такі як зворотна сумісність прочитавши файл ЗМІНИ, що входить до бібліотеки, це сприяло тому, що це стало більш поширеним.
Одним із прикладних зустрічних прикладів, але не для бібліотеки, є інтпретер python, який не сумісний у спільних об'єктах та форматі маринування при незначній зміні числа. Тому ви побачите пакунки для python (останній у серії 2.7) та python3 (останній у поточній серії серії python3.4), а також явні пакети для python 2.6 (не менш поширені), а також python 3.3.