Re: Создание бекпорта, как выбрать версию?

2015-10-29 Пенетрантность Oleksandr Gavenko
On 2015-10-28, dimas wrote:

> я встречал такую практику:
> x.y.z+git123abcd
> и такую
> x.y.z+git2001-12-31
> с одной стороны, номера коммитов в git случайны и не последовательны, т.е. по
> голому хэшу никак не понять, что коммит 26aec7f, скажем, новее коммита 
> fefd54a.
> хотя если цель собрать одну конкретную версию, да и то на время, то можно и 
> так.
> вариант с датой однозначно определяет, какая версия новее, и, на мой взгляд,
> выглядит куда информативнее (типа "слепок git от такого-то числа"), нежели хэш
> коммита, который через пять минут забудешь. с другой стороны, если собирать
> несколько разных коммитов, которые вышли в один день, то голой датой не
> отделаешься. но это актуально при активном тестировании там, для домашнего
> использования вряд ли.
> и я бы писал именно через "+". при выходе x.y.z+1 оная априори будет считаться
> более новой, и не надо парить голову, будет ли x.y.z-0 считаться новее
> x.y.z-git123, помнить про всякие тильды и прочее
>
Спасибо за ответ. Я вообще не знаком ни с какой практикой, к "+" пришел
медитацией над полиси по сравнению версий. Среди других допустимых не-alnum
символов только '.' тоже не участвует в специальных правилах, но '+' красивее
выглядит.

Идея с хешами провальна даже тем что цифро-буквы хешей не отражают прогрес
проекта (при сравнении версий по правилам dpkg).

Вот до идеи использовать дату как то не допер. Плюс очень нагляден маркер CVS:
git/hg/svn. Если публично распространять, то можно после даты и хеш засунуть и
стараться держать 2 параметра согласоваными.

А что до нескольких сборок в 1 день, то есть встроеный механизм -
, ну или в схему добавить время.

-- 
Best regards!



Re: Создание бекпорта, как выбрать версию?

2015-10-28 Пенетрантность dimas
я встречал такую практику:
x.y.z+git123abcd
и такую
x.y.z+git2001-12-31
с одной стороны, номера коммитов в git случайны и не последовательны, т.е. по
голому хэшу никак не понять, что коммит 26aec7f, скажем, новее коммита fefd54a.
хотя если цель собрать одну конкретную версию, да и то на время, то можно и так.
вариант с датой однозначно определяет, какая версия новее, и, на мой взгляд,
выглядит куда информативнее (типа "слепок git от такого-то числа"), нежели хэш
коммита, который через пять минут забудешь. с другой стороны, если собирать
несколько разных коммитов, которые вышли в один день, то голой датой не
отделаешься. но это актуально при активном тестировании там, для домашнего
использования вряд ли.
и я бы писал именно через "+". при выходе x.y.z+1 оная априори будет считаться
более новой, и не надо парить голову, будет ли x.y.z-0 считаться новее
x.y.z-git123, помнить про всякие тильды и прочее



Re: Создание бекпорта, как выбрать версию?

2015-10-28 Пенетрантность Oleksandr Gavenko
On 2015-10-28, Oleksandr Gavenko wrote:

> Я буду делать пакетпроивание с master, которому еще не назначена версия.
>
> Какое имя давать, когда апстрим *еще не зафиксировал* версию? Интересно что бы
> свежак перезатер мой пакет во время соотвествующего будущего обновления.
>
Пока я вижу что 0.3.0+master работает:

  user@desktop ~/devel/sigrok/libsigrok ==
  bash# dpkg --compare-versions 0.3.0-1 lt 0.3.0+master && echo ok || echo fail
  ok

  user@desktop ~/devel/sigrok/libsigrok ==
  bash# dpkg --compare-versions 0.3.1~bpo8-1 lt 0.3.0+master && echo ok || echo 
fail
  fail

  user@desktop ~/devel/sigrok/libsigrok ==
  bash# dpkg --compare-versions 0.3.1 lt 0.3.0+master && echo ok || echo fail
  fail

Правила сравнения версий описан в полиси:

  5.6.12.`Version'

 First the initial part of each string consisting entirely of non-digit
 characters is determined.  These two parts (one of which may be empty)
 are compared lexically.

У меня будет "+master", у пакетов с исправлениями старой версии на подобии
0.3.0-5, т.е. пустая строка и я выигрываю.

Еще также сработает любая alpha и '.', но с '+' прикольней выглядит.

> Правильно что если бы была свежая устраивающая меня версия, например 0.3.1, то
> я бы назвал ее 0.3.1~bpo8-1?
>
Кажется так, судя по описанию в

  https://wiki.debian.org/BuildingFormalBackports

-- 
Best regards!



Создание бекпорта, как выбрать версию?

2015-10-28 Пенетрантность Oleksandr Gavenko
Реальный прмер, имеем:

  $ rmadison libsigrok2
  libsigrok2 | 0.3.0-1   | stable | amd64, arm64, armel, armhf, i386, 
mips, mipsel, powerpc, ppc64el, s390x
  libsigrok2 | 0.3.0-1   | testing| amd64, arm64, armel, armhf, i386, 
mips, mipsel, powerpc, ppc64el, s390x
  libsigrok2 | 0.3.0-1   | unstable   | amd64, arm64, armel, armhf, i386, 
mips, mips64el, mipsel, powerpc, ppc64el, s390x

  $ git log --graph --all --decorate --oneline
  git log --graph --decorate --simplify-by-decoration  --oneline --all
  * 211cc97 (HEAD -> master, origin/master, origin/HEAD) tests: Drop another 
obsolete sr_analog_float_to_string() test.
  | * 8f54ac8 (tag: libsigrok-0.3.0, origin/libsigrok-0.3.x) 
Doxyfile/Doxyfile_internal: Bump version number to 0.3.0.
  |/
  | * f1b296f (origin/dslogic) Code drop from DreamSourceLabs first source 
release.
  | | * 6f95fee (tag: libsigrok-0.2.2, origin/libsigrok-0.2.x) Doxyfile: Set 
version to 0.2.2.
  | |/
  |/|
  * | f6b5969 (tag: libsigrok-0.2.1) Bump package version to 0.2.1, libtool 
version to 1:1:0.
  * | 26aec7f (tag: libsigrok-0.2.0) Drop link-mso19/nexus-osciprime in 
preparation for release.
  |/
  * 7e41e31 (tag: libsigrok-0.1.1) sr: fx2lafw: Forgot to add (C) line to 
fx2lafw.h in recent commit.
  * fefd54a (tag: libsigrok-0.1.0) sr: Initial 0.1.0 release.
  * a1bb33a Start of code base layout restructuring.

Поддержку для моего устройства добавили после 0.3.0.

Я буду делать пакетпроивание с master, которому еще не назначена версия.

Какое имя давать, когда апстрим *еще не зафиксировал* версию? Интересно что бы
свежак перезатер мой пакет во время соотвествующего будущего обновления.

Правильно что если бы была свежая устраивающая меня версия, например 0.3.1, то
я бы назвал ее 0.3.1~bpo8-1?

Где полиси по бекпортам? Я наткнулся на частный анонс
http://backports.debian.org/news/jessie_released_-_backports_related_changes/
но грепать мейлисты и мониторить RSS/Atom для одноразового случая некошерно.

Если я делаю для себя - значит мне не нужно следовать именованию backports,
какой принцип позволяет последующие обновления?

-- 
Best regards!