Summary: | [FR] compress: tree_path support | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | led |
Component: | gear | Assignee: | Dmitry V. Levin <ldv> |
Status: | NEW --- | QA Contact: | qa-sisyphus |
Severity: | enhancement | ||
Priority: | P2 | CC: | glebfm, ldv, legion, placeholder |
Version: | unstable | ||
Hardware: | all | ||
OS: | Linux |
Description
led
2008-10-21 18:47:13 MSD
Например, для такого: gzip: 3.3d2:readme.txt name=@name@-3.3d2-readme.txt где "3.3d2" - tag в бранче upstream насчёт @name@ согласен. Но вот насчёт tree_path не уверен ... Можно более жизненный пример? У вас есть репозиторий, где вы хотите это применить? (In reply to comment #2) > насчёт @name@ согласен. Но вот насчёт tree_path не уверен ... > > Можно более жизненный пример? Это и есть реальный жизненный пример > У вас есть репозиторий, где вы хотите это применить? Есть. Вернее был, потому как поняв, что ничего не получится, просто тупо скопировал файлы из нужного бранча в master, переименовал и применил директиву gzip. Всё это вместо того, чтобы просто сослаться на нужный файл в нужном бранче. (In reply to comment #2) > насчёт @name@ согласен. Но вот насчёт tree_path не уверен ... Если это нетривиально/сложно - так и скажите - я ведь не настаиваю:) Но то, что это не нужно... (In reply to comment #0) > Нельзя ли добавить tree_path в директиву compress (и, соответственно, в директивы gzip > и bzip2), как это сделано в директиве tar (tar.gz, tar.bz2)? > А также опцию name в директивы gzip и bzip2. В директиву compress можно добавить, она по своей сути расширяемая. А в простые директивы gzip и bzip2 лучше не добавлять, поскольку это самые первые директивы, у них нет параметров, и есть риск нарушить обратную совместимость. P.S. Раньше или позже всплывёт тема квотирования. (In reply to comment #5) > В директиву compress можно добавить, она по своей сути расширяемая. Вполне устроило бы. (In reply to comment #5) > В директиву compress можно добавить, она по своей сути расширяемая. Если добавим в compress, то добавим и в copy, gzip и bzip2 ... иначе костыли придётся вставлять. Вообще, у нас есть некоторая несуразность: zip: tree_path gzip: glob_pattern... У нас есть два семейства директив и аргументы у них обрабатываются по разному. > А в простые директивы gzip и bzip2 лучше не добавлять, поскольку > это самые первые директивы, у них нет параметров, и > есть риск нарушить обратную совместимость. Я могу попробовать сделать так чтобы tree_path обрабатывался с учётом обратной совместимости. Меня смущает то, что директивы, использующие tree_path, принимают только один аргумент типа tree_path. Если у compress заменить glob_pattern на tree_path, то будут возможны такие конструкции: compress: TAG1:file1.txt TAG2:src/foobar.c В этом и была моя неуверенность. Хотим ли мы такого ? > P.S. Раньше или позже всплывёт тема квотирования. Можешь пояснить? (In reply to comment #7) > (In reply to comment #5) > > В директиву compress можно добавить, она по своей сути расширяемая. > > Если добавим в compress, то добавим и в copy, gzip и bzip2 ... иначе костыли придётся > вставлять. Там и без этого есть костыли: name=<NAME> Specify destination file name in output directory. In this case glob_pattern should match only one file. > Вообще, у нас есть некоторая несуразность: > > zip: tree_path > gzip: glob_pattern... > > У нас есть два семейства директив и аргументы у них обрабатываются по > разному. Да, так исторически сложилось. > > А в простые директивы gzip и bzip2 лучше не добавлять, поскольку > > это самые первые директивы, у них нет параметров, и > > есть риск нарушить обратную совместимость. > > Я могу попробовать сделать так чтобы tree_path обрабатывался с учётом обратной > совместимости. > > Меня смущает то, что директивы, использующие tree_path, принимают только один > аргумент типа tree_path. Если у compress заменить glob_pattern на tree_path, то будут возможны > такие конструкции: > > compress: TAG1:file1.txt TAG2:src/foobar.c > > В этом и была моя неуверенность. Хотим ли мы такого ? Нет, я бы не хотел такого. Если tree_path, то только один. > > P.S. Раньше или позже всплывёт тема квотирования. > > Можешь пояснить? пробелы в именах (In reply to comment #8) > Там и без этого есть костыли: > name=<NAME> > Specify destination file name in output directory. > In this case glob_pattern should match only one file. Как раз это не костыль :) И это не приводит к дополнительному анализу type. > > compress: TAG1:file1.txt TAG2:src/foobar.c > Нет, я бы не хотел такого. Если tree_path, то только один. Я мало представляю такой мозг в make_compress(). Нужно смотреть, похож аргумент на tree_path и если похож, пытаться его срезолвить ... Что делать если в качестве glob_pattern указывает на файл, а по признакам похож на tree_path ? Как понять что хотел пользователь glob_pattern или tree_path ? > пробелы в именах Да. Это наш скелет в шкафу. Нам нужно эту проблему решать ... вопрос поднимался и багу уже вешали. |