Skip to content

Releases: packit/specfile

0.15.0

10 Mar 11:16
efb94f1

Choose a tag to compare

  • Parsing the spec file by RPM is now performed only if really necessary, greatly improving performance in certain scenarios. (#212)
  • Checked that license is a valid SPDX license.

0.14.0

23 Feb 16:09
78e2e8b

Choose a tag to compare

  • Fixed a bug that broke parsing in case spec file contained conditionalized macro definitions or similar constructs. (#209)
  • Specfile no longer depends on rpm-py-installer, it now depends directly on rpm. (#207)

0.13.2

30 Jan 13:24
dc2440f

Choose a tag to compare

  • Fixed infinite loop that occured when section options were followed by whitespace. (#197)

0.13.1

23 Jan 14:56
326ceff

Choose a tag to compare

  • Fixed a bug in section parsing that caused sections to be ignored when there were macro definitions spread across the spec file and not cumulated at the top. (#191)

0.13.0

20 Jan 15:17
032a6e2

Choose a tag to compare

  • Added Section.options attribute for convenient manipulation of section options. (#183)
  • specfile now supports single-line sections where section content is represented by a macro starting with a newline. (#182)
  • Added evr argument to Specfile.add_changelog_entry(). This allows adding a changelog entry with an EVR value that's different from the current specfile's value. This makes it easier to reconstruct a specfile's %changelog based on another source using the higher level interface. (#181)

0.12.0

06 Jan 13:47
1f18485

Choose a tag to compare

  • All classes including Specfile itself can now be copied using the standard copy() and deepcopy() functions from copy module. (#176)
  • Section.name attribute has been renamed to a more fitting Section.id. (#167)
  • setup.cfg now uses license_files instead of deprecated license_file. (#162)

0.11.1

14 Dec 16:33
3581c3c

Choose a tag to compare

  • Tags enclosed in conditional macro expansions are not ignored anymore. (#156)
  • Fixed context managers being shared between Specfile instances. (#157)

0.11.0

09 Dec 14:15
ad039af

Choose a tag to compare

  • Context managers (Specfile.sections(), Specfile.tags() etc.) can now be nested and combined together (with one exception - Specfile.macro_definitions()), and it is also possible to use tag properties (e.g. Specfile.version, Specfile.license) inside them. It is also possible to access the data directly, avoiding the with statement, by using the content property (e.g. Specfile.tags().content), but be aware that no modifications done to such data will be preserved. You must use with to make changes. (#153)

0.10.0

30 Nov 11:27
daf36bc

Choose a tag to compare

  • Fixed an issue that caused empty lines originally inside changelog entries to appear at the end. (#140)
  • Renamed the ignore_missing_includes option to a more general force_parse. If specified, it allows to attempt to parse the spec file even if one or more sources required to be present at parsing time are not available. Such sources include sources referenced from shell expansions in tag values and sources included using the %include directive. (#137)

0.9.1

12 Nov 14:34
11b91cc

Choose a tag to compare

  • specfile now supports localized tags (e.g. Summary(fr)) and tags with qualifiers (e.g. Requires(post)).
    It also follows more closely rpm parsing logic and doesn't fail on invalid section names. (#132)