Если я меняю аргументы в методах АПИ моей либы -

это менять мажорную версию?

12 ответов

9 просмотров

лучше делай второй метод, а прошлый пиши как deprecated и поясняй "использовать второй метод" старый deprec в коде будет вызывать новый. а так надо хорошо поднимать версию

Йеп

на раннем єтапе, когда нет большого количества пользоватклей библиотеки - можешь тупо менять все что угодно, просто напиши в ридми work in progress ))

Если у тебя 0.х.х версии то в теории можно, но пользователи от такого матерятся если что. Лучше еще в ридме расписать что активно развивается и не годится для прода, могут менять методы в минорных релизах. А если 1.х.х уже есть то по семверу надо новый мажорный релиз чтобы поменять интерфейс метода, да (если ты следуешь семверу). Это так же может относиться и к набору полей структур которые принимают методы. Для структур есть маркер non exhaustive чтобы намекнуть что набор полей может дополниться, но лично я с него бешусь.

Alex Ilizarov
Если у тебя 0.х.х версии то в теории можно, но пол...

Я чтобы ломать всё что хочу каждый релиз использую версию 0.0.x)

Alex Ilizarov
Если у тебя 0.х.х версии то в теории можно, но пол...

версии с 1.x.x уже считаются "стабильными" более-менее готовыми к использованию а тут у человека еще этап сплошной разработки..

Денис Котляров
версии с 1.x.x уже считаются "стабильными" более-м...

Человек может по глупости релизить 1.х.х. По семверу в мажорных версиях допускаются breaking changes. Но на практике часто сначала что то депрекейтят в минорном или мажорном, а лишь потом удаляют

Alex Ilizarov
Человек может по глупости релизить 1.х.х. По семве...

В таком случае нужно релизнуть 2.0 и заморозить его API. После этого чётные версии стабильные, а в нечётных можно ломать что угодно 😁

Berkus Decker
Семвер не так работает, не вздумай

Вообще в семвере главное мажор инкрементить на каждом сломе апишки. Вон условная убунта у себя .04 версии под lts отдает, между мажорными проходит несколько не lts релизов

Похожие вопросы

Обсуждают сегодня

здравствуйте, братья, кто-нибудь знает, как работать с Swift.com или Swift.net?
Ozzy
6
Какого хера? /Sources/App/Modules/User/Models/UserLinkApple.swift:21:20: warning: stored property '_id' of 'Sendable'-conforming class 'UserLinkApple' is mutable @ID(...
Alexander Sherbakov
14
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Приветствую всех, возникла проблема, до этого писал бота в простом формате где при выполнении условий приходило через send_message информация, сейчас решил добавить хендлер на...
Andrew
4
Объединять ячейки и графики строить обе умеют?
■_|ilya|_■
4
Портфолио: Зовут меня Александр, мне 41 год. Город Киров. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github.co...
Magic
11
У тебя в конфиге нигде нет deny all; или вообще любого deny?
Alexander Sherbakov
10
Ребят, привет. У кого-то есть опыт заказа мерча в сторе? Есть успешные кейсы? Чёт у меня турецкую карту не принимает
Vladimir F.
7
Всем привет. Есть кто разбирается в платежках? Что б принимать из других стран и выплачивать рф снг
Musa
6
Привет, подскажите, возможно ли как-то отловить, если кто-то тэгнул бота в группе с определенным сообщением? Использую: https://github.com/nerzh/telegram-vapor-bot
Alik Moldovanu
1
Карта сайта