Bug 28165

Summary: обработка отсутствия пустой строки в rules файле
Product: Sisyphus Reporter: Pavel Nakonechnyi <zorg1331>
Component: gearAssignee: Dmitry V. Levin <ldv>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: glebfm, ldv, legion, placeholder, real.altlinux.org
Version: unstable   
Hardware: all   
OS: Linux   

Description Pavel Nakonechnyi 2012-12-03 15:15:02 MSK
Если в .git репозитории для сборки ПО с помощью связки gear и hasher использовать файл rules следующего вида:

[master²//testapp] $ cat .gear/rules 
tar: v@version@:. name=testapp base=[master²//testapp] $ 

Т.е. _без_ пустой строки в конце, то команда gear-update-tag -avc выдает следующее:

[master¹²//testapp] $ gear-update-tag -avc                              
gear-update-tag: Updated .gear/tags/list
[master¹²//testapp] $ 

Т.е. _не_ создает строчку с нужной записью в list и при этом _не_ информирует пользователя о потенциальной проблеме. Неочевидно, где пользователь допустил ошибку. Достаточно добавить перевод строки в конце rules файла и все проходит замечательно:

[master¹²//testapp] $ echo >> .gear/rules 
[master¹²//testapp] $ gear-update-tag -avc
gear-update-tag: Added tag "v1.0"
gear-update-tag:   for 28ad194f991c95f95b1015b5b4148ba3a1614535
gear-update-tag: Updated .gear/tags/list
[master¹²//testapp] $
Comment 1 Dmitry V. Levin 2012-12-04 02:04:48 MSK
Должно быть исправлено в 1.7.6-alt1-3-g28e7e0b, будет в следующей версии.
Comment 2 Repository Robot 2012-12-05 03:36:13 MSK
gear-1.7.7-alt1 -> sisyphus:

* Tue Dec 04 2012 Dmitry V. Levin <ldv@altlinux> 1.7.7-alt1
- gear-store-tags: handle the last line of .gear/rules when
  it is not EOL-terminated (closes: #28165).